2018-12 文獻閱讀:Computing the Best Approximation ... Doubly Nonnegative Cone(Sun2018)——半光滑牛頓法SNCG

文獻:Computing the Best Approximation Over the Intersection of a Polyhedral Set and the Doubly Nonnegative Cone(2018)


作者:Ying Cui,Defeng Sun,Kim-Chuan Toh
閱讀原因:機器學習討論班

0.摘要

在
本文介紹了一種高效的算法——imABCD算法,來計算在線性等式、不等式(多面體集)和雙重非負錐(半正定矩陣且元素非負)的交集上,給定矩陣的最佳逼近問題。此算法並不像BCD算法一樣,而是用2-block CD來求解4-block 無約束非光滑對偶問題。算法的關鍵是用Semismooth Newton法求解子問題(因爲最初的4 blocks被合併爲2 blocks,因此沒有封閉形式)。imABCD算法的迭代複雜度是O(1/k2)O(1/k^2)

1. Preliminaries:定義和定理

Def 1(錐cone和凸錐convex cone)
KRnK\sub\mathbb{R}^n,若xK,λ>0\forall x\in K,\lambda>0,都有λxK\lambda x\in K,則稱K爲錐。這樣的集合是由原點發射的半直線的並集。稱同時是凸集的錐爲凸錐。
  • 性質:任意多個凸錐(凸集)的交仍是凸錐(凸集)
Def 2(極錐與對偶錐)
設錐K,則
極錐爲Ko:={sRn:s,x0,xK}K^o:=\{s\in\mathbb{R}^n:\langle s,x\rangle\leq0,\forall x\in K\}
對偶錐爲K:={sRn:s,x0,xK}K^*:=\{s\in\mathbb{R}^n:\langle s,x\rangle\geq0,\forall x\in K\}
  • Ko=KK^o=-K^*
Def 3(凸函數convex function)
  1. f(x):RnRf(x):\mathbb{R}^n\rightarrow\overline{\mathbb{R}}爲廣義實函數,定義域爲DfD_f。若f(x)的上圖像
    epif={(x,μ):xDf,μR,μf(x)} epif=\{(x,\mu):x\in D_f,\mu\in\mathbb{R},\mu\geq f(x)\} 爲凸集,則稱函數f(x)爲凸函數。稱f(x)的有效域爲
    domf={xf(x)<+}, domf=\{x|f(x)<+\infty\}, 則實質上
    epif={(x,μ):xdomf,μR,μf(x)} epif=\{(x,\mu):x\in domf,\mu\in\mathbb{R},\mu\geq f(x)\}
  1. 若凸函數f(x)f(x)的值域爲(,+](-\infty,+\infty]且不恆爲++\infty,則稱f爲正常凸函數(proper convex)。例如,凸集KK上的示性函數記爲δK\delta_K
    δK(x)={0:xK+:xK \delta_K(x)=\left\{ \begin{aligned} 0 &: &x\in K\\ +\infty &: &x\notin K \end{aligned} \right. 由定義和KK的凸性,δK\delta_K是正常凸函數。
Def 4(下半連續函數lower semicontinuous,lsc)
稱函數f(x):SRf(x):S\rightarrow\mathbb{R}是下半連續的,如果對於{xn}S:xnx\{ x_n\}\sub S:x_n\rightarrow x,都有
f(x)limnf(xn) f(x)\leq \lim_{n\rightarrow\infty}f(x_n) 從定義中可以看出,稱f(x)在x點處是下半連續的,如果
f(x)=lim infyxf(y)=limϵ0(inf{f(y)yxϵ}) f(x)=\liminf_{y\rightarrow x}f(y)=\lim_{\epsilon\rightarrow 0}(\inf\{f(y)||y-x|\leq\epsilon\})
  • 性質:函數f(x)在RnR^n是下半連續的
    αR,{xf(x)α}\Leftrightarrow\forall\alpha\in R,\{x|f(x)\leq\alpha\}是閉集
    epif\Leftrightarrow epifRn+1R^{n+1}中閉集
Def 5(函數的凸包convex hull,cofcof
記cof爲函數f(x)的凸包,滿足
epi(cof)=co(epif) epi(cof)=co(epif) 即“凸包的上圖像等於上圖像的凸包”。
  • 函數f(x)的凸包是可以由f(x)控制的最大的凸函數,若f(x)是凸函數,則它的凸包等於自身。
Def 6(函數的下半連續包lscflscf,凸函數的閉包closed hull,clfclf
  1. cl(epif)爲任意函數f的上圖像的閉包,則必存在一個函授g,使得
    cl(epif)=epi(g) cl(epif)=epi(g) 則稱g爲f的下半連續包,記作lscflscf
  1. clfclfff的閉包,滿足
    clf(x){lscf(x):lscf(x)>,x:lscf(x)=,x clf(x)\equiv\left\{ \begin{aligned} lscf(x) &: &若lscf(x)>-\infty,\forall x\\ -\infty &: &若lscf(x)=-\infty,\exist x \end{aligned} \right. 即,對於正常凸函數,閉性與下半連續性等價;而閉的非正常凸函數一定是常函數+,+\infty,-\infty
Theorem 7(lscflscfclfclf的性質)
f:X[,+]f:X\rightarrow[-\infty,+\infty]爲凸函數,則lscflscfclfclf都是凸的。進一步的,若ff在一些點取值有限,則lscflscfclfclf都是正常凸的,且有clf=lscfclf=lscf。否則lscflscf具有以下形式:
clf(x)={,xcl(domf)+,xcl(domf) clf(x)=\left\{ \begin{aligned} -\infty &,&x\in cl(domf)\\ +\infty &,&x\notin cl(domf) \end{aligned} \right. 在後一種情形中,若cl(domf)cl(domf)\neq\empty,則lscf(x)=+,xcl(domf)lscf(x)=+\infty,\forall x\notin cl(domf),而根據定義,clf(x)=clf(x)=-\infty,故lscf≢clflscf\not\equiv clf。而其餘情形,lscfclflscf\equiv clf
Def 8(共軛函數)
f:X[,+]f:X\rightarrow[-\infty,+\infty],則f的共軛f:Ω[,+]f^*:\Omega\rightarrow[-\infty,+\infty]定義爲
f(ω)=supxX{x,ωf(x)} f^*(\omega)=\sup_{x\in X}\{\langle x,\omega\rangle-f(x)\}
Theorem 9
對於任意的f,f^*Ω\Omega上的閉凸函數。
Def 10(投影)
  1. 定義
    設K是有界閉凸集,ΠK:YK\Pi_K:Y\rightarrow K是Y到K上的投影,則ΠK(y)=argminxKxy2\Pi_K(y)=\mathrm{argmin}_{x\in K}||x-y||^2(回顧:泛函分析最佳逼近定理)
  1. Moreau分解
    設K爲閉凸錐,則對於x,x1,x2Rnx,x_1,x_2\in R^n,有以下性質等價:
    (1)x=x1+x2x1Kx2Kox=x_1+x_2,x_1\in K,x_2\in K^o,且x1,x2=0\langle x_1,x_2\rangle=0
    (2)x1=ΠK(x),x2=ΠKo(x)x_1=\Pi_K(x),x_2=\Pi_{K^o}(x)
  • 性質與定理1:定義
    dKRnRxminyK12xy2 \begin{aligned} d_K:&R^n\to R\\ &x\quad\mapsto \min_{y\in K}\frac{1}{2}||x-y||^2 \end{aligned} 則由Moreau分解,dK(x)=12xΠK(x)2=12ΠKo(x)2d_K(x)=\frac{1}{2}||x-\Pi_K(x)||^2=\frac{1}{2}||\Pi_{K^o}(x)||^2,且dKd_K是一個可微的凸函數,其梯度爲dK(x)=ΠKo(x)\nabla d_K(x)=\Pi_{K^o}(x)
  1. 半正定矩陣S+nS_+^n上的投影
    CSnC\in S^n,則C有正交對角化:C=Pdiag(λ1,...,λn)PTC=Pdiag(\lambda_1,...,\lambda_n)P^T。記
    C+=P[max(λ1,0)max(λn,0)]PT C_+=P\begin{bmatrix} \max(\lambda_1,0) & \\ & \ddots & \\ & & \max(\lambda_n,0) \end{bmatrix} P^T
    C=P[min(λ1,0)min(λn,0)]PT C_-=P\begin{bmatrix} \min(\lambda_1,0) & \\ & \ddots & \\ & & \min(\lambda_n,0) \end{bmatrix} P^T 有如下結論:ΠS+n(C)=C+ΠSn(C)=C\Pi_{S_+^n}(C)=C_+,\Pi_{S_-^n}(C)=C_-,其中(S+n)o=Sn(S_+^n)^o=S_-^n
Def 11(近端映射proximal mapping)
定義函數ψ:XR\psi:X\rightarrow Rxx點處的近端映射爲
Proxψ(x)argminωX{ψ(ω)+12ωx2} \mathrm{Prox}_{\psi}(x)\triangleq\mathrm{argmin}_{\omega\in X}\{\psi(\omega)+\frac{1}{2}||\omega-x||^2\}
Theorem 12(Rademacher定理)
ERnE\sub \mathbb{R}^n是開集,F:ERnF:E\to\mathbb{R}^n是Lipschitz連續函數,則FFEE上幾乎處處可微。
Def 13(次微分與廣義Jacobi矩陣)
設多值函數F:RnRmF:\mathbb{R}^n\to\mathbb{R}^m是(局部)Lipschitz連續函數,根據Rademacher定理,FF幾乎處處可微。設
DF{xRnFx} D_F\triangleq\{x\in\mathbb{R}^n|F在x處可微\} ΩFRn\DF\Omega_F\triangleq \mathbb{R}^n\backslash D_F是零測度集。
JF(x)JF(x)表示FFxDfx\in D_f處的 m×nm\times n Jacobian矩陣。FFxRnx\in \mathbb{R}^n處的B(Bouligand)-subdifferential定義爲
BF(x){VRm×n:V=limxkxxkDfJF(xk)} \partial_BF(x)\triangleq\{V\in\mathbb{R}^{m\times n}:V=\lim_{{x^k\to x}\atop{x^k\in D_f}} JF(x^k)\} JF(xk)JF(x^k)的聚點集。從而,Clarke意義下的廣義Jacobian是BF(x)\partial_BF(x)的凸包,即
F(x)=coBF(x) \partial F(x)=\mathrm{co}\partial_BF(x) F(x)\partial F(x)是非空凸緊的、上半連續的(upper-semicontinuous)集合。(非空說明定義中的極限存在性)
  • 【例】f(x)=xf(x)=|x|x=0x=0處不可微,在其他點處可微,則limxk0xkDfJF(xk)=11\lim_{{x^k\to 0}\atop{x^k\in D_f}} JF(x^k)=-1或1Bf={1,1}\partial_Bf=\{-1,1\},從而f=coBf=[1,1]\partial_f=co\partial_Bf=[-1,1]
  • 【注】特別的,若函數ff是凸的,則在ff的二階可導點x處,2f(x)\nabla^2f(x)是半正定矩陣。進一步的,若f\nabla fLipschitz連續,則對於xDf\forall x\in D_f2f(x)\nabla^2f(x)是半正定矩陣,從而2f(x)\partial^2f(x)中的元素都是半正定矩陣(利用矩陣的連續性,半正定矩陣的極限還是半正定的)
  • 【注】對於連續可微函數,
    limxkxxkDfJF(xk)=JF(x)\lim_{{x^k\to x}\atop{x^k\in D_f}} JF(x^k)=JF(x)BF(x)\partial_BF(x)只包含x處的Jacobian矩陣這一個點,此時次微分就是微分(Jacobian)。
Def 14(半光滑函數semismooth)
ϕ\phi局部Lipschitz連續函數。稱ϕ\phi在x處semismooth,如果滿足
(1)ϕ\phi在x處方向可微(任意方向上方向導數存在)
(2)對於Vϕ(x+h)\forall V\in\partial\phi(x+h),有
ϕ(x+h)ϕ(x)Vh=o(h),h0 \phi(x+h)-\phi(x)-Vh=o(\|h\|),h\to0 進一步的,若ϕ\phi在x處semismooth,且Vϕ(x+h)\forall V\in\partial\phi(x+h),有
ϕ(x+h)ϕ(x)Vh=O(h2) \phi(x+h)-\phi(x)-Vh=O(\parallel h\parallel^2) 則稱ϕ\phi在x處strongly semismooth。
  • 理解:給定方向h,則在這個方向有上述Taylor展開式,其中Vϕ(x+h)V\in\partial\phi(x+h)就體現了方向,即VV來自於 “後方” 【這不由得讓我想起了Nesterov gradient方法】。因爲並不是所有的Vϕ(x)V\in\partial\phi(x)都有上述Taylor展開,也就是可以理解爲 “依方向Taylor展開” 。例如f(x)=xf(x)=|x|x=0x=0處,左側右側都可以分別做Taylor展開,但右側要選取f(0)=f(0+δ)=1\partial f(0)=\partial f(0+\delta)=1,而左側要選取f(0)=f(0δ)=1\partial f(0)=\partial f(0-\delta)=-1,才能實現分別做Taylor展開。而如果一個函數在x點處可微,則當h0h\rightarrow0時,ϕ(x+h)ϕ(x)\partial\phi(x+h)\rightarrow\nabla\phi(x),即爲Taylor展開式。
  • 【注】最典型的(strongly)semismooth的例子是分片光滑函數,例如y=xy=ΠS+n(x)y=|x|、y=\Pi_{S_+^n}(x)等。一般涉及min、max的情形,除了最優點之外都是光滑的,就是分片光滑函數。
  • 性質:(strongly)semismooth函數的複合仍是(strongly)semismooth的。

2. 研究問題

凸優化問題(1)及對偶問題DP(3)

  • 本文主要的目的是求解以下凸優化問題(1):
    minxXf(x)+ϕ(x)s.t.A(x)=b,g(x)C,xK \begin{aligned} &\min_{x\in X}\quad f(x)+\phi(x)\\ &s.t. \quad A(x)=b,g(x)\in C,x\in K \end{aligned} 其中,X、Y、Z是有限維歐式空間,f:XRf:X\rightarrow R是光滑強凸函數,ϕ:X(,+]\phi:X\rightarrow(-\infty,+\infty]是閉的正常凸函數,A:XYA:X\rightarrow Y是線性算子,bYb\in Y是給定數據,CZKXC\sub Z,K\sub X是兩個閉凸錐,g:XZg:X\rightarrow Z是一個光滑的CC-凸 map,滿足以下性質:
    g(αx1+(1α)x2)[αg(x1)+(1α)g(x2)]C,x1,x2g1(C),α(0,1) g(\alpha x_1+(1-\alpha)x_2)-[\alpha g(x_1)+(1-\alpha)g(x_2)]\in C,\forall x_1,x_2\in g^{-1}(C),\forall \alpha \in(0,1) 關於g函數,例如不等式約束就包含其中。

  • 問題(1)的Dual Problem有如下形式(3):
    在這裏插入圖片描述
    這是一個無約束convex nonsmooth problem,其中h是一個可微的凸函數,其梯度Lipschitz連續,ϕ1,...,ϕ4\phi_1,...,\phi_4是proper closed convex functions。問題(3)不僅是(1)的對偶問題,很多優化問題本身就具有(3)的形式,比如robust PCA2,也可以參考PCA 與 Robust PCA區別

  • 可以用imABCD算法求解問題(3),迭代複雜度O(1/k2)O(1/k^2),將在Section2中詳細介紹。

最佳逼近問題(2)

研究問題(1)的興趣來源於以下最佳逼近問題(2):
minXSn12XG2s.t.AX=b,BXd,XS+n,X0 \begin{aligned} &\min_{X\sub S^n}\quad \frac{1}{2}||X-G||^2\\ &s.t. \quad AX=b,BX\geq d,X\sub S_+^n,X\geq 0 \end{aligned} 其中,A:SnRmEA:S^n\rightarrow R^{m_E}B:SnRmIB:S^n\rightarrow R^{m_I}是兩個線性算子(從矩陣空間映射到向量空間),GSn,bRmE,dRmIG\in S^n,b\in R^{m_E},d\in R^{m_I}是給定數據,Sn,S+nS^n,S_+^n分別表示對稱矩陣錐和半正定矩陣(凸)錐。

最小二乘協方差調整問題LSCAP

問題(2)是來源於最小二乘協方差矩陣調整問題(Least Squares Covariance Adjustment Problem,LSCAP)3
minXSn12XG2s.t.XS+ntr(AiX)=bi,i=1,...,ptr(CjX)dj,i=j,...,m \begin{aligned} &\min_{X\sub S^n}\quad \frac{1}{2}||X-G||^2\\ &s.t. \quad X\sub S_+^n\\ &\qquad tr(A_iX)=b_i,i=1,...,p\\ &\qquad tr(C_jX)\leq d_j,i=j,...,m\\ \end{aligned} 其中,G,Ai,CjSnG,A_i,C_j\in S^n是給定數據。
LSCAP的幾何解釋: 給定一個GSnG\in S^n,希望(在Frobenius範數意義下)計算G到一般的多面體集交集上的投影,這些多面體集包括線性等式、線性不等式、半正定矩陣錐。
LSCAP的概率解釋: 在理論上,協方差矩陣是對稱半正定矩陣。但是在實際應用中,根據樣本數據計算出的協方差矩陣一般只能保證是對稱矩陣,所以就需要對其進行調整(adjustment),即計算它到半正定矩陣錐上的投影,同時還可能滿足一些約束條件(例如,某兩個變量之間的協方差已知或滿足不等式)。這個過程本質上就是求解上述優化問題,得到的最優解是一個有效的協方差矩陣,可以保證後續的分析是有意義的。

3 問題求解與算法

求解對偶問題(3)

將4-blocks變量(ω1,ω2,ω3,ω4)(\omega_1,\omega_2,\omega_3,\omega_4)分爲2-blocks,形式如下(5):
在這裏插入圖片描述
因爲h\triangledown h全局Lipschitz連續,則存在兩個自伴半正定線性算子QQ^:UV\mathcal{Q}、\widehat{\mathcal{Q}}:\mathbb{U}\rightarrow\mathbb{V}使得
在這裏插入圖片描述
下面是QQ^\mathcal{Q}、\widehat{\mathcal{Q}}的分解以及假設條件:
在這裏插入圖片描述
下面利用imABCD算法求解對偶問題(3)

【Algorithm】imABCD算法(O(1/k2)O(1/k^2)

在這裏插入圖片描述
【注】當εk0\varepsilon_k\equiv 0時,此算法退化到mABCD算法BCD算法可參考【機器學習】座標下降法(Coordinate descent)座標下降法(Coordinate descent)

  • 注意! 算法中求解的是h^\widehat{h}而不是hh,這是因爲hh的形式可能很複雜,性質也未知,不方便求解。而h^(ω,ω)\widehat{h}(\omega,\omega ')是一個凸二次函數,是hhω\omega '處的二次近似,文獻中給出證明,此算法最終可以收斂到最優解,且迭代複雜度爲O(1/k2)O(1/k^2)。而一般的gradient-type算法都是O(1/k)O(1/k),之所以能加速,是使用了Nesterov加速技巧4,即算法中的Step 2.這一加速技巧非常常用,在很多論文中都有提到。
  • 在某點處做函數的二次近似的想法很常用,因爲凸二次問題求解簡單且有很多好的方法,同時又容易保證算法的收斂性(Amazing!)。比如:
  1. Newton法f(x)f(xk)+f(xk)T(xxk)+12xxkH(xk)2f^(x;xk)\qquad f(x)\approx f(x^k)+\nabla f(x^k)^T(x-x^k)+\frac{1}{2}||x-x^k||_{H(x^k)}^{2}\triangleq \widehat{f}(x;x^k)
  2. imABCD法h(ω)h(ω)+h(ω),(ωω)+12ωωQ^2h^(ω;ω)\qquad h(\omega)\leq h(\omega')+\langle\nabla h(\omega'),(\omega-\omega')\rangle+\frac{1}{2}||\omega-\omega'||_{\widehat{\mathcal{Q}}}^{2}\triangleq \widehat{h}(\omega;\omega')
  3. gg梯度Lipschitz連續g(x)g(x)+g(x),(xx)+L2xx2g^(x;x)\Rightarrow g(x)\leq g(x')+\langle\nabla g(x'),(x-x')\rangle+\frac{L}{2}||x-x'||^2\triangleq \widehat{g}(x;x')

求解最佳逼近問題(2)

回顧最佳逼近問題(2):
在這裏插入圖片描述
問題(2)的對偶問題爲(19):
在這裏插入圖片描述
爲了使用imABCD算法,將(y,S)分爲一塊,(z,Z)分爲一塊,這樣可以使問題不會退化且精度更高。下面用Newton-type法求解imABCD算法中的兩個子問題(7)

第一個子問題的分析:

在這裏插入圖片描述
在這裏插入圖片描述
其中,式(21)和ξ\nabla\xi的形式需要藉助投影算子的性質得到。而且有如下重要性質
(1)ΠS+n()\Pi_{S_+^n}(·)SnS^n上的處處strongly semismooth函數,而且是1-Lipschitz連續函數,因此幾乎處處可微。
(2)strongly semismooth函數的複合仍是strongly semismooth的。

接下來,就是大名鼎鼎的半光滑Newton法出場了!(聽說孫老師的看家本領就是它)

【Algorithm】Semismooth Newton-CG算法(SNCG)

在這裏插入圖片描述
此方法的收斂性在其他論文中已經得到證明,主要參考(H. Qi AND D.F. Sun, 2006)5和(X.Y. Zhao, D.F. Sun, AND K.-C. Toh, 2010)6

  • Semismooth Newton-CG法
  1. 適用條件:
    \quad我們知道,經典的Newton法要求函數二階可導,故Step 1中的廣義Hessian陣(一個集合)退化爲Hessian陣,而Step 1變爲用CG法求解:我們知道,經典的Newton法要求函數二階可導,故Step 1中的廣義Hessian陣(一個集合)退化爲Hessian陣,而Step 1變爲用CG法求解:
    H(xk)d+f(xk)=0 H(x^k)d+\nabla f(x^k)=0 而當二階不可微時,Newton法便不再適用。
    \quad也就是說,在求解一個凸優化問題時,如果函數一階可微但二階不可微,但是f\nabla f是semismooth的,就可以使用Semismooth Newton-CG法進行求解。
    \quad另一種情形(如子問題二):若FF是semismooth的,則在求解非線性方程組F(x)=0F(x)=0也可以使用SNCG法。但此時,因爲沒有優化問題的背景,所以收斂性可能無法保證,一般需要結合加速近端梯度法(accelerated proximal gradient,APG)使用。在求解子問題二時會進一步討論。
  2. 優點:
    (1)大量數值實驗表明,SNCG算法的收斂速度很快,很多問題只需幾步即可迭代到最優解。從理論分析可知,一般SNCG是超線性收斂的(superlinear),而如果f\nabla f是strongly semismooth的,則二階收斂。
    (2)在Step 1中,從(廣義hessian)中任意選取V,算法都是有效的。
  3. CG法:可參考共軛梯度法的推導與完整算法梯度下降法和共軛梯度法有何異同?
    (1)用於求解線性方程組AX=bAX=b,其中AA是正定矩陣。
    (2)具體操作時,儘量將矩陣A變稀疏或將A分解,計算複雜度可由O(n2n^2)下降爲O(Cnn),C爲與具體問題相關的常數。
  • 在求解第一個子問題時,此算法中有以下幾點值得注意6
    (1)精確表示2ξ\partial^2\xi是困難的,因此定義
    ^2ξ(y)AΠS+n(G1+Ayj)A \widehat\partial^2\xi(y)\triangleq \mathcal{A}\Pi_{S_+^n}(G_1+\mathcal{A}^*y^j)\mathcal{A}^* 且有性質:d,2ξ(y)d^2ξ(y)d\forall d,\partial^2\xi(y)d\sub\widehat\partial^2\xi(y)d。這意味着,若所有^2ξ(y)\widehat\partial^2\xi(y)中的元素都正定,那麼2ξ(y)\partial^2\xi(y)中的所有元素一定都是正定的。(由命題3.65,在最優解yy^*處,V2ξ(y)\forall V\in\partial^2\xi(y^*)都正定,故在yy^*的一個鄰域中,所有V2ξ(y)V\in\partial^2\xi(y)都正定。另外,在文獻6Algorithm 2中,使用的是Vj+εjIV_j+\varepsilon_j I,也是保證其正定性)
    (2)CG法的終止條件爲:AVjAdj+ξ(yj)δ||\mathcal{A}V^j\mathcal{A}^*d^j+\nabla\xi(y^j)||\leq \deltaδ\delta的形式根據具體問題的收斂性證明的需要而定。
    (3)j0\forall j\geq 0djd^j都是ξ\xi的下降方向,因此Step 2中的line search是well defined的
    (4)j0\exist j_0正整數,使得jj0\forall j\geq j_0都有
    ξ(yj+dj)ξ(yj)+μξ(yj),dj \xi(y^j+d^j)\leq\xi(y^j)+\mu\langle\nabla\xi(y^j),d^j\rangle yj+1=yj+djy^{j+1}=y^j+d^j

第二個子問題的分析:

在這裏插入圖片描述

  • 添加近端項

    • 需要注意,近端項c2zz02\frac{c}{2}||z-z_0||^2的作用是保證目標函數關於zz是強凸的。添加之前,目標函數關於zz求梯度爲:
      B(Bz+Z+G2)d \mathcal{B}(\mathcal{B}^*z+Z+G_2)-d BB\mathcal{B}\mathcal{B}^*是半正定矩陣(有限維Euclid空間中,線性算子作用在向量上可看作矩陣),這可能導致無法解除zz。而添加近端項之後,梯度變爲:
      B(Bz+Z+G2)d+c(zz0) \mathcal{B}(\mathcal{B}^*z+Z+G_2)-d+c(z-z_0) 此時zz的係數矩陣爲:BB+cI0\mathcal{B}\mathcal{B}^*+cI\succ 0
    • 在imABCD算法中,h^\widehat{h}hh的一個上界,所以再擴大仍然是上界,這意味着,添加近端項後算法仍是有效的。
  • 與第一個子問題(21)不同,問題(23)是一個有約束的SC1^1問題(即,目標函數連續可微,梯度semismooth)。根據文獻7,我們也可以使用SNCG算法,但每步迭代都需要求解一個嚴格凸二次規劃問題,比較麻煩。

  • 另一個思路是將問題(23)看做一個更一般的無約束非光滑凸問題:
    在這裏插入圖片描述
    具體來說,問題(23)的等價形式爲:
    minz12Π0(Bz+G2)2d,z+c2zz02+δ0(z) \min_z \frac{1}{2}||\Pi_{\geq 0}(\mathcal{B}^*z+G_2)||^2-\langle d,z\rangle+\frac{c}{2}||z-z_0||^2+\delta_{\geq 0}(z) 其中,ψ(z)=δ0(z)\psi(z)=\delta_{\geq 0}(z)凸非光滑(Rn+\mathbb{R}^{n^+}是凸錐,更具體說是凸多面體集),剩下的強凸光滑函數部分對應爲ζ(z)\zeta(z)。此強凸問題可以用APG算法求解4,是全局收斂的,但收斂速度只有線性的8。可以參考①近端梯度下降算法(Proximal Gradient Algorithm)、②近端梯度下降proximal gradient descent、③對近端梯度算法(Proximal Gradient Method)的理解和④近端梯度法(Proximal Gradient Method, PG)。具體算法過程爲:

【Algorithm】Accelerated Proximal Gradient算法(APG)

APG算法

  1. 主要原理
    問題(24)的最優解是下面非線性方程組的根:
    在這裏插入圖片描述
    推導方法有三種:
    (1)上面四篇參考文章的第二篇,核心爲:
    ζ^(x;xk)ζ(xk)+ζ(xk),(xxk)+L2xxk2=L2x(xk1Lζ(xk))2+C \begin{aligned} \widehat{\zeta}(x;x_k)&\triangleq \zeta(x_k)+\langle\nabla \zeta(x_k),(x-x_k)\rangle+\frac{L}{2}||x-x_k||^2\\ &=\frac{L}{2}\parallel x-(x_k-\frac{1}{L}\nabla \zeta(x_k))\parallel^2+C \end{aligned} 其中C是與x無關的常數。用ζ^\widehat{\zeta}近似ζ\zeta,則有:
    x=argminx{ζ^(x)+ψ(x)}=argminx{L2x(xk1Lζ(xk))2+ψ(x)}=Proxψ/L(xk1Lζ(xk)) \begin{aligned} x^*&=\mathrm{argmin}_x\{\widehat{\zeta}(x)+\psi(x)\}\\ &=\mathrm{argmin}_x\{\frac{L}{2}\parallel x-(x_k-\frac{1}{L}\nabla \zeta(x_k))\parallel^2+\psi(x)\}\\ &=\mathrm{Prox}_{\psi/L}(x_k-\frac{1}{L}\nabla \zeta(x_k)) \end{aligned}
    (2)上面四篇參考文章的第三篇,核心爲:
    APG推導
    (3)原問題minζ(x)+ψ(x)\min\zeta(x)+\psi(x),則最優解xx^*滿足:
    0ζ(x)+ψ(x) 0\in\nabla\zeta(x^*)+\partial\psi(x^*) 轉化後的問題爲F(x)xProxψ(xζ(x))=0F(x)\triangleq x-\mathrm{Prox}_{\psi}(x-\nabla\zeta(x))=0,它的根滿足:
    x=argminω{ψ(ω)+12ωx+ζ(x)2} x^*=\mathrm{argmin}_{\omega}\{\psi(\omega)+\frac{1}{2}\parallel\omega-x^*+\nabla\zeta(x^*)\parallel^2\} 則也滿足類似的關係:
    0ψ(x)+xx+ζ(x) 0\in\partial\psi(x^*)+x^*-x^*+\nabla\zeta(x^*) 因此,兩個問題等價。
  2. 這意味着,若用APG算法求解問題(24)得到最優解,等價於用它去尋找F(x)=0F(x)=0的根,迭代過程是一樣的!(爲後面APG-SNCG算法做鋪墊)

進一步分析
在這裏插入圖片描述

  • 值得注意的是,有如下性質存在
    (1)任意凸函數都是semismooth的。
    (2)投影算子ΠK()\Pi_K(·),若KK是凸集,則ΠK()\Pi_K(·)是凸函數。所以,ΠS+n()\Pi_{S_+^n}(·)Π0()\Pi_{\geq 0}(·)都是semismooth的。
    (3)近端算子Prox的性質:當ψ(x)=δ0(x)\psi(x)=\delta_{\geq 0}(x)時,Proxcψ(x)=Π0(x)\mathrm{Prox}_{c\psi}(x)=\Pi_{\geq 0}(x)是凸函數。一般的,Prox函數的性質依賴於ψ\psi,例如,當ψ=1\psi=||·||_1時,Prox1(x)\mathrm{Prox}_{||·||_1}(x)爲軟閾值操作;當ψ=2\psi=||·||_2時,Prox2(x)\mathrm{Prox}_{||·||_2}(x)爲semismooth函數。
    (4)一般的,在涉及max、min時,都是分片光滑的,也就是說,ΠS+n()\Pi_{S_+^n}(·)Π0()\Pi_{\geq 0}(·)都是分片光滑函數,從而是strongly semismooth的。
  • 因此,再具體求解子問題(23)時,FF是semismooth的,因此可以利用SNCG法和APG算法的雜合體進行求解。

【Algorithm】APG-SNCG算法

APG-SNCG算法
用流程圖總結如下:
在這裏插入圖片描述

  • 與子問題(21)不同,F(x)=0F(x)=0是一個新問題,並沒有優化問題的背景,也就是說,FF已經不是某個優化問題的梯度,所以沒有對應的目標函數,Step1所求出的djd^j也就不是哪個目標函數的下降方向!而且。同時,Step2中對m設置了上界m0_0,以使步長不會過小。因此,Step2中的不等式不一定滿足(從而可能轉到step3)。
    \quad另一方面,文獻4命題3.6證明了F(y)\partial F(y^*)中所有元素都是正定矩陣,而文獻中F(y)AΠS+n(G+Ayj)F(y)\triangleq \mathcal{A}\Pi_{S_+^n}(G+\mathcal{A}^*y^j)與子問題二中的FF不同(與子問題一ξ\nabla\xi相同)。因此,Step1中的VjV^j不一定是正定矩陣,CG法對應的不等式(26)不一定滿足(從而可能轉到step3)。
  • Remark.
    \quad 1. 由ζ\zeta是強凸的,Step3 APG是此算法全局收斂性的保障!
    \quad 2. 在不等式(26)成立下,由Step1得到的djd^j以概率1是F(x)||F(x)||xjx^j處的下降方向。

將子問題二分解爲smaller decoupled problems(略)

此部分核心在於,將子問題二拆分爲多個更容易求解的問題,最終形式爲:
在這裏插入圖片描述

4. 數值實驗(略)

此部分只列出幾種算法

【Algorithm】Accelerated Block Coordinate Gradient Descent算法(ABCGD)

ABCGD

【Algorithm】A four-block inexact enhanced Randomized ABCD算法(eRABCD)

在這裏插入圖片描述
在這裏插入圖片描述


  1. A dual approach to semidefinite least-squares problems(Jerome Malick,2004) ↩︎

  2. Robust principal component analysis: Exact recovery of corrupted low-rank matrices via convex optimization(J. Wright等,2009) ↩︎

  3. Least-squares covariance matrix adjustment(S. Boyd AND X. Lin,2005) ↩︎

  4. A method of solving a convex programming problem with convergence rateO(1/k2)O(1/k^2)(Nesterov,1983) ↩︎ ↩︎

  5. A quadratically convergent newton method for computing the nearest correlation matrix(H. Qi AND D.F. Sun,2006) ↩︎ ↩︎

  6. A Newton-CG augmented Lagrangian method for semidefinite programming(X.Y. Zhao, D.F. Sun, AND K.-C. Toh,2010) ↩︎ ↩︎ ↩︎

  7. A Globally Convergent Newton Method for Convex SC1^1 Minimization Problems(J.-S. Pang AND L. Qi,1995) ↩︎

  8. Convergence rates of inexact proximal-gradient methods for convex optimization(M. Schmidt, N.L. Roux, AND F.R. Bach,2011) ↩︎

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章