文章目录
1 概述
1.1 题目
2015:用于非凸规划的加速近端梯度方法 (Accelerated proximal gradient methods for nonconvex programming)
附件和代码如下:
- https://zhouchenlin.github.io/Publications/2015-NIPS-APG_supp.pdf
- https://zhouchenlin.github.io/NIPS2015_code.zip
实验数据集如下:
- https://www.csie.ntu.edu.tw/~cjlin/libsvmtools/datasets/binary/real-sim.bz2
- https://www.csie.ntu.edu.tw/~cjlin/libsvmtools/datasets/binary.html
1.2 摘要
图像及信号处理过程中的非凸和非光滑问题备受关注,其中加速近端梯度 (Accelerated proximal gradient, APG) 是处理该问题的优秀方法。然而在非凸规划中,其是否能够收敛到一个临界点不得而知。
本文通过引入一个满足充分下降属性的监视器,将APG扩展到通用的非凸和非平滑问题,并提出monotone APG和nonmonotone 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}),
x∈RnminF(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={x∈R: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) liminfx→x0g(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\}
u∈dom∂f:{x∈Rn:∂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 \}
u∈U⋂{u∈Rn: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+:
- φ \varphi φ是凹的,且 C 1 C^1 C1位于 ( 0 , η ) (0,\eta) (0,η);
- φ \varphi φ在 0 0 0连续,且 φ ( 0 ) = 0 \varphi(0)=0 φ(0)=0;
- φ ′ ( 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 ∥x∥p,其中 p ≥ 0 p\geq0 p≥0、 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+tktk−1−1(xk−xk−1),(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−αk∇f(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α1∥x−u∥2。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+tktk−1(zk−xk)+tktk−1−1(xk−xk−1),zk+1=proxαkg(yk−αk∇f(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进行收敛分析困难的两个原因如下:
- y k \mathbf{y}_k yk可能是一个糟糕的推断;
- 已有方法中,只能保证下降性质 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+tktk−1(zk−xk)+tktk−1−1(xk−xk−1),zk+1=proxαyg(yk−αy∇f(yk)),vk+1=proxαxg(xk−αx∇f(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+1−xk∥2,(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}^*) 0∈∂F(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)22∥x0−x∗∥2.(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 \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∗,且算法能够在有限步下停止;
- 如果
θ
∈
[
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)k−k2rk2.(17) - 如果
θ
∈
(
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∗≤((k−k3)d2(1−2θ)C)1−2θ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αx1−2L) and d2=min{2d1C1,1−2θC(22θ−22θ−1−1)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(xk−1),…,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ηk−j∑j=1kηk−jF(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+1−yk∥2,F(vk+1)≤ck−δ∥vk+1−xk∥2.(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+1≤ck−qk+1δ∥xk+1−yk∥2.相应地,分别将公式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+1≤ck−qk+1δ∥xk+1−xk∥2这意味着
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 \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}^*) 0∈∂F(x∗);
- 如果 Ω 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) 0∈∂F(x∗)、 0 ∈ ∂ F ( y ∗ ) 0 \in \partial F\left(\mathbf{y}^*\right) 0∈∂F(y∗),以及 0 ∈ ∂ F ( v ∗ ) 0 \in \partial F\left(\mathbf{v}^*\right) 0∈∂F(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=1∑nlog(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=1∑dmin(∣wi∣,θ),θ>0.
对比算法包括:1)单调APG (mAPG);(2) 非单调APG (nmAPG);(3) mGIST;(4) nmGIST;以及 (5) IFB。实验数据集为真实模拟数据集,共包含72309个样本,样本维度为20958。参数设置如下:
- λ = 0.0001 \lambda = 0.0001 λ=0.0001、 θ = 0.1 λ \theta=0.1\lambda θ=0.1λ,起始点设置为零向量;
- 对于nmAPG,设置 η = 0.8 \eta=0.8 η=0.8;
- 对于IFB, β = 0.01 \beta=0.01 β=0.01,Lipschitz常量通过回溯计算;
- 为了公平起见,首先运行mGIST,该算法的终止条件为两个相对的目标值之间的差异小于 1 0 − 5 10^{-5} 10−5或者迭代次数大于 1000 1000 1000;
- 其它算法的终止条件为获得了比mGIST更小的目标值或者达到最大迭代次数;
- 训练集测试集的比例为9:1;
- 实验结果为10次独立实验的平均值。