Je n'ai pas la différence entre le rfobject$importance
et importance(rfobject)
dans la colonne MeanDecreaseAccuracy.
Exemple:
> data("iris")
> fit <- randomForest(Species~., data=iris, importance=TRUE)
> fit$importance
setosa versicolor virginica MeanDecreaseAccuracy MeanDecreaseGini
Sepal.Length 0.027078501 0.019418330 0.040497602 0.02898837 9.173648
Sepal.Width 0.008553449 0.001962036 0.006951771 0.00575489 2.472105
Petal.Length 0.313303381 0.291818815 0.280981959 0.29216790 41.284869
Petal.Width 0.349686983 0.318527008 0.270975757 0.31054451 46.323415
> importance(fit)
setosa versicolor virginica MeanDecreaseAccuracy MeanDecreaseGini
Sepal.Length 1.277324 1.632586 1.758101 1.2233029 9.173648
Sepal.Width 1.007943 0.252736 1.014141 0.6293145 2.472105
Petal.Length 3.685513 4.434083 4.133621 2.5139980 41.284869
Petal.Width 3.896375 4.421567 4.385642 2.5371353 46.323415
>
J'obtiens des valeurs MeanDecreaseAccuracy différentes mais j'ai le même ordre pour les variables d'importance (pour fit$importance
et pour importance(fit)
):
Petal.Width
Pétale.Longueur
Sepal.Length
Sepal.Width
Mais dans d'autres ensembles de données, je reçois parfois des commandes différentes. Quelqu'un peut-il expliquer ce qui se passe ici? Est-ce peut-être un bug?
Modifier (en réponse à Martin O'Leary )
D'accord merci! J'ai remarqué autre chose.
En jetant un œil à la rfcv()
fonction, j'ai remarqué la ligne:
impvar <- (1:p)[order(all.rf$importance[, 1], decreasing = TRUE)]
avec cette ligne, nous choisissons la première colonne all.rf$importance
qui nous donne l'ordre des mesures spécifiques à la classe (pour le premier facteur ) calculées comme une diminution moyenne de la précision uniquement. Cela n'a pas toujours le même ordre que la diminution moyenne de la précision sur toutes les classes ( MeanDecreaseAccuracy
). Ne serait - il mieux choisir soit la MeanDecreaseAccuracy
ou MeanDecreaseGini
colonne, ou mieux en utilisant la importance()
-fonction pour les valeurs mises à l' échelle? Nous aurions donc un nombre séquentiellement réduit de prédicteurs classés par importance variable (sur toutes les classes) et non seulement classés par importance variable pour la première classe.