Je travaille sur la prédiction Random Forest, en mettant l'accent sur l'importance des variables prédictives, et j'ai une question concernant la compréhension de mtry et l'utilisation réelle des variables dans les arbres de Random Forest dans R (package randomForest).
J'ai un échantillon avec plus de 1000 observations et un vecteur de réponse avec classification en 2 classes: 0 et 1. J'ai 4 variables indépendantes. Pour l'expérience, j'ai choisi les paramètres suivants:
rftry1 = randomForest (x, y, xtest, ytest, mtry = 4, ntree = 500, importance = TRUE, keep.forest = TRUE, do.trace = TRUE, replace = TRUE, keep.inbag = TRUE, proximité = TRUE)
Je vérifie ensuite quelles variables ont été réellement utilisées dans la forêt, et trouve une utilisation très biaisée :
> varUsed (rftry1)
[1] 2436 1758 1988 1156
L'utilisation diminue considérablement du premier au la 4e variable. Cela affecterait-il réellement la prédiction? Pourquoi cela se passe-t-il comme ça?
J'ai ensuite relancé l'expérience avec mtry = 2, et l'utilisation a globalement diminué mais est toujours proportionnelle à l'utilisation de la première.
MeanDecreaseAccuracy MeanDecreaseGini
1 0,006535855 2,1771482 0,224706591 127,1062683 0,006633846 5,0204564 0,017522580 36,867821
J'ai remarqué que la fréquence d'utilisation de la variable dans les arbres n'affecte pas l'importance dans la mesure du changement de l'ordre d'importance des variables. Donc mes 2 questions principales sont:
1) Je suppose que je ne comprends pas exactement ce que mtry contrôle (j'ai lu le nombre de variables échantillonnées à chaque split). J'ai remarqué qu'avec mtry 2 et 4 certaines des variables ont été réutilisées dans l'arbre, alors qu'avec m = 1 elles ne l'ont pas été et les arbres étaient beaucoup plus courts. Dois-je bien comprendre quand je dis:
mtry = 2 signifie qu'à chaque division, au lieu de choisir fermement une variable suivante à diviser, nous choisirons au hasard parmi 2? Si j'ai 4 variables au total et que la variable 1 a été utilisée pour la toute première division - quels sont mes choix pour la fille gauche et la fille droite sur lesquelles se séparer?
2) La mtry est-elle liée à l'utilisation déséquilibrée des variables pour split? Pourquoi les variables sont-elles utilisées comme ça et cela affecte-t-il le résultat de la prédiction de faire un biais?
Toutes mes variables sont sous la forme de facteurs où 3 ont 2 niveaux et un a 3 niveaux.
Merci pour vos réponses!