データマイニングの基礎 第3章 データマイニングの高度な手法 その1

次は高度な手法です。

  • アンサンブル学習 (コミッティー学習とも)
    • 複数の分類器を組み合わせて利用する
      • 将棋ソフトの多数決合議法みたいなものですね
    • 同じデータ母集団からサンプリングして同じアルゴリズムの分類器を複数学習させて、その多数決を取る方法でも誤差の影響を低減できる
      • 誤差に相関がないことが重要
      • このため学習アルゴリズムは訓練データに対して敏感で、ノイズが入りやすいほうが良い! この特徴はおもしろい。
      • 訓練データの抽出法にもいろいろ工夫が
        • 間違ったデータの重みを増す ブースティング(これも通常の間隔には反する)
      • 決定木で各ノードの分類属性をランダムに選択するランダムフォレスト
    • 分類器の組み合わせ方法もいろいろ
      • スタッキング - ある分類器の予測結果を属性として別の分類器に入力
      • カスケード - ある分類器の予測結果を属性に追加して別の分類器に入力
  • バギング(Bagging)
    • 復元抽出により複数のデータ集合を作ってそれぞれに同じ学習アルゴリズムによる分類器を生成。結果は多数決や確率分布の場合は平均を取る
    • MataCost - バギングによりまずコスト期待値最小化分類器を作成、その分類結果でクラスラベルを付け変えて、そのクラスラベルに対して1つの分類器を学習させる(つまりバギングによるアンサンブル学習で作った分類器集合を模倣する分類器を1つ作る)
  • ブースティング
    • データ抽出時にわざと偏ったデータ群を作る、または学習アルゴリズムでのデータの重みを変えることで互いに相補的な分類器群を作る
    • 分類器は順に学習していき、先の分類器がエラーになったデータに重みをつけて学習する
      • Neural Network だと Cascade Correlation Method と呼ばれる方法に似ていますね

やはり「高度な手法」の内容はおもしろいです。