2019/04/23
2020/04/14
正則化の種類と目的 L1正則化 L2正則化について
ニューラルネットワークも多くの機械学習アルゴリズムと同様に過学習という問題に陥ります。
今回はこの過学習を回避するための手法の一つ、正則化について説明します。
正則化手法としてL1正則化、L2正則化について解説します。これらの正則化手法はリッジ回帰、ラッソ回帰やエラスティックネットといった機械学習モデルに関連します。
過学習と正則化
機械学習モデルは未知データへの予測精度を高めるために訓練データを学習します。
機械学習モデルが訓練データを過剰に学習すると未知データへの予測精度が落ちることがあります。
これはモデルが訓練データに対して過剰に学習したため、はずれ値やノイズまで学習してしまったと考えることができます。
このような現象を過学習、またはoverfittingと呼びます。
過学習が起きる原因としてデータ数が少ない、変数が多い、パラメータが大きすぎるといったことがあります。
今回はこの過学習を防ぐための手法として正則化について説明します。これらの手法はニューラルネットワークの他にもランダムフォレスト、回帰モデルなど様々な機械学習アルゴリズムで用いられる手法です。
正則化
機械学習モデルは損失関数を最小にするパラメータを学習していました。
L1、L2正則化を用いた機械学習モデルは損失関数とパラメータの値の和を最小にするパラメータを学習します。パラメータの和を評価することでパラメータが大きくなるのを防ぎます。このようにしてモデルが過学習しないようにしています。
以下の数式を見てみましょう。これはそれぞれの手法が最小にしようと関数を表しています。
損失関数を\( f(x) \)、パラメータ\( \lambda \)とします。
正則化なし … 損失関数
\( \min f(x) \)
L1正則化 … 損失関数 + L1正則化項
\( \min f(x) + \lambda \sum_{ i = 1 }^{ n } |w_i| \)
L2正則化 … 損失関数 + L2正則化項
\( \min f(x) + \displaystyle \frac{ \lambda }{ 2 } \sum_{ i = 1 }^{ n } |w_i|^2 \)
通常のモデルが損失関数\( f(x) \)を最小とする一方で、L1正則化を行うモデルは損失関数\( f(x) \)と\( \lambda \sum_{ i = 1 }^{ n } |w_i| \)の合計を最小にするパラメータ\( w_i \)を求めます。
同様にL2正則化を行うモデルは損失関数\( f(x) \)と\( \displaystyle \frac{ \lambda }{ 2 } \sum_{ i = 1 }^{ n } |w_i|^2 \)の合計を最小にするパラメータ\( w_i \)を求めます。
これらの数式から正則化はパラメータが小さいモデルをより評価すると分かります。
このパラメータの大きさを評価する項はペナルティ項と呼びれていて、正則化に用いるパラメータ\( \lambda \)を大きくすると過学習に陥りにくくなります。
L1正則化はパラメータの絶対値の和を、L2正則化はパラメータの二乗和を罰則項としていました。
正則化の目的
多くの場面でL1正則化は余分な説明変数を省くことを目的とした手法です。余分な説明変数を省くことを次元圧縮と呼びますが、L1正則化は次元圧縮のために用いられます。
これはL1正則化を用いた学習ではパラメータ\( w_i \)が0になりやすいためです。パラメータ\( w_i \)が0とされた説明変数は目的変数に対して無関係であることを意味します。
一方でL2正則化はモデルの過学習を防ぐことで精度を高めるために用いられます。結果としてL1正則化を使ったモデルよりも予測精度が高い傾向にあります。
これはL2正則化を用いたモデルのパラメータの方がより滑らかで表現力に優れているためであると説明できます。
まとめ
この記事ではモデルの過学習を防ぐための手法の一つ、正則化について説明してきました。
L2正則化がモデルの過学習を避けるために用いられる一方、L1正則化は不要な説明変数をそぎ落とす次元圧縮のために用いられます。
またL1正則化、L2正則化、それぞれを施した線形回帰をLasso回帰、Ridge回帰と呼びます。
最新投稿記事
-
AIプロジェクトの企画と失敗しない進め方を解説 2021年1月19日
-
AVILEN人材育成コース受講体験談:山田裕之さん「E資格の”その先”を目指して」 2021年1月8日
-
AI導入とは?RPAとの関係、プロセス、事例、メリット、費用を詳細に解説 2020年12月7日
-
注目のAI開発企業11社!支援領域や提供方法など検証! 2020年10月28日
-
AI人材を育成できる研修プログラムを一挙紹介! 2020年10月20日
-
【2021年版】期待のAI資格11選!就職・転職にも使える! 2020年10月18日
-
JDLAとは?G検定、E資格の認定プログラム、合格者の会など紹介! 2020年10月14日
-
G検定(2020#3)受験申し込み開始、11月7日(土)実施-JDLA 2020年10月1日
-
【独占】コロナ禍で人材登録急増、アノテーション単月売上高は4倍超-パソナJOB HUB 2020年10月1日
-
E資格を転職に活用!評判とデータを徹底調査! 2020年9月29日
週間ランキング
【2021年版】コスパ重視のG検定対策!おすすめの本・講座・教材を一挙紹介! 2020年6月6日
G検定に短期間・独学で合格した勉強法を解説! 2020年8月3日
【2021年版】期待のAI資格11選!就職・転職にも使える! 2020年10月18日
G検定は難しい?難易度・合格ライン・問題を徹底解説! 2020年6月19日
注目のAI開発企業11社!支援領域や提供方法など検証! 2020年10月28日
G検定に落ちた人、合格した人。勉強法の違いはどこにある? 2020年6月25日
最弱オセロを初めて攻略した天才オセロ高校生。負け方を解説! 2020年7月31日
【2021年版】E資格とは?大注目のディープラーニングの資格を解説! 2020年9月29日
E資格の難易度を、合格率と問題から徹底分析! 2020年8月11日
MLOpsとは|定義、メリット、課題、ツール、ワークフローを分かりやすく解説 2020年9月18日
