"Машинное обучение"

Почему выбирают случайный лес, а не деревья решений

Краткое руководство по деревьям решений и случайному лесу.

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

Ансамблевой версией деревьев решений является случайный лес.

Таблица содержания

  1. Деревья решений
  • Введение в деревья решений.
  • Как работает дерево решений?
  • Внедрение деревьев решений с нуля.
  • Плюсы и минусы деревьев решений.

2. Случайный лес

  • Введение в случайный лес
  • Как работает случайный лес?
  • Реализация научного набора для Random Forest
  • Плюсы и минусы Random Forest.

Деревья решений

Введение в деревья решений

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

Весь этот процесс создает древовидную структуру. первый узел разделения называется корневым узлом. Конечные узлы называются листьями и связаны с меткой класса. Пути от корня к листу определяют правила классификации.

Предположим, вы сотрудник и хотите есть переработанную пищу.

Ваш образ действий будет зависеть от нескольких обстоятельств.

Если вы не голодны, вы не будете тратить деньги на наркоманов. Но если вы голодны, то выбор меняется, ваш следующий шаг зависит от ваших следующих обстоятельств, например, вы купили обед или нет?

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

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

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

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

Деревья решений состоят из двух компонентов:

  • Энтропия - рассматривается как случайность системы. Это мера чистоты или примесей узла.

Энтропия максимальна, когда p = 0,5, т.е. оба результата имеют одинаковую пользу.

  • Прирост информации - это уменьшение энтропии. Это разница между неопределенностью начального узла и взвешенной примесью двух дочерних узлов.

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

Сначала мы разделим функцию с наибольшим объемом информации. Это рекурсивный процесс до тех пор, пока все дочерние узлы не станут чистыми или пока прирост информации не станет нулевым.

Цель дерева решений: максимальное получение информации и минимизация энтропии

Допустим, у нас есть выборка из 60 студентов с тремя переменными Пол (мальчик / девочка), класс (XI / XII) и W восемь. (От 50 до 100 кг). 15 из этих 60 занимаются футболом в свободное время. Теперь мы хотим создать модель, чтобы предсказать, кто будет играть в футбол в свободное время? В этой задаче нам нужно разделить студентов, которые играют в футбол в свободное время, на основе очень важной входной переменной между всеми тремя.

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

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

Внедрение деревьев решений с нуля

Реализация Sci-kit Learn

Визуализация дерева решений

Плюсы и минусы деревьев решений

Плюсы

  • Легко интерпретировать
  • Хорошо обрабатывает как категориальные, так и непрерывные данные.
  • Хорошо работает с большим набором данных.
  • Не чувствителен к выбросам.
  • Непараметрический характер.

Минусы

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

Случайный лес

Введение в случайный лес

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

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

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

Но вы думаете, что совет Лакшая несколько необъективен, и задали Мегхне (другому вашему другу) тот же вопрос. Она тоже дала рекомендацию, но вы снова сочли это рискованным выбором. Вы повторили этот процесс и задали «n» друзьям тот же вопрос, теперь вы добрались до некоторых общих мест, рекомендованных вашими друзьями. Вы собираете все голоса и объединяете их. Вы решаете отправиться в место, набравшее наибольшее количество голосов. Здесь вы используете технику случайного леса.

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

Как работает случайный лес?

Предположим, что в нашем наборе данных есть функции «m»:

  1. Случайно выбранные объекты « удовлетворяют условию km.
  2. Среди функций k вычислите корневой узел, выбрав узел с наибольшим приростом информации.
  3. Разделите узел на дочерние узлы.
  4. Повторите предыдущие шаги n раз.
  5. В итоге получается лес, состоящий из n деревьев.
  6. Выполните загрузку, т.е. объединение результатов всех деревьев решений вместе.

Реализация Sci-kit для Random Forest

Плюсы и минусы случайного леса

Плюсы:

  • Устойчив к выбросам.
  • Хорошо работает с нелинейными данными.
  • Снижение риска переобучения.
  • Эффективно работает с большим набором данных.
  • Лучшая точность, чем другие алгоритмы классификации.

Минусы:

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

Заключение

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

Как всегда, большое спасибо за чтение, и, пожалуйста, поделитесь этой статьей, если вы нашли ее полезной!

Не стесняйтесь подключаться:

LinkedIn ~ https://www.linkedin.com/in/dakshtrehan/

Instagram ~ https://www.instagram.com/_daksh_trehan_/

Github ~ https://github.com/dakshtrehan

Следите за дальнейшими блогами по машинному обучению / глубокому обучению.

Средний ~ https://medium.com/@dakshtrehan

Хотите узнать больше?

Обнаружение COVID-19 с помощью глубокого обучения

Неизбежный алгоритм искусственного интеллекта: TikTok

Почему ВЫ несете ответственность за убийство Джорджа Флойда и массовые беспорядки в Дели?

Кластеризация: что это такое? Когда это использовать?

Начните свое путешествие по машинному обучению с k-ближайших соседей

Наивное байесовское объяснение

Объяснение функций активации

Объяснение оптимизации параметров

Объяснение градиентного спуска

Объяснение логистической регрессии

Объяснение линейной регрессии

Определение идеального соответствия вашей модели машинного обучения

Ура!