Бэггинг деревьев со случайными подвыборками объектов и признаков: усреднение резко снижает дисперсию.
Ключевые тезисы
- Деревья строятся независимо, поэтому обучение легко параллелится.
- OOB-оценка даёт качество без отдельной валидационной выборки.
- Надёжный бейзлайн: почти не требует настройки гиперпараметров.
Подробный разбор
2 подтем — раскройте любую, чтобы увидеть объяснение, формулы, примеры и интерактивные графики.
1Бэггинг и бутстрэп
Почему усреднение независимых моделей снижает разброс.
Бутстрэп — выборка того же размера с возвращением. Каждое дерево обучается на своей такой выборке, поэтому деревья получаются разными. Их усреднение гасит случайные ошибки отдельных деревьев.
- дисперсия — мера разброса значений
- стандартное отклонение — разброс величины
- суммирование по всем перечисленным элементам
Именно поэтому случайный лес дополнительно выбирает случайное подмножество признаков в каждом узле: это снижает между деревьями и делает усреднение эффективнее.
2OOB-оценка и важности признаков
Два бесплатных бонуса, которые даёт бутстрэп.
При бутстрэпе примерно объектов не попадают в выборку дерева. На них можно измерить качество без отдельной валидации — это и есть OOB-оценка.
- Встроенная важность (по снижению неоднородности) смещена в пользу признаков с большим числом уникальных значений.
- Перестановочная важность честнее: перемешиваем признак и смотрим падение качества на OOB.
- Коррелированные признаки делят важность между собой — не читайте важности как «вклад в причину».
Случайный лес почти не переобучается с ростом числа деревьев: добавление деревьев только стабилизирует ответ. Ограничивать нужно глубину и минимальный размер листа, а не количество деревьев.
Связанные темы
Ансамблирование · Переобучение и регуляризация · Деревья и ансамбли
Gradient Boosting98%
Градиентный бустинг · Классическое машинное обучениеПоследовательное построение деревьев, каждое из которых исправляет ошибки предыдущего ансамбля.
Variance97%
Дисперсия · Математический справочникМера разброса значений вокруг среднего.
Stacking and Blending85%
Стекинг и блендинг · Классическое машинное обучениеАнсамбль из разнородных моделей, поверх которых обучается мета-модель. Стандартный приём соревнований и способ выжать последние проценты.
Cross-validation85%
Кросс-валидация · Оценка моделейМногократное разбиение выборки, дающее оценку качества вместе с её разбросом.
Decision Trees85%
Решающие деревья · Классическое машинное обучениеПоследовательность вопросов «признак > порог», разбивающая пространство на прямоугольные области.
XGBoost85%
XGBoost · Классическое машинное обучениеРеализация бустинга с регуляризацией в функции потерь, вторым порядком оптимизации и продуманной работой с разреженностью.
LightGBM85%
LightGBM · Классическое машинное обучениеБыстрый бустинг от Microsoft: гистограммное разбиение и рост дерева по листьям вместо по уровням.
CatBoost85%
CatBoost · Классическое машинное обучениеБустинг от Яндекса с упорядоченным кодированием категорий и упорядоченным бустингом против смещения.
SHAP85%
SHAP · Интерпретируемость моделейРаспределение вклада признаков на основе значений Шепли из теории игр — с гарантиями аддитивности и согласованности.
Encoding85%
Кодирование категорий · ДанныеПеревод категориальных признаков в числа: one-hot, ordinal, target encoding, хеширование, эмбеддинги.
Regularization80%
Регуляризация · Оптимизация обученияЛюбое ограничение сложности модели, снижающее переобучение.
Weight Decay80%
Затухание весов · Оптимизация обученияПостепенное сжатие весов к нулю на каждом шаге оптимизации.
Early Stopping80%
Ранняя остановка · Оптимизация обученияОбучение останавливается, когда валидационная метрика перестала улучшаться.
Overfitting80%
Переобучение · Практика MLМодель запомнила обучающую выборку вместе с шумом: train-метрика отличная, val — плохая.
Underfitting80%
Недообучение · Практика MLМодель слишком проста или недоучена: ошибка велика и на train, и на валидации.