Что такое дерево решений?
Дерево решений — это своего рода контролируемый алгоритм машинного обучения.
который строит модель прогнозирования для функций набора данных в древовидной форме,
растущие от корня, расположенного вверх, вниз к листьям.
Допустим, мы хотим предсказать, сдаст ли студент свои экзамены на основе трех переменных; результаты тестов, посещаемость занятий и тяжелая работа.
Корневой узел, представляющий всю совокупность или выборку.
является верхним узлом дерева, в данном примере это тяжелая работа.
Узлы принятия решений являются результатом разделения либо корневого узла, либо
другой узел решения, который является другими функциями в наборе данных.
Конечный узел — это узел, в котором разделение больше не может выполняться.
который является меткой класса прогнозируемой переменной; в этом примере
студент сдает экзамены.
При удалении узла принятия решения из дерева создается ветвь, и процесс удаления называется сокращением.
Как работает алгоритм дерева решений?
- Он принимает самую важную функцию в наборе данных
- Разделяет функцию на следующую функцию, пока она не примет решение.
- Этот процесс продолжается до тех пор, пока не будет достигнут листовой узел (предсказанные метки класса).
Как и в приведенном выше примере, в дереве решений будет использоваться самая важная функция, скажем, Тяжелая работа.
и разделить его на другие функции, чтобы принять окончательное решение о том, что студент сдаст экзамены.
Откуда мы знаем, какую функцию нужно разделить, это приводит нас к Энтропии и Получению информации.
Энтропия
Энтропия измеряет нечистоту группы наблюдений.
Энтропия решает, как разделить дерево решений,
выбор функций с низкой энтропией вместо функций с более высокой энтропией.
Как рассчитать энтропию?
В примере, который я привел, предположим, что у нас есть 30 студентов, и из них 13 не сдали экзамен, а 17 сдали экзамен.
Если мы сломаем корневой узел,
оценка функционального теста получает 12 студентов, а
посещаемость функции получает 18 студентов.
Как мы решаем, какой узел выбрать, учитывая, что в наборе данных больше признаков?
Воспользуемся формулой энтропии.
Энтропия = — Вероятность (Класс признаков 1) X Log[Вероятность (Класс признаков 1)] — Вероятность (Класс признаков 2) X Log [ Вероятность (Класс признаков 2)]
Приведенная энтропия для функции Test Score and Attendance:
Энтропия функции оценки результатов теста = — Вероятность (пройдено) X Log[Вероятность (пройдено)] — Вероятность (непройдено) X Log[ Вероятность (непройдено)]
Энтропия результатов теста = — Вероятность (5/12) X Log[Вероятность (5/12)] — Вероятность (7/12) X Log[ Вероятность (7/12)] = 0,66
Энтропия функции посещаемости = — Вероятность (пройдено) X Журнал [Вероятность (пройдено)] — Вероятность (не пройдено) X Журнал [ Вероятность (не пройдено)]
Энтропия функции посещаемости = — Вероятность (13/18) X Log[Вероятность (13/18)] — Вероятность (15/18) X Log[ Вероятность (15/18)] = 0,168
Если мы собираемся выбрать узел для деления,
это будет функция посещаемости, потому что она имеет низкую энтропию,
то есть его наблюдения чище, чем у Test Score, и мы с большей вероятностью получим там больше наблюдений,
что очевидно, потому что у него больше учеников, которые сдали экзамен, чем у функции Test Score.
Следовательно, мы говорим, что функция посещаемости дает больше прироста информации, чем результат теста.
Чем ниже энтропия, тем выше чистота, следовательно, тем выше прирост информации, и наоборот.
Подгонка
Когда наша модель точно соответствует обучающим данным и
плохо работает с тестовыми данными, это приводит к переобучению.
Обрезка
Отсечение предотвращает чрезмерную подгонку в моделях принятия решений.
Либо с помощью Pre-Pruning, т. е. остановки роста узла решения, если он меньше определенного числа,
Или Постобрезка, т. е. выращивание дерева до глубины и удаление узлов в зависимости от значимости.
Преимущества деревьев решений
- Простой для понимания и интерпретации.
- В отличие от других методов, он требует небольшой подготовки данных.
- Может обрабатывать данные как в категориальном, так и в числовом формате
- Используется при прогнозировании более чем одного выхода
Недостатки деревьев решений
- Деревья могут стать настолько сложными, что не смогут хорошо обобщить данные.
- Отсутствие стабильности и небольшие вариации данных могут привести к созданию совершенно другого дерева.
- Дерево решений создает предвзятое дерево, если некоторые классы в определенной функции являются доминирующими, следовательно, необходимо сбалансировать набор данных перед подбором модели.
Заключение
Таким образом, основная цель дерева решений,
состоит в том, чтобы разбить функции в наборе данных
один за другим в зависимости от важности принятия конкретного решения
что в большинстве случаев является классом предсказанных функций.