Имеет ли смысл использовать выбор объектов перед случайным лесом?

Ответы:

6

Да, это так, и это довольно часто. Если вы ожидаете, что более ~ 50% ваших функций даже не являются избыточными, но совершенно бесполезны. Например, пакет randomForest имеет функцию-обертку rfcv (), которая предварительно обучит randomForest и пропустит наименее важные переменные. Функция rfcv приведена в этой главе . Не забудьте включить выбор объектов + моделирование во внешний цикл перекрестной проверки, чтобы избежать чрезмерных оптимистических результатов.

[редактировать ниже]

Я мог бы модерировать «совершенно бесполезно». Один случайный лес чаще всего не будет таким, как, например, регрессия с лассо-регуляризацией, полностью игнорирующая особенности, даже если они (в моделируемой ретроспективе) были случайными характеристиками. Разбиения дерева решений по функциям выбираются по локальным критериям в любом из тысяч или миллионов узлов и впоследствии не могут быть отменены. Я не рекомендую сокращать число функций до одного более высокого выбора, но для некоторых наборов данных возможно добиться существенного увеличения эффективности прогнозирования (оцениваемой путем повторной внешней перекрестной проверки) с использованием этого выбора переменных. Типичным выводом будет то, что сохранение 100% функций или только нескольких процентов работает хуже, и тогда может быть широкий средний диапазон с аналогичной оценочной эффективностью прогнозирования.

Возможно, разумное правило большого пальца: когда можно ожидать, что лассо-подобная регуляризация послужит лучше, чем регуляризация, похожая на гребень, для данной проблемы, тогда можно попытаться предварительно обучить случайный лес и ранжировать объекты по внутреннему внешнему виду. перекрестной проверки важности переменной и попробуйте отбросить некоторые из наименее важных функций. Важность переменной количественно определяет, насколько уменьшается перекрестно проверенный прогноз модели, когда конкретный объект переставляется (значения перемешиваются) после обучения перед прогнозированием. Никто никогда не будет уверен, следует ли включать какую-то одну особенность или нет, но, вероятно, гораздо легче предсказать по верхним 5% признакам, чем нижним 5%.

С практической точки зрения время выполнения вычислений может быть уменьшено, и, возможно, некоторые ресурсы могут быть сэкономлены, если существует фиксированная стоимость приобретения для каждой функции.

Сорен Хавелунд Веллинг
источник
5
Способность данных сообщать вам, что функция бесполезна, строго ограничена, и я надеюсь, что опция, на которую вы ссылаетесь, интегрирована в алгоритм случайного леса. Было бы нецелесообразно предварительно удалять объекты перед отправкой объектов-кандидатов алгоритму случайного леса.
Фрэнк Харрелл
@FrankHarrell, я попытался уточнить свой ответ
Сорен Хавелунд Веллинг
2
Я не согласен с тем, что вы выбираете разные правила подсчета очков для разных целей. Неправильное правило оценки точности приводит к выбору неправильных характеристик и присвоению им неправильных весов. Более очевидным является произвол в определенных правилах подсчета очков. Гораздо лучше выбрать оптимальную прогностическую модель, а затем использовать твердую теорию принятия решений для принятия оптимальных решений с использованием этой модели. Это делается путем применения функции полезности к непрерывным предсказаниям.
Фрэнк Харрелл
1
@FrankHarrell - можешь дать подробный ответ на этот вопрос? очевидно, у вас есть веские аргументы против выбора функций ...
ihadanny
1
Лучший способ узнать об этом - провести тщательную внутреннюю проверку при начальной загрузке процедуры, которая пытается сделать выбор функции, по сравнению с процедурой, которая этого не делает. Довольно часто прогностическая дискриминация (при измерении с использованием правильного правила оценки точности или даже с помощью индекса (область ROC)) лучше, когда выбор объекта не предпринимается. Выбор функций почти всегда произвольный. c
Фрэнк Харрелл