五、拟牛顿法

5.1 原理

  1. 在牛顿法的迭代中,需要计算海森矩阵的逆矩阵 五、拟牛顿法 - 图1,这一计算比较复杂。

    可以考虑用一个 五、拟牛顿法 - 图2 阶矩阵 五、拟牛顿法 - 图3 来近似代替 五、拟牛顿法 - 图4

  2. 先看海森矩阵满足的条件:五、拟牛顿法 - 图5

    • 五、拟牛顿法 - 图6 。则有:五、拟牛顿法 - 图7,或者 五、拟牛顿法 - 图8

      这称为拟牛顿条件。

    • 根据牛顿法的迭代: 五、拟牛顿法 - 图9,将 五、拟牛顿法 - 图10五、拟牛顿法 - 图11 的一阶泰勒展开:

      五、拟牛顿法 - 图12

      五、拟牛顿法 - 图13 是正定矩阵时,总有 五、拟牛顿法 - 图14,因此每次都是沿着函数递减的方向迭代。

  3. 如果选择 五、拟牛顿法 - 图15 作为 五、拟牛顿法 - 图16 的近似时,五、拟牛顿法 - 图17 同样要满足两个条件:

    • 五、拟牛顿法 - 图18 必须是正定的。

    • 五、拟牛顿法 - 图19 满足拟牛顿条件:五、拟牛顿法 - 图20

      因为 五、拟牛顿法 - 图21 是给定的初始化条件,所以下标从 五、拟牛顿法 - 图22 开始。

    按照拟牛顿条件,在每次迭代中可以选择更新矩阵 五、拟牛顿法 - 图23

  4. 正定矩阵定义:设 五、拟牛顿法 - 图24五、拟牛顿法 - 图25 阶方阵,如果对任何非零向量五、拟牛顿法 - 图26 ,都有 五、拟牛顿法 - 图27,就称 五、拟牛顿法 - 图28正定矩阵。

    • 正定矩阵判定:

      • 判定定理1:对称阵 五、拟牛顿法 - 图29 为正定的充分必要条件是:五、拟牛顿法 - 图30 的特征值全为正。
      • 判定定理2:对称阵 五、拟牛顿法 - 图31 为正定的充分必要条件是:五、拟牛顿法 - 图32 的各阶顺序主子式都为正。
      • 判定定理3:任意阵 五、拟牛顿法 - 图33 为正定的充分必要条件是:五、拟牛顿法 - 图34 合同于单位阵。
    • 正定矩阵的性质:

      • 正定矩阵一定是非奇异的。奇异矩阵的定义:若 五、拟牛顿法 - 图35 阶矩阵 五、拟牛顿法 - 图36 为奇异阵,则其的行列式为零,即 五、拟牛顿法 - 图37
      • 正定矩阵的任一主子矩阵也是正定矩阵。
      • 五、拟牛顿法 - 图38五、拟牛顿法 - 图39 阶对称正定矩阵,则存在唯一的主对角线元素都是正数的下三角阵 五、拟牛顿法 - 图40,使得 五、拟牛顿法 - 图41,此分解式称为 正定矩阵的乔列斯基(Cholesky)分解。
      • 五、拟牛顿法 - 图42五、拟牛顿法 - 图43 阶正定矩阵,则 五、拟牛顿法 - 图44五、拟牛顿法 - 图45 阶可逆矩阵。
    • 正定矩阵在某个合同变换下可化为标准型, 即对角矩阵。

    • 所有特征值大于零的对称矩阵也是正定矩阵。

  5. 合同矩阵:两个实对称矩阵 五、拟牛顿法 - 图46五、拟牛顿法 - 图47 是合同的,当且仅当存在一个可逆矩阵 五、拟牛顿法 - 图48 ,使得 五、拟牛顿法 - 图49

    • 五、拟牛顿法 - 图50 的合同变换:对某个可逆矩阵 五、拟牛顿法 - 图51,对 五、拟牛顿法 - 图52 执行 五、拟牛顿法 - 图53

5.2 DFP 算法

  1. DFP算法( Davidon-Fletcher-Powell) 选择 五、拟牛顿法 - 图54 的方法是:

    假设每一步迭代中 五、拟牛顿法 - 图55 是由 五、拟牛顿法 - 图56 加上两个附加项构成:五、拟牛顿法 - 图57,其中 五、拟牛顿法 - 图58 是待定矩阵。此时有:五、拟牛顿法 - 图59

    为了满足拟牛顿条件,可以取:五、拟牛顿法 - 图60

    这样的五、拟牛顿法 - 图61 不止一个。例如取 :

    五、拟牛顿法 - 图62

    则迭代公式为:

    五、拟牛顿法 - 图63

    可以证明:如果初始矩阵 五、拟牛顿法 - 图64 是正定的,则迭代过程中每个矩阵 五、拟牛顿法 - 图65 都是正定的。

  2. DFP算法:

    • 输入:

      • 目标函数 五、拟牛顿法 - 图66
      • 梯度 五、拟牛顿法 - 图67
      • 精度要求 五、拟牛顿法 - 图68
    • 输出: 五、拟牛顿法 - 图69 的极小值点 五、拟牛顿法 - 图70

    • 算法步骤:

      • 选取初始值 五、拟牛顿法 - 图71, 取 五、拟牛顿法 - 图72 为正定对称矩阵,置 五、拟牛顿法 - 图73

      • 迭代,停止条件为:梯度收敛。迭代步骤为:

        • 计算 五、拟牛顿法 - 图74

        • 五、拟牛顿法 - 图75, 则停止计算,得到近似解 五、拟牛顿法 - 图76

        • 五、拟牛顿法 - 图77, 则:

          • 计算 五、拟牛顿法 - 图78
          • 一维搜索:求 五、拟牛顿法 - 图79五、拟牛顿法 - 图80
          • 设置 五、拟牛顿法 - 图81
          • 计算 五、拟牛顿法 - 图82。若 五、拟牛顿法 - 图83, 则停止计算,得到近似解 五、拟牛顿法 - 图84
          • 否则计算 五、拟牛顿法 - 图85,置 五、拟牛顿法 - 图86,继续迭代。
  3. DFP算法中,每一次 五、拟牛顿法 - 图87 增加的方向是 五、拟牛顿法 - 图88 的方向。增加的幅度由 五、拟牛顿法 - 图89 决定,若跨度过大容易引发震荡。

    gradient_descent_newton_dfp

5.2 BFGS 算法

  1. BFGS是最流行的拟牛顿算法。 DFP算法中,用 五、拟牛顿法 - 图91 逼近 五、拟牛顿法 - 图92。换个角度看,可以用矩阵 五、拟牛顿法 - 图93 逼近海森矩阵 五、拟牛顿法 - 图94。此时对应的拟牛顿条件为: 五、拟牛顿法 - 图95

    因为 五、拟牛顿法 - 图96 是给定的初始化条件,所以下标从 五、拟牛顿法 - 图97 开始。

  2. 令: 五、拟牛顿法 - 图98,有: 五、拟牛顿法 - 图99

    可以取 五、拟牛顿法 - 图100 。寻找合适的 五、拟牛顿法 - 图101 ,可以得到 BFGS 算法矩阵的 五、拟牛顿法 - 图102 的迭代公式:

    五、拟牛顿法 - 图103

    可以证明,若 五、拟牛顿法 - 图104 是正定的,则迭代过程中每个矩阵 五、拟牛顿法 - 图105 都是正定的。

  3. BFGS算法:

    • 输入:

      • 目标函数 五、拟牛顿法 - 图106
      • 梯度 五、拟牛顿法 - 图107
      • 精度要求 五、拟牛顿法 - 图108
    • 输出: 五、拟牛顿法 - 图109 的极小值点 五、拟牛顿法 - 图110

    • 算法步骤:

      • 选取初始值 五、拟牛顿法 - 图111, 取 五、拟牛顿法 - 图112 为正定对称矩阵,置 五、拟牛顿法 - 图113

      • 迭代,停止条件为:梯度收敛。迭代步骤为:

        • 计算 五、拟牛顿法 - 图114

        • 五、拟牛顿法 - 图115, 则停止计算,得到近似解 五、拟牛顿法 - 图116

        • 五、拟牛顿法 - 图117, 则:

          • 五、拟牛顿法 - 图118 求出 五、拟牛顿法 - 图119

            这里表面上看需要对矩阵求逆。但是实际上 五、拟牛顿法 - 图120 有迭代公式。根据Sherman-Morrison 公式以及 五、拟牛顿法 - 图121 的迭代公式,可以得到 五、拟牛顿法 - 图122 的迭代公式。

          • 一维搜索:求 五、拟牛顿法 - 图123五、拟牛顿法 - 图124

          • 设置 五、拟牛顿法 - 图125

          • 计算 五、拟牛顿法 - 图126。若 五、拟牛顿法 - 图127 , 则停止计算,得到近似解 五、拟牛顿法 - 图128

          • 否则计算 五、拟牛顿法 - 图129 ,置 五、拟牛顿法 - 图130 ,继续迭代。

  4. BFPS 算法中,每一次 五、拟牛顿法 - 图131 增加的方向是 五、拟牛顿法 - 图132 的方向。增加的幅度由 五、拟牛顿法 - 图133 决定,若跨度过大容易引发震荡。

    gradient_descent_newton_dfp

5.3 Broyden 类算法

  1. 若记 五、拟牛顿法 - 图135,则对式子:

    五、拟牛顿法 - 图136

    使用两次Sherman-Morrison公式可得:

    五、拟牛顿法 - 图137

  2. DFP 算法获得的 五、拟牛顿法 - 图138 的迭代公式记作:

    五、拟牛顿法 - 图139

    BFGS 算法获得的 五、拟牛顿法 - 图140 的迭代公式记作 :

    五、拟牛顿法 - 图141

    他们都满足拟牛顿条件,所以他们的线性组合:五、拟牛顿法 - 图142 也满足拟牛顿条件,而且是正定的,其中 五、拟牛顿法 - 图143

    这样获得了一族拟牛顿法,称为 Broyden 类算法。

  3. Sherman-Morrison公式:假设 五、拟牛顿法 - 图144五、拟牛顿法 - 图145 阶可逆矩阵, 五、拟牛顿法 - 图146五、拟牛顿法 - 图147 维列向量,且 五、拟牛顿法 - 图148 也是可逆矩阵,则:

    五、拟牛顿法 - 图149

    .