近接作用素
📂最適化理論近接作用素
定義
ベクトル空間 Xのノルムを∥⋅∥Xとする。関数f:X→Rに対する プロキシマルオペレーター proxλf:X→2Xを次のように定義する。λ>0に対して、
proxλf(x):=vargmin{λf(v)+21∥v−x∥X2:v∈X}=vargmin{f(v)+2λ1∥v−x∥X2:v∈X}
argminは最適解を意味する。
わかりやすい定義
上記の定義が難しい場合は、次のように理解しても構わない。関数f:Rn→Rに対するプロキシマルオペレーターproxλf:Rn→Rnを次のように定義する。
proxλf(x):=vargmin{λf(v)+21∥v−x∥22:v∈Rn}
説明
定義(1)によるとproxλf(x)はfの関数値を最小化することとxに近づくことの間の妥協点を意味する。つまり、xの近辺でfの値を最も小さくする点であると言える。fを最適化する問題にある種の正則化を添加したものと見ることができる。λの値によって、どの項を減らすことにより大きい価値を置くかが決まる。点proxλf(x)をfに対するxの プロキシマルポイント という。
proximalは「近接の」、「近い」という意味だが、proxλf(x)はxに近い点の中でfの最適解を見つけるという意味でproximalと名付けられたようだ。
proxλf(⋅)の計算が容易な関数fを prox friendly という。
X=Rnの場合にはfが凸関数であればproxλf(x)は一意uniqueである。
プロキシマルオペレーターを使用して最適化問題を解くアルゴリズムを プロキシマルアルゴリズム という。以下が含まれる。
性質
- Separable sum: 関数fがf(u,v)=ϕ(u)+ψ(v)のように区切れる場合、次が成り立つ。
proxλf(x,y)=(proxλϕ(x),proxλψ(y))
二つ以上の変数に対してf(x)=∑infi(xi)のように完全に区切られる場合は、
(proxλf(x))i=proxλfi(xi)
- Postcomposition: f(x)=αϕ(x)+b、α>0に対して次が成り立つ。
proxλf(x)=proxαλϕ(x)
- Precomposition: f(x)=ϕ(αx+b)、α=0に対して次が成り立つ。
proxλf(x)=α1(proxα2λϕ(αx+b)−b)
f(x)=ϕ(Qx)でありQが直交である場合、次が成り立つ。
proxλf(x)=QTproxλϕ(Qx)
- Affine addition: f(x)=ϕ(x)+aTx+bに対して次が成り立つ。
proxλf(x)=proxλϕ(x−λa)
- Regularization: f(x)=ϕ(x)+2ρ∥x−a∥22に対して次が成り立つ。
proxλf(x)=proxλ~ϕ((λ~/λ)x+(ρλ~)a)
この時、λ~=λ/(1+λρ)である。