一般的に教師あり学習モデルは,任意の損失関数に対してデータの「当てはまり具合」を最適化するように関数を選択する.
しかし,この関数が与えられたデータに対してあまりに複雑すぎると,今現在手元にある学習データのみに適合してしまい,未知のデータに弱くなってしまう過学習(over fitting)を引き起こしてしまう. 過学習は,モデルが複雑な場合に訓練誤差と汎化誤差の間に大きな差が生じてしまうことに起因する.
正則化
過学習を避ける方法として,より単純なモデルを選ぶといったモデルの選択の他に,正則化(regularization)が存在する.
ここで,モデルの選択も正則化も,データにふさわしい適切な複雑さの関数を選択するという意味では本質的には同じと捉えられる.
正則化は,モデルの訓練誤差を最小化する際,そのモデルの「複雑」さに対する罰則を加えて最小化を行う. この「複雑さ」を定義する関数を正則化関数(regularization function)と呼ぶ.正則化関数をとすると,一般的な正則化学習法は,
ここでは正則化の強さを調整するパラメータ.上式は,データへの当てはまり具合を表す第一項とモデルの複雑さへの罰則を表す第二項から成り立っている.この罰則項の働きによってモデルの過学習を抑えることができる.
線形モデルについて,正則化項としたとき,以下のような正則化関数がよく用いられる.
- リッジ正則化 [1]:
- L1正則化 [2]:
- ブリッジ正則化 [3]:あるを用いて,
- エラスティックネット正則化 [4]:ある ]を用いて,
- SCAD (smoothly clipped absolute deviation) [5]:あるとを用いて,
上記から,ブリッジ正則化はL1正則化とリッジ正則化の一般化であることがわかる(のときL1正則化,のときリッジ正則化). また,SCAD正則化は非凸関数であるが,で勾配が0になるため推定量にバイアスが乗りにくい.
最も単純なモデルである線形モデルであったとしても,次元が高い場合は自由度が高くなり,過学習を起こす可能性が存在してしまうため,上記のような正則化を用いることで過学習をを回避することができる.
スパース正則化としてのL1正則化
L1正則化は,学習結果をスパースにさせやすいという性質を持っている.ここで学習結果がスパースであるとは,の多くの成分が0であるという意味.
これは,予測に必要のない無駄な特徴量を切り捨てて,特徴選択を行っているとみなせる.
古くから,そうした特徴選択を実現する手法として赤池情報量基準(Akaike information criterion, AIC)が用いられてきた.例えば回帰において,ノイズが分散がのガウス分布に従っているとき,であるような設定を考える.このとき,赤池情報量基準に従った特徴選択は,
ここで,pはの非ゼロ要素の数で,ノルムと呼ばれる.を訓練誤差に足すのは,汎化誤差と訓練誤差の差を補うためであり,特徴量の数を罰則として訓練誤差に足すことで,学習結果をスパースにできる.より多くの特徴量を用いることは,それだけ複雑な関数を用いることに等しくなり,現在手元にある訓練データに当てはまりやすく,訓練誤差と汎化誤差の乖離が大きくなってしまう.AICはこのような乖離を補正するためにはを足せば良いと主張している.
がサンプル数より十分小さいとき,
となる.左辺は目的関数の訓練データの出方に対する期待値,右辺の第一項は汎化誤差の期待値,第二項はサンプルサイズが増えるに連れて消えていく項になる.
AICは汎化誤差の不偏推定量であり,AICを最小化する推定量は過学習を避けて正しく汎化誤差を小さくすることができる.しかし,次元が大きい場合,AICの最小化は組み合わせ最適化問題となり,NP困難であることが知られている.
そこで,ノルムの代わりにノルムという凸関数を用いるというのが正則化の発想.実際,ノルムはノルムを下から抑える最大の凸関数になっており,最適化の際に非常に都合が良い.
また,L1正則化を用いた線形回帰手法をLassoと呼ぶ.
L1正則化のようにスパースな学習結果を導く正則化をスパース正則化という.
スパース正則化
スパース正則化は,高次元な学習問題において非常に強力な手法である. ここで,スパース性をより広く,ある種の低次元性と捉えると,他にも様々なスパース正則化が考えられる.
グループ正則化
特徴量がいくつかのグループに分かれていると仮定する.グループ正則化は,同じグループに属する特徴量をまとめて一つの特徴量のように扱うスパース正則化である.グループをそれぞれインデックス集合とする.インデックス集合に対するの部分ベクトルをとすると,グループ正則化は以下で表される.
一般化連結正則化
一般連結正則化は,あるグラフに関して隣接した変数は同じ値になるようにする正則化である.グラフについて,一般化連結正則化は,
として与えられる.
トレースノルム正則化
トレースノルム正則化は,低ランク行列を学習したい場合に用いられる.を並び替えた行列を考え,その番目の特異値をと表すと,トレースノルム正則化は,
となる.これは特異値ベクトルへの正則化とみなせるので,スパースな特異値を持つ行列,すなわち低ランクな行列が学習されることになる.
正則化関数の組み合わせ
以上のように,正則化関数には多くの例が存在する.これらの正則化関数は,単独で用いるだけでなく,複合して適用することもできる.
正則化関数の組み合わせ方には,例えば以下のような方法がある.
- 和型:
- 畳み込み型
ちなみに,和型と畳込み型の2つの形式には,以下のような双対関係が成り立っている.
ここでは凸関数のルシャンドル変換.
参考文献
- [1] Hoerl, Arthur E., and Robert W. Kennard. "Ridge regression: Biased estimation for nonorthogonal problems." Technometrics 12.1 (1970): 55-67.
- [2] Tibshirani, Robert. "Regression shrinkage and selection via the lasso." Journal of the Royal Statistical Society: Series B (Methodological) 58.1 (1996): 267-288.
- [3] Frank, LLdiko E., and Jerome H. Friedman. "A statistical view of some chemometrics regression tools." Technometrics 35.2 (1993): 109-135.
- [4] Zou, Hui, and Trevor Hastie. "Regularization and variable selection via the elastic net." Journal of the royal statistical society: series B (statistical methodology) 67.2 (2005): 301-320.
- [5] Fan, Jianqing, and Runze Li. "Variable selection via nonconcave penalized likelihood and its oracle properties." Journal of the American statistical Association 96.456 (2001): 1348-1360.