线搜索理论满足以下模型,其中 ak a k 为步长, pk p k 为搜索方向:
xk+1=xk+αkpk x k + 1 = x k + α k p k
为保证 pk p k 在目标函数 f f 的下降方向,需要满足 ,其一般模型为:
pk=−B−1k∇fk p k = − B k − 1 ∇ f k
其中当 Bk B k 对称满秩且正定时,能够保证 pk p k 指向 f f 下降方向
- steepest descent method:
(单位矩阵)
- Newton’s method: Bk=∇2f(xk) B k = ∇ 2 f ( x k ) (Hessian 矩阵)
- Quasi-Newton method: Bk→ B k → Hessian 估计矩阵(SR1 或 BFGS 方法等)
上述内容可以参考 我的上一篇笔记。
这篇笔记对 αk α k 的选择以及 收敛率(rate of convergence)做深入讨论。
1. 步长 Step Length
对于步长的选择,主要基于两个权衡:
- αk α k 能够实现 f f 的大幅下降
- 不能花太多时间做决定
一般最为理想的方法是取下述 的最小值:
ϕ(α)=f(xk+αpk),α>0 ϕ ( α ) = f ( x k + α p k ) , α > 0
但通常此求解过程非常复杂,无法实现,故退而希望 αk α k 满足以下两个条件:- 当前 αk α k 推进的部分在 f f 的 方向的下降区间内
- αk α k 较长,可以实现更有效率的下降
故引入以下几种条件。
1.2 Wolfe 条件 The Wolfe Conditions
Wolfe 条件其中包括两条条件:
- Armijo Condition:保证 αk α k 在 pk p k 方向上 f f 的下降区间内
其中 c1 c 1 的典型值为 c1=10−4 c 1 = 10 − 4 - 曲率条件:保证 αk α k 在上述条件的基础上足够大,使得算法有效率
ϕ′(αk)=∇f(xk+αkpk)Tpkϕ′(αk)≥c2ϕ′(0),c2∈(c1,1) ϕ ′ ( α k ) = ∇ f ( x k + α k p k ) T p k ϕ ′ ( α k ) ≥ c 2 ϕ ′ ( 0 ) , c 2 ∈ ( c 1 , 1 )其中 c2 c 2 的典型值如下:
- Newton / Quasi-Newton: c2=0.9 c 2 = 0.9
- Nonlinear conjugate gradient method: c2=0.1 c 2 = 0.1
综上所述,完整的 Wolfe Conditions 的叙述是: