Как работает градиентный бустинг

Классический алгоритм machine learning строит одну модель сразу. Бустинг работает иначе: он собирает ансамбль слабых моделей, последовательно исправляющих ошибки друг друга.

Процесс:
1. Первое дерево строится как грубое приближение целевой переменной
2. Вычисляются остатки — насколько дерево ошиблось на каждом объекте
3. Следующее дерево обучается предсказывать эти остатки
4. Итоговый прогноз — взвешенная сумма всех деревьев

«Градиент» в названии — потому что выбор направления каждого следующего дерева определяется градиентом функции потерь (обобщение на произвольные дифференцируемые потери, не только MSE).

Итоговый прогноз = T₁(x) + η·T₂(x) + η·T₃(x) + ...
где η — learning rate (скорость обучения, 0.01–0.3)

Важно: чем меньше learning rate, тем больше деревьев нужно — и тем устойчивее модель к переобучению. Стандартная практика: learning rate 0.05–0.1 + ранняя остановка по валидационной выборке.

Применение в e-commerce

Предиктивная аналитика

Бустинг — де-факто стандарт для задач бинарной классификации и регрессии на табличных данных:
— Предсказание оттока (churn prediction)
— Скоринг вероятности покупки в сессии
— Предсказание вероятности возврата товара
— Динамическая оценка кредитного риска (BNPL, рассрочка)

Ранжирование в рекомендациях

В двухэтапных рекомендательных пайплайнах бустинг занимает второй этап — реранкинг. После того как embedding-модель (two-tower, item2vec) отобрала 100–500 кандидатов, LightGBM/XGBoost переупорядочивает их с учётом:

Признак Описание
Контекст сессии Просмотренные товары, категория текущей страницы
Пользовательские атрибуты Сегмент, RFM, история покупок
Товарные атрибуты Маржа, наличие, рейтинг, новинка
Мерчандайзинговые правила Буст приоритетных позиций

Поисковое ранжирование

В e-commerce поиске бустинг ранжирует результаты, обучаясь на кликах и покупках (Learning to Rank: LambdaMART — разновидность бустинга для задач ранжирования).

Регуляризация и переобучение

Основные параметры, защищающие от переобучения:
max_depth — глубина дерева (3–6 для бустинга, не нужна большая)
min_child_samples — минимум объектов в листе
subsample / colsample_bytree — случайная подвыборка данных и признаков
reg_alpha, reg_lambda — L1/L2 регуляризация весов листьев

При правильной настройке градиентный бустинг на хорошо подготовленных признаках конкурирует с нейросетями на большинстве e-commerce табличных задач.