프락시멀 오퍼레이터
📂최적화이론프락시멀 오퍼레이터
정의
벡터공간 X의 놈을 ∥⋅∥X라 하자. 함수 f:X→R에 대한 프락시멀 오퍼레이터proximal operator 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 point라고 한다.
proximal은 한국어로 '근접의', '가까운'이라는 뜻인데, proxλf(x)는 x와 가까운 점 중에서 f의 최적해를 찾는다는 의미에서 proximal이라 명명된 것 같다.
proxλf(⋅)를 계산하기 쉬운 함수 f를 prox friendly라고 한다.
X=Rn인 경우에는 f가 컨벡스 함수이면 proxλf(x)는 유일unique하다.
프락시멀 오퍼레이터를 사용하여 최적화문제를 푸는 알고리즘을 프락시멀 알고리즘proximal algorithm이라 한다. 다음의 것들이 있다.
성질
- 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+λρ)이다.