Вопрос или проблема
У меня есть несколько вопросов, которые я не совсем понимаю относительно алгоритма градиентного бустинга с решающими деревьями:
-
Имеет ли значение начальное значение как $\hat{y}$ или вы можете выбрать любое, например, между 0 и 1?
-
Почему мы подстраиваем дерево под псевдо-остатки? Какова выгода от подстройки деревьев под псевдо-остатки вместо целевых классов?
-
Начальное предсказанное значение $\hat{y}^{(0)}$ не имеет значения для градиентного бустинга. Обычно оно устанавливается на среднее значение целевой переменной для регрессии или логарифмическое отношение вероятностей классов для классификации. Но любое разумное постоянное значение подходит в качестве начальной точки. Ключевое значение в том, что последующие деревья, подстраиваясь под остатки, обновят и улучшат это начальное предсказание. Это может повлиять на время сходимости алгоритма, если выбрано ужасное начальное значение.
-
Мы подстраиваем деревья под псевдо-остатки, а не под целевые классы, потому что это позволяет каждому дереву сосредоточиться на исправлении ошибок модели ансамбля на данный момент. Псевдо-остатки представляют собой разницу между текущими предсказаниями модели и истинной целевой переменной. Поэтому подстраивание дерева для предсказания этих остатков позволяет дереву специализированно работать над сложными примерами, которые текущие деревья обрабатывают неправильно. Эта дополнительная специализация деревьев на остатках делает градиентный бустинг столь эффективным. Деревья, подстраивающиеся под остатки, уменьшают смещение, в то время как деревья, подстраивающиеся непосредственно под целевую переменную, могут переобучиться и увеличить дисперсию.
Я настоятельно рекомендую посмотреть следующие видео с канала StatQuest, которые четко объясняют алгоритмы бустинга.
ИЗМЕНЕНИЕ: Объясняя следующее утверждение
Деревья, подстраивающиеся под остатки, уменьшают смещение, в то время как деревья, подстраивающиеся непосредственно под целевую переменную, могут переобучиться и увеличить дисперсию.
Когда мы подстраиваем решающие деревья непосредственно под целевую переменную (например, напрямую предсказываем цены на жилье), они могут легко переобучиться на обучающих данных. Одно дерево уже является сложной моделью с высокой дисперсией, и подстраивание его сразу под шумные цели часто приводит к переучиванию на шуме и выбросах.
Это переобучение увеличивает дисперсию, не обязательно уменьшая смещение. Таким образом, мы получаем очень сложную, изогнутую модель, которая не может обобщаться.
Однако, когда мы подстраиваем деревья для моделирования остатков, мы меняем цель. Вместо того, чтобы запоминать шумные цели, дерево сосредотачивается на объяснении ошибок текущей модели. Остатки представляют собой смещение нашей модели – примеры, которые она постоянно обрабатывает неправильно.
Подстраивая деревья для исправления этих остатков, мы уменьшаем смещение, ограничивая рост дисперсии, потому что деревья не могут переобучиться относительно того, что было до них. Подстройка под остатки заставляет деревья сосредотачиваться на систематических ошибках, а не на шуме.
Ансамблирование сглаживает дисперсию по множеству деревьев, оставляя нам сильное уменьшение смещения, которое гораздо лучше обобщается. Именно поэтому GBDT превосходит случайные леса, несмотря на то, что оба используют деревья – обучение, сосредоточенное на остатках, предотвращает переобучение.
Ответ или решение
Градиентный бустинг — Почему псевдостатистики?
Вопросы, которые вы задали, касаются важных аспектов работы алгоритма градиентного бустинга, особенно в контексте использования псевдостатистик. Позвольте мне подробно ответить на ваши вопросы.
1. Значение начального значения $\hat{y}^{(0)}$
Начальное значение $\hat{y}^{(0)}$ действительно не играет критической роли, и вы можете выбрать любое разумное значение, например, среднее значение целевой переменной для задач регрессии или логарифмические шансы классов для задач классификации. Тем не менее, установление начального значения близким к среднему значению часто ускоряет сходимость алгоритма. Если вы выберете слишком плохое начальное значение, это может увеличить время сходимости, поскольку алгоритму потребуется больше итераций, чтобы скорректировать ошибку на основании этого начального прогноза.
2. Почему мы подгоняем деревья к псевдостатистикам?
Говоря о псевдостатистиках, важно понимать, что мы подгоняем деревья не к целевым классам, а к псевдостатистикам, потому что это позволяет каждой модели сосредоточиться на исправлении ошибок текущей ансамблевой модели.
Псевдостатистики представляют собой разницу между текущими предсказаниями модели и истинными значениями целевой переменной. Подгоняя дерево для предсказания этих остаточных величин, мы даем модели возможность специализироваться на "трудных" примерах, которые текущие деревья неправильно предсказывают. Этот процесс позволяет деревьям "учиться" на ошибках, а не просто запоминать обучающие данные.
Хотя деревья, подгоняемые по остаткам, сокращают смещение, деревья, подгоняемые непосредственно под целевую переменную, могут привести к переобучению и увеличению дисперсии. Переобученные деревья могут быть слишком сложными и не способны хорошо обобщать данные, особенно если они ориентированы на шум и выбросы в данных.
Пояснение к последнему утверждению
Когда мы подгоняем деревья непосредственно под целевую переменную (например, прямо предсказывая цены на дома), они могут легко переобучиться на тренировочных данных. Одно дерево уже является сложной моделью с высокой дисперсией, и подгонка его под зашумленные целевые величины часто приводит к чрезмерной специализации на шуме и выбросах. Это переобучение увеличивает дисперсию, не обязательно уменьшая смещение, что приводит к очень сложной модели, которая не способна обобщаться.
Однако, когда мы подгоняем деревья к моделям остатков, мы изменяем нашу задачу. Вместо запоминания зашумленных целевых значений дерево сосредоточено на объяснении ошибок текущей модели. Остатки представляют собой наше смещение — примеры, которые модель постоянно ошибается.
Подгоняя деревья к этим остаткам, мы снижаем смещение, одновременно ограничивая рост дисперсии, поскольку деревья не могут переобучаться относительно уже существующей модели. Это приводит к тому, что деревья сосредотачиваются на систематических ошибках, а не на шуме.
Таким образом, ансамблирование смягчает дисперсию через использование множества деревьев, что позволяет нам добиться сильного снижения смещения при улучшении обобщающей способности модели. Именно поэтому градиентный бустинг часто превосходит случайные леса, несмотря на то, что обе техники используют деревья — обучение с акцентом на остатках предотвращает переобучение.
В заключение, использование псевдостатистик в градиентном бустинге является мощной стратегией, позволяющей сосредоточиться на улучшении качества модели, а не на запоминании тренировочных данных.