机器学习笔记之优化算法(十九)经典牛顿法的收敛性分析

这篇具有很好参考价值的文章主要介绍了机器学习笔记之优化算法(十九)经典牛顿法的收敛性分析。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

引言

上一节整体介绍了经典牛顿法,并讨论了其更新方向 P k \mathcal P_k Pk是否为下降方向。本节将对经典牛顿法在迭代过程中的收敛性进行分析。

回顾:算法的收敛性分析

在这些迭代算法中,我们关注的重点在于算法在迭代过程中是否收敛,以及它的收敛速度

Wolfe \text{Wolfe} Wolfe准则的收敛性分析

在简单认识 Wolfe Condition \text{Wolfe Condition} Wolfe Condition收敛性证明一节中,对于线搜索方法使用非精确搜索在迭代过程中使用 Wolfe \text{Wolfe} Wolfe准则选取优质步长,并证明该方法能够使目标函数结果 { f ( x k ) } k = 0 ∞ \{f(x_k)\}_{k=0}^{\infty} {f(xk)}k=0收敛到最优解 f ∗ f^* f。对应条件、结论表示如下:

条件:

  • 关于函数 f ( ⋅ ) f(\cdot) f(),需要满足向下有界,并且在其定义域内连续可微
  • 关于梯度函数 ∇ f ( ⋅ ) \nabla f(\cdot) f(),需要在定义域内满足 L \mathcal L L-利普希兹连续
  • 关于更新方向 P k ( k = 1 , 2 , ⋯   ) \mathcal P_k(k=1,2,\cdots) Pk(k=1,2,)至少是下降方向 ( Descent Direction ) (\text{Descent Direction}) (Descent Direction)
  • 迭代过程中选择的优质步长 α k ( k = 1 , 2 , ⋯   ) \alpha_k(k=1,2,\cdots) αk(k=1,2,)满足 Wolfe \text{Wolfe} Wolfe准则
    { f ( x k + 1 ) < f ( x k ) + C 1 ⋅ [ ∇ f ( x k ) ] T P k ⋅ α k [ ∇ f ( x k + 1 ) ] T P k ≥ C 2 ⋅ [ ∇ f ( x k ) ] T P k C 1 ∈ ( 0 , 1 ) C 2 ∈ ( C 1 , 1 ) \begin{cases} f(x_{k+1}) < f(x_ k) + \mathcal C_1 \cdot [\nabla f(x_k)]^T \mathcal P_k \cdot \alpha_k \\ [\nabla f(x_{k+1})]^T \mathcal P_k \geq \mathcal C_2 \cdot [\nabla f(x_k)]^T \mathcal P_k \\ \mathcal C_1 \in (0,1) \\ \mathcal C_2 \in (\mathcal C_1,1) \end{cases} f(xk+1)<f(xk)+C1[f(xk)]TPkαk[f(xk+1)]TPkC2[f(xk)]TPkC1(0,1)C2(C1,1)

结论:关于 { f ( x k ) } k = 0 ∞ \{f(x_k)\}_{k=0}^{\infty} {f(xk)}k=0收敛到最优解 f ∗ f^* f延展性结果
∑ k = 0 + ∞ [ cos ⁡ θ k ] 2 ⋅ ∣ ∣ ∇ f ( x k ) ∣ ∣ 2 < + ∞ \sum_{k=0}^{+\infty} [\cos \theta_k]^2 \cdot ||\nabla f(x_k)||^2 < +\infty k=0+[cosθk]2∣∣∇f(xk)2<+

关于证明过程不再赘述,详见链接,后续同理。观察 Wolfe \text{Wolfe} Wolfe准则的收敛性定理,可以发现:

  • 该方法对于函数 f ( ⋅ ) f(\cdot) f()更新方向的约束是较宽松的 f ( ⋅ ) f(\cdot) f()有下界、可微、 ∇ f ( ⋅ ) \nabla f(\cdot) f()利普希兹连续;而且证明过程中使用的是较泛化的线搜索方法
  • 但对最终的收敛性仅仅证明了其可以收敛,但并没有描述具体的收敛速度

梯度下降法在凸函数的收敛性分析

在梯度下降法——凸函数上的收敛性一节中,使用梯度下降法更新方向 P k \mathcal P_k Pk确定为最速下降方向(负梯度方向)的条件下,对于凸函数 f ( ⋅ ) f(\cdot) f()选取优质步长,证明了目标函数结果 { f ( x k ) } k = 0 ∞ \{f(x_k)\}_{k=0}^{\infty} {f(xk)}k=0收敛至目标函数最优解 f ∗ f^* f,并以次线性收敛级别的收敛速度进行收敛。对应条件、结论表示如下:

条件:

  • 关于函数 f ( ⋅ ) f(\cdot) f()向下有界,在定义域内可微,并且 f ( ⋅ ) f(\cdot) f()凸函数
  • 关于梯度函数 ∇ f ( ⋅ ) \nabla f(\cdot) f()满足 L \mathcal L L-利普希兹连续
  • 在迭代过程中,关于步长 α k ( k = 1 , 2 , ⋯   ) \alpha_k(k=1,2,\cdots) αk(k=1,2,)存在明确的约束范围 α k ∈ ( 0 , 1 L ] \begin{aligned}\alpha_k \in \left(0,\frac{1}{\mathcal L}\right]\end{aligned} αk(0,L1]

结论:目标函数结果 { f ( x k ) } k = 0 ∞ \{f(x_k)\}_{k=0}^{\infty} {f(xk)}k=0 G ( k ) = C ⋅ 1 k \begin{aligned}\mathcal G(k) = \mathcal C \cdot \frac{1}{k}\end{aligned} G(k)=Ck1收敛类型 O ( 1 k ) \begin{aligned}\mathcal O \left(\frac{1}{k}\right)\end{aligned} O(k1)次线性收敛级别的收敛速度。
关于收敛速度的类型与级别,详见收敛速度的简单认识。

观察梯度下降法关于凸函数的收敛性定理,可以发现:

  • 相比于 Wolfe \text{Wolfe} Wolfe准则中线搜索方法对于更新方向 P k \mathcal P_k Pk下降方向的要求,梯度下降法关于更新方向的要求更加严格最速下降方向
  • 关于目标函数 f ( ⋅ ) f(\cdot) f()的要求也更加严格 f ( ⋅ ) f(\cdot) f()必须是凸函数
  • 相比于 Wolfe \text{Wolfe} Wolfe准则关于 α k \alpha_k αk的约束条件:
    关于 Wolfe \text{Wolfe} Wolfe准则关于步长的约束,这里使用图像进行示例表示。其中上界是 f ( x k + 1 ) < f ( x k ) + C 1 ⋅ [ ∇ f ( x k ) ] T P k ⋅ α k f(x_{k+1}) < f(x_ k) + \mathcal C_1 \cdot [\nabla f(x_k)]^T \mathcal P_k \cdot \alpha_k f(xk+1)<f(xk)+C1[f(xk)]TPkαk(函数 L ( α ) \mathcal L(\alpha) L(α)所在斜线以下);下界是 [ ∇ f ( x k + 1 ) ] T P k ≥ C 2 ⋅ [ ∇ f ( x k ) ] T P k [\nabla f(x_{k+1})]^T \mathcal P_k \geq \mathcal C_2 \cdot [\nabla f(x_k)]^T \mathcal P_k [f(xk+1)]TPkC2[f(xk)]TPk(斜率大于绿色点的横坐标范围)
    机器学习笔记之优化算法(十九)经典牛顿法的收敛性分析,数学,机器学习,深度学习,经典牛顿法,牛顿法收敛性分析,梯度下降法收敛性分析
    由于 f ( ⋅ ) f(\cdot) f()凸函数,因而步长 α k \alpha_k αk的选择范围被限制在 ( 0 , 1 L ] \begin{aligned}\left(0,\frac{1}{\mathcal L}\right]\end{aligned} (0,L1]
    详见二次上界引理。
  • 从结论的角度,相比于 Wolfe \text{Wolfe} Wolfe准则,它有了明显的关于收敛速度的描述。

梯度下降法在强凸函数的收敛性分析

在梯度下降法——强凸函数的收敛性证明中,在 f ( ⋅ ) f(\cdot) f() m m m-强凸函数的基础上,选取优质步长 α k \alpha_k αk,证明了数值解序列 { x k } k = 0 ∞ \{x_k\}_{k=0}^{\infty} {xk}k=0收敛至最优数值解 x ∗ x^* x,并以 Q \mathcal Q Q-线性收敛级别的收敛速度进行收敛。对应条件、结论表示如下:

条件:

  • 关于函数 f ( ⋅ ) f(\cdot) f()向下有界,在其定义域内可微,并且 f ( ⋅ ) f(\cdot) f() m m m-强凸函数
  • 关于梯度函数 ∇ f ( ⋅ ) \nabla f(\cdot) f()满足 L \mathcal L L-利普希兹连续
  • 在迭代过程中,步长 α k ( k = 1 , 2 , 3 , ⋯   ) \alpha_k(k=1,2,3,\cdots) αk(k=1,2,3,)存在明确的约束范围 ( 0 , 2 L + m ) \begin{aligned}\left(0,\frac{2}{\mathcal L + m}\right)\end{aligned} (0,L+m2)

结论:数值解序列 { x k } k = 0 ∞ \{x_k\}_{k=0}^{\infty} {xk}k=0 Q \mathcal Q Q-线性收敛的收敛速度收敛于最优数值解 x ∗ x^* x

观察梯度下降法关于强凸函数的收敛性定理,可以发现:

  • 相比于凸函数的收敛性定理,关于目标函数 f ( ⋅ ) f(\cdot) f()的要求更加严格 m m m-强凸函数
  • 关于 α k \alpha_k αk的约束条件更加严格: ( 0 , 1 L ) ⇒ ( 0 , 2 L + m ) , 2 L + m ≤ 1 L \begin{aligned} \left(0,\frac{1}{\mathcal L}\right) \Rightarrow \left(0,\frac{2}{\mathcal L + m}\right),\frac{2}{\mathcal L + m} \leq \frac{1}{\mathcal L}\end{aligned} (0,L1)(0,L+m2),L+m2L1
  • 结论的角度,其收敛速度级别高于相应凸函数的收敛速度级别

经典牛顿法的收敛性分析

收敛性定理介绍

经典牛顿法收敛性定理的描述表示如下:

条件:

  • 关于函数 f ( ⋅ ) f(\cdot) f()在其定义域内二阶连续可微
    • 这意味着 Hessian Matrix ⇒ ∇ 2 f ( ⋅ ) \text{Hessian Matrix} \Rightarrow \nabla^2 f(\cdot) Hessian Matrix2f()不仅存在,并且函数 ∇ 2 f ( ⋅ ) \nabla^2 f(\cdot) 2f()在定义域内同样连续。
    • 个人关于 ∇ 2 f ( ⋅ ) \nabla^2 f(\cdot) 2f()的误区更正: ∇ 2 f ( ⋅ ) \nabla^2 f(\cdot) 2f()自身是一个函数,关于某向量 x ∈ R n x \in \mathbb R^n xRn的结果 [ ∇ 2 f ( x ) ] n × n [\nabla^2 f(x)]_{n \times n} [2f(x)]n×n是一个 Hessian Matrix \text{Hessian Matrix} Hessian Matrix矩阵。
  • 关于二阶梯度函数 ∇ 2 f ( ⋅ ) \nabla^2 f(\cdot) 2f()最优值 x ∗ x^* x N σ ( x ∗ ) \mathcal N_{\sigma}(x^*) Nσ(x)内满足 L \mathcal L L-利普希兹连续
    • 其中 N σ ( x ∗ ) \mathcal N_{\sigma}(x^*) Nσ(x)表示在最优值 x ∗ x^* x为中心的 σ \sigma σ邻域。如果 x ∗ x^* x是一维的,那么它的邻域可表示为 ( x − σ , x + σ ) (x-\sigma,x+\sigma) (xσ,x+σ)
    • 相比于条件 1 1 1,条件 2 2 2使 ∇ 2 f ( ⋅ ) \nabla^2 f(\cdot) 2f()在其定义域内连续的基础上,进一步增强了约束:使最优值的邻域满足 L \mathcal L L-利普希兹连续。关于连续、一致连续、 L \mathcal L L-利普希兹连续的强度差异,详见传送门
  • 关于梯度函数 x ∗ x^* x处的结果 ∇ f ( x ∗ ) = 0 \nabla f(x^*) = 0 f(x)=0,并且对应二阶梯度 x ∗ x^* x的结果 ∇ 2 f ( ⋅ ) ≻ 0 \nabla^2 f(\cdot) \succ 0 2f()0
    • 该条件是条件 x ∗ x^* x是函数 f ( ⋅ ) f(\cdot) f()极小值点的充分不必要条件。
    • 个人理解 -> 单看这一个条件,我们需要警惕的是:这里并没有说 f ( ⋅ ) f(\cdot) f()是一个凸函数/ m m m-强凸函数,它可能仅是一个普通的复杂函数。因而该条件仅能确定 x ∗ x^* x f ( ⋅ ) f(\cdot) f()极小值点中的某一个。

结论:
x 0 x_0 x0 x ∗ x^* x足够近,那么数值解序列 { x k } k = 0 ∞ \{x_k\}_{k=0}^{\infty} {xk}k=0 Q \mathcal Q Q-二次收敛的收敛速度收敛于最优数值解 x ∗ x^* x

  • 这里本质上说的是 x 0 x_0 x0,但实际上该结论要求数值解序列 { x k } k = 0 ∞ \{x_k\}_{k=0}^{\infty} {xk}k=0中的所有点都要离 x ∗ x^* x足够近。因为 x 0 x_0 x0是随机初始化的结果,如果 x 0 x_0 x0 x ∗ x^* x足够近,那么其他迭代点 x 1 , x 2 , ⋯ x_1,x_2,\cdots x1,x2,必然只会离 x ∗ x^* x足够近。
  • 根据 Q \mathcal Q Q-二次收敛的定义,需要满足:
    ∣ ∣ x k + 1 − x ∗ ∣ ∣ ∣ ∣ x k − x ∗ ∣ ∣ 2 ≤ C ∈ ( 0 , + ∞ ) \begin{aligned} \frac{||x_{k+1} - x^*||}{||x_k - x^*||^2} \leq \mathcal C \in (0, + \infty) \end{aligned} ∣∣xkx2∣∣xk+1x∣∣C(0,+)

证明过程

首先观察分子 ∣ ∣ x k + 1 − x ∗ ∣ ∣ ||x_{k+1} - x^*|| ∣∣xk+1x∣∣,关于 x k + 1 x_{k+1} xk+1,在经典牛顿法中,它的步长 α k = 1 \alpha_k = 1 αk=1;假设在 x k x_k xk点处的 Hessian Matrix ⇒ ∇ 2 f ( x k ) \text{Hessian Matrix} \Rightarrow \nabla^2 f(x_k) Hessian Matrix2f(xk)正定的,根据牛顿方程,当前迭代步骤的最优方向 P k \mathcal P_k Pk表示为:
实际上,整个迭代过程,每个步骤产生的 x k x_k xk对应的 ∇ 2 f ( x k ) \nabla^2 f(x_k) 2f(xk)都被认为是正定的。
{ x k + 1 = x k + 1 ⋅ P k P k = − [ ∇ 2 f ( x k ) ] − 1 ∇ f ( x k ) \begin{cases} x_{k+1} = x_k + 1 \cdot \mathcal P_k \\ \mathcal P_k = -[\nabla^2 f(x_k)]^{-1} \nabla f(x_k) \end{cases} {xk+1=xk+1PkPk=[2f(xk)]1f(xk)
那么最终分子部分可表示为:

  • [ ∇ 2 f ( x k ) ] [\nabla^2 f(x_k)] [2f(xk)]提出来,由于 x k + 1 , x ∗ x_{k+1},x^* xk+1,x的系数都是单位矩阵 I \mathcal I I,因此根据 I = [ ∇ 2 f ( x k ) ] − 1 [ ∇ 2 f ( x k ) ] \mathcal I = [\nabla^2 f(x_k)]^{-1} [\nabla^2 f(x_k)] I=[2f(xk)]1[2f(xk)],从而提出公因式 [ ∇ 2 f ( x k ) ] − 1 [\nabla^2 f(x_k)]^{-1} [2f(xk)]1
  • 为了与 ( x k − x ∗ ) (x_k - x^*) (xkx)的格式匹配,并且根据条件: ∇ f ( x ∗ ) = 0 \nabla f(x^*) = 0 f(x)=0,因此在末尾添加一个 ∇ f ( x ∗ ) \nabla f(x^*) f(x)并不影响等号的变化。
    ∥ x k + 1 − x ∗ ∥ = ∥ x k − [ ∇ 2 f ( x k ) ] − 1 ∇ f ( x k ) − x ∗ ∥ = ∥ [ ∇ 2 f ( x k ) ] − 1 [ ∇ 2 f ( x k ) ] x k ⏟ x k − [ ∇ 2 f ( x k ) ] − 1 ∇ f ( x k ) − [ ∇ 2 f ( x k ) ] − 1 [ ∇ 2 f ( x k ) ] x ∗ ⏟ x ∗ ∥ = ∥ [ ∇ 2 f ( x k ) ] − 1 [ ∇ 2 f ( x k ) ⋅ ( x k − x ∗ ) − ∇ f ( x k ) ] ∥ = ∥ [ ∇ 2 f ( x k ) ] − 1 [ ∇ 2 f ( x k ) ⋅ ( x k − x ∗ ) − ( ∇ f ( x k ) − ∇ f ( x ∗ ) ⏟ ∇ f ( x k ) ; ∇ f ( x ∗ ) = 0 ) ] ∥ \begin{aligned} \|x_{k+1} - x^*\| & = \left\|x_k - [\nabla^2 f(x_k)]^{-1} \nabla f(x_k) - x^* \right\| \\ & = \left\Vert\underbrace{[\nabla^2 f(x_k)]^{-1} [\nabla^2 f(x_k)] x_k}_{x_k} - [\nabla^2 f(x_k)]^{-1} \nabla f(x_k) - \underbrace{[\nabla^2 f(x_k)]^{-1} [\nabla^2 f(x_k)] x^*}_{x^*}\right\Vert \\ & = \left\|[\nabla^2 f(x_k)]^{-1} \left[\nabla^2 f(x_k) \cdot (x_k - x^*) - \nabla f(x_k)\right]\right\| \\ & = \left\|[\nabla^2 f(x_k)]^{-1} \left[\nabla^2 f(x_k) \cdot (x_k - x^*) - (\underbrace{\nabla f(x_k) - \nabla f(x^*)}_{\nabla f(x_k);\nabla f(x^*) = 0})\right]\right\| \end{aligned} xk+1x= xk[2f(xk)]1f(xk)x = xk [2f(xk)]1[2f(xk)]xk[2f(xk)]1f(xk)x [2f(xk)]1[2f(xk)]x = [2f(xk)]1[2f(xk)(xkx)f(xk)] = [2f(xk)]1 2f(xk)(xkx)(f(xk);f(x)=0 f(xk)f(x))

观察项: ∇ f ( x k ) − ∇ f ( x ∗ ) \nabla f(x_k) - \nabla f(x^*) f(xk)f(x),它本质上是:函数一阶梯度 ∇ f ( ⋅ ) \nabla f(\cdot) f() x k , x ∗ x_k,x^* xk,x两点处的差值。而条件大多在二阶梯度上存在约束性。因此,这里通过技巧 ∇ f ( x k ) − ∇ f ( x ∗ ) \nabla f(x_k) - \nabla f(x^*) f(xk)f(x)进行转化

  • 对于 ∀ x , y ∈ R n \forall x,y \in \mathbb R^n x,yRn,可以令 λ ∈ [ 0 , 1 ] \lambda \in [0,1] λ[0,1],将 ∇ f ( y ) − ∇ f ( x ) \nabla f(y) - \nabla f(x) f(y)f(x)转化成如下形式:
    • λ = 0 \lambda=0 λ=0时, x + λ ⋅ ( y − x ) = x ; x + \lambda \cdot (y - x) = x; x+λ(yx)=x;同理,当 λ = 1 \lambda=1 λ=1时, x + λ ⋅ ( y − x ) = y x + \lambda \cdot (y - x) = y x+λ(yx)=y
    • 将最终结果表示成二阶梯度的定积分形式。
      ∇ f ( y ) − ∇ f ( x ) = ∇ f [ x + λ ⋅ ( y − x ) ] ∣ λ = 0 1 = ∫ 0 1 ∇ 2 f [ x + λ ⋅ ( y − x ) ] ⋅ ( y − x ) d λ \begin{aligned} \nabla f(y) - \nabla f(x) & = \nabla f[x + \lambda \cdot (y - x)] \vert_{\lambda = 0}^1 \\ & = \int_{0}^1 \nabla^2 f[x + \lambda \cdot (y - x)] \cdot (y - x) d \lambda \end{aligned} f(y)f(x)=f[x+λ(yx)]λ=01=012f[x+λ(yx)](yx)dλ
  • 令上例中 y = x ∗ , x = x k y = x^*,x = x_k y=x,x=xk,从而有:
    ∇ f ( x k ) − ∇ f ( x ∗ ) = ∫ 0 1 ∇ 2 f [ x k + λ ⋅ ( x ∗ − x k ) ] ⋅ ( x k − x ∗ ) d λ \nabla f(x_k) - \nabla f(x^*) = \int_{0}^1 \nabla^2 f[x_k + \lambda \cdot (x^* -x_k)] \cdot(x_k - x^*) d\lambda f(xk)f(x)=012f[xk+λ(xxk)](xkx)dλ

基于此,上述分子部分 ∥ x k + 1 − x ∗ ∥ \|x_{k+1} - x^*\| xk+1x可继续整理为:

  • 由于项 ∇ 2 f ( x k ) ⋅ ( x k − x ∗ ) \nabla^2 f(x_k) \cdot (x_k - x^*) 2f(xk)(xkx)中不含 λ \lambda λ,可以将这一项继续改写成积分形式,从而进行合并。
  • 在合并过程中,提出 x k − x ∗ x_k - x^* xkx
    ∥ x k + 1 − x ∗ ∥ = ∥ [ ∇ 2 f ( x k ) ] − 1 ⋅ [ ∇ 2 f ( x k ) ⋅ ( x k − x ∗ ) − ∫ 0 1 ∇ 2 f [ x k + λ ⋅ ( x ∗ − x k ) ] ( x k − x ∗ ) d λ ] ∥ = ∥ [ ∇ 2 f ( x k ) ] − 1 ⋅ [ ∫ 0 1 ∇ 2 f ( x k ) ⋅ ( x k − x ∗ ) d λ ⏟ ∇ 2 f ( x k ) ⋅ ( x k − x ∗ ) − ∫ 0 1 ∇ 2 f [ x k + λ ⋅ ( x ∗ − x k ) ] ( x k − x ∗ ) d λ ] ∥ = ∥ [ ∇ 2 f ( x k ) ] − 1 ⋅ [ ∫ 0 1 ( x k − x ∗ ) ⋅ [ ∇ 2 f ( x k ) − ∇ 2 f [ x k + λ ⋅ ( x ∗ − x k ) ] ] d λ ] ∥ \begin{aligned} \|x_{k+1} - x^*\| & = \left\| [\nabla^2 f(x_k)]^{-1} \cdot \left[ \nabla^2 f(x_k) \cdot (x_k - x^*) - \int_{0}^1 \nabla^2 f[x_k + \lambda \cdot (x^* - x_k)](x_k - x^*) d\lambda \right] \right\| \\ & = \left\| [\nabla^2 f(x_k)]^{-1} \cdot \left[\underbrace{\int_0^1\nabla^2 f(x_k) \cdot (x_k - x^*) d \lambda}_{\nabla^2 f(x_k) \cdot (x_k - x^*)} - \int_{0}^1 \nabla^2 f[x_k + \lambda \cdot (x^* - x_k)](x_k - x^*) d\lambda \right] \right\| \\ & = \left\|[\nabla^2 f(x_k)]^{-1} \cdot \left[\int_0^1 (x_k - x^*) \cdot \left[\nabla^2 f(x_k) - \nabla^2 f[x_k + \lambda \cdot (x^* - x_k)] \right] d \lambda \right] \right\| \end{aligned} xk+1x= [2f(xk)]1[2f(xk)(xkx)012f[xk+λ(xxk)](xkx)dλ] = [2f(xk)]1 2f(xk)(xkx) 012f(xk)(xkx)dλ012f[xk+λ(xxk)](xkx)dλ = [2f(xk)]1[01(xkx)[2f(xk)2f[xk+λ(xxk)]]dλ]

接下来,根据柯西施瓦茨不等式积分的范数小于等于范数的积分两种方式对上式进行放缩
关于积分的范数小于范数的积分的证明过程,这里推荐一篇文章,链接见文章末尾。
∥ x k + 1 − x ∗ ∥ = ∥ [ ∇ 2 f ( x k ) ] − 1 ⋅ [ ∫ 0 1 ( x k − x ∗ ) ⋅ [ ∇ 2 f ( x k ) − ∇ 2 f [ x k + λ ⋅ ( x ∗ − x k ) ] ] d λ ] ∥ ≤ ∥ ∇ 2 f ( x k ) ] − 1 ∥ ⋅ ∥ ∫ 0 1 ( x k − x ∗ ) ⋅ [ ∇ 2 f ( x k ) − ∇ 2 f [ x k + λ ⋅ ( x ∗ − x k ) ] ] d λ ∥ ≤ ∥ ∇ 2 f ( x k ) ] − 1 ∥ ⋅ ∫ 0 1 ∥ ( x k − x ∗ ) ⋅ [ ∇ 2 f ( x k ) − ∇ 2 f [ x k + λ ⋅ ( x ∗ − x k ) ] ] ∥ d λ ≤ ∥ ∇ 2 f ( x k ) ] − 1 ∥ ⋅ ∫ 0 1 ∥ x k − x ∗ ∥ ⋅ ∥ ∇ 2 f ( x k ) − ∇ 2 f [ x k + λ ⋅ ( x ∗ − x k ) ] ∥ d λ \begin{aligned} \|x_{k+1} - x^*\| & = \left\|[\nabla^2 f(x_k)]^{-1} \cdot \left[\int_0^1 (x_k - x^*) \cdot \left[\nabla^2 f(x_k) - \nabla^2 f[x_k + \lambda \cdot (x^* - x_k)] \right] d \lambda \right] \right\| \\ & \leq \left\|\nabla^2 f(x_k)]^{-1} \right\| \cdot \left\| \int_0^1 (x_k - x^*) \cdot \left[\nabla^2 f(x_k) - \nabla^2 f[x_k + \lambda \cdot (x^* - x_k)] \right] d \lambda\right\| \\ & \leq \left\|\nabla^2 f(x_k)]^{-1} \right\| \cdot \int_0^1 \left\|(x_k - x^*) \cdot \left[\nabla^2 f(x_k) - \nabla^2 f[x_k + \lambda \cdot (x^* - x_k)] \right] \right\| d\lambda \\ & \leq \left\|\nabla^2 f(x_k)]^{-1} \right\| \cdot \int_0^1 \left\|x_k - x^*\right\| \cdot \left\| \nabla^2 f(x_k) - \nabla^2 f[x_k + \lambda \cdot (x^* - x_k)] \right\| d\lambda \end{aligned} xk+1x= [2f(xk)]1[01(xkx)[2f(xk)2f[xk+λ(xxk)]]dλ] 2f(xk)]1 01(xkx)[2f(xk)2f[xk+λ(xxk)]]dλ 2f(xk)]1 01 (xkx)[2f(xk)2f[xk+λ(xxk)]] dλ 2f(xk)]1 01xkx 2f(xk)2f[xk+λ(xxk)] dλ
观察上式中积分号第二项 ∥ ∇ 2 f ( x k ) − ∇ 2 f [ x k + λ ⋅ ( x ∗ − x k ) ] ∥ \left\| \nabla^2 f(x_k) - \nabla^2 f[x_k + \lambda \cdot (x^* - x_k)] \right\| 2f(xk)2f[xk+λ(xxk)] 它明显是一个二阶梯度减法的范数形式。根据条件: ∇ 2 f ( ⋅ ) \nabla^2 f(\cdot) 2f() x ∗ x^* x σ \sigma σ邻域 N σ ( x ∗ ) \mathcal N_{\sigma}(x^*) Nσ(x)内满足 L \mathcal L L-利普希兹连续,将该项继续进行放缩

  • 它实际上描述的是点 x k x_k xk x k , x ∗ x_k,x^* xk,x之间某一点 x k + λ ⋅ ( x ∗ − x k ) x_k + \lambda \cdot (x^* - x_k) xk+λ(xxk),两者的二阶梯度减法的范数。根据结论中描述的:如果 x 0 x_0 x0 x ∗ x^* x足够接近,那么 x k x_k xk必然与 x ∗ x^* x足够接近,从而 x k + λ ⋅ ( x ∗ − x k ) x_k + \lambda \cdot (x^* - x_k) xk+λ(xxk)同样距离 x ∗ x^* x足够接近。那么利普希兹连续的条件自然就满足了。
  • 在本步骤中所描述的接近自然是指: ∣ ∣ x k − x ∗ ∣ ∣ ≤ σ ||x_k - x^*|| \leq \sigma ∣∣xkx∣∣σ
  • 关于 ∥ x k − x ∗ ∥ = ∥ x ∗ − x k ∥ \left\|x_k - x^*\right\| = \left\|x^* - x_k\right\| xkx=xxk,掉换一下位置并不影响范数的结果。并且 λ ∈ ( 0 , 1 ) \lambda \in (0,1) λ(0,1),将其提到范数外面。
    { ∥ ∇ 2 f ( x k ) − ∇ 2 f [ x k + λ ⋅ ( x ∗ − x k ) ] ∥ ≤ L ∥ [ x k + λ ( x ∗ − x k ) ] − x k ∥ = L ∣ ∣ λ ⋅ ( x ∗ − x k ) ∣ ∣ = L ⋅ λ ∥ x k − x ∗ ∥ ∥ x k + 1 − x ∗ ∥ ≤ ∥ ∇ 2 f ( x k ) ] − 1 ∥ ⋅ ∫ 0 1 ∥ x k − x ∗ ∥ ⋅ L ⋅ λ ∥ x k − x ∗ ∥ d λ = ∥ ∇ 2 f ( x k ) ] − 1 ∥ ⋅ ∥ x k − x ∗ ∥ 2 ⋅ L ∫ 0 1 λ d λ = ∥ ∇ 2 f ( x k ) ] − 1 ∥ ⋅ ∥ x k − x ∗ ∥ 2 ⋅ L 2 \begin{cases} \begin{aligned} \left\| \nabla^2 f(x_k) - \nabla^2 f[x_k + \lambda \cdot (x^* - x_k)] \right\| & \leq \mathcal L \left\|[x_k + \lambda (x^* - x_k)] - x_k\right\| \\ & = \mathcal L ||\lambda \cdot (x^* - x_k)|| \\ & = \mathcal L \cdot \lambda \left\|x_k - x^*\right\| \\ \|x_{k+1} - x^*\| & \leq \left\|\nabla^2 f(x_k)]^{-1} \right\| \cdot \int_0^1 \left\|x_k - x^*\right\| \cdot \mathcal L \cdot \lambda \left\|x_k - x^*\right\| d\lambda \\ & = \left\|\nabla^2 f(x_k)]^{-1} \right\| \cdot \left\|x_k - x^*\right\|^2 \cdot \mathcal L \int_0^1 \lambda d\lambda \\ & = \left\|\nabla^2 f(x_k)]^{-1} \right\| \cdot \left\|x_k - x^*\right\|^2 \cdot \frac{\mathcal L}{2} \end{aligned} \end{cases} 2f(xk)2f[xk+λ(xxk)] xk+1xL[xk+λ(xxk)]xk=L∣∣λ(xxk)∣∣=Lλxkx 2f(xk)]1 01xkxLλxkxdλ= 2f(xk)]1 xkx2L01λdλ= 2f(xk)]1 xkx22L

至此,我们已经归纳出 ∥ x k + 1 − x ∗ ∥ \|x_{k+1} - x^*\| xk+1x ∥ x k − x ∗ ∥ 2 \left\|x_k - x^*\right\|^2 xkx2之间的关系。只需要证明:它们的比值 ≤ C ∈ ( 0 , + ∞ ) \leq \mathcal C \in (0,+\infty) C(0,+)即可。但项中 ∥ [ ∇ 2 f ( x k ) ] − 1 ∥ \left\|[\nabla^2 f(x_k)]^{-1}\right\| [2f(xk)]1 是与 x k x_k xk相关的量,它并不是常数。因此需要借助条件,将其放缩到某常数

由于函数 f ( ⋅ ) f(\cdot) f()在其定义域二阶连续可微,那么二阶梯度函数 ∇ 2 f ( ⋅ ) \nabla^2 f(\cdot) 2f()在该定义域上连续。根据连续的定义,有: ∀ ϵ > 0 , ∃ γ > 0 \forall \epsilon > 0,\exist \gamma > 0 ϵ>0,γ>0,当 ∥ x k − x ∗ ∥ ≤ γ \left\|x_k - x^*\right\| \leq \gamma xkxγ时, ∣ ∥ ∇ 2 f ( x k ) ∥ − ∥ ∇ 2 f ( x ∗ ) ∥ ∣ ≤ ϵ \left\vert \|\nabla^2 f(x_k)\| - \|\nabla^2 f(x^*)\| \right\vert \leq \epsilon 2f(xk)2f(x) ϵ

去掉绝对值符号,关于范数 ∥ ∇ 2 f ( x k ) ∥ \|\nabla^2 f(x_k)\| 2f(xk)的范围可表示为:
∥ ∇ 2 f ( x ∗ ) ∥ − ϵ ≤ ∥ ∇ 2 f ( x k ) ∥ ≤ ∥ ∇ 2 f ( x ∗ ) ∥ + ϵ \|\nabla^2 f(x^*)\| - \epsilon \leq\|\nabla^2 f(x_k)\| \leq \|\nabla^2 f(x^*)\| + \epsilon 2f(x)ϵ2f(xk)2f(x)+ϵ

由于 ϵ \epsilon ϵ可以在 ( 0 , + ∞ ) (0,+\infty) (0,+)任意取值,因而不妨令 ϵ = 1 2 ∣ ∣ ∇ 2 f ( x ∗ ) ∣ ∣ \begin{aligned}\epsilon = \frac{1}{2}||\nabla^2 f(x^*)||\end{aligned} ϵ=21∣∣2f(x)∣∣,从而有:
这里之所以设置系数 1 2 \begin{aligned}\frac{1}{2}\end{aligned} 21,目的是消除原式中 L 2 \begin{aligned}\frac{\mathcal L}{2}\end{aligned} 2L内的 1 2 \begin{aligned}\frac{1}{2}\end{aligned} 21
∣ ∣ ∇ 2 f ( x k ) ∣ ∣ ≥ 1 2 ∣ ∣ ∇ 2 f ( x ∗ ) ∣ ∣ ||\nabla^2 f(x_k)|| \geq \frac{1}{2}||\nabla^2 f(x^*)|| ∣∣2f(xk)∣∣21∣∣2f(x)∣∣
由于 x ∗ x^* x是目标函数的最优解,它是一个不发生变化的常量,因此 1 2 ∣ ∣ ∇ 2 f ( x ∗ ) ∣ ∣ \begin{aligned}\frac{1}{2}||\nabla^2 f(x^*)||\end{aligned} 21∣∣2f(x)∣∣也同样是一个常量。因此,有:
∥ [ ∇ 2 f ( x k ) ] − 1 ∥ = 1 ∥ [ ∇ 2 f ( x k ) ] ∥ ≤ 2 ⋅ 1 ∣ ∣ ∇ 2 f ( x ∗ ) ∣ ∣ \left\|[\nabla^2 f(x_k)]^{-1}\right\| = \frac{1}{\left\|[\nabla^2 f(x_k)]\right\|} \leq 2 \cdot \frac{1}{||\nabla^2 f(x^*)||} [2f(xk)]1 =[2f(xk)]12∣∣2f(x)∣∣1
回归原式,有:
∥ x k + 1 − x ∗ ∥ ≤ ∥ ∇ 2 f ( x k ) ] − 1 ∥ ⋅ ∥ x k − x ∗ ∥ 2 ⋅ L 2 ≤ 2 ⋅ 1 ∣ ∣ ∇ 2 f ( x ∗ ) ∣ ∣ ⋅ ∣ ∣ x k − x ∗ ∣ ∣ 2 ⋅ L 2 = ∣ ∣ x k − x ∗ ∣ ∣ 2 ⋅ L ⋅ 1 ∣ ∣ ∇ 2 f ( x ∗ ) ∣ ∣ \begin{aligned}\|x_{k+1} - x^*\| & \leq \left\|\nabla^2 f(x_k)]^{-1} \right\| \cdot \left\|x_k - x^*\right\|^2 \cdot \frac{\mathcal L}{2} \\ & \leq 2 \cdot \frac{1}{||\nabla^2 f(x^*)||} \cdot ||x_k - x^*||^2 \cdot \frac{\mathcal L}{2} \\ & = ||x_k - x^*||^2 \cdot \mathcal L \cdot \frac{1}{||\nabla^2 f(x^*)||} \end{aligned} xk+1x 2f(xk)]1 xkx22L2∣∣2f(x)∣∣1∣∣xkx22L=∣∣xkx2L∣∣2f(x)∣∣1
最终,有:
∣ ∣ x k + 1 − x ∗ ∣ ∣ ∣ ∣ x k − x ∗ ∣ ∣ 2 ≤ L ∣ ∣ ∇ 2 f ( x ∗ ) ∣ ∣ ∈ ( 0 , + ∞ ) \frac{||x_{k+1} - x^*||}{||x_k - x^*||^2} \leq \frac{\mathcal L}{||\nabla^2 f(x^*)||} \in (0,+\infty) ∣∣xkx2∣∣xk+1x∣∣∣∣2f(x)∣∣L(0,+)
得证。

关于隐含条件的说明

在上述证明过程中,我们令 ϵ = 1 2 ∣ ∣ ∇ 2 f ( x ∗ ) ∣ ∣ \begin{aligned}\epsilon = \frac{1}{2}||\nabla^2 f(x^*)||\end{aligned} ϵ=21∣∣2f(x)∣∣,但真的可以这样取吗 ? ? ?换句话说:之所以可以这样取,是因为条件中存在隐含的嵌套条件,支持我们这样去取值

观察条件 1 1 1函数 f ( ⋅ ) f(\cdot) f()在定义域内二阶连续可微,可以知道 ∇ 2 f ( ⋅ ) \nabla^2 f(\cdot) 2f()在定义域内连续;
但又因为条件 2 2 2,使得: ∇ 2 f ( ⋅ ) \nabla^2 f(\cdot) 2f() x ∗ x^* x的邻域 N σ ( x ∗ ) \mathcal N_{\sigma}(x^*) Nσ(x)内不仅连续,而且还是更强的 L \mathcal L L-利普希兹连续
根据 L \mathcal L L-利普希兹连续向量模的减法公式,可以得到如下的大小关系:
∣ ∥ ∇ 2 f ( x k ) ∥ − ∥ ∇ 2 f ( x ∗ ) ∥ ∣ ≤ ∥ ∇ 2 f ( x k ) − ∇ 2 f ( x ∗ ) ∥ ≤ L ⋅ ∥ x k − x ∗ ∥ \left\vert \|\nabla^2 f(x_k)\| - \|\nabla^2 f(x^*)\| \right\vert \leq \|\nabla^2 f(x_k) - \nabla^2 f(x^*)\| \leq \mathcal L \cdot \|x_k - x^*\| 2f(xk)2f(x) 2f(xk)2f(x)Lxkx

因此,我们选择的用于约束 ∣ ∥ ∇ 2 f ( x k ) ∥ − ∥ ∇ 2 f ( x ∗ ) ∥ ∣ ≤ ϵ \left\vert \|\nabla^2 f(x_k)\| - \|\nabla^2 f(x^*)\| \right\vert \leq \epsilon 2f(xk)2f(x) ϵ ϵ \epsilon ϵ结果绝对不能比 L ⋅ ∥ x k − x ∗ ∥ \mathcal L \cdot \|x_k - x^*\| Lxkx。即要满足:
如果出现 ϵ < L ⋅ ∥ x k − x ∗ ∥ \epsilon < \mathcal L \cdot \|x_k - x^*\| ϵ<Lxkx,那么意味着邻域范围 N σ ( x ∗ ) \mathcal N_{\sigma}(x^*) Nσ(x)并不都是 L \mathcal L L-利普希兹连续,从而条件 2 2 2不成立。
∣ ∥ ∇ 2 f ( x k ) ∥ − ∥ ∇ 2 f ( x ∗ ) ∥ ∣ ≤ ∥ ∇ 2 f ( x k ) − ∇ 2 f ( x ∗ ) ∥ ≤ L ⋅ ∥ x k − x ∗ ∥ ≤ ϵ \left\vert \|\nabla^2 f(x_k)\| - \|\nabla^2 f(x^*)\| \right\vert \leq \|\nabla^2 f(x_k) - \nabla^2 f(x^*)\| \leq \mathcal L \cdot \|x_k - x^*\| \leq \epsilon 2f(xk)2f(x) 2f(xk)2f(x)Lxkxϵ

因此, ϵ \epsilon ϵ的选择应当满足:
L ⋅ ∥ x k − x ∗ ∥ ≤ ϵ = 1 2 ∥ ∇ 2 f ( x ∗ ) ∥ \mathcal L \cdot \|x_k - x^*\| \leq \epsilon = \frac{1}{2}\|\nabla^2 f(x^*)\| Lxkxϵ=212f(x)
即:
∥ x k − x ∗ ∥ ≤ ∥ ∇ 2 f ( x ∗ ) ∥ 2 L \|x_k - x^*\| \leq \frac{\|\nabla^2 f(x^*)\|}{2\mathcal L} xkx2L2f(x)
因此,在迭代过程中,只有同时满足条件以及隐藏条件
∥ x k − x ∗ ∥ = min ⁡ { σ , γ , ∣ ∣ ∇ 2 f ( x ∗ ) ∣ ∣ 2 L } \|x_k - x^*\| = \min \left\{\sigma,\gamma,\frac{||\nabla^2 f(x^*)||}{2\mathcal L} \right\} xkx=min{σ,γ,2L∣∣2f(x)∣∣}
才能够证明数值解序列 { x k } k = 0 ∞ Q \{x_k\}_{k=0}^{\infty} \mathcal Q {xk}k=0Q-二次收敛于最优数值解 x ∗ x^* x

相关参考:
【优化算法】经典牛顿法-收敛性分析
复变函数中为什么积分的模小于等于模的积分?文章来源地址https://www.toymoban.com/news/detail-666183.html

到了这里,关于机器学习笔记之优化算法(十九)经典牛顿法的收敛性分析的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 机器人中的数值优化(七)——修正阻尼牛顿法

       本系列文章主要是我在学习《数值优化》过程中的一些笔记和相关思考,主要的学习资料是深蓝学院的课程《机器人中的数值优化》和高立编著的《数值最优化方法》等,本系列文章篇数较多,不定期更新,上半部分介绍无约束优化,下半部分介绍带约束的优化,中间会

    2024年02月09日
    浏览(36)
  • 机器人中的数值优化(十一)——高斯牛顿法、LMF方法、Dogleg方法

       本系列文章主要是我在学习《数值优化》过程中的一些笔记和相关思考,主要的学习资料是深蓝学院的课程《机器人中的数值优化》和高立编著的《数值最优化方法》等,本系列文章篇数较多,不定期更新,上半部分介绍无约束优化,下半部分介绍带约束的优化,中间会

    2024年02月09日
    浏览(45)
  • 最优化方法-牛顿法一维搜索

    导言: 在最优化问题中,找到函数的最小值或最大值是一个重要的任务。牛顿法是一种经典的迭代方法,常用于优化问题的求解。本文将详细介绍最优化方法中的牛顿法一维搜索,包括其基本原理、算法步骤以及应用场景。 牛顿法,也称为牛顿-拉夫逊方法,是一种迭代的优

    2024年02月06日
    浏览(40)
  • 【最优化理论】牛顿法+Matlab代码实现

    牛顿迭代法(Newton’s method)又称为牛顿-拉夫逊(拉弗森)方法(Newton-Raphson method),它是牛顿在17世纪提出的一种在实数域和复数域上近似求解方程的方法。 多数方程不存在求根公式,因此求精确根非常困难,甚至不可解,从而寻找方程的近似根就显得特别重要。方法使用

    2023年04月09日
    浏览(50)
  • 随手笔记——如何手写高斯牛顿法

    将演示如何手写高斯牛顿法 注: 该部分仅用于学习使用,如有侵权,请联系!

    2024年02月16日
    浏览(46)
  • 【Matlab算法】牛顿法(Newton‘s Method)(附MATLAB完整代码)

    牛顿法 (Newton’s Method) 是一种迭代优化算法,用于求解无约束优化问题中的局部最小值。它通过使用目标函数的二阶导数信息来逼近最优解,并在每次迭代中更新当前估计的最优解。以下是关于牛顿法的详细描述: 初始化参数:选择一个初始点 x ( 0 ) x^{(0)} x ( 0 ) 作为优化的起

    2024年01月16日
    浏览(39)
  • 基于确定性最大似然算法 DML 的 DoA 估计,用牛顿法实现(附 MATLAB 源码)

    本文首次在公众号【零妖阁】上发表,为了方便阅读和分享,我们将在其他平台进行自动同步。由于不同平台的排版格式可能存在差异,为了避免影响阅读体验,建议如有排版问题,可前往公众号查看原文。感谢您的阅读和支持! 在 DoA 估计中,最大似然方法主要分为 确定性

    2024年02月17日
    浏览(51)
  • 机器学习笔记之优化算法(一)无约束优化概述

    从本节开始,将介绍 优化算法 ( Optimization Algorithm ) (text{Optimization Algorithm}) ( Optimization Algorithm ) 。 基于支持向量机 ( Support Vector Machine,SVM ) (text{Support Vector Machine,SVM}) ( Support Vector Machine,SVM ) 最大间隔分类器 的朴素思想: 从能够将所有样本点 正确分类 的直线中找到 满足

    2024年02月15日
    浏览(45)
  • 机器学习笔记之优化算法(十)梯度下降法铺垫:总体介绍

    从本节开始,将介绍 梯度下降法 ( Gradient Descent,GD ) (text{Gradient Descent,GD}) ( Gradient Descent,GD ) 。 线搜索方法作为一种常见优化问题的 策略 ,该方法的特点是: 其迭代过程中,将 数值解 的方向和步长分开执行 。对应 数学符号 表达如下: 其中 P k mathcal P_k P k ​ 是一个向量

    2024年02月13日
    浏览(47)
  • 牛顿法及Python实现

    目录 1 原理 2 牛顿法求解步骤 3 牛顿法的几何解释 4 案例Python实现 牛顿法是基于泰勒公式来实现的。泰勒公式的意义:如果函数满足一定的条件,泰勒公式可以用函数在某一点的各阶导数值做系数构建一个多项式来近似表达这个函数。 设在某邻域内n+1阶可导,则的泰勒展开

    2024年02月06日
    浏览(31)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包