J'ai joué avec des forêts aléatoires pour la régression et j'ai du mal à comprendre exactement ce que signifient les deux mesures d'importance et comment elles doivent être interprétées.
La importance()
fonction donne deux valeurs pour chaque variable: %IncMSE
et IncNodePurity
. Existe-t-il des interprétations simples pour ces 2 valeurs?
En IncNodePurity
particulier, s’agit-il simplement du montant que le RSS augmente suite à la suppression de cette variable?
?importance
? Il y a une explication sur ce que les deux mesures signifient ...Réponses:
Le premier peut être «interprété» comme suit: si un prédicteur est important dans votre modèle actuel, attribuez d'autres valeurs à ce prédicteur de manière aléatoire mais «réaliste» (c'est-à-dire: permuter les valeurs de ce prédicteur sur votre jeu de données), cela devrait avoir une influence négative. sur la prédiction, c'est-à-dire: utiliser le même modèle pour prédire à partir de données identiques, à l'exception de la seule variable, devrait donner des prévisions pires.
Vous prenez donc une mesure prédictive (MSE) avec l'ensemble de données d'origine, puis avec l'ensemble de données "permuté", et vous les comparez d'une manière ou d'une autre. Une solution, en particulier dans la mesure où nous nous attendons à ce que le MSE initial soit toujours plus petit, est la différence. Enfin, pour rendre les valeurs comparables entre variables, celles-ci sont mises à l'échelle.
Pour le second: à chaque scission, vous pouvez calculer dans quelle mesure cette scission réduit l’impureté des noeuds (pour les arbres de régression, en effet, la différence entre RSS avant et après la scission). Ceci est additionné sur toutes les divisions de cette variable, sur tous les arbres.
Remarque: une bonne lecture est Elements of Statistical Learning de Hastie, Tibshirani et Friedman ...
la source
Les métriques d’importance aléatoire de la forêt mises en œuvre dans le package randomForest dans R ont des particularités en ce que les prédicteurs corrélés obtiennent des valeurs de faible importance.
http://bioinformatics.oxfordjournals.org/content/early/2010/04/12/bioinformatics.btq134.full.pdf
J'ai une implémentation modifiée de forêts aléatoires sur CRAN qui implémente leur approche d'estimation des valeurs p empiriques et des taux de découverte erronés, ici
http://cran.r-project.org/web/packages/pRF/index.html
la source
caret::train(method="rf", importance = TRUE, ...)
??