Em relação a outros modelos, as florestas aleatórias são menos propensas a superestimar, mas ainda é algo que você deseja fazer um esforço explícito para evitar. Ajustar os parâmetros do modelo é definitivamente um elemento para evitar o ajuste excessivo, mas não é o único. Na verdade, eu diria que é mais provável que seus recursos de treinamento levem ao ajuste excessivo do que aos parâmetros do modelo, especialmente com florestas aleatórias. Então, acho que a chave é realmente ter um método confiável para avaliar seu modelo e verificar se há sobreajuste mais do que qualquer outra coisa, o que nos leva à sua segunda pergunta.
Como mencionado acima, a execução da validação cruzada permitirá evitar ajustes excessivos. A escolha do seu melhor modelo com base nos resultados do CV levará a um modelo que não se ajustou demais, o que não é necessariamente o caso de algo como um erro fora da bolsa. A maneira mais fácil de executar o CV no R é com o caret
pacote. Um exemplo simples está abaixo:
> library(caret)
>
> data(iris)
>
> tr <- trainControl(method = "cv", number = 5)
>
> train(Species ~ .,data=iris,method="rf",trControl= tr)
Random Forest
150 samples
4 predictor
3 classes: 'setosa', 'versicolor', 'virginica'
No pre-processing
Resampling: Cross-Validated (5 fold)
Summary of sample sizes: 120, 120, 120, 120, 120
Resampling results across tuning parameters:
mtry Accuracy Kappa Accuracy SD Kappa SD
2 0.96 0.94 0.04346135 0.06519202
3 0.96 0.94 0.04346135 0.06519202
4 0.96 0.94 0.04346135 0.06519202
Accuracy was used to select the optimal model using the largest value.
The final value used for the model was mtry = 2.