MDIoob: Debiased Mean Decrease in Impurity

Description Usage Arguments Details Value Functions References See Also Examples

View source: R/MDIoob.R

Description

Calculate the MDI-oob feature importance measure.

Usage

1
2
3
MDIoobTree(tidy.RF, tree, trainX, trainY)

MDIoob(tidy.RF, trainX, trainY)

Arguments

tidy.RF

A tidy random forest. The random forest to calculate MDI-oob from.

tree

An integer. The index of the tree to look at.

trainX

A data frame. Train set features, such that the Tth tree is trained with X[tidy.RF$inbag.counts[[T]], ].

trainY

A data frame. Train set responses, such that the Tth tree is trained with Y[tidy.RF$inbag.counts[[T]], ].

Details

It has long been known that MDI incorrectly assigns high importance to noisy features, leading to systematic bias in feature selection. To address this issue, Li et al. proposed a debiased MDI feature importance measure using out-of-bag samples, called MDI-oob, which has achieved state-of-the-art performance in feature selection for both simulated and real data.

See vignette('MDI', package='tree.interpreter') for more context.

Value

A matrix. The content depends on the type of the response.

Functions

References

A Debiased MDI Feature Importance Measure for Random Forests https://arxiv.org/abs/1906.10845

See Also

MDI

vignette('MDI', package='tree.interpreter')

Examples

1
2
3
4
5
library(ranger)
rfobj <- ranger(Species ~ ., iris, keep.inbag=TRUE)
tidy.RF <- tidyRF(rfobj, iris[, -5], iris[, 5])
MDIoobTree(tidy.RF, 1, iris[, -5], iris[, 5])
MDIoob(tidy.RF, iris[, -5], iris[, 5])

nalzok/tree.interpreter documentation built on Jan. 29, 2020, 5:48 p.m.