Наука о данных: случайный лес

Случайный лес объясняется легко.

Фон:

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



Дерево решений имеет ряд недостатков, о которых говорится ниже:

1. Дерево решений имеет Низкое смещение и Высокое отклонение.

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

3. Создает нестабильные деревья. Небольшое изменение данных может привести к созданию совершенно другого дерева. Это называется дисперсией.

4. Ученики дерева принятия решений создают предвзятые деревья, если доминирует какой-то класс (в целевой функции).

Решением всех этих проблем, упомянутых выше в дереве решений, является случайный лес.

Интуиция:

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

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

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

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

Вот шаги для реализации случайного леса:

1. Предположим, что в наборе обучающих данных есть N наблюдений (строки) и M функций (столбцы).

2. Выборка из набора обучающих данных выбирается случайным образом с произвольно выбранными строками и случайным образом выбранными признаками.

3. Дерево решений строится с использованием индекса Джини или энтропии (критерии разделения функций).

4. Создайте все дерево решений на основе количества оценщиков (параметр n_ оценщиков).

5. Каждое дерево в лесу дает свое предсказание, и на основе большинства голосов происходит окончательное предсказание.

Ниже приведен образец случайного леса

Справочный код:

Визуализация классификатора случайного леса

Пожалуйста, установите sklearn версии 0.21 или выше (если она еще не установлена) для этого вида визуализации.

Важные параметры в классификаторах случайного леса:

В случайном лесу так много параметров, но самые важные из них перечислены ниже:

Bootstrap: метод выборки точек данных (с заменой или без нее).

Критерий: метод разделения дерева, т.е. Джини или энтропия.

max_depth: максимальная глубина дерева.

n_estimators: общее количество деревьев для создания леса.

min_samples_split: минимальное количество точек данных, помещенных в узел, прежде чем узел будет разделен.

min_samples_leaf: минимальное количество точек данных, разрешенное в листовом узле.

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

Что такое "Случайный" в Случайном лесу?

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

Преимущества случайного леса:

1. Снижает чрезмерную подгонку, точность прогнозов высокая (в основном низкая дисперсия, но может быть высокая систематическая ошибка)

2. Очень эффективен для больших наборов данных.

3. Не влияет из-за множественной коллинеарности. Это происходит, когда две или более независимых переменных сильно коррелированы друг с другом в регрессионной модели.

4. Прогнозирование основано на входных характеристиках, которые считаются важными для классификации.

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

Недостатки случайного леса:

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

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

Хотите подключиться:

Linked In: https://www.linkedin.com/in/anjani-kumar-9b969a39/

Если вам нравятся мои сообщения здесь, на Medium, и вы хотите, чтобы я продолжал эту работу, подумайте о поддержке меня на patreon