第7章:收敛率
编辑:赵志民
本章前言
本章的内容围绕学习理论中的算法收敛率(Convergence Rate)展开。具体来说,我们将探讨在确定性优化和随机优化中的收敛率问题,并在最后分析支持向量机的实例。
7.1 【概念解释】算法收敛率
在算法分析中,收敛率是指迭代算法逼近解或收敛到最优或期望结果的速度,它衡量算法在减少当前解与最优解之间差异的快慢。
设 {xk} 是算法生成的迭代序列,我们可以根据以下公式来衡量算法的收敛率:
t→+∞lim∥xt−x∗∥p∥xt+1−x∗∥=C
其中,C为收敛因子,p为收敛阶数,x∗ 表示最优解,∥.∥ 表示适当的范数。
根据收敛率的不同情况,我们可以将其分类如下:
- 超线性收敛:p≥1,C=0,表明每次迭代都会使得误差减小,且减小的速度越来越快。特别地,当p>1时,称为p阶收敛。例如,p=2时称为平方收敛,p=3时称为立方收敛。
- 线性收敛:p=1,C>0,表明每次迭代都会使得误差减小(误差呈几何级数下降),但减小的速度是一定的。
- 次线性收敛: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≤2x+y
当且仅当 x=y 时取等号。
因此,只有当 2ηTΓ2=2ηl2 时,公式(7.12)中 2ηTΓ2+2ηl2 才能取得最小值 TlΓ,此时步长 η 应设置为 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,我们可以分成以下两种情况讨论:
- 当 λγ−λ=0 时,(7.19)转化为:
f(ωt+1)⇒f(ωt+1)−f(ω∗)≤α∈[0,1]min{f(ωt)−α(f(ωt)−f(ω∗))}≤α∈[0,1]min{1−α}(f(ωt)−f(ω∗))
因为 f(ωt)−f(ω∗)≥0,所以当且仅当 α=1 时,不等式右侧取得最小值 0,此时易知 f(ωt+1)=f(ω∗)。根据凸函数局部最优解等于全局最优解的结论,我们可以得到 ωt+1=ω∗,即算法在第 t+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=1∑iXj
将Xn 的条件方差定义为:
Vn2=k=1∑nE[Xk2∣Fk−1]
那么对于任意正数 t 和 v,有:
P(i=1,⋯,kmaxSi>t,Vk2≤v)≤exp(−2(v+Kt/3)t2)
证明
考虑函数 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(KθXk)Fk−1]≤1+KθE[Xk∣Fk−1]+K2g(θ)E[Xk2∣Fk−1]
由于 {Xk} 是一个鞅差序列,我们有 E[Xk∣Fk−1]=0,结合 1+x≤ex,x≥0,我们得到:
E[exp(KθXk)Fk−1]=1+K2g(θ)E[Xk2∣Fk−1]≤exp(g(θ)K2E[Xk2∣Fk−1])
考虑一个随机过程:
Qk=exp(θKSk−g(θ)K2Vk2),Q0=1
我们证明这个过程对于滤波 Fn 是一个超鞅,即 E[Qk∣Fk−1]≤Qk−1。
证明如下:
E[Qk∣Fk−1]=E[exp(θKSk−g(θ)K2Vk2)Fk−1]=E[exp(θKSk−1−g(θ)K2Vk−12−g(θ)K2E[Xk2∣Fk−1]+θKXk)Fk−1]=exp(θKSk−1−g(θ)K2Vk−12−g(θ)K2E[Xk2∣Fk−1])E[exp(θKXk)Fk−1]
应用之前证明的不等式,我们得到:
E[Qk∣Fk−1]≤exp(θKSk−1−g(θ)K2Vk−12)=Qk−1
我们定义 A={k≥0:maxi=1,⋯,kSi>t,Vk2≤v},则有:
Qk≥exp(θKt−g(θ)K2v),k∈A
由于 {Qk} 是超鞅,我们有:
E[Qk∣Fk−1]≤E[Qk−1∣Fk−2]≤⋯≤Q0=1
考虑到 1≥P(A),我们有:
1≥E[Qk∣Fk−1]≥exp(θKt−g(θ)K2v)P(A),k∈A
因此:
P(A)≤exp(g(θ)K2v−θKt)
由于上述不等式对任何 θ>0 都成立,我们可以写为:
P(A)≤θ>0infexp(g(θ)K2v−θKt)
检查不等式右边的一阶导数,我们知道该下确界在 θ=log(1+Kt/v) 处取得。
对于指数内部的表达式,我们进行如下变换:
θKt−g(θ)K2v=log(1+vKt)Kt−K2v(vKt−log(1+vKt))=K2v((1+vKt)log(1+vKt)−vKt)=K2vh(vKt)
其中 h(u)=(1+u)log(1+u)−u。
通过对表达式求二阶导数的方法,我们也可以证明:
h(u)≥2(1+u/3)u2,u≥0
综上所述,我们有:
P(A)≤exp(−K2vh(vKt))≤exp(−K2v2v(v+Kt/3)K2t2)=exp(−2(v+Kt/3)t2)
7.5 【证明补充】Epoch-GD 的收敛率
150页 引理7.2给出了Epoch-GD外层循环收敛率的泛化上界,我们对其中部分推导进行必要补充。
首先,(7.60)中第二个不等式的推导利用了Cauchy-Schwarz不等式(1.14),即 ∥xTy∥≤∥x∥∥y∥。这里,我们令 x=T[1,⋯,1],y=T[∥ω1−w∗∥,⋯,∥ωT−w∗∥],则有:
∣xTy∣=t=1∑T∥ωt−w∗∥≤Tt=1∑T∥ωt−w∗∥2=∣x∥y∣
其次,(7.62)中最后两个不等式的推导利用了一些常见的缩放技巧,我们在这里给出完整形式:
≤≤≤≤=i=1∑mP(t=1∑Tδt≥24l2ATτ+32λ4l2τ+λ4l2,VT2≤4l2AT,AT∈(λ2T4l22i−1,λ2T4l22i))i=1∑mP(t=1∑Tδt≥24l2ATτ+32λ4l2τ,VT2≤4l2AT,AT∈(λ2T4l22i−1,λ2T4l22i))i=1∑mP(t=1∑Tδt≥2λ2T16l42iτ+32λ4l2τ,VT2≤λ2T16l42i)i=1∑mPj=1,⋯,TmaxSjt=1∑jδt≥2νλ2T16l42iτ+32Kλ4l2τ,VT2≤νλ2T16l42ii=1∑me−τ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=−2ab 的事实。我们令 x=AT,然后取 a=−2λ,b=24l2lnδm,c=0,则易知 f(x) 的最大值为 λ8l2lnδ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−x1)x 在 x=δk†>1 时单调递增的事实,以下是更严格的证明。
对函数 f(x) 两边取对数,得到:
lnf(x)=xln(1−x1)
接着对两边分别求导,可得:
f(x)f′(x)=ln(1−x1)+x−11
易知当 x>1 时,f(x)>0,因此我们只需要关注等式右边在 x>1 时的符号。
令 g(x)=ln(1−x1)+x−11,则有:
g′(x)=x(x−1)21
易知当 x>1 时,g′(x)<0,因此:
g(x)>x→+∞limg(x)=x→+∞limln(1−x1)+x→+∞limx−11=0
综上,当 x>1 时,f(x)f′(x)=g(x)>0,即 f′(x)>0,因此 f(x) 在 x>1 时单调递增。