一、最速下降法#
最速下降法(Steepest Descent)用于求解无约束优化问题:
x∈Rnminf(x)其中 f:Rn→R 是 L-光滑函数。算法通过迭代更新:
xk+1=xk+αkdk
- αk>0 是步长(step length),在机器学习领域也常称为学习率(learning rate)。步长/学习率决定每次迭代沿搜索方向前进的距离,步长太小收敛慢,太大可能导致发散或振荡。两者本质相同,只是术语在不同领域有所区别。
- dk∈Rn 是搜索方向(search direction)
1、最速下降法的选择#
- 搜索方向:dk=−∇f(xk)
- 步长:αk=L1(常数步长)
因此,迭代公式:
xk+1=xk−L1∇f(xk)主要关心步长的选择:太小收敛慢,太大可能振荡。
二、学习率推导#
由光滑性质(见 Part II):
f(y)≤f(x)+∇f(x)T(y−x)+2L∥y−x∥2,∀x,y∈Rn令 y=x+αd,且 d=−∇f(x),得:
f(x+αd)≤f(x)−α∥∇f(x)∥2+2α2L∥d∥2令 d=−∇f(x),则 ∥d∥=∥∇f(x)∥:
f(x+αd)≤f(x)−α∥∇f(x)∥2+2α2L∥∇f(x)∥2令 ϕ(α)=f(x)−α∥∇f(x)∥2+2α2L∥∇f(x)∥2,对 α 求极小值:
dαdϕ=−∥∇f(x)∥2+αL∥∇f(x)∥2=0⟹α∗=L1
三、基本不等式(收敛分析的核心工具)#
引理(最速下降法的基本不等式):
对于任意起点 x0,最速下降法迭代有:
f(xk+1)=f(xk−L1∇f(xk))≤f(xk)−2L1∥∇f(xk)∥2
- 推导:将 α=L1 和 d=−∇f(xk) 代入上述光滑性上界。
- 注意:该结果不依赖凸性!
四、收敛理论#
1、一般情形(无凸性假设)#
定理(一般收敛性):
f(x) L-光滑且有下界 f,用 αk=1/L,则
0≤k≤T−1min∥∇f(xk)∥≤T2L(f(x0)−f)
- 表明 ∥∇f(xk)∥ 以 O(1/T) 的速率收敛到零(次线性)。
证明:
由基本不等式(见上文):
f(xk+1)≤f(xk)−2L1∥∇f(xk)∥2两边同时累加 k=0 到 T−1,得:
k=0∑T−1[f(xk+1)−f(xk)]≤−2L1k=0∑T−1∥∇f(xk)∥2左边是望远镜求和,化简为:
f(xT)−f(x0)≤−2L1k=0∑T−1∥∇f(xk)∥2移项并乘以 2L,得:
k=0∑T−1∥∇f(xk)∥2≤2L(f(x0)−f(xT))由于 f(xT)≥f(f为下界),进一步有:
k=0∑T−1∥∇f(xk)∥2≤2L(f(x0)−f)因此,至少有一个 k 使得 ∥∇f(xk)∥2 不大于平均值:
0≤k≤T−1min∥∇f(xk)∥2≤T1k=0∑T−1∥∇f(xk)∥2≤T2L(f(x0)−f)两边开方,得:
0≤k≤T−1min∥∇f(xk)∥≤T2L(f(x0)−f)证毕。
2、凸函数情形#
定理(凸且L-光滑):
f L-光滑且凸,极小点 x∗,则
f(xT)−f(x∗)≤2TL∥x0−x∗∥2
- 次线性收敛,O(1/T)。
证明:
L-光滑性,任意 x,y 有
f(y)≤f(x)+∇f(x)T(y−x)+2L∥y−x∥2令 y=xk−L1∇f(xk),得
f(xk+1)≤f(xk)−L1∥∇f(xk)∥2+2L(L1)2∥∇f(xk)∥2=f(xk)−2L1∥∇f(xk)∥2由凸性,任意 x,极小点 x∗ 有
f(x)−f(x∗)≤∇f(x)T(x−x∗)由上一步递推
f(xk+1)−f(x∗)≤f(xk)−f(x∗)−2L1∥∇f(xk)∥2由凸性
f(xk)−f(x∗)≤∇f(xk)T(xk−x∗)由L-光滑和凸性,有
∥∇f(xk)∥2≥2L(f(xk)−f(xk+1))或用
f(xk)−f(x∗)≤2μ1∥∇f(xk)∥2(但此处仅用凸性,不用强凸)
将基本不等式递推 T 步,得
f(xT)−f(x∗)≤f(x0)−f(x∗)−2L1k=0∑T−1∥∇f(xk)∥2由凸性和梯度下降方向,结合Jensen不等式,最终可推出
f(xT)−f(x∗)≤2TL∥x0−x∗∥23、强凸函数情形#
定理(强凸且L-光滑):
f L-光滑且 γ-强凸,则极小点唯一 x∗,且
f(xk+1)−f(x∗)≤(1−Lγ)(f(xk)−f(x∗))
- 线性收敛,收敛速率为 1−Lγ。
证明:
证明方法:
f 是 γ-强凸,定义为对任意 x,y∈Rn,
f(y)≥f(x)+∇f(x)T(y−x)+2γ∥y−x∥2令 y=x∗ 为极小点,∇f(x∗)=0,则
f(x∗)≥f(x)+∇f(x)T(x∗−x)+2γ∥x∗−x∥2移项得
f(x)−f(x∗)≤∇f(x)T(x−x∗)−2γ∥x−x∗∥2另一方面,强凸函数满足
f(x)−f(x∗)≥2γ∥x−x∗∥2此外,强凸与光滑性结合可推出梯度下界:
∥∇f(x)∥2≥2γ(f(x)−f(x∗))这是通过 Cauchy-Schwarz 和强凸性质推导的,具体如下:
由强凸性,
f(x)−f(x∗)≤∇f(x)T(x−x∗)−2γ∥x−x∗∥2而极小点 x∗ 满足 ∇f(x∗)=0,由一阶最优性条件,
∇f(x)T(x−x∗)≥f(x)−f(x∗)结合以上两式,利用 Cauchy-Schwarz 不等式,
∥∇f(x)∥∥x−x∗∥≥∇f(x)T(x−x∗)≥f(x)−f(x∗)由强凸性下界 ∥x−x∗∥2≤γ2(f(x)−f(x∗)),代入得
∥∇f(x)∥2≥2γ(f(x)−f(x∗))该不等式在收敛分析中用于将函数值下降与梯度范数联系起来,是强凸问题线性收敛的关键。
f 是 γ-强凸,任意 x,极小点 x∗ 有
f(x)−f(x∗)≥2γ∥x−x∗∥2且
∥∇f(x)∥2≥2γ(f(x)−f(x∗))f 是 L-光滑,任意 x,有
f(x−L1∇f(x))≤f(x)−2L1∥∇f(x)∥2对 xk 迭代:
f(xk+1)≤f(xk)−2L1∥∇f(xk)∥2用强凸性质下界 ∥∇f(xk)∥2:
f(xk+1)≤f(xk)−Lγ(f(xk)−f(x∗))即
f(xk+1)−f(x∗)≤(1−Lγ)(f(xk)−f(x∗))
五、长步长最速下降法(Long-Step SD)#
实际应用中,步长 αk 和方向 dk 可更灵活选择:
- f(x) 仍要求 L-光滑,有下界。
- dk 可为近似 −∇f(xk),只要与梯度夹角不太大。
- 步长 αk 不宜太小或太大,需满足若干技术条件。
条件举例(Assumptions on SDM with line search):
存在常数 0<η≤1,0<c1<c2<1,对所有 k:
- 充分下降方向:
∇f(xk)Tdk≤−η∥∇f(xk)∥∥dk∥
- 步长不太长:
f(xk+αkdk)≤f(xk)+c1αk∇f(xk)Tdk
- 步长不太短:
∇f(xk+αkdk)Tdk≥c2∇f(xk)Tdk
这些条件实际可通过简单的线搜索方法满足。
若满足以上条件,则(收敛性定理)
0≤k≤T−1min∥∇f(xk)∥≤η2c1(1−c2)L⋅Tf(x0)−f与常步长法相比,右侧仅差常数。
六、梯度下降法的局限性#
- 依赖尺度(scale-dependent):若问题变量或目标函数缩放差异大,梯度方向效果差。
- 收敛慢:尤其是变量尺度差异大时,梯度下降会在解空间“锯齿状”前进,进展很慢。
举例:二次型函数#
f(x)=21(ax12+x22)=21xT(a001)x
- a≫1 时,问题病态,收敛极慢。
- 若对变量做线性变换 y=(a1/2001)x,则变成标准二次型,收敛快。
七、局部收敛速率(理论与实际)#
对于 f∈C2,x∗ 局部极小点,∇2f(x∗) 正定,最大/最小特征值分别为 λmax,λmin,条件数 K=λmax/λmin。
最速下降法收敛因子:
ρSD=(K+1K−1)2条件数大时,ρSD 靠近 1,收敛极慢。例如:
- Rosenbrock函数,K=258.1,ρSD≈0.984
- K=800,迭代 1000 次,目标函数下降有限
理论上收敛线性,但实际非常慢,尤其是病态问题。