mlr3filters (version 0.7.1)

mlr_filters_auc: AUC Filter

Description

Area under the (ROC) Curve filter, analogously to mlr3measures::auc() from mlr3measures. Missing values of the features are removed before calculating the AUC. If the AUC is undefined for the input, it is set to 0.5 (random classifier). The absolute value of the difference between the AUC and 0.5 is used as final filter value.

Arguments

Super class

mlr3filters::Filter -> FilterAUC

Methods

Inherited methods


Method new()

Create a FilterAUC object.

Usage

FilterAUC$new()


Method clone()

The objects of this class are cloneable with this method.

Usage

FilterAUC$clone(deep = FALSE)

Arguments

deep

Whether to make a deep clone.

References

For a benchmark of filter methods:

Bommert A, Sun X, Bischl B, Rahnenführer J, Lang M (2020). “Benchmark for filter methods for feature selection in high-dimensional classification data.” Computational Statistics & Data Analysis, 143, 106839. tools:::Rd_expr_doi("10.1016/j.csda.2019.106839").

See Also

  • PipeOpFilter for filter-based feature selection.

  • Dictionary of Filters: mlr_filters

Other Filter: Filter, mlr_filters_anova, mlr_filters_carscore, mlr_filters_carsurvscore, mlr_filters_cmim, mlr_filters_correlation, mlr_filters_disr, mlr_filters_find_correlation, mlr_filters_importance, mlr_filters_information_gain, mlr_filters_jmim, mlr_filters_jmi, mlr_filters_kruskal_test, mlr_filters_mim, mlr_filters_mrmr, mlr_filters_njmim, mlr_filters_performance, mlr_filters_permutation, mlr_filters_relief, mlr_filters_selected_features, mlr_filters_variance, mlr_filters

Examples

Run this code
task = mlr3::tsk("sonar")
filter = flt("auc")
filter$calculate(task)
head(as.data.table(filter), 3)

if (mlr3misc::require_namespaces(c("mlr3pipelines", "rpart"), quietly = TRUE)) {
  library("mlr3pipelines")
  task = mlr3::tsk("spam")

  # Note: `filter.frac` is selected randomly and should be tuned.

  graph = po("filter", filter = flt("auc"), filter.frac = 0.5) %>>%
    po("learner", mlr3::lrn("classif.rpart"))

  graph$train(task)
}

Run the code above in your browser using DataLab