非线性共轭梯度法:可用于求解大规模问题,并且只需要用到一阶导数的信息
本章的思想就是将共轭梯度法与线搜索以及信赖域技巧相结合,在满足计算效率的情况下可以达到全局收敛性
用这个思路求解的是牛顿步 为什么求解牛顿方程?用到了原函数的二阶信息,求得的解更接近真实解?
一、 非精确牛顿法
第一部分考虑的是求解非精确的牛顿步,求解的依旧是之前提到的牛顿方程:
∇
2
f
k
p
k
N
=
−
∇
f
k
\nabla^{2}f_{k}p_{k}^{N}=-\nabla f_{k}
∇2fkpkN=−∇fk
只不过这一节求解的是非精确的牛顿步
非精确牛顿法的局部收敛性:
定义:残差(residual)为
r
k
=
∇
2
f
k
p
k
+
∇
f
k
r_{k}=\nabla ^{2}f_{k}p_{k}+\nabla f_{k}
rk=∇2fkpk+∇fk
强制序列(forcing sequence)
∥
r
k
∥
≤
η
k
∥
∇
f
k
∥
,
0
<
η
k
<
1
\parallel r_{k}\parallel\leq \eta_{k}\parallel \nabla f_{k}\parallel,\quad 0<\eta_{k}<1
∥rk∥≤ηk∥∇fk∥,0<ηk<1
条件:
- ∇ 2 f ( x ) \nabla^{2}f(x) ∇2f(x):existed,continuous in N ( x ∗ ) N(x^{*}) N(x∗), ∇ 2 f ( x ∗ ) \nabla^{2}f(x^{*}) ∇2f(x∗) positive definite .
- p k p_{k} pk satisfies ∥ r k ∥ ≤ η k ∥ ∇ f k ∥ , 0 < η k < 1 \parallel r_{k}\parallel\leq \eta_{k}\parallel \nabla f_{k}\parallel,\quad 0<\eta_{k}<1 ∥rk∥≤ηk∥∇fk∥,0<ηk<1
结论:
if
x
0
x_{0}
x0 sufficiently near
x
∗
x^{*}
x∗,
{
x
k
}
⇒
x
∗
\left\lbrace x_{k}\right\rbrace\Rightarrow x^{*}
{xk}⇒x∗,and
∥
∇
2
f
(
x
∗
)
(
x
k
+
1
−
x
∗
)
∥
≤
η
^
∥
∇
2
f
(
x
∗
)
(
x
k
−
x
∗
)
∥
\parallel\nabla^{2}f(x^{*}) (x_{k+1}-x^{*})\parallel\leq\hat\eta\parallel \nabla^{2}f(x^{*}) (x_{k}-x^{*})\parallel
∥∇2f(x∗)(xk+1−x∗)∥≤η^∥∇2f(x∗)(xk−x∗)∥
适用范围:所有满足上面的残差和强制序列要求的步长均可达到这样的收敛性;其中强制序列的选择会影响收敛速率
证明思路:
-
∇ 2 f \nabla^{2}f ∇2f positive definite and continuous near at x ∗ ⇒ ∥ ( ∇ 2 f k ) − 1 ∥ ≤ L x^{*}\Rightarrow\parallel(\nabla^{2}f_{k})^{-1}\parallel\leq L x∗⇒∥(∇2fk)−1∥≤L for x k x_{k} xk sufficiently close to x ∗ x^{*} x∗.
-
by the definitation of r k r^{k} rk, p k p_{k} pk satisfies ∥ p k ∥ ≤ ( ∥ ∇ f k ∥ + ∥ r k ∥ ) ≤ 2 L ∥ ∇ f k ∥ \parallel p_{k}\parallel\leq (\parallel \nabla f_{k}\parallel+\parallel r_{k}\parallel)\leq 2L\parallel \nabla f_{k}\parallel ∥pk∥≤(∥∇fk∥+∥rk∥)≤2L∥∇fk∥
-
by Taylor Theorem
∇ f k + 1 = r k + o ( ∥ ∇ f k ∥ ) \nabla f_{k+1} = r_{k}+o(\parallel \nabla f_{k}\parallel) ∇fk+1=rk+o(∥∇fk∥) -
taking norms ∥ ∇ f k + 1 ∥ ≤ 1 + η 2 ∥ ∇ f k ∥ \parallel \nabla f_{k+1}\parallel \leq \frac{1+\eta}{2}\parallel\nabla f_{k}\parallel ∥∇fk+1∥≤21+η∥∇fk∥
-
smoothness: ∇ f k = ∇ 2 f ( x ∗ ) ( x k − x ∗ ) + o ( ∥ x k − x ∗ ∥ ) \nabla f_{k}=\nabla^{2}f(x^{*})(x_{k}-x^{*})+o(\parallel x_{k}-x^{*}\parallel) ∇fk=∇2f(x∗)(xk−x∗)+o(∥xk−x∗∥)
-
∥ ∇ f k + 1 ∥ ∥ ∇ f k ∥ ≤ η k + o ( 1 ) \frac{\parallel \nabla f_{k+1}\parallel}{\parallel\nabla f_{k}\parallel}\leq \eta_{k}+o(1) ∥∇fk∥∥∇fk+1∥≤ηk+o(1)
-
if lim k → ∞ η k = 0 \lim_{k\rightarrow\infty}\eta_{k}=0 limk→∞ηk=0,Q-superlinear
-
making additional assumption :the Hessian ∇ 2 f ( x ) \nabla^{2}f(x) ∇2f(x) is Lipschitz continous near x ∗ x^{*} x∗,obtain Q-quadratic convergence
在收敛性的证明中,假设 x k x_{k} xk 最终迭代到 x ∗ x^{*} x∗ 的一个邻域内;在实际的应用中通常也会将牛顿法与线搜索,信赖域技术相结合以达到全局收敛的性质。
Line-Search Newton-CG 方法
思路:用CG方法求解牛顿方程中的 牛顿步,并设置停止准则是
∥
r
k
∥
≤
η
k
∥
∇
f
k
∥
,
0
<
η
k
<
1
\parallel r_{k}\parallel\leq \eta_{k}\parallel \nabla f_{k}\parallel,\quad 0<\eta_{k}<1
∥rk∥≤ηk∥∇fk∥,0<ηk<1成立
算法内容:
算法特点:
- 求得的是一个非精确解
- 检测负曲率的步骤保证了选取的方向是下降方向(CG适用于系数矩阵正定的情况)
- 当Hessian矩阵接近奇异时算法效果很差
改进:
- 可以对矩阵进行预处理
- 在负特征值检测这一步添加一个阈值(但是这个阈值不好选)
Trust-Region Newton-CG 方法
算法收敛性:由迭代过程,最差的情况也是选到Cauchy Point,所以由第四章的结论可以保证全局收敛
算法内容:
- 一旦检测到负特征值,就停止,选取柯西点
- 当 ∥ z k ∥ \parallel z_{k}\parallel ∥zk∥走出信赖域,同样在柯西点处停止
这个定理就是说明在算法迭代的过程中
∥
z
k
∥
\parallel z_{k}\parallel
∥zk∥ 是单调递增的,
证明:主要是利用了共轭梯度法中扩展子空间的性质。
预处理(目的是为了加速算法迭代)
方法1、找一个非奇异矩阵
D
D
D,信赖域子问题发生变化:
∥
D
p
∥
≤
△
k
\parallel Dp \parallel\leq\triangle_{k}
∥Dp∥≤△k,对应的修改
m
k
(
p
)
m_{k}(p)
mk(p).
使得
D
−
T
∇
2
f
k
D
−
1
D^{-T}\nabla^{2}f_{k}D^{-1}
D−T∇2fkD−1 这一矩阵有更好的分布(如何理解这个分布)。
经过预处理之后
方法2、 不完全Cholesky分解
对于一个正定矩阵
B
B
B,找到一个下三角矩阵
L
L
L,使得
B
=
L
T
L
−
R
B=L^{T}L-R
B=LTL−R.
二、有限内存的拟牛顿法
LIMITED-MEMORY QUASI-NEWTON 方法(和非线性CG的关系;应用框架,)
思路:选取Hessian中的部分列用于代表整个Hessian 的近似,而不是储存所有
优点:降低了存储需求并且达到了可接受的收敛速率,可用于处理大规模问题
很多 limited-memory 方法被提出,这里主要考虑 L-BFGS
缺点: 问题的条件不好时收敛很慢(Hessian矩阵的特征值分布广泛)
L-BFGS思想:利用近几步迭代产生的曲率信息构建近似Hessian (即早些的曲率信息将被忽略,是因为他们对当前的影响不大并且需要占据一部分空间)
PS:类似的还有 SR1-BFGS
一些参数的选择:
γ
k
=
s
k
−
1
T
y
k
−
1
y
k
−
1
T
y
k
−
1
;
H
k
0
=
γ
k
I
\gamma_{k}=\frac{s_{k-1}^{T}y_{k-1}}{y_{k-1}^{T}y_{k-1}};H_{k}^{0}=\gamma_{k}I
γk=yk−1Tyk−1sk−1Tyk−1;Hk0=γkI
Compact representation of BFGS updating
用外积的形式更新拟牛顿矩阵
同样的SR1的更新也可以写成这种外积的形式。
三、稀疏拟牛顿更新
求解下面这样的一个优化问题,以获得和精确Hessian 具有相同稀疏性的近似Hessian,约束条件要求满足切线方程.