ぽぽぽぽい

学んだことをまとめたいです。願望です。

正則化関数について

正則化について

この記事では最適化を行う際の正則化をまとめます。

Lasso(Least Absolute Shrinkage and Selection Operator)

言わずと知れた正則化。連続関数であり、パラメータにスパース性を持たせることができる。

\|\beta\|_{1}\equiv\sum_{(i=1}^n |\beta|_i
で定義される。

*Lassoに用いられる{L_1}ノルム {||\cdot||_1}[-1,1 ]上でL_0ノルムを下から抑える最大の凸関数である。

略証:2回ルジャンドル変換をした関数は元の関数を下から抑える最大の凸関数になる(らしい)、L_0にとってはL_1がそれにあたる。

*これより、L_0正則化を近似する最高のモデルはL_1

グループ正則化

パラメータを同じ種類に分けて正則化をする手法。 \beta\in\mathbb{R}^pの時、Mグループに\betaを分けるとすると 添字集合を

$$g_k\subseteq\bigl\{1,2,3,\cdots,p \bigr\}\:\:\Bigl(k\in\bigl\{1,2,3,\cdots,M \bigr\}\Bigr)$$

と書いて、\betaの部分集合\beta_k


\beta_{g_k}\equiv\bigl(\beta_j\bigr)_{j\in g_k}\in\mathbb{R}^{|g_k|}

で定義する。 この時、グループ正則化

$$\|\beta\|_G\equiv\sum_{k=1}^{M} \|\beta_{g_k}\|_r$$

で定義される。 グループ正則化はグループ内にL_r正則化をかけ、グループ間でL_1正則化をかける。同じグループに属する\betaはまとめて0になりやすい。

一般化連結正則化

各パラメータ\betaを頂点と見たグラフVを与え、隣接した変数間は同じ値になるようにする正則化。 グラフをG=(V,E)として、

\|\beta\|_{Fused}\equiv\sum_{(i,j)\in E} |\beta_i-\beta_j|
で定義される。
ex)時系列パラメータ\bigl\{\beta_1,\beta_2,\beta_3,\cdots,\beta_n \bigr\}に対し、隣接する時刻では近い値になってほしい場合、E=\bigl\{(j,j+1)|j=1,2,\cdots,n-1\bigr\}

トレースノルム正則化(trace norm regularization)

今、\betaを並べ変えた行列B=(B_{i,j})について、そのk番目の特異値を\sigma_k(B)\geq0とする。 この時、トレースノルム正則化

\|B\|\equiv \sum_{k=1}^{min{(q,r)}}\sigma(i)
で定義される。