一、这篇文章主要讲了什么?
这篇文章讨论了带有附加结构的非光滑凸优化函数的机器学习问题,例如依赖于问题参数子集的函数。作者提出了一种算法,该算法使用梯度预测复杂性几乎是问题的总有效维数的线性,将凸优化函数最小化到一定精度。该算法显着改进了先前存在的切平面方法来解决该问题。作者提议了切平面和内点方法的新颖组合,以在算法的每次迭代中选择适当的函数项。文章的主要结果是定理1.2,它提供了一种算法,该算法可证明使用O(m log(m/ε))子梯度预测查询来解决问题,其中m是问题的总有效维数。文章还介绍了算法对可分解子模函数最小化问题的应用,并改进了该问题的最佳评估预测复杂性。文章最后讨论了算法的限制,例如无法查询所需的正确函数项,以取得进展。
二、什么是割平面法和内点法?
割平面法(Cutting-plane method,CPM)核心思想在于通过维护一个初始时包含可行域的凸集 E ( 0 ) E(0) E(0),并通过 f f f 的次梯度的信息逐渐缩小集合 E ( k ) E(k) E(k),直到找到在可行域内的最小点。具体而言,在每次迭代时,找到 E ( k ) E(k) E(k) 中的一个点 x ( k ) x(k) x(k),当且仅当梯度的信息表达 x ( k ) x(k) x(k) 不是一个最小点时,找到集合 H ( k ) = y ∣ h ⋅ ( y − x ( k ) ) ≤ 0 H(k)={y|h\cdot(y-x(k))\leq 0} H(k)=y∣h⋅(y−x(k))≤0( h h h 表示 f f f 在 x ( k ) x(k) x(k) 处的梯度)后,令 E ( k + 1 ) E(k+1) E(k+1) 为 E ( k ) E(k) E(k) 和 H ( k ) H(k) H(k) 的交集。割平面法通过不同的 x ( k ) x(k) x(k) 和 E ( k ) E(k) E(k) 的选择来实现收缩速度的变化[4]。
内点法(Interior-point method,IPM)则解决以下带约束的凸优化问题:
minimize
f
(
x
)
subject to
g
i
(
x
)
≤
0
,
i
=
1
,
…
,
m
,
h
j
(
x
)
=
0
,
j
=
1
,
…
,
p
.
\text{minimize } f(x)\text{ subject to } g_i(x)\leq 0,i=1,\ldots,m,h_j(x)=0,j=1,\ldots,p.
minimize f(x) subject to gi(x)≤0,i=1,…,m,hj(x)=0,j=1,…,p. 具体来说,IPM 通过解决带参数
t
t
t 的无约束问题
Ψ
t
(
u
)
=
t
∑
i
=
1
m
h
i
(
x
)
+
ϕ
S
(
x
)
\Psi_t(u)=t\sum_{i=1}^mh_i(x)+\phi_S(x)
Ψt(u)=t∑i=1mhi(x)+ϕS(x),其中
ϕ
S
(
x
)
\phi_S(x)
ϕS(x) 为满足原问题所需约束的自共轭障碍函数,得到一个关于
t
t
t 的序列,由于障碍函数的性质,序列的极限点应等于原问题的最优解。IPM 通常在初始
t
t
t 下,通过利用一个大多数情况下,容易找到的障碍函数极小点
x
0
x_0
x0 作为当前极小点
x
t
x_t
xt,且每次
t
t
t 的增大,
x
t
x_t
xt 都由在
Ψ
t
+
1
(
u
)
\Psi_{t+1}(u)
Ψt+1(u) 下的
x
t
+
1
x_{t+1}
xt+1 近似[4]。
注:以上文字中凸集的意义与中英文有所不同,在此文中凸集专指凸集的相对内部。
三、该算法具体的实现过程
文档中提出的算法实现过程大致如下:首先将问题1.1转化为问题1.4,并定义了Ke等变量[5]。随后利用组合切割法和内点法结合的方法,在每次迭代中选择适当的函数项[4]进行求解。在每次迭代中,利用一个牛顿步骤将当前解向最优解移动,条件是下降距离达到一定标准和当前解与真正最优解之间的距离[8]。另外需要注意的是,算法实现需要对每个函数进行采样进行求解[4]因此总的时间复杂度你需要考虑这一额外的开销[4]。
问题1.1涉及具有附加结构的具有非光滑凸优化函数的机器学习问题,例如依赖于问题参数子集的函数等[2]。问题1.1的目标是计算一个向量θ,使得一组凸函数fi(θ)的和小于某个容差,并且θ与函数最小值接近[3]。问题1.4讨论了算法对问题1.1的局限性,例如算法无法查询所需的正确函数项来取得进展[4]。