AI研究所 - AI(人工知能)に脅かされないために、AI(人工知能)を作る側の人間になる -

HOME  >  AI(人工知能)用語集  >  アンサンブル学習

アンサンブル学習

アンサンブル学習は複数のモデル(学習器)を融合させて1つの学習モデルを生成する手法です。”三人寄れば文殊の知恵”のように、複数のモデルの予測値を様々な手法で組み合わせ、予測精度を向上させることに用いられます。

機械学習のモデルの当てはまりの良さを評価する際、バイアスとバリアンスの2種類の指標が用いられます。バイアスは実際値と予測値との誤差の平均で、バリアンスは予測値がどれだけ散らばっているかを示す度合いです。つまり、バイアスとバリアンスの値が小さいほど予測値と実際の値の誤差が小さいことになります。よって、学習効率を上げるにはバイアスとバリアンスをともに下げる必要があります。

アンサンブル学習は、複数の学習器を組み合わせてこのバイアスとバリアンスを調整します。調整の仕方によって、バギング・ブースティング・スタッキングの3種類があります。


バギング (“Bootstrap Aggregating”の略)は、バリアンスを下げるために行われます。学習データの情報を全て使うのでなく、ブートストラップ法で分割したデータを弱学習器で学習し、最終的な学習器に統合します。ブートストラップとは、復元抽出によってサブデータを作成する手法のことです。分類問題の場合は最大値、回帰問題の場合は平均をとります。並列処理が可能で、バギングを利用したアンサンブル学習にはランダムフォレストなどが知られます。


ブースティング (Boosting)は、バイアスを下げるために行われます。以前に使用したデータを再利用(復元抽出)して、逐次的に弱学習器を構築します。したがってバギングと異なり、並列処理はできません。ブースティングを利用したアンサンブル学習には勾配ブースティングマシンなどが知られます。


スタッキング (Stacking)は、モデルを積み上げていくことで、バイアスとバリアンスをバランスよく調整する手法です。まず、ブートストラップ法で得たデータセットをランダムに選んだ様々な学習器で学習させます。次に、この予測値を用いて、どの学習器を組み合わせると正解率が最大になるかを学習します。より正解率の高い学習器同士を組み合わせることで、学習器をランダムで組み合わせるよりも精度が高くなります。


スタッキングは非常に強力ですが、学習器の数や学習の段階は数十のオーダーにも及び、その組み合わせの数は膨大です。さまざまな学習器単独の弱みをカバーするアンサンブル学習を使いこなすことで、さらなる予測精度の改善につながるでしょう。


参考になったら「いいね!」と「シェア」をお願いします!!

このエントリーをはてなブックマークに追加

AI(人工知能)入門セミナー開催中
AI(人工知能)入門セミナー AI(人工知能)入門セミナー IoT入門セミナー

AI入門ブログの中の人

AI研究所 研究スタッフ
通称:マサミ
アメリカ・サンフランシスコにある情報メディアの専門学校を卒業。大手金融会社での事務経験を経て、2016年9月よりAI研究所に入所。見習い研究員として、AI技術を日々勉強中。

Facebookページ