ぽんのブログ -20ページ目

ぽんのブログ

自分用の備忘録ブログです。書いてある内容、とくにソースは、後で自分で要点が分かるよう、かなり簡略化してます(というか、いい加減)。あまり信用しないように(汗

前回まで Lars アルゴリズムについて説明してきましたが、これには以下のような特性があります。

観測データ、説明変数の次元( = 観測数)を n、説明変数の数を p としたとき n < p の時
つまり ”データ数” < ”未知変数の数” の場合 n 個までしか変数を選べない。

このため疎な解が得られますが、予測精度がでなかったりと不都合な場合があるかもしれません。


上の特性は考えてみれば当たり前で、等角ベクトル u は n < p の時説明変数 n 個からまでしか求められません。

例えば 2 次元ベクトル 3 本の場合( n = 2 < p = 3 )これらが同一平面上に乗るので u は求められません・・・

そこで n < p の場合でも対処できるようにしたのが elastic net です。

elastic net では、最小化すべき目的関数を以下のように設定します。



λ2 = 0 の時は前回までの lasso、λ1 = 0 の時は L2 正則化した ridge 回路と呼ばれるものになります。

こうする事の効能ですが、これは結局

式(1-1)

式(1-2)


と、L2正則化最小二乗問題 式(1-1) を lassoで解く、と言う事に他なりません。

この時、式(1-1)は



と等価なので



と書けます。



とすれば結局



という問題を lasso で解く事になります。

ここで のサイズは [ p + n ,  n ] になるので、見かけ上、観測数( X の行数)が未知変数の数(列数)を上回ります。こうする事で等角ベクトル u を安定的に求められる、と言う事のようです。