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”. 2010年7月9日閲覧。
  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.