I try to optimize the averaged prediction of two logistic regressions in a classification task using a superlearner.
My measure of interest is classif.auc
The mlr3
help file tells me (?mlr_learners_avg
)
Predictions are averaged using weights (in order of appearance in the data) which are optimized using nonlinear optimization from the package "nloptr" for a measure provided in measure (defaults to classif.acc for LearnerClassifAvg and regr.mse for LearnerRegrAvg). Learned weights can be obtained from $model. Using non-linear optimization is implemented in the SuperLearner R package. For a more detailed analysis the reader is referred to LeDell (2015).
I have two questions regarding this information:
When I look at the source code I think
LearnerClassifAvg$new()
defaults to"classif.ce"
, is that true? I think I could set it toclassif.auc
withparam_set$values <- list(measure="classif.auc",optimizer="nloptr",log_level="warn")
The help file refers to the
SuperLearner
package and LeDell 2015. As I understand it correctly, the proposed "AUC-Maximizing Ensembles through Metalearning" solution from the paper above is, however, not impelemented inmlr3
? Or do I miss something? Could this solution be applied inmlr3
? In themlr3
book I found a paragraph regarding calling an external optimization function, would that be possible forSuperLearner
?