Majorization-Minimization优化框架在各类算法中是很常见的,而且这个思想其实也很容易理解,简单点说,只需文献【1】中的三页PPT即可:
- 目标函数 J ( x ) J(x) J(x) 比较难优化的时候,我们往往寻找另外一个更容易优化的目标函数 G ( x ) G(x) G(x),当 G ( x ) G(x) G(x) 满足一定条件时, G ( x ) G(x) G(x) 的最优解能够无限逼近 J ( x ) J(x) J(x) 的最优解,这就是 MM 思想。
- G ( x ) G(x) G(x) 应该满足的三个条件:
- 易优化
- G k ( x ) ≥ J ( x k ) G_k(x) \geq J(x_k) Gk(x)≥J(xk) for all x x x
- G k ( x ) = J ( x k ) G_k(x) = J(x_k) Gk(x)=J(xk)- 我们看看图解过程
Majorization-Minimization 思想
- 我们再来看看 MM 思想的流程:
- Set k=0. Initialize x 0 x_0 x0.
- Choose G k ( x ) G_k(x) Gk(x) such that (a) G k ( x ) ≥ J ( x k ) G_k(x) \geq J(x_k) Gk(x)≥J(xk) for all x x x; (b) G k ( x ) = J ( x k ) G_k(x) = J(x_k) Gk(x)=J(xk).
- Set x k + 1 x_{k+1} xk+1 as the minimizer of G k ( x ) G_k(x) Gk(x)
- Set k = k + 1 k = k+1 k=k+1 and go to step 2.
- 由 G k ( x ) G_k(x) Gk(x) 满足的两个条件我们可以推出如下不等式:
J ( x k + 1 ) ≤ G k ( x k + 1 ) ≤ G k ( x k ) = J ( x k ) J(x_{k+1}) \leq G_k(x_{k+1}) \leq G_k(x_k) = J(x_k) J(xk+1)≤Gk(xk+1)≤Gk(xk)=J(xk)
- 上述不等式保证了我们在优化目标函数 G ( x ) G(x) G(x) 的过程中,也在不停的优化 J ( x ) J(x) J(x).
或者另一种说法:
- 考虑到以下优化问题:
minimize x f ( x ) , x ∈ X \textrm{minimize}_x f(x), x \in \mathcal{X} minimizexf(x),x∈X, 其中 X \mathcal{X} X 是一个闭凸集并且 f ( x ) f(x) f(x) 是连续的。
由于 f ( x ) f(x) f(x) 太复杂而无法操作,所以我们连续最小化一个逼近函数 u ( x , x k ) u(x, x^k) u(x,xk),我们希望最小化序列 { x k } \{x^k\} {xk} 将收敛到最优 x ∗ x^* x∗。
现在的问题是如何构造
u
(
x
,
x
k
)
u(x, x^k)
u(x,xk)?
需要满足以下构造规则:
u
(
x
,
y
)
=
f
(
y
)
,
∀
y
∈
X
u(x, y) = f(y), \forall y \in \mathcal{X}
u(x,y)=f(y),∀y∈X
u
(
x
,
y
)
≥
f
(
y
)
,
∀
x
,
y
∈
X
u(x, y) \geq f(y), \forall x,y \in \mathcal{X}
u(x,y)≥f(y),∀x,y∈X
u
′
(
x
,
y
;
d
)
∣
x
=
y
=
f
′
(
y
;
d
)
,
∀
d
w
i
t
h
y
+
d
∈
X
u'(x, y;d)|_{x=y} = f'(y;d), \forall d with y+d \in \mathcal{X}
u′(x,y;d)∣x=y=f′(y;d),∀dwithy+d∈X
u
′
(
x
,
y
)
在
x
和
y
处
连
续
u'(x, y) 在 x 和 y 处连续
u′(x,y)在x和y处连续
图示为:
- 专业化最小化(连续上界最小化):
- 找到一个可行点 x 0 ∈ X , 设 置 k = 0 x^0 \in \mathcal{X},设置 k=0 x0∈X,设置k=0。
- 重复 x k + 1 = arg min x ∈ X u ( x , x k ) , k = k + 1 x^{k+1} = \argmin_{x \in \mathcal{X}} u(x, x^k),k = k+1 xk+1=x∈Xargminu(x,xk),k=k+1。
- 直到满足一些收敛准则停止。
【注意】:在迭代过程中,新的目标函数是不断随着迭代点的变化而变化的。
可以看出,Majorization Minimization流程很简单,关键的问题是如何构建新的目标函数。有关这个问题在文献 [2,3,4] 中都有涉及。
另外,文献 [5] 将 Majorization Minimization 进行了推广,即 Generalized MM:
Algorithm 1: G-MM optimization
Input: w o , η , ϵ w_o, \eta, \epsilon wo,η,ϵ
1: v 0 : = F ( w 0 ) v_0 := F(w_0) v0:=F(w0)
2: for t : = 1 , 2 , … t := 1,2,\dots t:=1,2,… do
3: select b t ∈ B t = B ( w t − 1 , v t − 1 ) b_t \in \mathcal{B}_t = \mathcal{B}(w_{t-1}, v_{t-1}) bt∈Bt=B(wt−1,vt−1) as in (4)
4: w t : = arg min w b t ( w ) w_t := \argmin_wb_t(w) wt:=wargminbt(w)
5: d t : = b t ( w t ) − F ( w t ) d_t := b_t(w_t) - F(w_t) dt:=bt(wt)−F(wt)
6: v t : = b t ( w t ) − η d t v_t := b_t(w_t) - \eta d_t vt:=bt(wt)−ηdt
7: if d t < ϵ d_t \lt \epsilon dt<ϵ break
8: end for
Output: w t w_t wt
参考文献:
【1】谷鹄翔.IteratedSoft-ThresholdingAlgorithm[Report,slides]. http://www.sigvc.org/bbs/thread-41-1-2.html
【2】Ying Sun and Daniel P. Palomar. Majorization-Minimization Algorithm: Theory andApplications[slides]. 2015,HongKong. (Available at:http://www.ece.ust.hk/~palomar/ELEC5470_lectures/11/slides_MM_algorithms.pdf)
【3】Lange, K., Hunter, D.R., Yang, I…OptimizationTransfer Using Surrogate Objective Functions[J]. Journal ofComputational &Graphical Statistics, 2000, 9(1):1-20. (Available at:http://sites.stat.psu.edu/~dhunter/papers/ot.pdf)
【4】D. R. Hunter, and K. Lange, ”A Tutorial on MMAlgorithms”, Amer. Statistician, pp. 30-37, 2004. (Available at: http://sites.stat.psu.edu/~dhunter/papers/mmtutorial.pdf)
【5】Parizi S N, He K, Sclaroff S, et al.Generalized Majorization-Minimization[J]. Computer Science, 2015,121(2):95-108. (Available at:http://arxiv.org/pdf/1506.07613.pdf)