Почему для классификации можно использовать дерево решений
Что проверяют
Понимаете ли вы механику построения дерева: что именно оптимизируется в каждом узле и почему граница получается ступенчатой. И назовёте ли слабые места сами, не дожидаясь наводящего вопроса.
Как отвечать
Дерево жадно подбирает в каждом узле пару «признак и порог», которая сильнее всего снижает неоднородность выборки. Для классификации мера неоднородности это критерий Джини или энтропия. Разбиения ортогональны осям признаков, поэтому решающая граница складывается из прямоугольников. Лист хранит распределение классов попавших в него объектов, predict_proba это доля класса в листе.
Почему дерево уместно для классификации:
- не нужна нормировка: любое монотонное преобразование признака не меняет дерево;
- ловит нелинейность и взаимодействия признаков без ручного конструирования;
- работает с многоклассовой задачей напрямую, без схемы «один против всех»;
- решение объясняется путём от корня до листа, это ценят в скоринге.
Ограничения назвать самому: одно дерево переобучается, поэтому обязательны max_depth, min_samples_leaf, отсечение ветвей и контроль на отложенной выборке. Дерево неустойчиво, замена части выборки даёт другую структуру. Линейную границу оно приближает лесенкой и не умеет экстраполировать за границы обучающих значений. Из-за неустойчивости на практике берут ансамбли: лес усредняет независимые деревья, бустинг строит их последовательно.
Где спотыкаются
Говорят, что дерево принимает категориальные признаки как есть. В теории да, на практике DecisionTreeClassifier в sklearn принимает только числа и требует кодирования. Родные категориальные разбиения есть в бустинговых библиотеках, и это отдельный механизм.
Читают важность признаков буквально. Важность, посчитанная по снижению неоднородности, смещена в сторону признаков с большим числом уникальных значений: идентификатор клиента окажется наверху списка. Надёжнее перестановочная важность на отложенной выборке.
Забывают про дисбаланс классов. На выборке с редким целевым классом дерево уходит в мажоритарный, доля верных ответов выглядит прекрасно, а полнота близка к нулю. Нужны веса классов, метрики по кривой полнота-точность и подбор порога.