По сравнению с другими моделями, случайные леса реже подходят, но вы все равно должны избегать их явно. Настройка параметров модели, безусловно, является одним из элементов, позволяющих избежать переоснащения, но не единственным. На самом деле, я бы сказал, что ваши тренировочные возможности с большей вероятностью приведут к переоснащению, чем параметрам модели, особенно со случайными лесами. Поэтому я думаю, что ключ в том, чтобы действительно иметь надежный метод для оценки вашей модели, чтобы проверить, подходит ли она больше, чем что-либо еще, что подводит нас ко второму вопросу.
Как упоминалось выше, проверка перекрестной проверки позволит вам избежать переобучения. Выбор вашей лучшей модели на основе результатов CV приведет к модели, которая не будет соответствовать требованиям, а это не всегда так, как если бы была ошибка. Самый простой способ запустить CV в R с помощью caret
пакета. Простой пример ниже:
> 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.