Quasi-Newton Method/Variable Metric Method

综述

拟Newton法/变度量法:不需要求解Hesse矩阵,使用一阶导构造 二阶信息的近似矩阵

  • 使用迭代过程中信息,创建近似矩阵$B^{(k)}$代替Hesse矩阵

  • 用以下方程组替代Newton方程,其解$d^{(k)}$作为搜索方向

思想

  • 考虑$\triangledown f(x)$在$x^{(k+1)}$处泰勒展开

  • 取$x = x^{(k)}$,有

    • $s^{(k)} = x^{(k+1)} - x^{(k)}$
    • $y^{(k)} = \triangledown f(x^{(k+1)}) - \triangledown f(x^{(k)})$
  • 要求$B^{(k)}$近似$\triangledown^2 f(x^{(k)})$,带入并将 $\approx$改为$=$,得到拟Newton方程

    并假设$B^{(k)}$对称

  • 拟Newton方程不能唯一确定$B^{(k+1)}$,需要附加条件,自然 的想法就是$B^{(k+1)}$可由$B^{(k)}$修正得到,即

    且修正项$\Delta B^{(k)}$具有“简单形式”

Hesse矩阵修正

对称秩1修正

认为简单指矩阵秩小:即认为$\Delta B^{(k)}$秩为最小值1

  • 设$\Delta B^{(k)} = u v^T$,带入有

    • 这里有的书会设$\Delta B^{(k)} = \alpha u v^T$, 其实对向量没有必要
    • $v^T s^{(k)}$是数,所以$u$必然与共线,同理也没有必要 考虑系数,直接取相等即可
    • 而且系数不会影响最终结果
  • 可取$u = y^{(k)} - B^{(k)} s{(k)}$,取$v$满足 $v^T s^{(k)} = 1$

  • 由$B^{(k)}$的对称性、并希望$B^{(k+1)}$保持对称,需要 $u, v$共线,则有

  • 得到$B^{(k)}$的对称秩1修正公式

算法

  1. 初始点$x^{(1)}$、初始矩阵$B^{(1)} = I$、精度要求 $\epsilon$、置$k=1$

  2. 若$|\triangledown f(x^{(k)})| \leq \epsilon$,停止计算 ,得到解$x^{(k)}$,否则求解以下方程得到$d^{(k)}$

  3. 一维搜索,求解

    得到$\alpha_k$,置$x^{(k+1)}=x^{(k)} + \alpha_k d^{(k)}$

  4. 修正$B^{(k)}$

  5. 置$k = k+1$,转2

特点

  • 缺点

    • 要求$(y^{(k)} - B^{(k)} s^{(k)})^T s^{(k)} \neq 0$, 否则无法继续计算

    • 不能保证正定性传递,只有 $(y^{(k)} - B^{(k)} s^{(k)})^T s^{(k)} > 0$才能保证 $B^{(k+1)}$也正定

    • 即使$(y^{(k)} - B^{(k)} s^{(k)})^T s^{(k)} > 0$, 也可能很小,容易产生较大的舍入误差

对称秩2修正

  • 为克服秩1修正公式缺点,考虑$\Delta B^{(k)}$秩为2,设

  • 带入拟Newton方程有

  • 类似的取

  • 同秩1公式保持对称性推导,得到对称秩2修正公式/BFGS公式

BFGS算法

类似同秩1修正算法,仅第4步使用对称秩2修正公式

Hesse逆修正

对称秩2修正

  • 考虑直接构造近似于$(\triangledown^2 f(x^{(k)}))^{-1}$的 矩阵$H^{(k)}$

  • 这样无需求解线性方程组,直接计算

  • 相应拟Newton方程为

  • 可得$H^{(k)}$的对称秩1修正公式

  • 可得$H^{(k)}$的对称秩2修正公式/DFP公式

DFP算法

类似BFGS算法,只是

  • 使用$H^{(k)}$计算更新方向
  • 使用$H^{(k)}$的对称秩2修正公式修正
  • 对正定二次函数,BFGS算法和DFP算法效果相同
  • 对一般可微(非正定二次函数),一般认为BFGS算法在收敛性质 、数值计算方面均由于DFP算法

Hesse逆的BFGS算法

  • 考虑

  • 两次利用Sherman-Morrison公式,可得

todo

  • 还可以进一步展开

变度量法的基本性质

算法的下降性

定理1

  • 设$B^{(k)}$($H^{(k)}$)是正定对称矩阵,且有 $(s^{(k)})^T y^{(k)} > 0$,则由BFGS(DFS)公式构造的 $B^{(k+1)}$($H^{(k+1)}$)是正定对称的
  • 考虑$B^{(k)}$对称正定,有 $B^{(k)} = (B^{(k)})^{1/2} (B^{(k)})^{1/2}$

  • 带入利用柯西不等式即可证

  • 中间插入正定矩阵的向量内积不等式也称为广义柯西不等式

定理2

  • 若$d^{(k)}$v是下降方向,且一维搜索是精确的,设 $B^{(k)}$($H^{(k)}$)是正定对称矩阵,则有BFGS(DFP) 公式构造的$B^{(k+1)}$($H^{(k+1)}$)是正定对称的
  • 精确一维搜索$(d^{(k)})^T \triangledown f(x^{(k+1)}) = 0$
  • 则有$(s^{(k)})^T y^{(k)} > 0$

定理3

  • 若用BFGS算法(DFP算法)求解无约束问题,设初始矩阵 $B^{(1)}$($H^{(1)}$)是正定对称矩阵,且一维搜索是精确的 ,若$\triangledown f(x^{(k)}) \neq 0$,则产生搜索方向 $d^{(k)}$是下降方向
  • 结合上2个结论,数学归纳法即可

总结

  • 若每步迭代一维搜索精确,或满足$(s^{(k)})^T y^{(k)} > 0$

    • 停止在某一稳定点
    • 或产生严格递减的序列${f(x^{(k)})}$
  • 若目标函数满足一定条件我,可以证明变度量法产生的点列 ${x^{(k)}}$收敛到极小点,且收敛速率超线性

搜索方向共轭性

  • 用变度量法BFGS(DFP)算法求解正定二次函数
$$
min f(x) = \frac 1 2 x^T G x + r^T x + \sigma
$$

若一维搜索是精确的,假设已经进行了m次迭代,则
  • 搜索方向$d^{(1)}, \cdots, d^{(m)}$是m个非零的G共轭方向

  • 对于$j = 1, 2, \cdots, m$,有

$$
B^{(m+1)} s^{(j)} = y^{(j)}
(H^{(m+1)} y^{(j)} = s^{(j)})
$$

且$m = n$时有吧

$$
B^{(n+1)} = G(H^{(n+1)} = G^{-1})
$$

变度量法二次终止

  • 若一维搜索是精确的,则变度量法(BFGS、DFP)具有二次终止
  • 若$\triangle f(x^{(k)}) = 0, k \leq n$,则得到最优解 $x^{(k)}$

  • 否则得到的搜索方向是共轭的,由扩展空间子定理, $x^{(n+1)}$是最优解

Author

UBeaRLy

Posted on

2019-04-23

Updated on

2019-04-23

Licensed under

Comments