Regularization
Regularization
Regularization(正則化)とは
ひとことで
損失関数に、重みの大きさに応じたペナルティ(罰則)を加えて、モデルが複雑になりすぎないようにする手法。過学習を抑える目的で使われる。
たとえると
旅行の荷物に「1kg増えるごとに追加料金」というルールを設けるようなものです。本当に必要な物だけを持っていくようになり、身軽で応用の利く荷造りになります。
現場ではこう使う
顧客の解約予測モデルに数百の項目を使ったところ、学習データでは高精度なのに、新しいデータでは予測が外れがちでした。L1正則化を加えて学習し直すと、多くの項目の重みが0になって重要な項目だけが残り、精度が安定したうえに結果の説明もしやすくなりました。
試験のポイント
EXAM POINT「損失関数にペナルティ項を加える」「過学習を防ぐ」と出てきたら正則化です。L1正則化は一部の重みが0になりやすく不要な特徴量を取り除く効果があり、L2正則化は重み全体を小さく抑えるという違いがよく問われます。線形回帰にL1正則化を加えたものをラッソ回帰、L2正則化を加えたものをリッジ回帰、両方を組み合わせたものをElastic Netと呼びます。名前の似た「正規化」とは別物なので注意しましょう。
混同しやすい用語との違い
- Batch Normalization「正規化」で、各層への入力の分布をそろえる手法。正則化は重みにペナルティを加える
- Dropoutニューロンをランダムに無効化して過学習を抑える。損失関数は変えない