TL; DR:
Есть ли что-то, что я могу отметить в исходном randomForest
вызове, чтобы избежать повторного запуска функции predict
, чтобы получить предсказанные категориальные вероятности, а не только вероятную категорию?
Подробнее:
Я использую пакет randomForest.
У меня есть модель вроде:
model <- randomForest(x=out.data[train.rows, feature.cols],
y=out.data[train.rows, response.col],
xtest=out.data[test.rows, feature.cols],
ytest=out.data[test.rows, response.col],
importance= TRUE)
где out.data
- это кадр данных, а feature.cols
- смесь числовых и категориальных признаков, а response.col
- двоичная переменная TRUE
/FALSE
, которую я принудительно вставлял в factor
, чтобы randomForest
будет правильно относиться к ней как к категорическому.
Все работает хорошо, и переменная model
возвращается мне правильно. Тем не менее, я не могу найти флаг или параметр для передачи функции randomForest
, так что model
возвращается мне с вероятностями из TRUE
или FALSE
. Вместо этого я получаю просто предсказанные значения. То есть, если я посмотрю на model$predicted
, я увижу что-то вроде:
FALSE
FALSE
TRUE
TRUE
FALSE
.
.
.
Вместо этого я хочу увидеть что-то вроде:
FALSE TRUE
1 0.84 0.16
2 0.66 0.34
3 0.11 0.89
4 0.17 0.83
5 0.92 0.08
. . .
. . .
. . .
Я могу получить выше, но для этого мне нужно сделать что-то вроде:
tmp <- predict(model, out.data[test.rows, feature.cols], "prob")
[test.rows
фиксирует номера строк для тех, которые использовались во время тестирования модели. Подробности здесь не показаны, но просты, так как идентификаторы тестовых строк выводятся в model
.]
Тогда все работает нормально. проблема заключается в том, что модель большая и занимает очень много времени, и даже само прогнозирование занимает некоторое время. Поскольку предсказание должно быть совершенно ненужным (я просто ищу, чтобы вычислить кривую ROC в наборе тестовых данных, набор данных, который должен был быть уже рассчитан), я надеялся пропустить этот шаг. Есть ли что-то, что я могу указать в исходном randomForest
вызове, чтобы избежать повторного запуска функции predict
?