Дерево решений на основе вложенного классификатора if-else. это набор параллельной оси гиперплоскости, которая делит область на гиперкуб.
Дерево решений строит классификационные или регрессионные модели в виде древовидной структуры. Он разбивает набор данных на более мелкие подмножества с увеличением глубины дерева. Конечным результатом является дерево с узлами решений и конечными узлами. Узел принятия решения (например, Outlook) имеет две или более ветвей (например, Солнечно, Пасмурно и Дождливо). Листовой узел (например, Play) представляет собой классификацию или решение. Верхний узел решения в дереве, соответствующий лучшему предсказателю, называется корневым узлом. Деревья решений могут обрабатывать как категориальные, так и числовые данные.
Терминология:
- Корневой узел. Он представляет собой всю совокупность или выборку, которая затем делится на два или более однородных набора.
- Разделение. Это процесс разделения узла на два или более подузла.
- Узел принятия решения. Когда подузел разделяется на дополнительные подузлы, он называется узлом принятия решения.
- Листовой/конечный узел:узлы без дочерних элементов (без дальнейшего разделения) называются конечными или конечными узлами.
- Сокращение. Когда мы уменьшаем размер деревьев решений, удаляя узлы (в отличие от разделения), этот процесс называется сокращением.
- Ветвь/Поддерево.Подраздел дерева решений называется ветвью или поддеревом.
- Родительский и дочерний узел: узел, который разделен на подузлы, называется родительским узлом подузлов, где подузлы являются дочерними по отношению к родительскому узлу.
Алгоритм, используемый в деревьях решений:
поскольку приведенный выше набор данных содержит два класса на выходе. сначала узнайте вероятность каждого класса в выходе (P (y +) и P (y-)).
Р(у+) = 9/14 и Р(у-)=5/14
Характеристики:
если классы распределены поровну, чем энтропия=1. если один класс полностью доминирует, чем энтропия = 0.
Если образец полностью однороден, энтропия равна нулю, а если образец разделен поровну, то энтропия равна единице.
• Для гауссовского распределения набор данных широко распределен, поэтому энтропия максимальна, но меньше по сравнению с равномерным распределением, поскольку все имеют одинаковое значение.
• В случае равномерного распределения набор данных распределяется равномерно, поэтому энтропия максимальна.
- Для пикового распределения минимальная энтропия близка к нулю, поскольку набор данных распределен неравномерно.
Примесь Джини:
Примесь Джини вычисляется быстрее, потому что квадрат вычислить очень легко, чем энтропию, поэтому примесь Джини вычисляется быстрее. Время, затрачиваемое на расчет журнала, намного быстрее, чем у оруженосца. поэтому Джини намного быстрее.
Получение информации:
Построение дерева решений сводится к поиску атрибута, дающего наибольший прирост информации (т. е. наиболее однородных ветвей). Сначала вычислите энтропию до разрыва переменной (0,94). чем вычислить энтропию после разрыва.
вычислить значение энтропии для каждого класса в переменной.
Строительство ДТ:
Шаг 1. Рассчитайте энтропию цели.
Шаг 2. Затем набор данных разделяется на разные атрибуты. Вычисляется энтропия для каждой ветви. Затем она пропорционально добавляется, чтобы получить общую энтропию для расщепления. Полученная энтропия вычитается из энтропии до разделения. Результатом является прирост информации или уменьшение энтропии.
Шаг 3. Выберите атрибут с наибольшим приростом информации в качестве узла принятия решения, разделите набор данных на его ветви и повторите тот же процесс для каждой ветви.
Шаг 4a. Ветвь с энтропией 0 является конечным узлом.
Шаг 4b. Ветвь с энтропией больше 0 нуждается в дальнейшем разбиении.
Разделить категориальную переменную:
• Попробуйте разорвать использование всех функций и выбрать тот, который дает максимальный информационный прирост.
• Разбить каждую функцию, найти информационный прирост каждого узла и выбрать узел с максимальным IG.
• Разрывайте, пока он не станет чистым узлом.
• Если у нас очень мало точек, мы не выращиваем деревья, потому что переоснащение увеличивает шум.
• Если глубина меньше недообучения.
Разделение числовых признаков:
Категориальную переменную легко сломать, но не числовую переменную. Для числового признака сначала отсортируйте его в порядке возрастания, создайте класс (f1,f2…), каждый f имеет два набора данных, поэтому вычислите идентификатор каждого f. затем сравните с каждым значением в качестве потенциального порога, найдите f1 с максимальным значением IG, где вы разделитесь, чтобы сформировать дерево решений.
Стандартизация функций:
нам не нужно стандартизировать функции, потому что здесь мы заботимся только о меньшем или большем. Это не метод дистанционной базы.
Примечание. если у вас есть категориальная переменная, такая как пин-код/почтовый индекс. набор данных очень высок, потому что все разные. все зависит от значения сортировки, где каждое значение сортировки является потенциальным порогом. в этом случае мы преобразуем категориальные переменные в числовые переменные. Преобразуя в числовые переменные, избавьтесь от разреженности данных. здесь каждое числовое число делится на две части, в то время как в других случаях множество переменных может быть бесполезным.
(Нет нормализации, стандартизация не требуется)
Переоснащение и недообучение
по мере увеличения глубины вероятность того, что чистая точка будет очень малой, увеличивается. так что есть шанс переобуться. если глубина увеличивается, интерпретируемость уменьшается. Таким образом, правильная глубина достигается с помощью перекрестной проверки.
Underfit имеет очень мало гиперкубов, тогда как overfit имеет много гиперкубов, что приводит к очень меньшему количеству точек в качестве чистого узла в гиперкубах, т. Е. Overfit. гиперкуб - кубический ящик.
Сложность времени обучения и выполнения
если у вас большой набор данных, дерево решений может оказаться не лучшим вариантом. Дерево решений хорошо подходит для большого набора данных, но имеет меньшую размерность. это также хорошо для требований с низкой задержкой.
В лучшем случае сбалансированного дерева глубина будет 𝑂(log𝑁)O(logN), но дерево решений выполняет локально оптимальные разбиения, не заботясь о много о балансе. Это означает, что в худшем случае глубина 𝑂(𝑁)O(N) возможна — в основном, когда каждое разбиение просто разбивает данные на 1 и n-1 примеров, где n — количество примеров текущего узла.
Регрессия с использованием деревьев решений
Вместо использования IG используйте MSE. Вычислите MSE в каждом узле, возьмите ожидаемую сумму MSE на следующем уровне, в зависимости от того, что уменьшит MSE, будет выбрано.
Случаи:
Набор данных о дисбалансе: это влияет на расчет энтропии/MSE. Так сбалансируйте это
Большое d: нехорошо, избегайте горячего кодирования. если у вас есть категориальная переменная с большим количеством функций. преобразовать их в числовую переменную.
Мультиклассовая классификация: вам не нужно делать паузу в один куплет (OVR). энтропия уже учитывает несколько классов в расчетах.
Поверхность принятия решения: нелинейный, параллельный оси гиперкуб.
Взаимодействие функций:добавлена встроенная функция в DT, например f1*f2/f1².
Выброс: влияет на дерево и создает нестабильное дерево.
Интерпретируемость: отлично интерпретируется, когда глубина невелика.
Важность функции: рассчитывается, если функция встречается часто и из-за нее IG сильно увеличивается.
Для визуализации:
Ссылка:
Google Image
Прикладной ИИ