Доброго времени суток! Проблемка с пакетом randomForest. Для начала, я разделил датасет на обучающую и тестовую выборку, но ошибка прогноза на тестовой выборке оказалась намного выше, чем на обучающей - то есть модель переобучена :( Как я понимаю, причина в том, что во-первых - маленькие группы, во-вторых - пердикторов больше, чем наблюдений...
(
Read more... )
Comments 16
2. Сделать правильную выборку трудно ещё потому, что исходов крайне мало. Случайный лес крайне плохо экстраполирует на области не покрытые данными. Вам лучше использовать любой линейный метод.
Например просто сделать biplot(prcomp(data[,-1]), xlabs=data[,1]) И увидеть четко разделимые естественные группировки. Использовать модель через predict(prcomp(data[,-1]), newdata).
Ну или линейный дискриминантный анализ использовать.
3. Проверить можно кроссвалидацией (только выбрать метод который извлекает семплы с оглядкой на data[,1])
> data <- read.csv2("data.csv ( ... )
Reply
Reply
Узнать степень вклада и выбрать занчимые предикторы можно использовав пакет Boruta или менее строгая var.select из randomForestSRC (есть ещё варианты)
Reply
Reply
Reply
Если это всё (методы, кроссвалидацию их, подбор параметров, выделение оптимального набора предикторов) перебирать, то лучше сразу использовать мета пакет типа caret, там встроено всё, включая корректный семплинг.
Reply
Reply
Reply
Leave a comment