アンサンブル学習
アンサンブル学習は英語では、ensemble learningです。
これは日本語でいうと合奏を意味します。
このイメージは1人の意見だけでなく、多数決などで多くの人の意見を取り入れて、より精度の高いものを作ろうという感じです(^ ^)
アンサンブル学習の特徴
アンサンブル学習とは、複数のモデルの予測値を様々な手法で組み合わせ、予測精度を向上させる学習方法です!
一般的には機械学習のモデル(機械学習やAIにおいては中心的な役割を担う頭脳)は2パターンがあると思います。
- 単一のモデルで高い精度を目指す
- 複数のモデルを組み合わせて高い精度を目指す
アンサンブル学習の仕組みのイメージはみてみましょう!
犬と猫
機械学習でモデルを作って、犬と猫を判別できるようにするとします。
「左は30%の確率で犬。右は80%の確率で猫。」
「左は55%の確率で犬。右は60%の確率で猫。」
「左は70%の確率で犬。右は30%の確率で猫。」
上記を意見をまとめると、以下のようになります。
左が犬の確率 | 右が猫の確率 | どの人の意見を採用したいか | |
---|---|---|---|
ある人 | 30% | 80% | 最も右が猫の確率が良い。 |
ある人2 | 55% | 60% | 犬、猫の総合的な確率は他より良い。 |
あずすき | 70% | 30% | 最も左が犬の確率が良い。 |
1人の意見だけより、他の人の意見も取り入れた意見の方が精度は高くなるイメージになります。
また、アンサンブル学習を使う最大の利点は未学習のデータに対する予測能力を向上できる事です。
評価指標
複数のモデルを組み合わると、そのモデルの良し悪しをどのように評価するのでしょうか?
それは、以下の2種類の指標を用いて評価します!
① バイアス(Bias)
実際値と予測値との誤差の平均です。
② バリアンス(Variance)
予測値のばらつきがどれくらいあるかの度合いです。
バイアスとバリアンスの値が小さいほど予測値と実際の値の誤差が小さいことになります。
つまり、モデルの精度を上げるにはバイアスとバリアンスをともに下げる必要があります。
まとめ
今回はG検定でも問題として出題されていたので、アンサンブル学習を取り上げました。
少しでも機械学習のモデルの理解が進むと嬉しいです。
もっと勉強したいという方はプログラミングスクールやG検定を受けてみてもいいかもしれません。