Алгоритм использует метод бутстрэпа (англ. ''bootstrap''):
Равномерно возьмем из выборки <tex>Из всего множества объектов равновероятно выберем N</tex> объектов с возвращением. Это означаетзначит, что после выбора каждого из объектов мы будем <tex>N</tex> раз равновероятно выбирать произвольный объект выборки, причем каждый раз мы выбираем из всех исходных <tex>N</tex> объектоввозращать его в множество для выбора. Отметим, что из-за возвращения среди них окажутся повторынекоторые объекты могут повторяться в выбранном множестве. <br> Обозначим новую выборку через <tex>X_1</tex>. Повторяя процедуру <tex>M</tex> раз, сгенерируем <tex>M</tex> подвыборок <tex>X_1 ... X_M</tex>. Теперь мы имеем достаточно большое число выборок и можем оценивать различные статистики исходного распределения.
Шаги алгоритма бэггинг:
Реализации бустинга:
<ul><li> * XGBoost — изначально исследовательский проект Tianqi Chen, сейчас открытая программная библиотека, поддерживая сообществом<li> * CatBoost — открытая программная библиотека разработанная компанией Яндекс<li> * LightGBM — открытая программная библиотека разработанная компанией Яндекс</ul>
Применение бустинга:
<ul><li> * поисковые системы<li> * ранжирования ленты рекомендаций<li> * прогноз погоды<li> * оптимизации расхода сырья<li> * предсказания дефектов при производстве.<li> * исследованиях на Большом адронном коллайдере (БАК) для объединения информации с различных частей детектора LHCb в максимально точное, агрегированное знание о частице.</ul>
== Различия между алгоритмами ==
<ul>
<li> Оба алгоритма используют N базовых классификаторов
<ul>
<li> Бустинг использует последовательное обучение </li>
<li> Бэггинг использует параллельное обучение </li>
from pydataset import data
<font color="green">#Считаем данные The Boston Housing Dataset<ref>[http://www.cs.toronto.edu/~delve/data/boston/bostonDetail.html The Boston Housing Dataset]</ref> </font>
df = data('Housing')