Skip to content

第7章:收敛率 ​

编辑:赵志民


本章前言 ​

本章的内容围绕学习理论中的算法收敛率(Convergence Rate)展开。具体来说,我们将探讨在确定性优化和随机优化中的收敛率问题,并在最后分析支持向量机的实例。

7.1 【概念解释】算法收敛率 ​

在算法分析中,收敛率是指迭代算法逼近解或收敛到最优或期望结果的速度,它衡量算法在减少当前解与最优解之间差异的快慢。

设 {xk} 是算法生成的迭代序列,我们可以根据以下公式来衡量算法的收敛率:

limt→+∞∥xt+1−x∗∥∥xt−x∗∥p=C

其中,C为收敛因子,p为收敛阶数,x∗ 表示最优解,∥.∥ 表示适当的范数。

根据收敛率的不同情况,我们可以将其分类如下:

  1. 超线性收敛:p≥1,C=0,表明每次迭代都会使得误差减小,且减小的速度越来越快。特别地,当p>1时,称为p阶收敛。例如,p=2时称为平方收敛,p=3时称为立方收敛。
  2. 线性收敛:p=1,C>0,表明每次迭代都会使得误差减小(误差呈几何级数下降),但减小的速度是一定的。
  3. 次线性收敛:p=1,C=1,表明每次迭代都会使得误差减小,但减小的速度越来越慢。

7.2 【证明补充】凸函数的确定性优化 ​

书中给出的梯度下降算法中,输出的是 T 轮迭代的均值 ω,而不是最后一次迭代的结果 ωT。这是因为在凸函数的梯度下降过程中,所设定的步长 η 是启发式的,因此每次迭代产生的 ω′ 无法保证是局部最优解。

根据定理7.1,T 轮迭代的 ω 均值具有次线性收敛率,而无法证明最后一次迭代值 ωT 也具有相同的收敛率。因此,返回 ω 的均值虽然会增加计算代价,但可以确保稳定的收敛率。这一思想在7.3.1和7.3.2中梯度下降算法中也有体现。

作为对比,在7.2.2中的强凸函数梯度下降算法中,我们只输出了最后一次迭代值 ωT。这是因为在强凸函数的条件下,每次迭代的梯度更新都有闭式解 ωt+1=ωt−1γ∇f(ωt)。这种情况下,每次迭代无需启发式算法便可得到该临域的全局最优解,这也是此算法拥有更快收敛率(线性收敛率)的原因。因此,无需返回历史 ω 的均值。

另外,在 139页 定理7.1的(7.12)推导中,利用了第一章补充内容 AM-GM 不等式 n=2 的结论,即对于任意非负实数 x,y,有:

xy≤x+y2

当且仅当 x=y 时取等号。

因此,只有当 Γ22ηT=ηl22 时,公式(7.12)中 Γ22ηT+ηl22 才能取得最小值 lΓT,此时步长 η 应设置为 ΓlT。类似的推导可以在(7.35)和(7.39)中找到。

7.3 【证明补充】强凸函数的确定性优化 ​

142页 中,在证明定理7.3时,对于(7.19)的推导补充如下。

首先,如果目标函数满足 λ-强凸且 γ-光滑,那么根据第一章补充内容中的结论,我们有 γ≥λ。这是因为对于任意 ω,ω′,光滑系数 γ 被定义为:

f(ω)≤f(ω′)+∇f(ω′)T(ω−ω′)+γ2∥ω−ω′∥2

而强凸系数 λ 被定义为:

f(ω)≥f(ω′)+∇f(ω′)T(ω−ω′)+λ2∥ω−ω′∥2

光滑系数 γ 决定了 f(ω) 的上界,而强凸系数 λ 决定了 f(ω) 的下界,因此光滑系数 γ 不小于强凸系数 λ。

接着,令 f(α)=γ−λλα2−α,由于 γ−λλ≥0,我们可以分成以下两种情况讨论:

  1. 当 γ−λλ=0 时,(7.19)转化为:
f(ωt+1)≤minα∈[0,1]{f(ωt)−α(f(ωt)−f(ω∗))}⇒f(ωt+1)−f(ω∗)≤minα∈[0,1]{1−α}(f(ωt)−f(ω∗))

因为 f(ωt)−f(ω∗)≥0,所以当且仅当 α=1 时,不等式右侧取得最小值 0,此时易知 f(ωt+1)=f(ω∗)。根据凸函数局部最优解等于全局最优解的结论,我们可以得到 ωt+1=ω∗,即算法在第 t+1 轮迭代中收敛到最优解。

  1. 当 γ−λλ>0 时,f(α) 为开口向上的二次函数。令 f′(α)=2γ−λλα−1=0,得到 f(α) 的对称轴为 α=λ2(γ−λ)。我们可以分成以下两种情况讨论:
    • 当 λ2(γ−λ)≥1 时,f(α) 取得最小值只能在 α=1 处,故而得到(7.20)。
    • 当 0<λ2(γ−λ)<1 时,f(α) 取得最小值在 α=λ2(γ−λ) 处,故而得到(7.21)。

余下的推导部分与书中相同,此处不再赘述。

7.4 【定理证明】鞅差序列的 Bernstein 不等式 ​

149页 定理7.6 给出了鞅差序列的 Bernstein 不等式,我们在这里给出完整的证明过程。

假设 X1,⋯,Xn 是定义在 f=(fi)1≤i≤n 上的有界鞅差序列且 |Xi|≤K,令:

Si=∑j=1iXj

将Xn 的条件方差定义为:

Vn2=∑k=1nE[Xk2|Fk−1]

那么对于任意正数 t 和 v,有:

P(maxi=1,⋯,kSi>t,Vk2≤v)≤exp⁡(−t22(v+Kt/3))

证明 ​

考虑函数 f(x)=(eθx−θx−1)/x2,且 f(0)=θ2/2。 通过对该函数求导,我们知道该函数是非减的。即 f(x)≤f(1),当 x≤1 时:

eθx=1+θx+x2f(x)≤1+θx+x2f(1)=1+θx+g(θ)x2,x≤1

将其用于随机变量 Xk/K 的期望,可得:

E[exp⁡(θXkK)|Fk−1]≤1+θKE[Xk|Fk−1]+g(θ)K2E[Xk2|Fk−1]

由于 {Xk} 是一个鞅差序列,我们有 E[Xk|Fk−1]=0,结合 1+x≤ex,x≥0,我们得到:

E[exp⁡(θXkK)|Fk−1]=1+g(θ)K2E[Xk2|Fk−1]≤exp⁡(g(θ)E[Xk2|Fk−1]K2)

考虑一个随机过程:

Qk=exp⁡(θSkK−g(θ)Vk2K2),Q0=1

我们证明这个过程对于滤波 Fn 是一个超鞅,即 E[Qk|Fk−1]≤Qk−1。

证明如下:

E[Qk|Fk−1]=E[exp⁡(θSkK−g(θ)Vk2K2)|Fk−1]=E[exp⁡(θSk−1K−g(θ)Vk−12K2−g(θ)E[Xk2|Fk−1]K2+θXkK)|Fk−1]=exp⁡(θSk−1K−g(θ)Vk−12K2−g(θ)E[Xk2|Fk−1]K2)E[exp⁡(θXkK)|Fk−1]

应用之前证明的不等式,我们得到:

E[Qk|Fk−1]≤exp⁡(θSk−1K−g(θ)Vk−12K2)=Qk−1

我们定义 A={k≥0:maxi=1,⋯,kSi>t,Vk2≤v},则有:

Qk≥exp⁡(θtK−g(θ)vK2),k∈A

由于 {Qk} 是超鞅,我们有:

E[Qk|Fk−1]≤E[Qk−1|Fk−2]≤⋯≤Q0=1

考虑到 1≥P(A),我们有:

1≥E[Qk|Fk−1]≥exp⁡(θtK−g(θ)vK2)P(A),k∈A

因此:

P(A)≤exp⁡(g(θ)vK2−θtK)

由于上述不等式对任何 θ>0 都成立,我们可以写为:

P(A)≤infθ>0exp⁡(g(θ)vK2−θtK)

检查不等式右边的一阶导数,我们知道该下确界在 θ=log⁡(1+Kt/v) 处取得。

对于指数内部的表达式,我们进行如下变换:

θtK−g(θ)vK2=log⁡(1+Ktv)tK−vK2(Ktv−log⁡(1+Ktv))=vK2((1+Ktv)log⁡(1+Ktv)−Ktv)=vK2h(Ktv)

其中 h(u)=(1+u)log⁡(1+u)−u。

通过对表达式求二阶导数的方法,我们也可以证明:

h(u)≥u22(1+u/3),u≥0

综上所述,我们有:

P(A)≤exp⁡(−vK2h(Ktv))≤exp⁡(−vK2K2t22v(v+Kt/3))=exp⁡(−t22(v+Kt/3))

7.5 【证明补充】Epoch-GD 的收敛率 ​

150页 引理7.2给出了Epoch-GD外层循环收敛率的泛化上界,我们对其中部分推导进行必要补充。

首先,(7.60)中第二个不等式的推导利用了Cauchy-Schwarz不等式(1.14),即 ∥xTy∥≤∥x∥∥y∥。这里,我们令 x=[1,⋯,1]⏟T,y=[∥ω1−w∗∥,⋯,∥ωT−w∗∥]⏟T,则有:

|xTy|=∑t=1T∥ωt−w∗∥≤T∑t=1T∥ωt−w∗∥2=|x∥y|

其次,(7.62)中最后两个不等式的推导利用了一些常见的缩放技巧,我们在这里给出完整形式:

∑i=1mP(∑t=1Tδt≥24l2ATτ+234l2λτ+4l2λ,VT2≤4l2AT,AT∈(4l2λ2T2i−1,4l2λ2T2i))≤∑i=1mP(∑t=1Tδt≥24l2ATτ+234l2λτ,VT2≤4l2AT,AT∈(4l2λ2T2i−1,4l2λ2T2i))≤∑i=1mP(∑t=1Tδt≥216l42iλ2Tτ+234l2λτ,VT2≤16l42iλ2T)≤∑i=1mP(maxj=1,⋯,T∑t=1jδt⏟Sj≥216l42iλ2T⏟ντ+234l2λ⏟Kτ,VT2≤16l42iλ2T⏟ν)≤∑i=1me−τ=me−τ

这里,第一个不等式利用了 4l2λ>0 的事实对 ∑t=1Tδt 的范围进行概率缩放; 第二个不等式利用了 AT 的下界和上界分别对 ∑t=1Tδt 和 VT2 的范围进行概率缩放; 第三个不等式利用了 maxj=1,⋯,T∑t=1jδt 比 ∑t=1Tδt 更为宽松的事实对 VT2 进行概率缩放; 第四个不等式利用了定理7.6的结论。

最后,(7.64)中第二个不等式的推导利用了开口向下的二次函数 f(x)=ax2+bx+c,a<0 拥有最大值点 x0=−b2a 的事实。我们令 x=AT,然后取 a=−λ2,b=24l2ln⁡mδ,c=0,则易知 f(x) 的最大值为 8l2λln⁡mδ,于是得到了(7.64)中的结论。

进一步地,152页引理7.3利用数学归纳法给出了特定步长和迭代次数下Epoch-GD外层循环收敛率的泛化上界,这为154页定理7.7中Epoch-GD的收敛率奠定了基础。我们对后者的部分推导进行必要补充。

首先,观察(7.75)可以发现,Epoch-GD外层的迭代次数 k 需要满足 α2(2k−1)≤T,即 k=⌊log2⁡(2Tα+1)⌋,因此构造了(7.66)中的 k†。

其次,(7.77)的推导利用了函数 f(x)=(1−1x)x 在 x=k†δ>1 时单调递增的事实,以下是更严格的证明。

对函数 f(x) 两边取对数,得到:

ln⁡f(x)=xln⁡(1−1x)

接着对两边分别求导,可得:

f′(x)f(x)=ln⁡(1−1x)+1x−1

易知当 x>1 时,f(x)>0,因此我们只需要关注等式右边在 x>1 时的符号。 令 g(x)=ln⁡(1−1x)+1x−1,则有:

g′(x)=1x(x−1)2

易知当 x>1 时,g′(x)<0,因此:

g(x)>limx→+∞g(x)=limx→+∞ln⁡(1−1x)+limx→+∞1x−1=0

综上,当 x>1 时,f′(x)f(x)=g(x)>0,即 f′(x)>0,因此 f(x) 在 x>1 时单调递增。

基于 CC BY-NC-SA 4.0 许可协议