Последовательное построение деревьев, каждое из которых исправляет ошибки предыдущего .
- ансамбль после m-й итерации
- то, что уже построено на прошлых шагах — оно не переобучается заново
- скорость обучения: доля, с которой новое дерево входит в ансамбль (обычно 0.01–0.1)
- новое дерево; оно приближает антиградиент потерь — для MSE это просто остатки
Ключевые тезисы
- Каждое дерево аппроксимирует антиградиент .
- и число деревьев связаны обратно: меньше шаг — больше итераций.
- Стандарт де-факто для табличных задач при наличии достаточного объёма данных.
Какую задачу решает
строит не параллельно, как лес, а последовательно: каждое новое дерево обучается исправлять ошибки предыдущих. Формально оно приближает антиградиент на текущих предсказаниях — отсюда и название.
Разница с лесом принципиальна. Лес усредняет сильные модели и снижает ; складывает слабые (деревья глубины 3–6) и снижает смещение. Именно поэтому бустинг систематически точнее на табличных данных — и именно поэтому он переобучается, если не остановиться вовремя: каждое следующее дерево продолжает подгонку, включая подгонку под шум.
Правило простое: произведение примерно постоянно для одного уровня качества. При хватит 100 деревьев, при понадобится около 1000, но результат обычно окажется чуть лучше и стабильнее. Рабочий рецепт: возьмите , поставьте заведомо большое число деревьев (5000) и включите раннюю остановку с терпением в 50 итераций — алгоритм сам подберёт нужное количество. Настраивать руками при наличии бессмысленно.
Подробный разбор
- истинное значение целевой переменной
- объект: вектор признаков
- функция потерь — то, что минимизируется при обучении
- частная производная — чувствительность к одному аргументу
Для антиградиент — это просто остаток , поэтому первое объяснение всегда звучит как «второе дерево предсказывает ошибку первого». Для других вместо остатка стоит их .
, среднее . Остатки: . Первое дерево предсказывает их приближённо, скажем . При новый ответ: , остатки уменьшились до .
| Параметр | Эффект | Типичные значения |
|---|---|---|
| learning_rate ν | вклад каждого дерева | 0.01–0.1 |
| n_estimators | число деревьев | подбирается по |
| max_depth | сложность базовой модели | 3–8 |
| subsample | доля объектов на дерево | 0.7–1.0 |
| colsample | доля на дерево | 0.7–1.0 |
ν и число деревьев связаны обратно: уменьшили шаг вдвое — увеличивайте число деревьев примерно вдвое. Практика: зафиксировать небольшой ν, поставить заведомо большое число деревьев и остановиться по валидации.
- дисперсия — мера разброса значений
- стандартное отклонение — разброс величины
- объект: вектор признаков
- Бэггинг берёт глубокие деревья (малое смещение, большой разброс) и усредняет — падает Var.
- берёт неглубокие деревья (большое смещение, малый разброс) и складывает — падает Bias.
- Поэтому переобучается при слишком большом числе итераций, а — почти нет.
Где применяется
- Табличные данныеСтандарт индустрии: скоринг, отток, спрос, рекомендации, антифрод — и большинство соревнований.
- РанжированиеLambdaMART и его наследники — базовая технология поисковых и рекомендательных выдач.
- Прогноз временных рядовНа признаках-лагах конкурентен классическим моделям и легко учитывает внешние факторы.
- Сильная база для сравненияПрежде чем строить на таблице, стоит убедиться, что уже проиграл.
Плюсы, минусы и альтернативы
Плюсы
- Лучшее качество на табличных данных среди распространённых моделей.
- Не требует , работает с разномасштабными и категориальными признаками.
- Автоматически ловит нелинейности и взаимодействия.
- Поддерживает разные : регрессия, классификация, ранжирование, квантили.
- Зрелые быстрые реализации с обработкой пропусков и категорий.
Минусы
- Переобучается без и подобранных .
- Обучение последовательно и хуже параллелится, чем бэггинг.
- Больше , и они взаимозависимы.
- Не интерпретируется напрямую — нужен или permutation importance.
- Чувствителен к шуму в разметке: усердно подгоняется под ошибочные метки.
- Не экстраполирует за пределы обучающего диапазона.
Брать, если
- Данные табличные и нужна максимальная метрика.
- Есть для .
- разнородны: числа, категории, пропуски вперемешку.
Не брать, если
- Данные — изображения, звук или длинный текст: там правят .
- Нужна прямая интерпретируемость модели без дополнительных инструментов.
- Разметка сильно зашумлена и почистить её нельзя.
- Нужен прогноз далеко за пределами наблюдавшихся значений (тренд во времени).
Чем заменяют
Связанные темы
Ансамблирование · Деревья и ансамбли
Random Forest98%
Случайный лес · Классическое машинное обучениеБэггинг деревьев со случайными подвыборками объектов и признаков: усреднение резко снижает дисперсию.
Stacking and Blending85%
Стекинг и блендинг · Классическое машинное обучениеАнсамбль из разнородных моделей, поверх которых обучается мета-модель. Стандартный приём соревнований и способ выжать последние проценты.
Variance85%
Дисперсия · Математический справочникМера разброса значений вокруг среднего.
Cross-validation85%
Кросс-валидация · Оценка моделейМногократное разбиение выборки, дающее оценку качества вместе с её разбросом.
Decision Trees85%
Решающие деревья · Классическое машинное обучениеПоследовательность вопросов «признак > порог», разбивающая пространство на прямоугольные области.
XGBoost85%
XGBoost · Классическое машинное обучениеРеализация бустинга с регуляризацией в функции потерь, вторым порядком оптимизации и продуманной работой с разреженностью.
LightGBM85%
LightGBM · Классическое машинное обучениеБыстрый бустинг от Microsoft: гистограммное разбиение и рост дерева по листьям вместо по уровням.
CatBoost85%
CatBoost · Классическое машинное обучениеБустинг от Яндекса с упорядоченным кодированием категорий и упорядоченным бустингом против смещения.
SHAP85%
SHAP · Интерпретируемость моделейРаспределение вклада признаков на основе значений Шепли из теории игр — с гарантиями аддитивности и согласованности.
Encoding85%
Кодирование категорий · ДанныеПеревод категориальных признаков в числа: one-hot, ordinal, target encoding, хеширование, эмбеддинги.
Всё, что названо в описании, разобрано здесь же или в соседней теме — переходы под каждым определением.
Аддитивная модель
: предсказание накапливается по деревьям.
Разбор ниже: Последовательное исправление ошибокОстатки и антиградиент
Новое дерево учится на лосса по текущим предсказаниям — для это в точности остатки.
Разбор ниже: Последовательное исправление ошибокLearning rate
Вклад каждого дерева. Меньше — точнее, но деревьев нужно больше. Главная связка настройки.
Разбор ниже: Главные гиперпараметрыГлубина деревьев
3–6 обычно: глубокие деревья превращают из слабых в ансамбль .
Разбор ниже: Главные гиперпараметрыРанняя остановка
Число деревьев подбирается по валидации, а не задаётся заранее. Основная защита от .
Разбор ниже: Бустинг и разложение ошибкиСмещение против дисперсии
снижает смещение и наращивает — зеркально по отношению к бэггингу.
Разбор ниже: Бустинг и разложение ошибкиПрофильная компетенция для ролей: Data Scientist, ML Engineer, Инженер рекомендаций.
Усиливает профиль: Аналитик данных, Продуктовый инженер.
Спрашивают на собеседовании: Яндекс — Classic ML, Сбер — Скоринг и риски, Т-Банк — Антифрод и риски, Ozon — Спрос и логистика, Wildberries — Спрос, цены и акции, МТС — Отток и персональные предложения, Альфа-Банк — Скоринг и кредитные риски, Альфа-Банк — Персонализация и CVM, ВТБ — Риск-модели, Газпромбанк — Корпоративные риски, Совкомбанк — Скоринг и взыскание, Точка — Антифрод и комплаенс, ЮMoney — Антифрод платежей, X5 Tech — Спрос и пополнение, X5 Tech — Цены и промо, Магнит — Ассортимент и спрос, Магнит — Лояльность и персонализация, Самокат — Спрос и ассортимент даркстора, Самокат — Логистика и сроки доставки, Dodo Brands — Прогноз заказов и планирование смен, Спортмастер — Закупка и ассортимент, Спортмастер — Рекомендации и омниканальность, Циан — Оценка недвижимости, Авиасейлс — Прогноз цен и подсказки, Авиасейлс — Ранжирование предложений, МегаФон — Отток и предложения, билайн — Маркетинг и удержание, Ростелеком — Качество сети и отток, Лаборатория Касперского — Детектирование вредоносного ПО, Positive Technologies — Аналитика событий и приоритизация, BI.ZONE — Антифрод и защита от автоматизации, СКБ Контур — Проверка контрагентов, Selectel — Мощности и надёжность, Т1 — Корпоративный ML, Газпром нефть — Геология и добыча, Газпром нефть — Переработка и оптимизация, СИБУР — Качество и режимы производства, Северсталь — Оптимизация производства, Росатом — Промышленный ИИ.
Тема встречается в тесте по направлениям — ошибки приведут обратно на эту страницу.
Разбор архитектуры, где эта тема — один из кирпичей: требования, развилки, цифры и режимы отказа.
Глава «Классическое машинное обучение» последний раз правилась . Нашли ошибку — напишите.