AdaBoost

AdaBoost

AdaBoost (сокращение от Adaptive Boosting) — алгоритм машинного обучения, предложенный Йоавом Фройндом (en:Yoav Freund) и Робертом Шапирe (en:Robert Schapire). Этот алгоритм может использоваться в сочетании со многими другими алгоритмами обучения для улучшения их эффективности. AdaBoost является адаптивным в том смысле, что каждый следующий классификатор строится по объектам, неверно классифицированным предыдущими классификаторами. AdaBoost чувствителен к шуму в данных и выбросам. Однако он менее подвержен переобучению, чем многие другие алгоритмы обучения.

AdaBoost вызывает слабый классификатор в цикле  t = 1,\ldots,T. После каждого вызова обновляется распределение весов D_{t}, которые отвечают важности каждого из объектов обучающего множества для классификации. На каждой итерации веса каждого неверно классифицированного объекта возрастают, таким образом новый классификатор «фокусирует своё внимание» на этих объектах.

Алгоритм для задачи построения бинарного классификатора

Дано: (x_{1},y_{1}),\ldots,(x_{m},y_{m}) где x_{i} \in X,\, y_{i} \in Y = \{-1, +1\}

Инициализируем D_{1}(i) = \frac{1}{m}, i=1,\ldots,m.

Для каждого t = 1,\ldots,T:

  • Находим классификатор h_{t} : X \to \{-1,+1\} который минимизирует взвешенную ошибку классификации: h_{t} = \arg \min_{h_{j} \in \mathcal{H}} \epsilon_{j}, где  \epsilon_{j} = \sum_{i=1}^{m} D_{t}(i)[y_i \ne h_{j}(x_{i})]
  • Если величина \epsilon_{t} \geqslant 0.5, то останавливаемся.
  • Выбираем \alpha_{t} \in \mathbf{R}, обычно \alpha_{t}=\frac{1}{2}\textrm{ln}\frac{1-\epsilon_{t}}{\epsilon_{t}} где \epsilon_{t} взвешенная ошибка классификатора h_{t}.
  • Обновляем:

D_{t+1}(i) = \frac{ D_{t}(i) \, e^{- \alpha_{t} y_{i} h_{t}(x_{i})} }{ Z_{t} }
где Z_{t} является нормализующим параметром (выбранным так, чтобы D_{t+1} являлось распределением вероятностей, то есть \sum_{i=1}^{m} D_{t+1}(i) = 1).

Строим результирующий классификатор:

H(x) = \textrm{sign}\left( \sum_{t=1}^{T} \alpha_{t}h_{t}(x)\right)

Выражение для обновления распределения D_{t} должно быть сконструировано таким образом, чтобы выполнялось условие:

e^{- \alpha_{t} y_{i} h_{t}(x_{i})} \begin{cases} <1, & y(i)=h_{t}(x_{i}) \\ >1, & y(i) \ne h_{t}(x_{i}) \end{cases}

Таким образом, после выбора оптимального классификатора h_{t} \, для распределения D_{t} \,, объекты x_{i} \,, которые классификатор h_{t} \, идентифицирует корректно, имеют веса меньшие, чем те, которые идентифицируются некорректно. Следовательно, когда алгоритм тестирует классификаторы на распределении D_{t+1} \,, он будет выбирать классификатор, который лучше идентифицирует объекты неверно распознаваемые предыдущим классификатором.

Ссылки



Wikimedia Foundation. 2010.

Игры ⚽ Нужна курсовая?

Полезное


Смотреть что такое "AdaBoost" в других словарях:

  • AdaBoost — AdaBoost, short for Adaptive Boosting, is a machine learning algorithm, formulated by Yoav Freund and Robert Schapire. It is a meta algorithm, and can be used in conjunction with many other learning algorithms to improve their performance.… …   Wikipedia

  • AdaBoost — (ou adaptive boosting) est une méthode de boosting (intelligence artificielle, apprentissage automatique) introduite par Yoav Freund et Robert Schapire. Ce fut l une des premières méthodes pleinement fonctionnelles permettant de mettre en œuvre… …   Wikipédia en Français

  • Méthode de Viola et Jones — Un exemple de détection de visage par la méthode de Viola et Jones. La méthode de Viola et Jones est une méthode de détection d objet dans une image numérique, proposée par les chercheurs Paul Viola et …   Wikipédia en Français

  • BrownBoost — is a boosting algorithm that may be robust to noisy datasets. BrownBoost is an adaptive version of the boost by majority algorithm. As is true for all boosting algorithms, BrownBoost is used in conjunction with other machine learning methods.… …   Wikipedia

  • BrownBoost — BrownBoost  алгоритм бустинга, который показал свою эффективность на зашумленных наборах данных. Как и все алгоритмы бустинга, BrownBoost используется в сочетании с другими алгоритмами машинного обучения. Алгоритм BrownBoost был предложен… …   Википедия

  • Yoav Freund — Infobox Scientist name = Yoav Freund image width = caption = birth date = birth place = residence = nationality = field = Computer Science work institution = University of California, San Diego alma mater = University of California, Santa Cruz… …   Wikipedia

  • Boosting methods for object categorization — Given images containing various known objects in the world, a classifier can be learned from them to automatically categorize the objects in future images. Simple classifiers built based on some image feature of the object tend to be weak in… …   Wikipedia

  • Robert Schapire — Infobox Scientist name = Robert Elias Schapire image width = caption = birth date = birth place = residence = nationality = field = Computer Science work institution = AT T LabsPrinceton University alma mater = Brown UniversityMassachusetts… …   Wikipedia

  • Boosting — is a machine learning meta algorithm for performing supervised learning. Boosting is based on the question posed by KearnsMichael Kearns. Thoughts on hypothesis boosting. Unpublished manuscript. 1988] : can a set of weak learners create a single… …   Wikipedia

  • LPBoost — Linear Programming Boosting (LPBoost) is a supervised classifier from the Boosting family of classifiers. LPBoost maximizes a margin between training samples of different classes and hence also belongs to the class of margin maximizing supervised …   Wikipedia


Поделиться ссылкой на выделенное

Прямая ссылка:
Нажмите правой клавишей мыши и выберите «Копировать ссылку»