Существуют различные алгоритмы машинного обучения, с которыми мы взаимодействуем в повседневной жизни и используем, даже не подозревая об этом. Один из наиболее часто используемых алгоритмов, который один человек использует в своей повседневной жизни, - это дерево решений. Возникает вопрос: как?
Мы, люди, должны принимать сотни решений каждый день, будь то просмотр видео на YouTube, покупка продуктов или размещение заказа на сайте онлайн-покупок. Получаем несколько мыслей и рекомендаций. Мы вкладываем все это в свой разум и наконец принимаем решение. Звучит просто, правда? Теперь давайте разберемся, как решения принимаются алгоритмами машинного обучения, и в чем на самом деле смысл и необходимость.
Оглавление:
1.) Дерево решений
- Типы узлов
- Важная терминология
- Алгоритм
2.) Случайный лес
- Ансамблевые приемы
- Алгоритм
3.) Сравнение
Древо решений:
Согласно Википедии, «дерево решений - это инструмент поддержки принятия решений, который использует древовидную модель решений и их возможных последствий, включая случайные исходы событий, затраты на ресурсы и полезность. Это один из способов отобразить алгоритм, который содержит только условные управляющие операторы ».
Как правило, дерево решений задает вопрос и на основе ответа классифицирует объект / человека / функцию. Классификация может быть категориальной или числовой. По большей части деревья решений довольно интуитивно понятны для работы; вы начинаете с вершины и спускаетесь вниз, пока не дойдете до точки, где дальше вы не сможете спуститься; вот как вы классифицируете образец.
Давайте рассмотрим пример, чтобы понять, как выглядит дерево решений. Мы должны определить, является ли данное животное Ястребом, Пингвином, Дельфином или Медведем. Итак, мы начинаем с того, есть ли у него перья или нет, если это птица, то это либо ястреб, либо пингвин, а если у нее нет перьев, то это может быть либо дельфин, либо медведь. Теперь, в следующий ход, мы спрашиваем, может он летать или нет, если да, то это ястреб, если нет, то пингвин. С другой стороны, мы спрашиваем, есть ли у него плавники? Если да; это дельфин, если нет, то медведь. Таким образом, формируется простое дерево решений, как показано ниже.
Типы узлов в дереве решений:
⇒ Вершина дерева называется «Корневой узел» или просто «Корень».
⇒ Затем есть «внутренние узлы» или, можно сказать, «узлы принятия решений». У этих узлов есть стрелки, указывающие на них, также указывающие от них. Они показывают, что нужно принять решение.
⇒ Наконец, листовые узлы или только конечные узлы. У них есть стрелки, указывающие на них, но не направленные от них. Они показывают результат пути решения.
Важная терминология:
⇒ Энтропия: она известна как мера случайности, или мы можем сказать, что энтропия используется как способ измерения «смешанности» столбца.
⇒ Прирост информации: это помогает нам понять общую энтропию, которая снизилась после разделения. Его можно рассчитать как (Энтропия до разделения - Взвешенная энтропия после разделения)
⇒ Примесь: это говорит нам о том, насколько данные смешаны в результате. Это помогает проверить однородность
Примечание: чистый узел имеет нулевую энтропию.
Теперь давайте посмотрим, как этот алгоритм применяется машиной:
- Найдите атрибут для первого разветвления.
- Проверьте примесь, выбрав один узел любого объекта.
- Рассчитайте энтропию подузла и получение информации.
- Повторите это для другой функции, чтобы начать процесс.
- Перейдите к разделению подузлов и вычислению энтропии и прироста информации.
- Выберите лучшее из этого рекурсивного разбиения.
Случайный лес:
Как следует из названия; Случайный лес - это набор различных деревьев решений, построенных вместе для большого набора данных. Правильное определение случайного леса согласно Википедии «Случайные леса или леса случайных решений - это метод обучения ансамбля для классификации, регрессии и других задач, которые работают путем построения множества деревьев решений во время обучения и вывода класса, который является режимом классы или средний / средний прогноз отдельных деревьев ».
Случайный лес в основном использует две техники.
а.) Начальная загрузка: когда у нас очень большой набор данных, создание единого дерева решений может не дать хорошего результата. Итак, мы случайным образом выбираем некоторые функции и некоторые наблюдения и составляем N различных деревьев решений с этими случайно выбранными функциями и наблюдениями. Но мы следим за тем, чтобы все особенности и наблюдения были выбраны хотя бы один раз.
б) Бэггинг: этот метод используется, когда мы хотим получить какое-то решение из созданного нами случайного леса. Итак, мы берем несколько n различных деревьев решений; передать наши данные из этих деревьев, а затем получить совокупный результат для принятия решения.
Алгоритм для случайного леса:
1. Для b = от 1 до B
(a) взять загрузочную выборку z * размера N из обучающих данных (b) Вырастить случайное дерево леса Tb (рекурсивное повторение для каждого конечного узла) i. выбрать случайным образом m переменную из переменной p ii. Выложите лучшую переменную ноду / точку разделения из m iii. Разделить узел на два дочерних узла
2. Выведите ансамбли деревьев {𝑻𝒃} 1 в B
Когда выбрать дерево решений или случайный лес?
Деревья решений можно использовать, когда набор данных сравнительно невелик, например, для больших наборов данных. Для классификации 10 000 000 данных и 10 000 атрибутов требуются часы и дни. В то время как случайный лес можно использовать, когда у нас есть такой большой набор данных, поскольку он разбивает данные на более мелкие части.
⇒ строит деревья решений
⇒ усредняет значения дерева решений
⇒ делает упаковку
⇒ рассчитывает точную оценку.
Случайные леса иногда трудно интерпретировать, поэтому, если мы хотим, чтобы результат был интерпретируемым, мы должны выбрать дерево решений, поскольку его сравнительно просто интерпретировать.