Деревья решений - один из самых мощных инструментов анализа данных. Используя деревья решений, мы можем классифицировать и прогнозировать результаты в различных сценариях. В этой статье обсуждается, как можно использовать деревья решений для получения информации из исторических данных и их применения к новым проблемам.

Что такое модели дерева решений?

Модель дерева решений - это простой метод, который можно использовать для классификации объектов по их характеристикам. Например, у вас может быть дерево решений, которое сообщает вам, является ли ваш объект яблоком или нет, на основе следующих атрибутов: цвета, размера и веса. Дерево решений работает, опускаясь от корневого узла до узла решения. Узлы принятия решений имеют ответвления, которые ведут либо к конечным узлам, либо к другим узлам принятия решений. Конечные узлы - это конечные узлы, которые представляют окончательное решение, как и предполагает их название.

Сначала вы можете спросить себя, какое дерево решений имеет какое-либо отношение к машинному обучению, поэтому давайте разберем это подробнее, прежде чем идти дальше. Деревья решений работают, разделяя вещи на разные группы («решение» = «деко- + код»). Другими словами, они дают ключ к пониманию того, как объекты можно классифицировать по их характеристикам.

Поскольку деревья решений являются двоичными, у них есть только два узла решений, которые разделяются на левую и правую ветви. Например, предположим, что есть объект с определенными характеристиками, и вы хотите использовать дерево решений, чтобы классифицировать его как яблоко или не как яблоко. Дерево решений работает, сначала спрашивая, является ли цвет объекта красным или зеленым (корневой узел решения).

Если это так, то мы следуем одному набору ветвей решения, который ведет нас к другому узлу решения, где мы спрашиваем о размере, и если он большой, то мы знаем, что это должно быть яблоко, и это создает листовой узел, в котором мы просто говорим «яблоко. . »

Этот метод может показаться простым, но когда вы добавляете достаточно атрибутов, таких как, например, вес, деревья решений могут стать очень эффективными. В моделях дерева решений эти деревья решений создаются методом, называемым «категориальной оптимизацией».

Проще говоря, каждое дерево решений работает, спускаясь от корневого узла до узла решения. Узлы принятия решений имеют ответвления, которые ведут либо к конечным узлам, либо к другим узлам принятия решений.

Для чего используются деревья решений?

Деревья решений имеют множество приложений в машинном обучении и, в частности, в прогнозном моделировании, обладая рядом преимуществ по сравнению с другими методами, такими как регрессия или нейронные сети.

Деревья решений моделируют сложные отношения между переменными, находя шаблоны в обучающем наборе и применяя их к новым данным. Их можно использовать для прогнозирования вероятности событий и поиска оптимальных стратегий принятия решений для лиц, принимающих решения.

Он также может работать как генеративная модель, находя закономерности в обучающих данных и используя эти шаблоны для прогнозирования ненаблюдаемых случаев. Примером может служить модель дерева решений, которая предсказывает, проголосует ли студент за демократа или республиканца на основе политических взглядов, образования и дохода.

Что такое моделирование дерева случайных решений?

Модель дерева решений использует деревья решений в качестве своей основы, что позволяет классифицировать сложные объекты, рекурсивно разбивая их на более мелкие группы на основе их характеристик. Дерево решений работает, опускаясь от корневого узла до узлов решений (также известных как узлы разделения). Узлы решений представляют собой точку, в которой принимается решение, и имеют ветви решений, которые ведут либо к конечным узлам, либо к нескольким узлам решений.

В каждом узле решения есть ошибка деления на ноль, потому что дерево решений пытается разделиться на слишком много переменных одновременно, что приводит к «переобучению» модели, где оно предсказывает обучающие данные лучше, чем обобщающие тестовые данные. Если вы должны были использовать деревья решений для классификации с помощью scikit-learn, деревья случайных решений создаются с использованием методов рандомизированного построения со статистическими методами, чтобы уменьшить вероятность переобучения.

Деревья случайных решений работают путем создания деревьев решений, но на этот раз рандомизируют, какие функции используются при разделении объектов на разные группы («рандомизированное + построение»). Этот процесс создает несколько моделей дерева решений с немного разными деревьями решений, а затем усредняет точность дерева решений, чтобы снизить вероятность переобучения.

Другой способ уменьшить переоснащение модели дерева решений - использовать метод повышения под названием AdaBoost, что означает «адаптивное усиление». В моделях деревьев решений этот метод работает, начиная с пустого дерева решений и итеративно добавляя узлы решений, пока они улучшают точность классификации. Этот итеративный процесс продолжается до тех пор, пока не перестанут быть добавлены узлы решения или пока не произойдет существенного улучшения в добавляемом узле решения.

Модели дерева решений, использующие ускорение (AdaBoost), начинаются с пустого дерева решений и итеративно добавляют узлы решений для повышения точности. AdaBoost можно использовать, когда деревья решений создаются в scikit-learn в модуле классификатора.

Леса случайных решений - это еще один тип модели дерева решений, который использует несколько рандомизированных деревьев решений, чтобы уменьшить вероятность переобучения, аналогично деревьям случайных решений. Разница между лесами случайных решений и деревьями случайных решений заключается в том, что модели случайных лесов используют усреднение по всем рандомизированным деревьям решений, тогда как модели деревьев случайных решений выбирают только один лучший набор функций при разделении объектов на группы.

Категоризация деревьев решений

Деревья решений можно разделить на два типа: непрерывный ответ и двоичный / многоклассовый ответ. Деревья решений с непрерывным ответом используются для задач, где есть интервальные или непрерывные выходные данные, такие как цены на жилье, доходы или возраст, тогда как деревья решений двоичных / многоклассовых ответов используются, когда у вас есть две возможные категории выходных данных, такие как да или нет, хорошее против плохого и т. д. Процесс построения деревьев решений одинаков для обоих типов деревьев решений.

Если деревья решений представляют собой категориальные модели с узлами решений, которые разделяются проверкой на равенство значений, пень решения - это модель дерева решений, в которой каждый узел решений проверяет только принадлежность к одной группе или классу. Таким образом, вместо использования равенства для разделения решений по переменным, пни решений используют «горячее кодирование» для разделения решений по переменным.

Как работает модель дерева решений?

Для деревьев решений точки входных данных берутся как узлы дерева решений, которые затем располагаются в иерархическом порядке с атрибутами узлов решений, используемыми в качестве границ решений между ними. В каждой области принятия решения одна или несколько ветвей ведут к следующей области решения, и выходные данные генерируются путем классификации точки входных данных в каждом узле решения по соответствующим нетерминальным областям принятия решения в соответствии со значениями их атрибутов.

Однако следует иметь в виду, что для деревьев решений регрессии у нас нет конечных областей решений из-за существования более одной возможной метки класса. В таких случаях мы просто назначаем прогнозируемое значение в пределах доверительного интервала диапазона переменных отклика для каждого конечного узла, т.е. мы прогнозируем среднее значение распределения переменных отклика для этой области решения, если бы мы взяли еще одну случайную выборку из той же совокупности.

Преимущества древовидных алгоритмов

Алгоритмы на основе деревьев обеспечивают следующие преимущества:

  • Эти алгоритмы создают легко понятные модели благодаря их графическому представлению.
  • Они допускают нелинейную разделимость - они допускают нелинейную разделимость (границы решений могут иметь любую форму, а узлы решений могут иметь более одной метки).
  • Они не чувствительны к шкале атрибутов решения (они хорошо работают как для категориальных, так и для непрерывных типов атрибутов решений).

Недостатки древовидных алгоритмов

Алгоритмы на основе дерева имеют следующие недостатки:

  • Поскольку эти модели строят деревья классификации путем рекурсивного разбиения, они могут создавать очень сложные граничные области решений. Это может привести к переобучению моделей дерева решений.
  • Чтобы преодолеть этот недостаток, используются методы сокращения, такие как сокращение количества ошибок. Другой способ - использовать методы регуляризации, такие как регрессия гребня, лассо и т. Д.

Подведение итогов

В этой статье мы увидели, что дерево решений - это инструмент поддержки принятия решений, который использует поиск по ветвям и границам (или любой метод случайной оптимизации) по атрибутам узлов решений для создания моделей дерева решений.

В простейшей форме это можно представить как размещение всех доступных вариантов выбора по краям диаграммы, а затем рисование линий между ними таким образом, что все ответы «Да» идут вниз по одной стороне линии, в то время как все «Нет» »Ответы приземляются на другом.

В каждом узле принятия решения имеется ноль или более чем ноль ветвей, ведущих в зависимости от данных. Может быть не сразу очевидно, как работает этот процесс принятия решений, но деревья решений можно использовать для классификации новых точек данных на основе их значений атрибутов.

Первоначально опубликовано на https://www.cliently.com.