Как выбрать количество деревьев в обобщенной регрессионной модели?


11

Есть ли стратегия выбора количества деревьев в GBM? В частности, ntreesаргумент в R«S gbmфункции.

Я не понимаю, почему вы не должны устанавливать ntreesмаксимально разумное значение. Я заметил, что большее количество деревьев явно уменьшает изменчивость результатов от нескольких GBM. Я не думаю, что большое количество деревьев приведет к переоснащению.

есть идеи?

Ответы:


3

Это GBM:

« Я не думаю, что ... » - опасная первая часть многих предложений.

Достаточно хорошего бессмысленно без меры добра, рубрики.

Каковы меры благости для любого другого метода?

  • Разница между моделью и данными (sse, ...)
  • Расхождение ошибок в наборе удерживающих (ошибка тренировки против ошибки теста)
  • Отношение параметров к количеству выборок (большинство людей, например, 5 выборок на параметр или 30 выборок на параметр)
  • Перекрестная проверка (методы ансамбля на расхождение тестов ошибок)

Подобно нейронной сети или сплайну, вы можете выполнять кусочно-линейную интерполяцию данных и получать модель, которая не может быть обобщена. Вы должны отказаться от некоторых «низких ошибок» в обмен на общую применимость - обобщение.

Больше ссылок:


2

Я нашел некоторое представление о проблеме: http://cran.r-project.org/web/packages/dismo/vignettes/brt.pdf

gbm.stepФункция может быть использована для определения оптимального количества деревьев. Я до сих пор не уверен, что приводит к увеличению отклонения модели после определенного количества деревьев, поэтому я все еще готов принять ответ, который отвечает на эту часть вопроса!


2
Переоснащение вызывает увеличение. Большинство хороших методов создают задерживающий набор и используют его для тестирования модели, но не для обновления модели. Это позволяет обнаружить начало наложения.
EngrStudent

0

Это рабочее GUID для форсированных регрессионных деревьев из Elith и др .: http://onlinelibrary.wiley.com/doi/10.1111/j.1365-2656.2008.01390.x/full Очень полезно!

Вы должны хотя бы использовать 1000 деревьев. Насколько я понял, вы должны использовать комбинацию скорости обучения, сложности дерева и количества деревьев, которая достигает минимальной прогностической ошибки. Меньшие значения скорости обучения приводят к большему риску обучения для того же количества итераций, в то время как каждая итерация снижает риск обучения. Если количество деревьев достаточно велико, риск можно сделать сколь угодно малым (см .: Hastie et al., 2001, «Элементы статистического обучения, сбора данных, вывода и прогнозирования» ).


Это правда, что Элит и соавт. предложить, как правило, использовать 1000 деревьев. Тем не менее, это основано на детальном анализе прогнозной стабильности для конкретного набора данных, используемого в статье. Кажется маловероятным, что такое же число будет работать для любого возможного набора данных. Возможно, вы могли бы немного расширить свой ответ, предоставив некоторые подробности о проведенном ими анализе, особенно в Приложении S1.
DeltaIV

0

Как обычно в некоторых алгоритмах машинного обучения, Boosting подвергается компромиссной дисперсии в отношении количества деревьев. Грубо говоря, этот компромисс говорит вам о том, что: (i) слабые модели, как правило, имеют высокое смещение и низкую дисперсию: они слишком жесткие, чтобы фиксировать изменчивость в наборе обучающих данных, поэтому также не будут хорошо работать в тестовом наборе (высокий тест ошибка) (ii) очень сильные модели, как правило, имеют низкое смещение и высокую дисперсию: они слишком гибкие и подходят для тренировочного набора, поэтому в тестовом наборе (так как точки данных отличаются от обучающего набора) они также не будут работать хорошо (высокая ошибка теста)

Концепция повышения деревьев состоит в том, чтобы начать с мелких деревьев (слабых моделей) и продолжать добавлять более мелкие деревья, которые пытаются исправить слабости предыдущих деревьев. При выполнении этого процесса ошибка теста имеет тенденцию к снижению (поскольку общая модель становится более гибкой / мощной). Однако, если вы добавите слишком много этих деревьев, вы начнете перегонять тренировочные данные и, следовательно, увеличится ошибка теста. Перекрестная проверка помогает найти нужное место

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.