J'ai du mal à comprendre comment interpréter la sortie d'importance variable du paquet Random Forest. La diminution moyenne de la précision est généralement décrite comme "la diminution de la précision du modèle due à la permutation des valeurs dans chaque fonction".
S'agit-il d'une déclaration concernant la fonctionnalité dans son ensemble ou de valeurs spécifiques dans la fonctionnalité? Dans les deux cas, la diminution moyenne de la précision correspond-elle au nombre ou à la proportion d'observations mal classées en supprimant la caractéristique (ou les valeurs de la caractéristique) en question du modèle?
Disons que nous avons le modèle suivant:
require(randomForest)
data(iris)
set.seed(1)
dat <- iris
dat$Species <- factor(ifelse(dat$Species=='virginica','virginica','other'))
model.rf <- randomForest(Species~., dat, ntree=25,
importance=TRUE, nodesize=5)
model.rf
varImpPlot(model.rf)
Call:
randomForest(formula = Species ~ ., data = dat, ntree = 25,
proximity = TRUE, importance = TRUE, nodesize = 5)
Type of random forest: classification
Number of trees: 25
No. of variables tried at each split: 2
OOB estimate of error rate: 3.33%
Confusion matrix:
other virginica class.error
other 97 3 0.03
virginica 2 48 0.04
Dans ce modèle, le taux de production hors bande est plutôt faible (environ 5%). Cependant, la diminution moyenne de la précision pour le prédicteur (Petal.Length) avec la valeur la plus élevée dans cette mesure n’est que d’environ 8.
Cela signifie-t-il que la suppression de Petal.Length du modèle n'entraînerait qu'une mauvaise classification supplémentaire d'environ 8 observations en moyenne?
Comment la diminution moyenne de l'exactitude pour Petal.Length pourrait-elle être si faible, car elle est la plus élevée de cette mesure, et les autres variables ont donc des valeurs encore plus basses pour cette mesure?
Réponses:
" S'agit-il d'une déclaration concernant la fonctionnalité dans son ensemble ou de valeurs spécifiques dans la fonctionnalité? "
" Dans les deux cas, la diminution moyenne de la précision correspond-elle au nombre ou à la proportion d'observations mal classées en supprimant la caractéristique (ou les valeurs de la caractéristique) en question du modèle? "
- " Cela signifie-t-il que la suppression de Petal.Length du modèle n'entraînerait qu'une erreur de classification supplémentaire d'environ 8 observations en moyenne? "
" Comment la diminution moyenne de l'exactitude pour Petal.Length pourrait-elle être si faible, puisqu'elle est la plus élevée de cette mesure, et que les autres variables ont donc des valeurs encore plus basses pour cette mesure? "
Utilisez principalement l’importance des variables principalement pour classer l’utilité de vos variables. Une interprétation claire des valeurs absolues d’importance variable est difficile à réussir.
GINI: L’importance GINI mesure le gain moyen de pureté par fractionnements d’une variable donnée. Si la variable est utile, elle a tendance à scinder des nœuds étiquetés mixtes en nœuds purs à une seule classe. La division par une variable permutée n'a tendance à augmenter ni à diminuer la pureté des noeuds. Permuter une variable utile a tendance à donner une diminution relativement importante du gain de gini moyen. L’importance de GINI est étroitement liée à la fonction de décision locale, que la forêt aléatoire utilise pour sélectionner la meilleure scission disponible. Par conséquent, le calcul ne prend pas beaucoup de temps supplémentaire. Par contre, le gain moyen dans les divisions locales n’est pas nécessairement ce qu’il est le plus utile de mesurer, contrairement à l’évolution de la performance globale du modèle. L’importance de Gini est globalement inférieure à l’importance variable (basée sur la permutation) car elle est relativement plus biaisée, plus instable et tend à répondre à une question plus indirecte.
la source
Voici la description de la diminution moyenne de la précision (MDA) du manuel d’aide de randomForest:
Selon la description, la "précision" dans la MDA fait en réalité référence à la précision de modèles à un seul arbre , indépendamment du fait que nous nous préoccupons davantage du taux d'erreur de la forêt . Alors,
A titre d'observation, la procédure MDA décrite par Soren est différente de la mise en œuvre du paquet randomForest. C'est plus proche de ce que nous souhaitons d'un MDA: la diminution de la précision de l'ensemble du modèle forestier. Cependant, le modèle sera probablement ajusté différemment sans Petal.Length et s'appuiera davantage sur d'autres prédicteurs. Ainsi, le MDA de Soren serait trop pessimiste.
la source
Un récent article (blog) [ https://explained.ai/rf-importance/index.html] d'une équipe de l'Université de San Francisco montre que les stratégies d'importance par défaut dans R (randomForest) et Python (scikit) ne sont pas fiables. dans de nombreux scénarios de données. En particulier, les métriques de diminution moyenne de l'importance des impuretés sont biaisées lorsque les variables prédictives potentielles varient dans leur échelle de mesure ou leur nombre de catégories.
Les articles et le billet de blog montrent comment les variables de cardinalité continue et élevée sont préférées dans la diminution moyenne du classement d'importance des impuretés, même si elles sont également non informatives par rapport aux variables comportant moins de catégories. Les auteurs suggèrent d’utiliser l’importance de la permutation au lieu de la valeur par défaut dans ces cas. Si les variables prédictives de votre modèle sont hautement corrélées, une importance de permutation conditionnelle est suggérée.
L’impureté est biaisée puisqu’à chaque fois qu’un point de rupture est sélectionné dans une variable, chaque niveau de la variable est testé pour trouver le meilleur point de rupture. Les variables de cardinalité continue ou élevée auront beaucoup plus de points de partage, ce qui entraîne le problème du «test multiple». Autrement dit, il y a une probabilité plus élevée que, par chance, cette variable prédit bien le résultat, car les variables, pour lesquelles plus de fractionnements sont essayés, apparaîtront plus souvent dans l'arbre.
la source