Я работаю над случайным лесом в R, и я хотел бы добавить 10-кратное перекрестное подтверждение моей модели. Но я совсем застрял там. Это образец моего кода.Случайный лес Crossvalidation in R
install.packages('randomForest')
library(randomForest)
set.seed(123)
fit <- randomForest(as.factor(sickrabbit) ~ Feature1,..., FeatureN ,data=training1, importance=TRUE,sampsize = c(200,300),ntree=500)
я нашел в Интернете функцию rfcv
в каре, но я не уверен, чтобы понять, как это работает. Может ли кто-нибудь помочь с этой функцией или предложить более простой способ реализации перекрестной проверки. Можете ли вы сделать это, используя случайный пакет леса вместо каретки?
Мое понимание состоит в том, что правильно построенная случайная модель леса не требует перекрестной проверки, поскольку каждое дерево в лесу построено с образцом из мешка и проверяется на неиспользованный оставшийся образец. Почему вы хотите перекрестить проверку? –
Размер моего набора данных немного мал около 50 функций и 10000 образцов. Набор данных также очень несбалансирован, и только 200 из общего числа образцов соответствуют классам 1, а остальные относятся к классам 2. Все это без упоминания о том, что я должен хранить отдельные 30% моих данных для тестирования конечной модели с невидимыми данными. Я хотел бы использовать коррекцию кросс-кросс-кода для улучшения производительности модели путем лучшего выбора функций. –
Я думаю, вы не понимаете основную предпосылку случайных лесов. Набор данных невелик; Я потратил годы на то, чтобы провести RF-анализ фармацевтических данных на порядок меньше, чем ваш набор данных, и никогда не возникало проблем. Обычно вы не выполняете _not_ cross, проверяете модель RF; алгоритм, используемый для создания леса, неявно делает это для вас. –