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

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

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

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

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

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

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

Некоторые часто используемые методы обучения ансамблю -

1. Голосование

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

2. Средневзвешенное значение

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

pred1=model1.predict_proba(x_test)
pred2=model2.predict_proba(x_test)
pred3=model3.predict_proba(x_test)

finalpred=(pred1*0.3+pred2*0.3+pred3*0.4)

3. Наложение и смешивание

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

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

Наложение и смешивание:подход к выполнению ручной сборки состоит в том, чтобы передать выходные данные отдельных моделей классификатору/регрессору уровня 2 в качестве производных метафункций, которые будут решать, какой вес должен быть присвоен каждому из модель выдает окончательный прогноз. Таким образом, выходные данные отдельных моделей объединяются с различными весовыми коэффициентами в окончательном прогнозе. Это высокоуровневый подход к стекингу и смешиванию.

4. Упаковка

  • Это параллельное ансамблевое обучение, означающее параллельное обучение группы отдельных моделей. Каждая модель обучается на случайном подмножестве данных.
  • Это метод, помогающий уменьшить дисперсию классификатора и уменьшить переобучение.
  • Бэггинг создает различные обучающие подмножества из образцов обучающих данных с заменой, и алгоритм с одним и тем же набором гиперпараметров строится на этих разных подмножествах данных. Таким образом, один и тот же алгоритм с одинаковым набором гиперпараметров подвергается воздействию разных частей данных, что приводит к небольшой разнице между отдельными моделями. Прогнозы этих отдельных моделей объединяются путем получения среднего значения всех значений для регрессии или большинства голосов для проблемы классификации.
  • Обратите внимание, что использование больших подвыборок не гарантирует улучшения ваших результатов. В бэггинге существует компромисс между точностью базовой модели и прибылью, которую вы получаете от бэггинга. Агрегирование с помощью бэггинга может значительно улучшить ансамбль, если у вас нестабильная модель, но когда ваши базовые модели более стабильны (обучены на более крупных подвыборках с более высокой точностью), улучшения от бэггинга уменьшаются.
  • примеры: случайный лес, деревья решений в пакетах, дополнительные деревья

Недостатки мешков -

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

5. Прокачка

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

  • Повышение – это последовательный процесс, при котором каждая последующая модель пытается исправить ошибки предыдущей модели. Последующие модели зависят от предыдущей модели. Другими словами, мы подбираем последовательные деревья (случайная выборка), и на каждом этапе цель состоит в том, чтобы найти чистую ошибку из предыдущего дерева.
  • Повышение — это комплексный метаалгоритм, предназначенный, главным образом, для уменьшения систематической ошибки и большей дисперсии.
  • При бустинге из исходного набора данных создается подмножество, которому присваиваются равные веса. Эта модель используется для прогнозирования всего набора данных, а ошибки рассчитываются с использованием фактических и прогнозируемых значений. более высокие веса. Создается другая модель и делаются прогнозы для набора данных, эта модель пытается исправить ошибки предыдущей модели. Точно так же создается несколько моделей, каждая из которых исправляет ошибки предыдущей модели. Окончательная модель (сильный ученик) представляет собой средневзвешенное значение всех моделей (слабый ученик).

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

  • Пример: Adaboost, Stochastic Gradient Boosting,GBM,XGBM,Light GBM,CatBoost

Недостатки повышения —

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

И бустинг, и бэггинг – это однородные ансамблевые методы (работающие с одним базовым алгоритмом), но голосование/усреднение и суммирование – разнородные методы (работающие с разными базовыми алгоритмами).

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

На этом пока все…

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

Если вы, как и я, изучаете машинное обучение, подпишитесь на меня, чтобы не пропустить новые статьи. Давайте отправимся в это путешествие вместе :)

Вы также можете подписаться на меня в Linkedin