Misure di importanza variabile nelle foreste casuali


40

Ho giocato con foreste casuali per la regressione e ho difficoltà a capire esattamente cosa significano le due misure di importanza e come dovrebbero essere interpretate.

La importance()funzione fornisce due valori per ogni variabile: %IncMSEe IncNodePurity. Esistono interpretazioni semplici per questi 2 valori?

In IncNodePurityparticolare, questo è semplicemente l'importo che aumenta l'RSS dopo la rimozione di quella variabile?


1
Hai visto ?importance? C'è una spiegazione lì sul significato di entrambe le misure ...
Nick Sabbe,

2
@Nick Sabbe, l'ho fatto e sto cercando di avvolgere la mia testa attorno a loro. Mi chiedevo se ci fossero delle belle interpretazioni intuitive per loro.
dcl,

Risposte:


42

Il primo può essere "interpretato" nel modo seguente: se un predittore è importante nel modello corrente, quindi assegnare altri valori per quel predittore in modo casuale ma "realisticamente" (ovvero: consentire i valori di questo predittore sul set di dati), dovrebbe avere un'influenza negativa sulla previsione, vale a dire: l'utilizzo dello stesso modello per prevedere da dati identici, tranne per una variabile, dovrebbe fornire previsioni peggiori.

Quindi, prendi una misura predittiva (MSE) con il set di dati originale e quindi con il set di dati "permutato" e li confronti in qualche modo. In un modo, soprattutto poiché prevediamo che l'MSE originale sarà sempre più piccolo, la differenza può essere presa. Infine, per rendere i valori comparabili rispetto alle variabili, questi vengono ridimensionati.

Per il secondo: ad ogni divisione, puoi calcolare quanto questa divisione riduce l'impurità del nodo (per gli alberi di regressione, infatti, la differenza tra RSS prima e dopo la divisione). Questo è sommato su tutte le suddivisioni per quella variabile, su tutti gli alberi.

Nota: una buona lettura è Elements of Statistical Learning di Hastie, Tibshirani e Friedman ...


3
Saluti, in realtà ho aperto quel libro :)
dcl

Cosa significa RSS?
DavideChicco.it,


10

Le metriche di importanza della foresta casuale implementate nel pacchetto randomForest in R hanno stranezze in quanto i predittori correlati ottengono valori di bassa importanza.

http://bioinformatics.oxfordjournals.org/content/early/2010/04/12/bioinformatics.btq134.full.pdf

Ho un'implementazione modificata di foreste casuali su CRAN che implementa il loro approccio di stima dei valori p empirici e dei tassi di scoperta falsi, qui

http://cran.r-project.org/web/packages/pRF/index.html


1
questo spiega il diverso output di importanza variabile se usi randomForest con il pacchetto caret come caret::train(method="rf", importance = TRUE, ...)??
Agile Bean,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.