Estou tendo alguma dificuldade em entender como interpretar a saída de importância variável do pacote Random Forest. A diminuição média na precisão é geralmente descrita como "a diminuição na precisão do modelo ao permutar os valores em cada recurso".
É uma declaração sobre o recurso como um todo ou sobre valores específicos dentro do recurso? Em ambos os casos, a redução média na precisão é o número ou a proporção de observações que são classificadas incorretamente removendo o recurso (ou valores do recurso) em questão do modelo?
Digamos que temos o seguinte modelo:
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
Nesse modelo, a taxa OOB é bastante baixa (cerca de 5%). No entanto, a redução média na precisão do preditor (Petal.Length) com o valor mais alto nessa medida é de apenas 8.
Isso significa que remover o Petal.Length do modelo resultaria apenas em uma classificação incorreta adicional de 8 ou mais observações em média?
Como o comprimento médio da precisão da pétala poderia ser tão baixo, dado que é o mais alto nesta medida e, portanto, as outras variáveis têm valores ainda mais baixos nessa medida?