Деревья условного вывода в партийном пакете R: как предсказать важность модели и дисперсии на основе данных OOB? - PullRequest
0 голосов
/ 31 октября 2019

Я использую cforest из пакета party в R для вычисления деревьев условного вывода. Как и в случае с «Случайным лесом», я хотел бы получить объясненную дисперсию и важность дисперсии на основе данных OOB (я читал, что «Случайный лес» возвращает объяснение дисперсии и важность переменной на основе данных OOB). Для этого с cforest я использовал следующий код:

model <- party::cforest(y ~ x1 + x2 + x3 + x4 , data=trainings_set ,  control=cforest_unbiased(ntree=1000, minsplit=25 , minbucket=8 , mtry=4))
model.pred <- predict(model, type="response" , OOB=TRUE)
R2=1 - sum((trainings_set$y-model.pred)^2)/sum((trainings_set$y-mean(trainings_set$y))^2)
varimp_model=party::varimp(model, conditional = TRUE, threshold = 0.2, OOB = TRUE)

Меня интересует, приведет ли команда OOB=TRUE к предсказанию модели и возвращению важности переменной на основе OOB dataof trainings_set?

Я уже публиковал этот вопрос под другим заголовком, публикуя его снова (слегка переработанный), надеюсь, кто-нибудь сможет дать ответ?

1 Ответ

0 голосов
/ 31 октября 2019

Параметр OOB в функции cforest предназначен для a logical defining out-of-bag predictions.

Это только TRUE, когда вы передаете параметр newdata в cforest, который обычно является фреймом тестовых данных. ,Если есть параметр newdata и вы установили OOB=TRUE, тогда вы получите out-of-bag predictions для этого newdata.

Надеюсь, это прояснит ваше сомнение.

...