论文阅读 (87):Accelerated Proximal Gradient Methods for Nonconvex Programming

1 概述

1.1 题目

2015:用于非凸规划的加速近端梯度方法 (Accelerated proximal gradient methods for nonconvex programming)

附件和代码如下:

  1. https://zhouchenlin.github.io/Publications/2015-NIPS-APG_supp.pdf
  2. https://zhouchenlin.github.io/NIPS2015_code.zip

实验数据集如下:

  1. https://www.csie.ntu.edu.tw/~cjlin/libsvmtools/datasets/binary/real-sim.bz2
  2. https://www.csie.ntu.edu.tw/~cjlin/libsvmtools/datasets/binary.html

1.2 摘要

图像及信号处理过程中的非凸和非光滑问题备受关注,其中加速近端梯度 (Accelerated proximal gradient, APG) 是处理该问题的优秀方法。然而在非凸规划中,其是否能够收敛到一个临界点不得而知。

本文通过引入一个满足充分下降属性的监视器,将APG扩展到通用的非凸和非平滑问题,并提出monotone APGnonmonotone APG。其中,nonmonotone APG不要求目标函数单调约简,每次迭代需要的计算量更少。

在已有知识框架内,这是首次提出的用于通用非凸和非平滑优化问题的APG类型的算法,其能够确保每一次的累积点均为临界点,且当问题是凸优化时,收敛率为 O ( 1 k 2 ) O(\frac{1}{k^2}) O(k21),其中 k k k是迭代次数。最终数据化的计算验证了算法在速度上的优势。

1.3 引用

@article{
    
    Li:2015:19,
author		=	{
    
    Huan Li and Zhou Chen Lin},
title		=	{
    
    Accelerated proximal gradient methods for nonconvex programming},
journal		=	{
    
    {
    
    NeurIPS}},
pages		=	{
    
    1--9},
year		=	{
    
    2015},
volume		=	{
    
    28},
}

2 引入

近年来,稀疏和低秩学习受到很大关注,并在信号与图像处理、统计与机器学习等领域处理广泛应用。 l 1 l_1 l1范数和核范数分别作为 l 0 l_0 l0范数和秩的的连续与凸代理。然而在很多情况下它们不是最优的,因为它们只能在非常有限的条件下获得稀疏性与低秩。对此,须臾非凸正则化器被提出,例如 l p l_p lp范数、Capped- l 1 l_1 l1惩罚、Log-Sum惩罚、最大凹凸惩罚、Geman惩罚、平滑截断绝对偏差,以及Schatte- p p p范数。它们的目标均为解决如下形式的非凸和非平滑问题
min ⁡ x ∈ R n F ( x ) = f ( x ) + g ( x ) , (1) \tag{1} \min_{\mathbf{x}\in\mathbb{R}^n}F(\mathbf{x})=f(\mathbf{x})+g(\mathbf{x}), xRnminF(x)=f(x)+g(x),(1)其中 f f f是可导的,可以是非凸的,以及 g g g是非凸和非平滑的。

加速梯度方法是凸优化研究的核心,与此同时,一些该类方法被提出用以处理公式1。在这些方法中, k k k次迭代足以从最佳目标值中找到 O ( 1 k 2 ) O(\frac{1}{k^2}) O(k21)误差内的解决方案。近来,Ghadimi和Lan提出了一个用于凸、非凸,以及随机优化的加速梯度的统一形式 (Unified treat of accelerated gradient, UAG)。他们证明了他们的算法在非凸 f f f和凸 g g g下的非凸规划中收敛,并在公式1的凸规划中以 O ( 1 k 2 ) O(\frac{1}{k^2}) O(k21)的收敛速度加速。进一步,他们分析了关于梯度映射的收敛率。

Attouch等人提出一个统一的框架来证明使用Kurdyka-Łojasiewicz (KL) 不等式解决公式1的一般下降方法的收敛性。Frankel等人研究了KL性质中的反奇异化函数 φ \varphi φ具有 C θ t θ \frac{C}{\theta}t^\theta θCtθ形式时,通用下降方法的收敛率。他们框架中的一个典型例子是近端梯度法。然而,目前没有文献表明存在一个满足他们框架约束的加速梯度法。

公式1的其它解决方案包括惯性前进-后退 (Inertial forward-backwar, IFB)、iPiano、一般迭代收缩与阈值 (General iterative shrinkage and thresholding, GIST)、近端平均梯度下降 (Gradient descent with proximal average, GDPA),以及迭代重加权 (Iteratively reweighted, IR),表1对这些方法进行了适当的总结。

本文的目的是将Beck和Teboulle的APG算法进行扩展,使其适用于非凸和非平滑问题。APG首先结合当前点和先前点来推断点 y k \mathbf{y}_k yk,然后解决一个近端映射问题。当扩展APG到非凸规划时,主要的难点即为如何推断 y k \mathbf{y}_k yk。当凸性不存在时,我们对 F ( y k ) F(\mathbf{y}_k) F(yk)几乎没有约束。事实上,当 y k \mathbf{y}_k yk是一个糟糕的推断时, F ( y k ) F(\mathbf{y}_k) F(yk)相较于 F ( x k ) F(\mathbf{x}_k) F(xk)任意大。当在一个糟糕的 y k \mathbf{y}_k yk通过近端映射计算 x k + 1 \mathbf{x}_{k+1} xk+1时, F ( x k + 1 ) F(\mathbf{x}_{k+1}) F(xk+1)也可能相较于 F ( x k ) F(\mathbf{x}_k) F(xk)任意大。Beck和Teboulle的monotone APG确保了 F ( x k + 1 ) ≤ F ( x k ) F(\mathbf{x}_{k+1})\leq F(\mathbf{x}_k) F(xk+1)F(xk)。然后,这不能确保收敛到临界点。对此,我们引入了一个满足充分下降性质的监视器来预防并纠正糟糕的 y k \mathbf{y}_k yk

2 预备

2.1 基本假设

对于函数 g ≠ ∅ g\neq\empty g=,有 g : R n → ( − ∞ , + ∞ ] g:\mathbb{R}^n\to(-\infty,+\infty] g:Rn(,+],其中 g = { x ∈ R : g ( x ) < + ∞ } g=\{ \mathbf{x} \in \mathbb{R}: g(\mathbf{x})<+\infty \} g={ xR:g(x)<+}。如果 lim ⁡ inf ⁡ x → x 0 g ( x ) ≥ g ( x 0 ) \lim \inf_{\mathbf{x}\to\mathbf{x}_0}g(\mathbf{x})\geq g(\mathbf{x}_0) liminfxx0g(x)g(x0),则 g g g在点 x 0 \mathbf{x}_0 x0是下半连续。在公式1中,假设 f f f具有Lipschitz连续梯度,且 g g g是半连续的。假设 F ( x ) F(\mathbf{x}) F(x)是强制性的,即 F F F有下界且当 ∥ x ∥ → ∞ \|\mathbf{x}\|\to\infty x时,有 F ( x ) → ∞ F(\mathbf{x})\to\infty F(x),其中 ∥ ⋅ ∥ \|\cdot\| l 2 l_2 l2范数。

2.2 KL不等式

定义1:如果存在 η ∈ ( 0 , + ∞ ] \eta\in(0,+\infty] η(0,+] u ‾ \overline{\mathbf{u}} u的邻域 U U U,以及函数 φ ∈ Φ η \varphi\in\Phi_\eta φΦη,则函数 R n \mathbb{R}^n Rn u ‾ ∈ d o m ∂ f : { x ∈ R n : ∂ f ( u ) ≠ ∅ } \overline{\mathbf{u}}\in dom\partial f:\{\mathbf{x} \in \mathbf{R}^n:\partial f(\mathbf{u})\neq\empty\} udomf:{ xRn:f(u)=}有KL性质。例如对于所有的 u ∈ U ⋂ { u ∈ R n : f ( u ‾ ) < f ( u ) < f ( u ‾ ) + η } \mathbf{u}\in U\bigcap\{ \mathbf{u} \in \mathbf{R}^n: f(\overline{\mathbf{u}}) < f(\mathbf{u}) < f(\overline{\mathbf{u}}) + \eta \} uU{ uRn:f(u)<f(u)<f(u)+η},以下不等式成立:
φ ′ ( f ( u ) − f ( u ‾ ) ) d i s t ( 0 , ∂ f ( u ) ) > 1 , (2) \tag{2} \varphi'(f(\mathbf{u})-f(\overline{\mathbf{u}}))dist(0,\partial f(\mathbf{u}))>1, φ(f(u)f(u))dist(0,f(u))>1,(2)其中 Φ η \Phi_\eta Φη表示满足以下条件的一类函数 φ : [ 0 , η ) → R + \varphi:[0,\eta)\to\mathbb{R}^+ φ:[0,η)R+

  1. φ \varphi φ是凹的,且 C 1 C^1 C1位于 ( 0 , η ) (0,\eta) (0,η)
  2. φ \varphi φ 0 0 0连续,且 φ ( 0 ) = 0 \varphi(0)=0 φ(0)=0
  3. φ ′ ( x ) > 0 , ∀ x ∈ ( 0 , η ) \varphi'(x)>0,\forall \mathbf{x}\in(0,\eta) φ(x)>0,x(0,η)

所有的半代数函数和亚解析函数均满足KL性质,其中半代数函数是一类函数,它们具有半代数运算的性质,即可以以复数的形式表示。它们的定义域是复平面的一个封闭的子集,其图像是一个开集。亚解析函数是指具有可解析性质的函数,它们的定义域是一个复平面上的边界,其图像可以被完备地表示为许多简单函数的有限和。特别地,半代数函数反奇异化函数 φ ( t ) \varphi(t) φ(t)可以被选定为 C θ t θ \frac{C}{\theta}t^\theta θCtθ的形式,其中 θ ∈ ( 0 , 1 ] \theta\in(0,1] θ(0,1]。典型的半代数函数包括多项式函数 ∥ x ∥ p \|x\|_p xp,其中 p ≥ 0 p\geq0 p0 rank ( X ) \text{rank}(X) rank(X)、PSD锥的指示函数、Stiefel流行,以及常秩矩阵。

2.3 凸规划下的APG

首先回顾凸规划下的APG。Bech和Teboulle将Nesterov的加速梯度方法扩展到非平滑情绪。这被命名为加速近端梯度方法,其包含以下步骤:
y k = x k + t k − 1 − 1 t k ( x k − x k − 1 ) , (3) \tag{3} \mathbf{y}_k=\mathbf{x}_k+\frac{t_{k-1}-1}{t_k}(\mathbf{x}_k-\mathbf{x}_{k-1}), yk=xk+tktk11(xkxk1),(3) x k + 1 = prox α k g ( y k − α k ∇ f ( y k ) ) , (4) \tag{4} \mathbf{x}_{k+1}=\text{prox}_{\alpha kg}(\mathbf{y}_k-\alpha_k\nabla f(\mathbf{y}_k)), xk+1=proxαkg(ykαkf(yk)),(4) t k + 1 = 4 ( t k ) 2 + 1 + 1 2 , (5) \tag{5} t_{k+1}=\frac{\sqrt{4(t_k)^2+1}+1}{2}, tk+1=24(tk)2+1 +1,(5)其中近端映射被定义为 prox α g ( x ) = arg min ⁡ u g ( u ) + 1 2 α ∥ x − u ∥ 2 \text{prox}_{\alpha g}(\mathbf{x})=\argmin_\mathbf{u}g(\mathbf{u})+\frac{1}{2\alpha}\| \mathbf{x}-\mathbf{u}\|^2 proxαg(x)=argminug(u)+2α1xu2。APG并不是一个单调方法,这表明 F ( x k + 1 ) F(\mathbf{x}_{k+1}) F(xk+1)并不一定比 F ( x k ) F(\mathbf{x}_k) F(xk)小。因此,Beck和Teboulle进一步提出了单调APG,其包含以下步骤:
y k = x k + t k − 1 t k ( z k − x k ) + t k − 1 − 1 t k ( x k − x k − 1 ) , z k + 1 = prox ⁡ α k g ( y k − α k ∇ f ( y k ) ) , t k + 1 = 4 ( t k ) 2 + 1 + 1 2 , x k + 1 = { z k + 1 ,  if  F ( z k + 1 ) ≤ F ( x k ) , x k ,  otherwise.  (6–9) \tag{6--9} \begin{aligned} & \mathbf{y}_k=\mathbf{x}_k+\frac{t_{k-1}}{t_k}\left(\mathbf{z}_k-\mathbf{x}_k\right)+\frac{t_{k-1}-1}{t_k}\left(\mathbf{x}_k-\mathbf{x}_{k-1}\right), \\ & \mathbf{z}_{k+1}=\operatorname{prox}_{\alpha_k g}\left(\mathbf{y}_k-\alpha_k \nabla f\left(\mathbf{y}_k\right)\right), \\ & t_{k+1}=\frac{\sqrt{4\left(t_k\right)^2+1}+1}{2}, \\ & \mathbf{x}_{k+1}= \begin{cases}\mathbf{z}_{k+1}, & \text { if } F\left(\mathbf{z}_{k+1}\right) \leq F\left(\mathbf{x}_k\right), \\ \mathbf{x}_k, & \text { otherwise. }\end{cases} \end{aligned} yk=xk+tktk1(zkxk)+tktk11(xkxk1),zk+1=proxαkg(ykαkf(yk)),tk+1=24(tk)2+1 +1,xk+1={ zk+1,xk, if F(zk+1)F(xk), otherwise. (6–9)

3 APG用于非凸规划

本节提出两种基于APG的非凸非光滑规划算法。我们在非凸情形下建立收敛性,且在收敛情形下有 O ( 1 k 2 ) O(\frac{1}{k^2}) O(k21)的收敛性。当KL性质满足时,我们提供了在收敛率上的优异结果。

3.1 单调APG

导致对通常的APG进行收敛分析困难的两个原因如下:

  1. y k \mathbf{y}_k yk可能是一个糟糕的推断;
  2. 已有方法中,只能保证下降性质 F ( x k + 1 ) ≤ F ( x k ) F(\mathbf{x}_{k+1})\leq F(\mathbf{x}_k) F(xk+1)F(xk)

为了解决这些问题,我们需要一个监视器在可能出现失败时纠正 y k \mathbf{y}_k yk,且监视器应当鼓励充分下降属性,这是收敛到临界点的关键。已知近端梯度方法能够确保充分下降,因此我们使用近端梯度步骤作为监视器:
y k = x k + t k − 1 t k ( z k − x k ) + t k − 1 − 1 t k ( x k − x k − 1 ) , z k + 1 = prox ⁡ α y g ( y k − α y ∇ f ( y k ) ) , v k + 1 = prox ⁡ α x g ( x k − α x ∇ f ( x k ) ) , t k + 1 = 4 ( t k ) 2 + 1 + 1 2 , x k + 1 = { z k + 1 ,  if  F ( z k + 1 ) ≤ F ( v k + 1 ) , v k + 1 ,  otherwise.  (10–14) \tag{10--14} \begin{aligned} & \mathbf{y}_k=\mathbf{x}_k+\frac{t_{k-1}}{t_k}\left(\mathbf{z}_k-\mathbf{x}_k\right)+\frac{t_{k-1}-1}{t_k}\left(\mathbf{x}_k-\mathbf{x}_{k-1}\right), \\ & \mathbf{z}_{k+1}=\operatorname{prox}_{\alpha_y g}\left(\mathbf{y}_k-\alpha_y \nabla f\left(\mathbf{y}_k\right)\right), \\ & \mathbf{v}_{k+1}=\operatorname{prox}_{\alpha_x g}\left(\mathbf{x}_k-\alpha_x \nabla f\left(\mathbf{x}_k\right)\right), \\ & t_{k+1}=\frac{\sqrt{4\left(t_k\right)^2+1}+1}{2}, \\ & \mathbf{x}_{k+1}= \begin{cases}\mathbf{z}_{k+1}, & \text { if } F\left(\mathbf{z}_{k+1}\right) \leq F\left(\mathbf{v}_{k+1}\right), \\ \mathbf{v}_{k+1}, & \text { otherwise. }\end{cases} \end{aligned} yk=xk+tktk1(zkxk)+tktk11(xkxk1),zk+1=proxαyg(ykαyf(yk)),vk+1=proxαxg(xkαxf(xk)),tk+1=24(tk)2+1 +1,xk+1={ zk+1,vk+1, if F(zk+1)F(vk+1), otherwise. (10–14)其中 α y < 1 L \alpha_y<\frac{1}{L} αy<L1 α x < 1 L \alpha_x<\frac{1}{L} αx<L1是固定的常量,或者它们可以根据Barzilai-Borwein回溯线性搜索初始化, L L L ∇ f \nabla f f中的Lipschitz常量。

我们的算法是Beck和Teboulle的单调APG的扩展。不同之处在于额外的 v \mathbf{v} v,其作为监视器,将在 x \mathbf{x} x更新时作为纠正步。另一个区别在于,我们的算法确保了充分下降
F ( x k + 1 ) ≤ F ( x k ) − δ ∥ v k + 1 − x k ∥ 2 , (15) \tag{15} F(\mathbf{x}_{k+1})\leq F(\mathbf{x}_k)-\delta\| \mathbf{v}_{k+1} - \mathbf{x}_k\|^2, F(xk+1)F(xk)δvk+1xk2,(15)其中 δ > 0 \delta>0 δ>0是一个很小的常量。不难理解,在非凸规划中仅靠下降性并不能保证收敛到临界点。因此我们在以下定理中给出了收敛结果。

定理1:令 f f f是一个带有Lipschitz连续梯度的合法函数, g g g是一个下半连续合法函数。对于非凸 f f f和非平滑 g g g,假设 F ( x ) F(x) F(x)是强制的 (coercive)。然后,通过公式10–14生成的 { x } \{\mathbf{x}\} { x} { v k } \{ \mathbf{v}_k \} { vk}是有界的。令 x ∗ \mathbf{x}^* x表示 { x k } \{ \mathbf{x}_k \} { xk}的任意积累点,则有 0 ∈ ∂ F ( x ∗ ) 0\in\partial F(\mathbf{x}^*) 0F(x),即 x ∗ \mathbf{x}^* x是一个临界点。

定理2:对于凸 f f f g g g,假设 ∇ f \nabla f f是Lipschitz连续,令 x ∗ \mathbf{x}^* x表示任意的全局最优解,然后公式10–14生成的 { x k } \{ \mathbf{x}_k \} { xk}满足:
F ( x N + 1 ) − F ( x ∗ ) ≤ 2 α y ( N + 1 ) 2 ∥ x 0 − x ∗ ∥ 2 . (16) \tag{16} F(\mathbf{x}_{N+1})-F(\mathbf{x}^*)\leq\frac{2}{\alpha_y(N+1)^2}\| \mathbf{x}_0-\mathbf{x}^*\|^2. F(xN+1)F(x)αy(N+1)22x0x2.(16)当当目标函数在局部最小值的邻域局部凸性时,定理2表明当面临局部最小时,APG能够确保 O ( 1 k 2 ) O(\frac{1}{k^2}) O(k21)的收敛率,因此加速了收敛。

为了更好地表述,我们将单调APG的过程总结在算法1:

3.2 KL假设下的收敛率

KL性质是一个强有力的工具。常用的APG不满足充分下降性质,但这一性质对使用KL性质至关重要,因此目前没有KL假设下的结论。另一方面,由于中间变量 y k \mathbf{y}_k yk v k \mathbf{v}_k vk,以及 z k \mathbf{z}_k zk,我们的算法比一般的下降方法更复杂,且也不满足其中的条件。然而,由于公式12-16中的监视器步骤,一些修改条件得以满足,我们依然能够在KL假设下获得令人满意的结果。在已有的框架下,我们有如下定理:

定理3:令 f f f是一个带有Lipschitz连续梯度的合法函数, g g g是一个下半连续合法函数。对于非凸 f f f和非平滑 g g g,假设 F ( x ) F(x) F(x)是强制的 (coercive)。如果进一步假设 f f f g g g满足KL性质,且对于 C > 0 , θ ∈ ( 0 , 1 ] C>0,\theta\in(0,1] C>0,θ(0,1],去奇异化函数有形式 φ ( t ) = C θ t θ \varphi(t)=\frac{C}{\theta}t^\theta φ(t)=θCtθ,然后:

  1. 如果 θ = 1 \theta=1 θ=1,则存在 k 1 k_1 k1,使得对于所有的 k > k 1 k>k_1 k>k1,有 F ( x k ) = F ∗ F(\mathbf{x}_k)=F^* F(xk)=F,且算法能够在有限步下停止;
  2. 如果 θ ∈ [ 1 2 , 1 ) \theta \in\left[\frac{1}{2}, 1\right) θ[21,1),则存在 k 2 k_2 k2,使得对于所有的 k > k 2 k>k_2 k>k2,有
    F ( x k ) − F ∗ ≤ ( d 1 C 2 1 + d 1 C 2 ) k − k 2 r k 2 . (17) \tag{17} F\left(\mathbf{x}_k\right)-F^* \leq\left(\frac{d_1 C^2}{1+d_1 C^2}\right)^{k-k_2} r_{k_2} . F(xk)F(1+d1C2d1C2)kk2rk2.(17)
  3. 如果 θ ∈ ( 0 , 1 2 ) \theta \in\left(0, \frac{1}{2}\right) θ(0,21),则存在 k 3 k_3 k3,对于所有的 k > k 3 k>k_3 k>k3,有
    F ( x k ) − F ∗ ≤ ( C ( k − k 3 ) d 2 ( 1 − 2 θ ) ) 1 1 − 2 θ , (18) \tag{18} F\left(\mathbf{x}_k\right)-F^* \leq\left(\frac{C}{\left(k-k_3\right) d_2(1-2 \theta)}\right)^{\frac{1}{1-2 \theta}}, F(xk)F((kk3)d2(12θ)C)12θ1,(18)其中 F ∗ F^* F { x k } \left\{\mathbf{x}_k\right\} { xk}的所有累积点有相同的函数值、 r k = F ( v k ) − F ∗ r_k=F\left(\mathbf{v}_k\right)-F^* rk=F(vk)F,以及
    d 1 = ( 1 α x + L ) 2 / ( 1 2 α x − L 2 )  and  d 2 = min ⁡ { 1 2 d 1 C , C 1 − 2 θ ( 2 2 θ − 1 2 θ − 2 − 1 ) r 0 2 θ − 1 } . d_1=\left(\frac{1}{\alpha_x}+L\right)^2 /\left(\frac{1}{2 \alpha_x}-\frac{L}{2}\right) \text { and } d_2=\min \left\{\frac{1}{2 d_1 C}, \frac{C}{1-2 \theta}\left(2^{\frac{2 \theta-1}{2 \theta-2}}-1\right) r_0^{2 \theta-1}\right\}. d1=(αx1+L)2/(2αx12L) and d2=min{ 2d1C1,12θC(22θ22θ11)r02θ1}.

F ( x ) F(\mathbf{x}) F(x)是一个半代数函数时,去奇异化函数 φ ( t ) \varphi(t) φ(t)可以选择为 C θ t θ \frac{C}{\theta} t^\theta θCtθ形式,其中 θ ∈ ( 0 , 1 ] \theta \in(0,1] θ(0,1] [23]。在这种情况下,如定理3,当 θ = 1 \theta=1 θ=1时,我们的算法在有限次内收敛,当 θ ∈ [ 1 2 , 1 ) \theta\in[\frac{1}{2},1) θ[21,1)时收敛到线性率,当 θ ∈ ( 0 , 1 2 ) \theta \in\left(0, \frac{1}{2}\right) θ(0,21)时收敛到次线性率。

3.3 非单调APG

算法1是单调算法。当问题是病态的,,单调算法必须沿着狭窄弯曲的山谷底部爬行,以使目标函数值不增加,从而导致步长变短甚至锯齿形,从而收敛缓慢。去除对单调性的要求可以提高收敛速度,因为使用线搜索时可以采用更大的步长。

另一方面,算法1中需要在每次迭代中计算 z k + 1 \mathbf{z}_{k+1} zk+1 v k + 1 \mathbf{v}_{k+1} vk+1,并使用 v k + 1 \mathbf{v}_{k+1} vk+1作为监视器来纠正 z k + 1 \mathbf{z}_{k+1} zk+1。这是一种保守策略,事实上,当 y k y_k yk是一个好的推测时,我们能够接受 z k + 1 \mathbf{z}_{k+1} zk+1作为 x k + 1 \mathbf{x}_{k+1} xk+1。然后仅当不满足条件时 v k + 1 \mathbf{v}_{k+1} vk+1被接受。因此,我们能偶降低近端映射的平均次数,接下来将重点介绍非单调APG。

在单调APG中,公式15是保证的。在非单调APG中,我们允许 x k + 1 \mathbf{x}_{k+1} xk+1获得一个比 F ( x k ) F(\mathbf{x}_k) F(xk)个更大的目标值。特别地,我们允许 x k + 1 \mathbf{x}_{k+1} xk+1生成一个小于 F ( x k ) F(\mathbf{x}_k) F(xk)松弛 c k c_k ck的目标值。 c k c_k ck不应该大于 F ( x k ) F(\mathbf{x}_k) F(xk)大多。因此 F ( x k ) , F ( x k − 1 ) , … , F ( x 1 ) F(\mathbf{x}_k),F(\mathbf{x}_{k-1}),\dots,F(\mathbf{x}_1) F(xk),F(xk1),,F(x1)的平均值是一个好的选择:
c k = ∑ j = 1 k η k − j F ( x j ) ∑ j = 1 k η k − j , (19) \tag{19} c_k=\frac{\sum_{j=1}^k \eta^{k-j} F\left(\mathbf{x}_j\right)}{\sum_{j=1}^k \eta^{k-j}}, ck=j=1kηkjj=1kηkjF(xj),(19)其中 η ∈ [ 0 , 1 ) \eta \in[0,1) η[0,1)控制非单调的程度。实际上, c k c_k ck可以通过以下步骤递归计算:In practice c k c_k ck can be efficiently computed by the following recursion:
q k + 1 = η q k + 1 c k + 1 = η q k c k + F ( x k + 1 ) q k + 1 , (20–21) \tag{20--21} \begin{aligned} q_{k+1} & =\eta q_k+1 \\ c_{k+1} & =\frac{\eta q_k c_k+F\left(\mathbf{x}_{k+1}\right)}{q_{k+1}}, \end{aligned} qk+1ck+1=ηqk+1=qk+1ηqkck+F(xk+1),(20–21)其中 q 1 = 1 q_1=1 q1=1 and c 1 = F ( x 1 ) c_1=F\left(\mathbf{x}_1\right) c1=F(x1)

根据公式14,我们通过 x k + 1 \mathbf{x}_{k+1} xk+1的不同选择将其划分为两个部分。因此,在非单调APG中,我们使用以下条件代替公式15:
F ( z k + 1 ) ≤ c k − δ ∥ z k + 1 − y k ∥ 2 , F ( v k + 1 ) ≤ c k − δ ∥ v k + 1 − x k ∥ 2 . (22–23) \tag{22--23} \begin{aligned} & F\left(\mathbf{z}_{k+1}\right) \leq c_k-\delta\left\|\mathbf{z}_{k+1}-\mathbf{y}_k\right\|^2, \\ & F\left(\mathbf{v}_{k+1}\right) \leq c_k-\delta\left\|\mathbf{v}_{k+1}-\mathbf{x}_k\right\|^2 . \end{aligned} F(zk+1)ckδzk+1yk2,F(vk+1)ckδvk+1xk2.(22–23)我们使用公式22作为之前所述的标准。当公式22满足时, y k \mathbf{y}_k yk是一个好的推测且直接接受 z k + 1 \mathbf{z}_{k+1} zk+1;否则通过公式2计算满足公式23的 v k + 1 \mathbf{v}_{k+1} vk+1。当回溯线性搜索使用时,能够在有限次数内找到满足公式23的 v k + 1 \mathbf{v}_{k+1} vk+1

结合公式20–22,且 x k + 1 = z k + 1 \mathbf{x}_{k+1}=\mathbf{z}_{k+1} xk+1=zk+1,有:
c k + 1 ≤ c k − δ ∥ x k + 1 − y k ∥ 2 q k + 1 . c_{k+1} \leq c_k-\frac{\delta\left\|\mathbf{x}_{k+1}-\mathbf{y}_k\right\|^2}{q_{k+1}} . ck+1ckqk+1δxk+1yk2.相应地,分别将公式22和 x k + 1 = z k + 1 \mathbf{x}_{k+1}=\mathbf{z}_{k+1} xk+1=zk+1替换为公式23 x k + 1 = v k + 1 \mathbf{x}_{k+1}=\mathbf{v}_{k+1} xk+1=vk+1有:
c k + 1 ≤ c k − δ ∥ x k + 1 − x k ∥ 2 q k + 1 c_{k+1} \leq c_k-\frac{\delta\left\|\mathbf{x}_{k+1}-\mathbf{x}_k\right\|^2}{q_{k+1}} ck+1ckqk+1δxk+1xk2这意味着 c k c_k ck的充足下降条件替换了公式15中 F ( x k ) F\left(\mathbf{x}_k\right) F(xk)的重组下降条件。

算法2总结了非单调APG。与单调APG类似,非单调APG在非凸情况下有收敛性且在凸规划下有 O ( 1 k 2 ) O\left(\frac{1}{k^2}\right) O(k21)收敛率。随后我们在定理4中给出了收敛结果。定理2可以在没有修改的情况下支撑算法2。

Ω 1 = { k 1 , k 2 , ⋯   , k j , ⋯   } \Omega_1=\left\{k_1, k_2, \cdots, k_j, \cdots\right\} Ω1={ k1,k2,,kj,}以及 Ω 2 = { m 1 , m 2 , ⋯   , m j , ⋯   } \Omega_2=\left\{m_1, m_2, \cdots, m_j, \cdots\right\} Ω2={ m1,m2,,mj,}, 例如在算法2中,对于所有的 k = k j ∈ Ω 1 k=k_j \in \Omega_1 k=kjΩ1 x k + 1 = z k + 1 \mathbf{x}_{k+1}=\mathbf{z}_{k+1} xk+1=zk+1被执行。对于所有的 k = m j ∈ Ω 2 k=m_j \in \Omega_2 k=mjΩ2,公式22不被支撑,公式14被执行。然后我们有 Ω 1 ⋂ Ω 2 = ∅ \Omega_1 \bigcap \Omega_2=\emptyset Ω1Ω2= Ω 1 ⋃ Ω 2 = { 1 , 2 , 3 , ⋯ \Omega_1 \bigcup \Omega_2=\{1,2,3, \cdots Ω1Ω2={ 1,2,3,},以及 有如下定理。

定理4:令 f f f是一个带有Lipschitz连续梯度的合法函数, g g g是一个下半连续合法函数。对于非凸 f f f和非平滑 g g g,假设 F ( x ) F(x) F(x)是强制的 (coercive)。然后对于 k j ∈ Ω 1 k_j\in\Omega_1 kjΩ1 { x k } \{\mathbf{x}_k\} { xk} { v k } \{ \mathbf{v}_k \} { vk},以及 y k j \mathbf{y}_{k_j} ykj是通过算法2生成的界,则有

  1. 如果 Ω 1 \Omega_1 Ω1或者 Ω 2 \Omega_2 Ω2有限,则对于 { x k } \{\mathbf{x}_k\} { xk}任意的累积点 { x ∗ } \{\mathbf{x}^*\} { x},有 0 ∈ ∂ F ( x ∗ ) 0\in\partial F(\mathbf{x}^*) 0F(x)
  2. 如果 Ω 1 \Omega_1 Ω1 and Ω 2 \Omega_2 Ω2无限,则对于 { x k j + 1 } \left\{\mathbf{x}_{k_j+1}\right\} { xkj+1}的任意累积点 x ∗ \mathbf{x}^* x ,以及 { y k j } \left\{\mathbf{y}_{k_j}\right\} { ykj}的任意累积点 y ∗ \mathbf{y}^* y,其中 k j ∈ Ω 1 k_j \in \Omega_1 kjΩ1,以及 { v m j + 1 } \left\{\mathbf{v}_{m_j+1}\right\} { vmj+1}的任意累积点 v ∗ \mathbf{v}^* v { x m j } \left\{\mathbf{x}_{m_j}\right\} { xmj}的任意累积点 x ∗ \mathbf{x}^* x,其中 m j ∈ Ω 2 m_j \in \Omega_2 mjΩ2,有 0 ∈ ∂ F ( x ∗ ) 0 \in \partial F\left(\mathbf{x}^*\right) 0F(x) 0 ∈ ∂ F ( y ∗ ) 0 \in \partial F\left(\mathbf{y}^*\right) 0F(y),以及 0 ∈ ∂ F ( v ∗ ) 0 \in \partial F\left(\mathbf{v}^*\right) 0F(v)

4 数值结果

本节使用稀疏逻辑回归 (Logistic regression, LR) 来测试算法的性能。稀疏LR是LR的一个扩展,能够在降低过拟合的同时执行特征选择。稀疏LR被广泛用于生物信息学和文本分类中。本文即将优化的目标函数如下,其考虑了稀疏LR,且添加了一个非凸正则:
min ⁡ w 1 n ∑ i = 1 n log ⁡ ( 1 + exp ⁡ ( − y i x i T w ) ) + r ( w ) , (26) \tag{26} \min _{\mathbf{w}} \frac{1}{n} \sum_{i=1}^n \log \left(1+\exp \left(-y_i \mathbf{x}_i^T \mathbf{w}\right)\right)+r(\mathbf{w}) , wminn1i=1nlog(1+exp(yixiTw))+r(w),(26)其中 r ( w ) r(\mathbf{w}) r(w)被选择为 l 1 l_1 l1惩罚:
r ( w ) = λ ∑ i = 1 d min ⁡ ( ∣ w i ∣ , θ ) , θ > 0. r(\mathbf{w})=\lambda \sum_{i=1}^d \min \left(\left|w_i\right|, \theta\right), \quad \theta>0. r(w)=λi=1dmin(wi,θ),θ>0.

对比算法包括:1)单调APG (mAPG);(2) 非单调APG (nmAPG);(3) mGIST;(4) nmGIST;以及 (5) IFB。实验数据集为真实模拟数据集,共包含72309个样本,样本维度为20958。参数设置如下:

  1. λ = 0.0001 \lambda = 0.0001 λ=0.0001 θ = 0.1 λ \theta=0.1\lambda θ=0.1λ,起始点设置为零向量;
  2. 对于nmAPG,设置 η = 0.8 \eta=0.8 η=0.8
  3. 对于IFB, β = 0.01 \beta=0.01 β=0.01,Lipschitz常量通过回溯计算;
  4. 为了公平起见,首先运行mGIST,该算法的终止条件为两个相对的目标值之间的差异小于 1 0 − 5 10^{-5} 105或者迭代次数大于 1000 1000 1000
  5. 其它算法的终止条件为获得了比mGIST更小的目标值或者达到最大迭代次数;
  6. 训练集测试集的比例为9:1;
  7. 实验结果为10次独立实验的平均值。

猜你喜欢

转载自blog.csdn.net/weixin_44575152/article/details/129794930