Density Plug-In Kernel Learner
mlr_learners_dens.plug.Rd
Kernel density estimation with global bandwidth selection via "plug-in".
Calls plugdensity::plugin.density()
from plugdensity.
Meta Information
Task type: “dens”
Predict Types: “pdf”
Feature Types: “numeric”
Required Packages: mlr3, mlr3proba, mlr3extralearners, plugdensity
References
Engel, Joachim, Herrmann, Eva, Gasser, Theo (1994). “An iterative bandwidth selector for kernel estimation of densities and their derivatives.” Journaltitle of Nonparametric Statistics, 4(1), 21–34.
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
-> mlr3proba::LearnerDens
-> LearnerDensPlugin
Examples
# Define the Learner
learner = mlr3::lrn("dens.plug")
print(learner)
#> <LearnerDensPlugin:dens.plug>: Kernel Density Estimator
#> * Model: -
#> * Parameters: list()
#> * Packages: mlr3, mlr3proba, mlr3extralearners, plugdensity
#> * Predict Types: [pdf]
#> * Feature Types: numeric
#> * Properties: missings
# Define a Task
task = mlr3::tsk("faithful")
# Create train and test set
ids = mlr3::partition(task)
# Train the learner on the training ids
learner$train(task, row_ids = ids$train)
print(learner$model)
#> PluginKDE()
# Make predictions for the test rows
predictions = learner$predict(task, row_ids = ids$test)
# Score the predictions
predictions$score()
#> dens.logloss
#> 0.992556