アンサンブル学習によって精度が上がる理由
機械学習コンペではアンサンブル学習を利用されることが多いらしい。アンサンブル学習は別々に学習した分類機を組み合わせて、新たな分類結果を作るというもの。
下記の記事が、なぜアンサンブル学習をすると精度があがるかを例示してくれていた。
たとえば正解率70%の分類機が3つあるとする。それらの分類機の結果に相関は小さいものとする。
すると、あるタスクについての3つの回答の正誤は下記の組み合わせとなる。
・3分類機とも正解
70% *70% * 70% = 34.29%
・2分類機が正解、1分類機が誤答
70% *70% * 30% +
70% *30% * 70% +
30% *70% * 70% = 44.09%
・1分類機が正解、2分類機が誤答
30% *30% * 70% +
30% *70% * 30% +
70% *30% * 30% = 18.9%
・3分類機が誤答
30% * 30% * 30% = 2.7%
上をみると、3分類機中2分類機以上が正解する確率は78%。
そのため、正解率70%の1台の分類機だけで考えるよりも8%精度が上がることになる(ということかな。)
アンサンブル学習の紹介ではよく「3人寄れば文殊の知恵」との例えを聞くが、まさに3つの分類機を活用することで、より高い精度を出すことができた。
相関が小さいほうが精度が上がる理由
分類機の出す分類結果の相関が高いということは、同じ問いに対して同じ結果を出すことが多いということ。そうなると、上記のような多数決を取ったところで、1分類機で行った時と結果に違いが出なくなってしまう。
例えば、10個の分類問題について、すべての答えは1とする。その時、正答率80%程度の相関の高い3つの分類機が下記のような結果となったとする。
1111111100(正答率80%)
1111111100(正答率80%)
1011111100(正答率70%)
すると、1つ1つについて多数決を取ると
1111111100
となり、80%の正答率に止まってしまう。
でも、相関が低いと、例えば下記のような場合、
1111111100(正答率80%)
0111011101(正答率70%)
1000101111(正答率60%)
多数決を取れば、
1111111101
となり、正答率90%。当初よりも正答率が上がることになる。
1つの分類機では間違えてしまっても、相関が低い他の分類機があることで、それを補うことができる、ということのように思う。
最終更新:2017/10/19