Goodな生活

INTP型コンサルタントが好奇心の受け皿を探す

【統計検定準1級】線形回帰モデルと正則化

2022/08/27 統計検定準1級の学習時に内容修正

線形回帰モデルの問題点

 {\begin{eqnarray}
y_i &=& α + \sum_{k=1}^{m} β_k x_i + ε_i \tag{1}
\end{eqnarray}}

回帰モデルの説明変数の数mが大きくなりすぎると、モデルが学習データに過度に適合する過学習*1が生じ、予測精度が下がることがある。また被説明変数y_iと関係のない多くの説明変数x_iがモデルに組み込まれることで、推定する係数に対する解釈が困難になる場合がある。非線形回帰の場合はxを変数変換した基底関数φ_{k}(x)を用いて同様の事項を説明できる。

過学習を避けるための方法

変数増減

m個の説明変数のうち特定の集合を選定して回帰する方法。具体的にはステップワイズ法など。交差検証の結果により最もよい変数の組み合わせを選択する

縮小推定

m個の説明変数の回帰係数βを0に近づける方法。OLSでは誤差二乗和の最小化問題を解くことでβの推定量を求めるが、このβに制約をかけて縮小させる。Lasso(L1)、Ridge(L2)などの正則化は縮小推定の手法の1部である。交差検証により最もよいモデルを選択する

次元削減

mの説明変数の線形結合によって少数n個の説明変数を作成し、回帰する方法。

変数増減は得られた説明変数のうち特定のもののみを用いる方法であるのに対し、縮小推定と次元削減はすべての説明変数の情報を回帰に用いる。

正則化

OLSでは最小化問題の目的関数は、誤差項(残差)の平方和として表される。

 {\begin{eqnarray}
\sum_{i=1}^{n} ε_i^{2} 
&=& \sum_{i=1}^{n} (y_i - α -\sum_{k=1}^{m} β_k x_i )^{2} \tag{2}
\end{eqnarray}}

λ>0として、(2)に罰則項(正則化項)を加えた(3)を、最小化問題の目的関数とする。

 {\begin{eqnarray}
 \sum_{i=1}^{n} ε_i^{2} + λ \sum_{k=1}^{m} |β_k|^{p}  \tag{3}
\end{eqnarray}}


λは正則化パラメータと呼ばれ、罰則項(正則化項)に対するウェイトの重さを表す。罰則項(正則化項)があるおかげで、OLSと比較し式全体の値が大きくなってしまう。これを小さくするために説明力の弱い説明変数θ_k(x)の係数β_kはゼロと推定する必要がある。(3)の罰則項をどのように仮定するかでいくつかの正則化の方法があり、代表的なものがL1正則化(lasso推定)とL2正則化(Ridge推定)である。

L1(Lasso)正則化とL2(Ridge)正則化

直感的に理解するため下記の図を用いる。2変数の線形回帰モデルを仮定し、学習データに対する誤差平方和(RSS)を最小にするようなβ_1,β_2の組み合わせを求める。

L1正則化とL2正則化

L1正則化の場合、(3)においてp=1とした正則化項により(4)を最小化する。

 {\begin{eqnarray}
\sum_{i=1}^{n} \left( y_i  -\sum_{k=1}^{m} β_k x_i \right)^2 + λ \sum_{k=1}^{m} |β_k|  \tag{4}
\end{eqnarray}}

上図のように正方形状の制約を満たしながらβ_1,β_2の組み合わせを求める。そのため正方形の四辺に接する形で最小化問題が解かれるため、β_1は0になり、β_2にのみ値が入る。多次元の場合、係数の推定値のうち多くがゼロとなり、この性質をスパース性という。

L2正則化の場合、(3)においてp=2とした正則化項により(5)を最小化する。

 {\begin{eqnarray}
\sum_{i=1}^{n} \left( y_i  -\sum_{k=1}^{m} β_k x_i \right)^2 + λ \sum_{k=1}^{m} |β_k|^2  \tag{5}
\end{eqnarray}}

こちらは円状の制約を満たしながらβ_1,β_2の組み合わせが決まるため、β_1,β_2のどちらもゼロ以外の値が入る。つまりスパースにならない。また(5)の最小化問題を考えるとき、正則化項はβ_kによって微分可能であり、線形回帰の最小二乗推定(正規方程式)とさほど変わらない。推定値の一部がゼロになるL1正則化と比べると、L2正則化の方がOLSと近い値が得られる。

Elastic Net推定

L1正則化項とL2正則化項の線形結合を用いて表す方法もある。このときのβ_1,β_2の制約領域は、下図のようになる。

L1、L2、Elastic Netの制約領域

最小化問題の目的関数は、0 \leq α \leq 1として、

 {\begin{eqnarray}
\sum_{i=1}^{n} \left( y_i -\sum_{k=1}^{m} β_k x_i \right)^2 + λ \sum_{k=1}^{m} \left(α|β_k| + (1-α)|β_k|^2\right)  \tag{6}
\end{eqnarray}}

となる。

α=1のときL1正則化、α=0のときL2正則化に一致する。

*1:過剰適合、オーバーフィッティングともいう