コンテンツにスキップ

英文维基 | 中文维基 | 日文维基 | 草榴社区

AdaBoost

出典: フリー百科事典『ウィキペディア(Wikipedia)』

AdaBoost(Adaptive Boosting、エイダブースト、アダブースト)は、Yoav FreundRobert Schapire によって考案された[1]機械学習アルゴリズムである。メタアルゴリズムであり、他の多くの学習アルゴリズムと組み合わせて利用することで、そのパフォーマンスを改善することができる。AdaBoost は前の分類機の間違いに応じて調整された次の分類機を作るという意味で適応的 (Adaptive) である。AdaBoost はノイズの多いデータや異常値に影響を受ける。しかし、いくつかの場面では、多くの学習アルゴリズムより過剰適合の影響を受けにくい。

AdaBoost は、それぞれの標本に対し、弱分類器英語版 を、 から まで順に適用し、それぞれの分類器が正解したか否かを判断する。間違って分類された標本に対応する重み は、より重くされる(あるいは、正しく分類された標本の場合は、重みを減らす)。これらの標本に対する重みから、次の t のループでは正しい分類器を早く探す事が出来る。

二分類のアルゴリズム

[編集]

Given: where

Initialize

For :

  • Find the classifier that minimizes the error with respect to the distribution :
, where
  • if then stop.
  • Choose , typically where is the weighted error rate of classifier .
  • Update:

where is a normalization factor (chosen so that will be a probability distribution, i.e. sum one over all x).

Output the final classifier:

The equation to update the distribution is constructed so that:

Thus, after selecting an optimal classifier for the distribution , the examples that the classifier identified correctly are weighted less and those that it identified incorrectly are weighted more. Therefore, when the algorithm is testing the classifiers on the distribution , it will select a classifier that better identifies those examples that the previous classifer missed.

ブースティングの統計的理解

[編集]

ブースティングは凸集合の関数上に関する凸損失関数の最小化とみなすことができる[2]。特に、損失関数を最小化するために指数関数の損失関数:

および関数に対して探索を行う:

を用いる。

関連項目

[編集]

脚注

[編集]
  1. ^ Yoav Freund, Robert E. Schapire (1995年). “A Decision-Theoretic Generalization of on-Line Learning and an Application to Boosting”. July 9 2010閲覧。
  2. ^ T. Zhang, "Convex Risk Minimization", Annals of Statistics, 2004.

外部リンク

[編集]
  • icsiboost, an open source implementation of Boostexter
  • NPatternRecognizer , a fast machine learning algorithm library written in C#. It contains support vector machine, neural networks, bayes, boost, k-nearest neighbor, decision tree, ..., etc.