第 4 章
過学習をチェックするための MATLAB 関数
このチャプターでは正則化、汎化、交差検定で使われる以下の関数を紹介します:
trainbr
feedforwardnet
trainlm
trainscg
cvpartition
crossval
正則化
正則化技術は、予測モデルにおける統計的な過適合を防ぐために使用されます。モデルに追加情報を導入することにより、正則化アルゴリズムは、モデルをより簡素かつ正確にすることで、多重共線性と冗長な予測子を処理できます。
構文
B = lasso(X,y)
これらのアルゴリズムは通常、モデル係数を最小化する対象に加えたり、粗さに対するペナルティを含めたりなど、複雑さに対するペナルティを適用することで機能します。
ロジスティック回帰の正則化は、Statistics and Machine Learning Toolbox™でlassoglm
関数を使うことで簡単に実行できます。lassoglm
は座標降下最適化に従って重みとバイアスの値を更新するモデルフィッティング関数です。自乗誤差とパラメータの組み合わせを最小化し、正しい組み合わせを決定して、うまく汎化するモデルを生成します。
Statistics and Machine Learning Toolboxに含まれる追加の分類モデルは、学習過程でモデルを正則化するために使用できる正則化引数をオプションで提供しています。
fitclinear
(バイナリ線形分類器)- “Lambda”: 正則化項の強さ
- “正則化”: lasso (L1), ridge (L2)
fitckernel
(バイナリ ガウス カーネル分類器)- “正則化”: ridge (L2)
MATLAB の交差検定 関数
Statistics and Machine Learning Toolbox™ には交差検定を行う際に特に役立つ次の 2 つの関数が 含まれています:cvpartition
と crossval
です.