Ha senso utilizzare la selezione delle funzionalità prima di Random Forest?


Risposte:


6

Sì, lo fa ed è abbastanza comune. Se ti aspetti che oltre il 50% delle tue funzionalità non sia nemmeno ridondante ma assolutamente inutile. Ad esempio, il pacchetto randomForest ha la funzione wrapper rfcv () che predisporrà randomForest e ometterà le variabili meno importanti. La funzione RFCV fa riferimento a questo capitolo . Ricorda di incorporare la selezione delle funzionalità + la modellazione in un ciclo di convalida incrociata esterno per evitare risultati eccessivamente ottimistici.

[modifica sotto]

Potrei moderare "assolutamente inutile". Una singola foresta casuale molto spesso non ignorerà completamente le caratteristiche, ad esempio la regressione con la regolarizzazione del lazo, anche se queste (con il senno di poi simulato) erano caratteristiche casuali. Le suddivisioni dell'albero delle decisioni per caratteristiche sono scelte da criteri locali in una qualsiasi delle migliaia o milioni di nodi e non possono essere successivamente annullate. Non sostengo il taglio di funzionalità fino a una selezione superiore, ma è possibile per alcuni set di dati ottenere un sostanziale aumento delle prestazioni di previsione (stimato da una convalida incrociata esterna ripetuta ) utilizzando questa selezione variabile. Una scoperta tipica sarebbe quella di mantenere il 100% delle funzionalità o solo un po 'meno funzionante meno bene, e quindi potrebbe esserci un ampio intervallo medio con prestazioni di previsione stimate simili.

Forse una regola empirica ragionevole: Quando si aspetterebbe che lazo simile regolarizzazione servirebbe meglio di una cresta simile regolarizzazione per un dato problema, allora si potrebbe tentare di pre-allenamento una foresta casuale e rango le caratteristiche dal interna out-of-bag importanza delle variabili convalidate in modo incrociato e provare a eliminare alcune delle funzionalità meno importanti . L'importanza delle variabili quantifica quanto diminuisce la previsione del modello convalidata in modo incrociato, quando una determinata caratteristica è permutata (valori mescolati) dopo l'allenamento, prima della previsione. Non si sarà mai certi se una funzionalità specifica debba essere inclusa o meno, ma probabilmente sarà molto più facile prevedere dalle caratteristiche del 5% in alto rispetto al 5% in basso.

Da un punto di vista pratico, il tempo di esecuzione computazionale potrebbe essere ridotto e forse alcune risorse potrebbero essere risparmiate, se ci fosse un costo di acquisizione fisso per funzione.


5
La capacità dei dati di dirti che una funzionalità è inutile è fortemente limitata e spero che l'opzione a cui ti riferisci sia integrata nell'algoritmo della foresta casuale. Non sarebbe opportuno eliminare anticipatamente le funzionalità prima di inviare le funzionalità candidate all'algoritmo di foresta casuale.
Frank Harrell,

@FrankHarrell, ho cercato di elaborare la mia risposta
Soren Havelund Welling

2
Non sono d'accordo sul fatto che tu scelga regole di punteggio diverse per scopi diversi. Una regola di punteggio di precisione impropria porta alla selezione delle caratteristiche sbagliate e dando loro i pesi sbagliati. Più evidente è l'arbitrarietà in alcune regole di punteggio. È molto meglio scegliere un modello predittivo ottimale e quindi utilizzare una solida teoria delle decisioni per prendere decisioni ottimali utilizzando quel modello. Questo viene fatto applicando una funzione di utilità alle previsioni continue.
Frank Harrell,

1
@FrankHarrell - puoi dare una risposta dettagliata a questa domanda? apparentemente hai delle argomentazioni forti contro la selezione delle funzionalità ...
ihadanny

1
Il modo migliore per conoscere questo è eseguire una validazione interna rigorosa del bootstrap di una procedura che tenta di eseguire la selezione delle funzionalità rispetto a una che non lo fa. Abbastanza spesso la discriminazione predittiva (se misurata usando una regola di punteggio di precisione adeguata o anche con l' indice (area ROC)) è migliore quando non viene tentata la selezione delle caratteristiche. La selezione delle funzionalità è quasi sempre arbitraria. c
Frank Harrell,
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.