Boosting — это метод моделирования ансамбля, который пытается построить сильный классификатор из числа слабых классификаторов. Это делается путем построения модели с использованием последовательно слабых моделей. Во-первых, модель строится из обучающих данных. Затем строится вторая модель, которая пытается исправить ошибки, присутствующие в первой модели. Эта процедура продолжается, и модели добавляются до тех пор, пока не будет правильно предсказан полный набор обучающих данных или пока не будет добавлено максимальное количество моделей.
AdaBoost был первым действительно успешным алгоритмом повышения, разработанным для двоичной классификации. Модели AdaBoost относятся к классу ансамблевых моделей машинного обучения. Из буквального значения слова «ансамбль» мы можем легко лучше понять, как работает эта модель. Модели ансамбля берут на себя ответственность за объединение различных моделей, а затем создают усовершенствованную / более точную метамодель. Эта метамодель имеет сравнительно высокую точность прогнозирования по сравнению с соответствующими аналогами. Алгоритм AdaBoost подпадает под методы повышения ансамбля, поскольку он объединяет несколько моделей для получения более точных результатов, и это делается в два этапа: Несколько слабых учеников могут учиться на обучающих данных.Комбинируя эти модели для создания метамодели, эта метамодель направлена
на устранение ошибок, совершаемых отдельными слабыми учениками.AdaBoost — это сокращение от Adaptive Boosting, это очень популярный метод повышения, который объединяет несколько «слабых классификаторов» в один «сильный классификатор».
Окончательная или комбинированная гипотеза H вычисляет знак взвешенной комбинации слабых гипотез.
T
F(x)=∑α(t)*ht(x)
t=1
Это эквивалентно утверждению, что H вычисляется как взвешенное большинство голосов слабых гипотез ht, где каждой присваивается вес α(t). Так что да, итоговая возвращенная модель — это взвешенное голосование всех слабых учеников, обученных этой итерации.
Алгоритм:
Инициализируйте набор данных и присвойте равный вес каждой точке данных.Предоставьте это в качестве входных данных для модели и определите ошибочно классифицированные точки данных.Увеличьте вес ошибочно классифицированных точек данных.
if (got required results):
Goto step End
else:
Goto step Start
End