Skip to content

Training methods

This collection of algorithms is designed to train various types of models that incorporate a special Dimlp layer or extract decision rules. This layer and rules enable the subsequent generation of interpretable decision rules that explain the model's decisions using the Fidex algorithm.

Architecture

The architecture is built as shown below:

graph TD;
    gradBoostTrn[gradBoostTrn] 
    randForestsTrn[randForestsTrn] 
    mlpTrn[mlpTrn] 
    svmTrn[svmTrn]
    computeRocCurve[computeRocCurve]
    cnnTrn[cnnTrn]

    d(Training algorithms) --> gradBoostTrn;
    d --> randForestsTrn;
    d --> mlpTrn;
    d --> svmTrn;
    d --> cnnTrn;
    gradBoostTrn --> computeRocCurve;
    randForestsTrn --> computeRocCurve;
    mlpTrn --> computeRocCurve;
    cnnTrn --> computeRocCurve;
    Tools --> normalization;
    Tools --> computeRocCurve;

Each algorithm has its purpose:

  • gradBoostTrn: Trains a Gradient Boosting decision tree model, generates the decision tree rules for use by Fidex in rule extraction, and provides train and test predictions and accuracy.
  • randForestsTrn: Trains a Random Forest model, generates the decision tree rules for use by Fidex in rule extraction, and provides train and test predictions and accuracy.
  • mlpTrn: Trains an MLP (Multi-Layer Perceptron) model with a Dimlp layer on a training dataset, outputs the weights of this layer for use by Fidex in rule extraction, and also provides train and test predictions and accuracy.
  • svmTrn: Trains an SVM (Support Vector Machine) model with a Dimlp layer on a training dataset, outputs the weights of this layer for use by Fidex in rule extraction, and provides train and test predictions, accuracy, and the ROC curve computed on the testing dataset.
  • computeRocCurve: Calculates and plots the ROC curve based on a set of test predictions and true classes (not applicable to SVM models).
  • normalization: Normalizes data files and denormalizes rules for better interpretation and processing.
  • cnnTrn: Trains an CNN (Convolutional Neural Network) model with a Dimlp layer on a training dataset, outputs the weights of this layer for use by Fidex in rule extraction, and also provides train and test predictions and accuracy.