集団学習とは?その基礎

うぱうぱ~!今回は集団学習について見ていきましょう。

集団学習とは?

 集団学習とは複数の予測器を組み合わせて用いることにより予測精度を上げる手法です。簡単に言うと、人がたくさん集めてそれぞれに予測され、その平均値や多数決によって予測を決める手法となっています。集団学習のメリットは過学習を起こしにくいという点です。予測器一個に力を注ぐよりも複数の弱予測器に予測された方が精度が高くなるのです。別名、アンサンブル(ensemble)学習:ensembleとは、「一緒に、同時に」という意味を持つ。

集団学習の種類

 集団学習は種類がいくつかありますが、今回は3つ取り上げます。その3つは**バギング**、**ブースティング**、**ランダムフォレスト**です。理論の詳しい点は述べないので大枠を理解してもらえればいいと思います。

それぞれ一言でいうと、
バギング:弱予測器を並列に稼働させその結果の平均や多数決で予測する
ブースティング:弱予測器を直列に稼働させて予測する
ランダムフォレスト:決定木とバギングを組み合わせた手法

バギング

 並列に実行して平均や多数決で見つける方法である。データの選び方をブーストラップサンプリングといい、N個のデータ点からなるデータセットから新たに重複を良しとして、N個のデータを取ります。
例えばN={1,2,3,4,5}というデータに対して、新しいデータ{1,2,2,3,3}のようなデータセットになることもあります。このようにデータのサンプルを選びます。


 バギングのメリットは「バリアンス(分散)の削減」「過学習の軽減」「不均衡データへの対応」です。単一モデルはデータのランダム性によって生じるノイズや外れ値に敏感になることがありますが、バギングでは複数のモデルの平均や多数決によって予測を行うためノイズの影響を軽減することができます。

ブースティング

 すでに学習し終わった予測器において正しく分類できない学習うデータを優先的に正しく分類できるように次の予測器を構築する。弱予測器を複数組み合わせて一つの強予測器を構築するイメージです。

 ブースティングのメリットは「バイアス(平均値のずれ)の削減」「バリアンスの低減」「ノイズの除去」「データセットの利用効率の向上」です。ブースティングは、個々の弱い学習器が前の学習器の誤分類に焦点を当てて学習するため、バイアスの削減に効果があります。各学習器は前の学習器の誤りを補完し、結果としてより正確な予測モデルを構築することができます。

ランダムフォレスト

 ランダムフォレストは、決定木とバギングを組み合わせた手法であり、ブーストラップサンプリングによって複数のデータセットを作成し、次に特徴量をランダムに選択します。そして同じように決定木を複数作成して、多数決や平均から予測値を決定する。

 これらのメリットは、「高い予測性能」「過剰適合の低減」「外れ値への強さ」「特徴量の重要度の評価」です。ランダムフォレストは複数の決定木を組み合わせることで、個々の決定木の弱点を補完し、高い予測性能を実現します。複数の決定木が独立して学習し、予測結果を組み合わせることで、より正確な予測が可能となります。ランダムフォレストは、ブートストラップサンプリングと特徴量のランダム化により、モデルのバリアンスを低減します。ブートストラップサンプリングによって異なるデータセットが作成され、特徴量のランダム化によって各決定木が異なる特徴量に焦点を当てることで、過学習のリスクを抑えながらモデルの汎化性能を向上させます。

まとめ

 集団学習は複数の予測器を使うことで予測精度が上がります。今回紹介したもの以外にも手法は多くあります。また同じ集団学習でも平均のずれを改善するのか、分散のずれを改善するのかなど目的が異なります。正しく理解して使っていきましょう。