« アンケートというものに関するある興味 | トップページ | スパース・モデリングは LASSO だけではない »

2018年11月17日 (土)

最小2乗法とスパース・モデリング

当ブログの記事最小二乗法の心にも有るように、最小二乗法とは、

\[ \boldsymbol{y} = X \boldsymbol{\beta} \tag{1} \]

を「解いて」 \(\boldsymbol{\beta}\) を求める方法です。ただし、\(\boldsymbol{y}\) は \(n\) 次元ベクトル、 \(\boldsymbol{\beta}\) は \(m\) 次元ベクトル、 \(X\) は \(n\times m\) 行列です。回帰直線を求める場合は、 \(\boldsymbol{\beta}\) は2次元です。 \(\boldsymbol{\beta}\) が \(m\) 次元の場合は、 \(m-1\) 次の多項式が得られます。大抵の場合、\(m < n\) となっていて最小二乗法が利用できますが、 \(m=n\) ならば式 (1) を厳密に解くことが出来ます。その場合、データと回帰線との誤差は0になります。

しかし、下図で示すように、厳密に解けて得られた多項式がデータの特徴を反映しているかどうかは一概には言えません。

\(x\)
\(y\)

グラフは、データ数3個の場合に1次と2次の回帰線を求めたもの(の模式図)です。赤線(1次)が正しい回帰線のつもりで描きました(つまり、データを増やせば赤線の近くに集まる)。しかし、データとの誤差を見ると青線(2次)の方が誤差が小さくなっています。多項式の次数を上げると一見、高精度の近似式が得られたように見えることが有りますが、それはこの例のように間違った近似の場合が有ります。次数を減らした方が良いことも有ると言うことです。上記グラフでは、作図を簡単にするために、たった3個のデータと2次の回帰線を例に採りましたが、実際の問題では \(\boldsymbol{\beta}\) はもっと高次元のものを考えます。

次数を減らして適切な近似を得る魔法は LASSO(Least Absolute Shrinkage and Selection Operator) と呼ばれています。 LASSO は、

\[ \|X\boldsymbol{\beta} - \boldsymbol{y}\|_2^2 + \lambda\|\boldsymbol{\beta}\|_1 \tag{2} \]

を最小にする \(\boldsymbol{\beta}\) を求めるという回帰の一手法です。ここに、 \(\|\cdot\|_p\) は \(l_p\) ノルムです。第2項は正則化項と呼ばれています。なお、正則化項は、式 (2) のもの以外にも、

\[ \lambda\|\boldsymbol{\beta}\|_p^p \]

が有ります。

実は、式 (2) は何年か前にサイエンス・ゼロで見たことが有ります。スパース・モデリングを扱った回でした。スパース・モデリングとは、たくさんのパラメータから少数の有意義なものを選び出し、その他は無視することで本質を浮き上らせる手法です。

そのサイエンス・ゼロで式 (2) を見た時、第2項が \(l_1\) ノルムなのを奇妙に思ったものです。「現実世界はユークリッド・ノルム( \(l_2\) ノルム)なのに、なぜ \(l_1\) ノルムの補正を考えるのか?」と。それに対する答えは次のように説明できます。

\(\beta_1\)
\(\beta_2\)
\(l_1\)正則化
最小二乗推定値
\(\beta_1\)
\(\beta_2\)
\(l_2\)正則化
最小二乗推定値

\(\boldsymbol{\beta}\) は2次元として、上図を考えます。図の最小二乗推定値は式 (2) の第1項が最小となる \(\boldsymbol{\beta}\) で、その周りの緑の円は第1項の等高線を表しています。図の青線は正則化項です。緑線と青線の接点が、求める \(\boldsymbol\beta\) となります。左側の \(l_1\) 正則化の場合、正則化項の角の部分で緑線と接しています。これは \(\beta_1=0\) 即ちパラメータが1つ省略されたことを意味しています。これが \(l_1\) ノルム補正でスパース・モデリング(パラメータの省略)が得られる仕組みです。ちなみに、右側の \(l_2\) 正則化では緑線との接点は \(\beta_1\) も \(\beta_2\) も \(0\) になっていない、即ちパラメータの省略は無いことが判ります。

上図で、緑線と青線の接点が式 (2) の最小値になることはラグランジュの未定乗数法で説明できるようですが、私は充分には理解出来ていません。もう少し勉強が必要です。(青線上で最小二乗推定値に最も近い点ということ?)

なお、 \(l_1\) 正則化は評価関数に絶対値を含むため、不連続で微分不可能な点が存在するので、 LASSO の解析は簡単ではないようです。

今回、参考にした記事を記します。下記以外にも「LASSO   回帰」で検索すると色々見つかります。

« アンケートというものに関するある興味 | トップページ | スパース・モデリングは LASSO だけではない »

サイエンス」カテゴリの記事

コメント

コメントを書く

(ウェブ上には掲載しません)

トラックバック

この記事のトラックバックURL:
http://app.cocolog-nifty.com/t/trackback/584699/67389997

この記事へのトラックバック一覧です: 最小2乗法とスパース・モデリング:

« アンケートというものに関するある興味 | トップページ | スパース・モデリングは LASSO だけではない »