Classification Linear Discriminant Analysis Learner
Source:R/learner_sparsediscrim_classif_mdeb.R
mlr_learners_classif.mdeb.Rd
Minimum Distance Empirical Bayesian classification, designed for small-sample, high-dimensional data.
Empirical Bayes estimator where the eigenvalues of the pooled sample covariance matrix are shrunken towards
the identity matrix.
Calls sparsediscrim::lda_emp_bayes()
from FIXME: sparsediscrim.
Meta Information
Task type: “classif”
Predict Types: “response”, “prob”
Feature Types: “integer”, “numeric”
Required Packages: mlr3, sparsediscrim
References
Srivastava, M., Kubokawa, T. (2007). “Comparison of Discrimination Methods for High Dimensional Data.” Journal of the Japanese Statistical Association, 37(1), 123–134.
See also
as.data.table(mlr_learners)
for a table of available Learners in the running session (depending on the loaded packages).Chapter in the mlr3book: https://mlr3book.mlr-org.com/basics.html#learners
mlr3learners for a selection of recommended learners.
mlr3cluster for unsupervised clustering learners.
mlr3pipelines to combine learners with pre- and postprocessing steps.
mlr3tuning for tuning of hyperparameters, mlr3tuningspaces for established default tuning spaces.
Super classes
mlr3::Learner
-> mlr3::LearnerClassif
-> LearnerClassifMdeb
Methods
Inherited methods
mlr3::Learner$base_learner()
mlr3::Learner$configure()
mlr3::Learner$encapsulate()
mlr3::Learner$format()
mlr3::Learner$help()
mlr3::Learner$predict()
mlr3::Learner$predict_newdata()
mlr3::Learner$print()
mlr3::Learner$reset()
mlr3::Learner$selected_features()
mlr3::Learner$train()
mlr3::LearnerClassif$predict_newdata_fast()
Examples
# Define the Learner
learner = lrn("classif.mdeb")
print(learner)
#>
#> ── <LearnerClassifMdeb> (classif.dlda): Minimum Distance Empirical Bayesian Clas
#> • Model: -
#> • Parameters: list()
#> • Packages: mlr3 and sparsediscrim
#> • Predict Types: [response] and prob
#> • Feature Types: integer and numeric
#> • Encapsulation: none (fallback: -)
#> • Properties: multiclass and twoclass
#> • Other settings: use_weights = 'error'
# Define a Task
task = tsk("sonar")
# Create train and test set
ids = partition(task)
# Train the learner on the training ids
learner$train(task, row_ids = ids$train)
print(learner$model)
#> Minimum Distance Empirical Bayesian Estimator
#>
#> Sample Size: 139
#> Number of Features: 60
#>
#> Classes and Prior Probabilities:
#> M (48.92%), R (51.08%)
# Make predictions for the test rows
predictions = learner$predict(task, row_ids = ids$test)
# Score the predictions
predictions$score()
#> classif.ce
#> 0.2463768