10.12 Florestas Aleatórias (RF)
(Breiman 2001) apresenta as Florestas Aleatórias, uma combinação de preditores de árvore, de modo que cada árvore depende dos valores de um vetor aleatório amostrado de forma independente e com a mesma distribuição para todas as árvores na floresta. Esta classe de procedimentos tem algumas características desejáveis:
Sua precisão é tão boa quanto Adaboost e às vezes melhor.
É relativamente robusto para outliers e ruído.
É mais rápido do que o bagging ou boosting.
Fornece estimativas internas úteis de erro, força, correlação e importância da variável.
É simples e facilmente paralelizado.
Exemplo 10.30 Classificando espécies de lírio via florestas aleatórias.
# amostra de treino: 60%
set.seed(1); itrain <- sort(sample(1:nrow(iris), floor(.6*nrow(iris))))
train <- iris[itrain,]
test <- iris[-itrain,]
# modelo
fit <- randomForest::randomForest(Species ~ ., data = train)
fit
##
## Call:
## randomForest(formula = Species ~ ., data = train)
## Type of random forest: classification
## Number of trees: 500
## No. of variables tried at each split: 2
##
## OOB estimate of error rate: 4.44%
## Confusion matrix:
## setosa versicolor virginica class.error
## setosa 32 0 0 0.00000000
## versicolor 0 24 2 0.07692308
## virginica 0 2 30 0.06250000
##
## pred setosa versicolor virginica
## setosa 18 0 0
## versicolor 0 23 1
## virginica 0 1 17
## Confusion Matrix and Statistics
##
##
## pred setosa versicolor virginica
## setosa 18 0 0
## versicolor 0 23 1
## virginica 0 1 17
##
## Overall Statistics
##
## Accuracy : 0.9667
## 95% CI : (0.8847, 0.9959)
## No Information Rate : 0.4
## P-Value [Acc > NIR] : < 2.2e-16
##
## Kappa : 0.9495
##
## Mcnemar's Test P-Value : NA
##
## Statistics by Class:
##
## Class: setosa Class: versicolor Class: virginica
## Sensitivity 1.0 0.9583 0.9444
## Specificity 1.0 0.9722 0.9762
## Pos Pred Value 1.0 0.9583 0.9444
## Neg Pred Value 1.0 0.9722 0.9762
## Prevalence 0.3 0.4000 0.3000
## Detection Rate 0.3 0.3833 0.2833
## Detection Prevalence 0.3 0.4000 0.3000
## Balanced Accuracy 1.0 0.9653 0.9603
Referências
———. 2001. “Random Forests.” Machine Learning 45 (1): 5–32. https://link.springer.com/content/pdf/10.1023/A:1010933404324.pdf.