Python

Pythonで機械学習を学ぶ モデルの平均法 スタッキング・NFold平均・Smoothed-BIC

モデルの平均法では、モデルの選択法とは別に、すべてのモデルの出力を利用してより良い結果を得ようとする。一般的に明らかに精度が劣るモデルがある場合は、モデル選択法の方が良い結果になる。簡単に試したところ、スタッキングとNFold平均を組み合わせたものよりも、Smoothed-BICの方が精度がでる。

スタッキング

すべてのモデルの出力を平均して結果とする。同じ様な精度に結果が収束する場合に効果的。

NFold平均

交差検証と同じく学習データをブロックに分割し、異なるモデルを作成、それぞれのモデルの出力の平均を得る。スタッキングと組み合わせて使用することもできる。バギングではデータの重複を許すが、この方法では重複のないサブセットを作成する。(予め精度を最大化するように作成されたアンサンブル学習のアルゴリズムに対して有効)

Smoothed-BIC

ベイジアン情報量基準でモデルの出力の重みを計算し、その平均を利用する。