Help us understand the problem. What is going on with this article?

機械学習⑤ アダブースト (AdaBoost) まとめ

More than 3 years have passed since last update.

アダブースト (AdaBoost) のまとめ

What is アダブースト (AdaBoost) ?

アダブーストは、ランダムよりも少し精度がいいような弱い識別機を組みわせて、強い識別機を作成しようとする機械学習モデルです。
作り方の流れは、
まず、弱い識別機の適用させ、誤分類してしまったものの重みを増やす。
そして、次にその重みがついたものを優先的にみて、分類する。ということを繰り返します。

下記の図を参考にするとわかりやすいです。Youtube のリンクも貼っておいたので、詳しく知りたい方は見てみてください、

Screen Shot 2017-05-13 at 12.44.42.png
Extracted from Alexander Ihler's youtube video

上記の図では、最初にD1で弱い識別機を使って、分類し、D2で誤分類した '+'1個と'-'2個の重みを増やしています。次にその誤分類された3つを優先的に考えて、また分類しています。ここで、重みを増やすのと同時に、正確に分類された他のものの重みは減っています。さらに、D3では、D2で誤分類された'-'3個の重みを増やすと同時に他のものの、重みは減っています。ちなみに、AdaBoost の default code では、この弱い識別機での分類は、DecisionTree (決定木)が使われています。

その繰り返し行った分類の重みを元に、強い識別機というものを作ります。

Screen Shot 2017-05-13 at 13.00.11.png
Extracted from Alexander Ihler's youtube video

default のコード

from sklearn.ensemble import AdaBoostClassifier

AdaBoostClassifier(base_estimator=None, n_estimators=50, learning_rate=1.0, algorithm='SAMME.R', random_state=None)

アダブースト (AdaBoost) 内の Parameter の説明

  • base_estimator

弱い識別機として使われる機械学習モデルのこと。default は、DecisionTreeClassifier (決定木)が使われているが、指定することで他の機械学習モデルを適応することもできる。

  • n_estimators

弱い識別機を使った分類を何回繰り返すかの指定。しかし、その前に強い識別機が100%の精度になったら、そこで終了。

アダブースト (AdaBoost) の 良い点悪い点。

  • 良い点

弱い識別機を幾つか組み合わせるので、正確に分類されやすい。

  • 悪い点

K nearest neighbors と同じで、ノイズ(違うラベルが同じ場所に混在する)や、Outliers (異常値)にも、弱い。過学習になりやすい。

まとめ

以上が現在筆者のわかる範囲での アダブースト (AdaBoost) の概要です。
日々更新していきますので、追加すべきところ、直すべきところありましたら、コメントいただけると幸いです。

kibinag0
Shopifyを使用したWEB制作会社に所属。あくまでも自分が後から見返す用なので、殴り書きみたいになっているところもありますが、ご了承ください。間違っているところ、直したほうがいいと思うところバシバシコメントお願いいたします。TOEIC 975
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
No comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
ユーザーは見つかりませんでした