スパースモデリングに関しては今日から出来るスパースモデリングを参考にしました.
文中で省略されている証明について以下で簡単に補足していますので,必要であれば適宜参照していただると幸いです.
1. 1変数の場合
λ>0, y∈Rを固定する.
このとき以下の最適化問題を解く.
minimizex∈R{|x|+12λ(y−x)2}
(解法)
minimizex∈R{|x|+12λ(y−x)2}=min{minimizex≥0{|x|+12λ(y−x)2},minimizex≤0{|x|+12λ(y−x)2}}
であるので,x≥0,x≤0の2つに分けて考える.
x≥0のとき
|x|+12λ(y−x)2=x+12λ(y−x)2=12λ(x−(y−λ))2+y−λ2
ここで, 12λ(x−(y−x))2≥0であり, y−λ2が定数であることに注意すると,
(i) y−λ≥0のとき
x=y−λで最小値 y−λ2をとる.
(ii) y−λ<0のとき
0≤x1≤x2⇒0≤x1−(y−λ)≤x2−(y−λ)⇒12λ(x1−(y−λ))2≤12λ(x2−(y−λ))2
よりx=0のとき最小値12λ(y−x)2+y−λ2をとる.
同様に,一方,x≤0のとき
|x|+12λ(y−x)2=−x+12λ(y−x)2=12λ(x−(y+λ))2−y−λ2
として上記と同様に求める.
2. 多変数の場合
λ>0, y∈RNを固定する.
このとき以下の最適化問題を解く.
minimizex∈RN{|x|1+12λ||y−x||22}
(解法)
||x||1+12λ||y−x||22=N∑i=1|xi|+12λN∑i=1(yi−xi)2=N∑i=1|xi|+12λ(yi−xi)2
である.ここで,
minimizex∈RNN∑i=1|xi|+12λ(yi−xi)2=N∑i=1minimizexi∈R{|xi|+12λ(yi−xi)2}
であることを示す.
この等式の左側を(左辺),右側を(右辺)と以後表記する.
1変数の例から任意のi∈{1,…,N}に対して,
|xi|+12λ(yi−xi)2が最小値を取るようなx∗iが存在する.
そこで,x∗=(x∗1,…,x∗N)Tとする.
このとき,任意のx=(x1,…,xN)T∈RNに対して,x∗の定義より,
|x∗i|+12λ(yi−x∗i)2≤|xi|+12λ(yi−xi)2(∀i∈{1,…,N})
であるので,
(right)=N∑i=1|x∗i|+12λ(yi−x∗i)2≤N∑i=1|xi|+12λ(yi−xi)2
これが任意のx=(x1,…,xN)T∈RNに成り立つので,
左辺はx=x∗のとき最小値∑Ni=1|x∗i|+12λ(yi−x∗i)2をとる.(最小値をとるxが存在することが示せた)
また,(右辺)≤(左辺)が成立することがわかる.
逆に,
minimizex∈RNN∑i=1|xi|+12λ(yi−xi)2≤N∑i=1|x∗i|+12λ(yi−x∗i)2=N∑i=1minimizexi∈R(|xi|+12λ(yi−xi)2)=(right)
よって,(左辺)≤(右辺)
3. ベイズの定理
観測行列をA∈Rm×n,原情報をx∈Rn, 出力情報をy∈Rmとする.
出力情報は入力情報を観測行列によって変換したものに,ノイズが加えられて得られるとする.
y=Ax+ρ0n
ここでρ0>0,n∈Rmとする.
観測情報Aと原情報x,観測情報Aと原情報yは互いに独立であるから,
P(A∩x)=P(A)∩P(x),
P(A∩y)=P(A)∩P(y)
が成立することに注意すると,
P(x|A,y)P(A)P(y)=P(y|A,x)P(A)P(x)
が成立する.
(Proof)
(left)=P(x∩A∩y)P(A∩y)P(A)P(y)=P(y∩A∩x)P(A∩x)P(A)P(x)P(A∩x)P(A∩y)P(y)P(x)=(right)
ゆえに,
P(x|A,y)=P(y|A,x)P(x)P(y)
が成立.
4. メジャライザー最小化
|x−y|22=n∑i=1(xi−yi)2=n∑i=1(xi−(yi−1L∇g(y)i)−1L∇g(y)i)2=n∑i=1(xi−(yi−1L∇g(y)i))2−2L∇g(y)i(xi−(yi−1L∇g(y)i))+1L2(∇g(y)i)2=∣∣∣x−(y−1L∇g(y))∣∣∣22−2L∇g(y)T(x−y)−1L2|∇g(y)|22
初めに以下を示す
g(x)≤qL(x,y)
(Proof)
∇g(x)はリプシッツ定数Lの連続関数だから,シュワルツの不等式より
(∇g(x)−∇g(x))T(x−y)≤∥∇g(x)−∇g(x)∥2∥x−y∥2≤L∥x−y∥22
h:Rn→Rを
h(x)=12L∥x∥22−g(x)と定めると,
∇h(x)=Lx−∇g(x)であり,上式より
(∇h(x)−∇h(y))T(x−y)≥0
である. h∈C1級であるので,hは凸関数.ゆえに,
h(x)≥h(y)+(∇h(y))T(x−y)⇔g(x)≤qL(x,y)
証明のための予備知識
URL>Theorem1,2,URL > Proposition1.3
次に以下を示す.
g(x)=|y−Ax|22とすると,
∇g(x)=−1λAT(y−Ax)
(Proof)
(∇g(x))i=∂g(x)∂xi=12λ∂∂xim∑j=1(yi−n∑i=1ajixi)2=−1λm∑j=1aji(yi−n∑i=1ajixi)
一方,
(−1λAT(y−Ax))i=−1λm∑j=1aji(yj−n∑i=1ajixi)
次にリプシッツ定数Lは
L=1λ|ATA|2
となることを示す.
(Proof)
|∇g(x1)−∇g(x2)|=1λ|ATA(x2−x1)|2≤1λ|ATA|2|x1−x2|2
ここで,任意の行列A∈Rn,nに対し,
|A|2:=max|x|2=1|Ax|2
と定義する.
有限次元ベクトル空間上のノルムが1となる部分集合はコンパクト,
有限次元線形写像やノルムの連続性を用いることで右辺の集合は最大値を持つことが示される.
また, |A|2=max|x|2=1|Ax|2はxがAの最大の固有値μ0に対応する固有ベクトルを持つとき最大になり,その値は√μ0
Last modified by akirat1993 2019-05-26 02:56:51
Created by akirat1993 2019-05-26 02:56:51