train.model {SIAMCAT} | R Documentation |
This function trains the a machine learning model on the training data
train.model(siamcat, method = c("lasso","enet","ridge","lasso_ll", "ridge_ll", "randomForest"), stratify = TRUE, modsel.crit = list("auc"), min.nonzero.coeff = 1, param.set = NULL, verbose = 1)
siamcat |
object of class siamcat-class |
method |
string, specifies the type of model to be trained, may be one
of these: |
stratify |
boolean, should the folds in the internal cross-validation be
stratified?, defaults to |
modsel.crit |
list, specifies the model selection criterion during
internal cross-validation, may contain these: |
min.nonzero.coeff |
integer number of minimum nonzero coefficients that
should be present in the model (only for |
param.set |
a list of extra parameters for mlr run, may contain:
Defaults to |
verbose |
control output: |
This functions performs the training of the machine learning model
and functions as an interface to the mlr
-package.
The function expects a siamcat-class-object with a prepared
cross-validation (see create.data.split) in the
data_split
-slot of the object. It then trains a model for
each fold of the datasplit.
For the machine learning methods that require additional
hyperparameters (e.g. lasso_ll
), the optimal hyperparameters
are tuned with the function tuneParams within the
mlr
-package.
The methods 'lasso'
, 'enet'
, and 'ridge'
are
implemented as mlr-taks using the 'classif.cvglmnet'
Learner,
'lasso_ll'
and 'ridge_ll'
use the
'classif.LiblineaRL1LogReg'
and the
'classif.LiblineaRL2LogReg'
Learners respectively. The
'randomForest'
method is implemented via the
'classif.randomForest'
Learner.
object of class siamcat-class with added model_list
data(siamcat_example) # simple working example siamcat_validated <- train.model(siamcat_example, method='lasso')