Последовательность вопросов « > порог», разбивающая пространство на прямоугольные области.
- неоднородность до разбиения (Джини или энтропия)
- неоднородность левой части, взвешенная её долей объектов
- то же для правой части. Дерево выбирает порог, максимизирующий разность
Ключевые тезисы
- Критерии разбиения: Gini и для классификации, для регрессии.
- Не требуют масштабирования и сами ловят нелинейности и взаимодействия.
- Без ограничения глубины и обрезки переобучаются практически всегда.
Какую задачу решает
строит предсказание как последовательность простых вопросов к признакам: «доход больше 50 тысяч?», «стаж меньше года?». Каждый вопрос делит выборку на две части так, чтобы внутри частей объекты стали однороднее по целевой переменной.
Отдельное дерево редко используют ради качества — оно переобучается и неустойчиво. Его ценность в двух других вещах: это единственная популярная модель, решение которой можно прочитать целиком как набор правил, и это строительный блок, из которого собраны и — сильнейшие модели на табличных данных.
Обучите дерево на выборке, затем уберите 5% случайных объектов и обучите заново. С высокой вероятностью изменится сам корневой — а вместе с ним и вся структура ниже, потому что каждое последующее разбиение зависит от предыдущего. Предсказания при этом могут остаться похожими, но «объяснение» станет совсем другим. Именно эта неустойчивость и превращается в достоинство в случайном лесе: разные деревья ошибаются по-разному, и усреднение гасит их ошибки.
Подробный разбор
Каждый внутренний узел содержит предикат вида « > порог ». Объект спускается от корня к листу, отвечая на вопросы; в листе хранится ответ: доля классов или среднее значение цели.
- Границы всегда параллельны осям — отсюда «лесенка» вместо наклонной прямой.
- Дерево глубины разбивает пространство максимум на прямоугольных областей.
- Пропуски и разные масштабы дереву не мешают.
- энтропия — мера неопределённости распределения
- награда, полученная агентом на шаге
- вероятность (или плотность распределения)
- номер или количество: индекс шага, число соседей, кластеров или позиций
- суммирование по всем перечисленным элементам
- логарифм: превращает произведения в суммы и сжимает масштаб
В узле 10 объектов: 6 класса 1 и 4 класса 0. , Джини . Если разбиение даёт слева (5 объектов: 5 и 0) и справа (5 объектов: 1 и 4), то Gain .
max_depth— самый понятный ограничитель сложности.min_samples_leaf— не позволяет создавать листья из одного-двух объектов.min_impurity_decrease— не делать разбиение, если выигрыш ничтожен.- Cost-Complexity Pruning (
ccp_alpha) — сначала вырастить дерево, потом обрезать ветви, чей вклад не окупает сложности.
Где применяется
- Объяснимые правилаДерево глубины 3–4 превращается в понятную схему принятия решения для людей.
- Автоматическое разбиение клиентов или объектов на группы по поведению.
- Разведочный анализБыстро показывает, какие и в каких сочетаниях вообще влияют на цель.
- Базовый элемент и состоят из деревьев — понимание дерева обязательно для их настройки.
Плюсы, минусы и альтернативы
Плюсы
- Полная интерпретируемость: путь от корня до листа — готовое объяснение.
- Не требует и работает с разномасштабными признаками.
- Ловит нелинейности и взаимодействия автоматически.
- Штатно работает с категориальными признаками и пропусками (в реализациях ).
- Быстрое предсказание: несколько сравнений.
Минусы
- Сильно переобучается без ограничений глубины.
- Неустойчиво: небольшое изменение данных даёт совсем другое дерево.
- Границы решения ступенчатые, параллельные осям — диагональную зависимость приближает лестницей.
- Плохо экстраполирует: за пределами обучающего диапазона выдаёт константу.
- смещены в пользу с большим числом уникальных значений.
Брать, если
- Нужны понятные правила, а не только предсказание.
- Идёт разведка данных и надо быстро увидеть структуру.
- Готовится и нужно понимать его базовый элемент.
Не брать, если
- Нужна максимальная метрика — одно дерево почти всегда проиграет .
- Зависимость гладкая и линейная: линейная модель точнее и стабильнее.
- Нужна экстраполяция за пределы обучающих данных.
Чем заменяют
Связанные темы
Деревья и ансамбли
Random Forest85%
Случайный лес · Классическое машинное обучениеБэггинг деревьев со случайными подвыборками объектов и признаков: усреднение резко снижает дисперсию.
Gradient Boosting85%
Градиентный бустинг · Классическое машинное обучениеПоследовательное построение деревьев, каждое из которых исправляет ошибки предыдущего ансамбля.
XGBoost85%
XGBoost · Классическое машинное обучениеРеализация бустинга с регуляризацией в функции потерь, вторым порядком оптимизации и продуманной работой с разреженностью.
LightGBM85%
LightGBM · Классическое машинное обучениеБыстрый бустинг от Microsoft: гистограммное разбиение и рост дерева по листьям вместо по уровням.
CatBoost85%
CatBoost · Классическое машинное обучениеБустинг от Яндекса с упорядоченным кодированием категорий и упорядоченным бустингом против смещения.
SHAP85%
SHAP · Интерпретируемость моделейРаспределение вклада признаков на основе значений Шепли из теории игр — с гарантиями аддитивности и согласованности.
Encoding85%
Кодирование категорий · ДанныеПеревод категориальных признаков в числа: one-hot, ordinal, target encoding, хеширование, эмбеддинги.
Всё, что названо в описании, разобрано здесь же или в соседней теме — переходы под каждым определением.
Разбиение (split)
Условие вида « порог», делящее узел надвое. Выбирается перебором по всем признакам и порогам.
Разбор ниже: Устройство дереваКритерий Джини и энтропия
Меры неоднородности узла: дерево выбирает разбиение, максимально уменьшающее их.
Разбор ниже: Критерий информативности и Information GainГлубина и min_samples_leaf
Главные ограничители роста. Без них дерево дорастает до листьев из одного объекта и запоминает выборку.
Разбор ниже: Переобучение и стрижкаОбрезка (pruning)
Удаление ветвей, не улучшающих качество на отложенной выборке. Альтернатива ограничению роста.
Разбор ниже: Переобучение и стрижкаВажность признаков
Суммарное уменьшение критерия по всем разбиениям . Смещена в сторону признаков с большим числом значений.
Разбор ниже: Критерий информативности и Information GainПрофильная компетенция для ролей: Data Scientist, ML Engineer, Инженер рекомендаций.
Усиливает профиль: Аналитик данных, Продуктовый инженер.
Глава «Классическое машинное обучение» последний раз правилась . Нашли ошибку — напишите.