演習問題 3.5

演習3.5の解答です。

回帰におけるパラメータ正則化(もしくは重み減衰)の問題。重要です。

Deep Learningでも、ロス関数にL1/L2正則化を加えてパラメータの学習をコントロールするテクニックが用いられることがあります。そこでも、考え方はLASSO回帰(L1正則化)やRIDGE回帰(L2正則化)そのものです。

L1正則化を用いて比較的スパースなパラメータを得た後、小さな値になったパラメータをハードに0とすることでそのコネクションを切断し、さらに残ったパラメータを再学習により調整することで、精度を保ちつつネットワークをコンパクトにするテクニックなど、いろいろ応用が効きます。

パラメータ正則化は非常に重要なテクニックなのですが、よくある下の図を見てなんとなく理解したつもりになっている人が多い気がします。ちゃんと分かってなくても、実装は簡単にできるので別に良いのですけど。

改めて考えてみましょう。
なぜ L_q 正則化項を加えた(3.24)の誤差関数、

E({\bf w}) = E_D({\bf w}) + \lambda E_W({\bf w}) = E_D({\bf w}) + \cfrac{\lambda}{2} \sum_{j=1}^{M}|w_j|^q を最小化することが上の図の通りになるのでしょうか?

この図が表しているのは、パラメータがある領域内にあるという(3.30)の拘束条件 \sum_{j=1}^{M}|w_j|^q \leq \eta を満たすということとです。これは(3.24)の最小化を直接は意味していません。

(3.30)と(3.24)がどうつながるかというと、ラグランジュ法を経由してうまくつながっています。

詳しくは下の解答にある通りですが、(3.30)の条件のもと E_D({\bf w}) を最小化する問題をラグランジュ乗数で表し、最後の項が {\bf w} の最小化に関係ないので無視すると、(3.24)になります。同時にKKT条件から、解{\bf w}^* が領域の境界にあることが要請されます。

よくできてますね。

prml exercise solution 3.5