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

Хорошо, что такое метод ансамбля?

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

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

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

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

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

Как строится одно дерево решений? Да, теперь вы это знаете. Он разделяется с использованием Джини, энтропии и всего, что имеет более высокий информационный выигрыш, который используется для разделения корневого узла, и процесс продолжается для формирования дерева решений. Такие деревья решений объединяются в случайный лес, в котором используется метод пакетирования, который называется Bootstraping + Aggregating.

Проще говоря, Boostraping берет выборку из данных с заменой, и объединение всех таких выборок, взятых из совокупности, называется Bagging. Бэггинг - это комплексная техника, при которой для принятия решения собираются разные образцы. Здесь, в Random Forest, мы выбираем такие выборки из совокупности и формируем деревья решений, а не одно дерево решений. Здесь есть много деревьев, сформированных из разных образцов (образцов начальной загрузки), которые все объединены в случайный лес. Среднее значение всех прогнозов, сделанных "n" деревьями решений, дает прогноз для случайного леса. Этот тип ансамбля называется параллельным обучением, тогда как при усилении используется последовательное обучение. Параллель указывает, что, поскольку данные обучаются на разных выборках, тогда существует независимость между базовыми учащимися (каждое дерево решений), тогда все оценки достигаются, чтобы найти оптимальную оценку. Последовательный указывает на наличие зависимости между базовыми учащимися, которая используется всеми алгоритмами повышения. Random Forest использует только технику мешков, которая уменьшает дисперсию в наборе данных.

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

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

from sklearn.ensemble import RandomForestRegressor, RandomForestClassifier
from sklearn.model_selection import train_test_split
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size = 0.25, random_state = 0)
model = RandomForestRegressor(n_estimators = 10, random_state = 0)
model.fit(X_train, y_train)
model.predict(X_test)

Здесь n_estimators - это количество деревьев, которые должны быть построены для этой модели, random_state выбирает одну выборку из совокупности, и при выполнении каждый раз, когда выборка выбирается, если вы используете то же случайное состояние. 😮Такой полезный параметр, да !!

Чтобы узнать больше о параметрах в Random Forest, обратитесь к этому сайту sklearn для Классификатора и Регрессора.

Преимущества и недостатки Random Forest:

Плюсы: -

  1. Это уменьшает переоснащение в деревьях решений и помогает повысить точность
  2. Он гибок как для классификации, так и для задач регрессии.
  3. Он хорошо работает как с категориальными, так и с непрерывными значениями.
  4. Автоматизирует отсутствующие значения, присутствующие в данных.
  5. Нормализация данных не требуется, поскольку используется подход, основанный на правилах.
  6. Он способен обрабатывать большие наборы данных с более высокой размерностью. Он может обрабатывать тысячи входных переменных и определять наиболее значимые переменные, поэтому считается одним из методов уменьшения размерности. Кроме того, модель выводит важность переменной, которая может быть полезна для выбора функции.
  7. В нем есть методы для балансировки ошибок в наборах данных, где классы не сбалансированы.
  8. Здесь, при загрузочной выборке, одна треть (скажем) данных не используется для обучения и может использоваться для тестирования. Это так называемые «пробы вне мешка». Ошибка, оцениваемая по этим образцам вне сумки, называется ошибкой отсутствия из сумки. Оценка "вне сумки" так же точна, как и при использовании тестового набора того же размера, что и обучающий набор. Таким образом, использование оценки ошибок вне пакета устраняет необходимость в резервном наборе тестов.

Минусы: -

  1. Он, безусловно, хорошо справляется с классификацией, но не так хорошо, как для задачи регрессии, поскольку не дает точных предсказаний непрерывного характера. В случае регрессии он не прогнозирует выход за пределы диапазона обучающих данных, и что они могут превосходить наборы данных, которые особенно зашумлены.
  2. Случайный лес может показаться подходом «черного ящика» для разработчиков статистических моделей, поскольку здесь очень мало контроля над тем, что делает модель. В лучшем случае вы можете попробовать разные параметры и случайные числа. Из-за множества деревьев решений он также страдает от интерпретируемости и не может определить значимость каждой переменной.
  3. Это требует больших вычислительных мощностей, а также ресурсов, поскольку строит многочисленные деревья для объединения их результатов.
  4. Это также требует много времени на обучение, так как объединяет множество деревьев решений для определения класса.

Стойте твердо, верьте в себя и преследуйте свои мечты

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

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