机器学习笔记之优化算法(八)简单认识Wolfe Condition的收敛性证明

机器学习笔记之优化算法——简单认识Wolfe Condition收敛性证明

引言

上一节介绍了非精确搜索方法—— Wolfe \text{Wolfe} Wolfe准则。本节将简单认识: Wolfe \text{Wolfe} Wolfe准则的收敛性证明

回顾: Wolfe \text{Wolfe} Wolfe准则

关于先搜索方法表示如下:
x k + 1 = x k + α k ⋅ P k x_{k+1} = x_k + \alpha_k \cdot \mathcal P_k xk+1=xk+αkPk
数值解迭代过程中,当前时刻的迭代步长结果 α k \alpha_k αk未确定的情况下,将步长设为变量 α \alpha α。在下降方向 P k \mathcal P_k Pk确定的条件下,关于 x k + 1 x_{k+1} xk+1目标函数结果 f ( x k + 1 ) f(x_{k+1}) f(xk+1)可表示为关于变量 α \alpha α的函数 ϕ ( α ) \phi(\alpha) ϕ(α)
f ( x k + 1 ) = f ( x k + α ⋅ P k ) = ϕ ( α ) f(x_{k+1}) = f(x_k + \alpha \cdot \mathcal P_k) = \phi(\alpha) f(xk+1)=f(xk+αPk)=ϕ(α)
由于 { f ( x k ) } k = 0 ∞ \{f(x_k)\}_{k=0}^{\infty} {f(xk)}k=0服从严格的单调性仅是目标函数收敛至最优解 { f ( x k ) } k = 0 ∞ ⇒ f ∗ \{f(x_k)\}_{k=0}^{\infty} \Rightarrow f^* {f(xk)}k=0f必要不充分条件;因而需要相比更严格的条件使目标函数收敛至最优解: Armijo \text{Armijo} Armijo准则 Glodstein \text{Glodstein} Glodstein准则 Wolfe \text{Wolfe} Wolfe准则
Armijo Condition :  { ϕ ( α ) < f ( x k ) + C 1 ⋅ [ ∇ f ( x k ) ] T P k ⋅ α C 1 ∈ ( 0 , 1 ) Glodstein Condition :  { f ( x k ) + ( 1 − C ) ⋅ [ ∇ f ( x k ) ] T P k ⋅ α ≤ ϕ ( α ) ≤ f ( x k ) + C ⋅ [ ∇ f ( x k ) ] T P k ⋅ α C ∈ ( 0 , 1 2 ) \begin{aligned} & \text{Armijo Condition : } \begin{cases} \phi(\alpha) < f(x_k) + \mathcal C_1 \cdot [\nabla f(x_k)]^T \mathcal P_k \cdot \alpha \\ \quad \\ \mathcal C_1 \in (0,1) \end{cases} \\ & \text{Glodstein Condition : } \begin{cases} f(x_k) + (1 - \mathcal C) \cdot [\nabla f(x_k)]^T \mathcal P_k \cdot \alpha \leq \phi(\alpha) \leq f(x_k) + \mathcal C \cdot [\nabla f(x_k)]^T \mathcal P_k \cdot \alpha \\ \quad \\ \mathcal C \in \begin{aligned}\left(0,\frac{1}{2}\right)\end{aligned} \end{cases} \end{aligned} Armijo Condition :  ϕ(α)<f(xk)+C1[f(xk)]TPkαC1(0,1)Glodstein Condition :  f(xk)+(1C)[f(xk)]TPkαϕ(α)f(xk)+C[f(xk)]TPkαC(0,21)

Wolfe \text{Wolfe} Wolfe准则的初衷是为了处理 Armijo \text{Armijo} Armijo准则与 Goldstein \text{Goldstein} Goldstein准则的共同弊端:仅通过划分边界 ( Armijo ) (\text{Armijo}) (Armijo)或者划分边界构成的范围 ( Glodstein ) (\text{Glodstein}) (Glodstein)对相应的 α \alpha α结果进行筛选,而被选择的 α \alpha α结果是否存在意义 ? ? ? 未知

基于上述因素, Wlofe \text{Wlofe} Wlofe准则 Armijo \text{Armijo} Armijo准则的基础上,建立软性规则以筛选优质的 α \alpha α结果
其中 ϕ ′ ( α ) = ∂ f ( x k + α ⋅ P k ) ∂ α = [ ∇ f ( x k + α ⋅ P k ) ] T P k \begin{aligned}\phi'(\alpha) = \frac{\partial f(x_k + \alpha \cdot \mathcal P_k)}{\partial \alpha} = \left[\nabla f(x_k + \alpha \cdot \mathcal P_k)\right]^T \mathcal P_k \end{aligned} ϕ(α)=αf(xk+αPk)=[f(xk+αPk)]TPk
{ ϕ ( α ) ≤ f ( x k ) + C 1 ⋅ [ ∇ f ( x k ) ] T P k ⋅ α ϕ ′ ( α ) ≥ C 2 ⋅ [ ∇ f ( x k ) ] T P k C 1 ∈ ( 0 , 1 ) C 2 ∈ ( C 1 , 1 ) \begin{cases} \phi(\alpha) \leq f(x_k) +\mathcal C_1 \cdot [\nabla f(x_k)]^T \mathcal P_k \cdot \alpha \\ \phi'(\alpha) \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)+C1[f(xk)]TPkαϕ(α)C2[f(xk)]TPkC1(0,1)C2(C1,1)
本节以 Wolfe \text{Wolfe} Wolfe准则为例,简单介绍该准则的收敛性证明

准备工作

推导条件介绍

  • 关于目标函数优化的终极目标 min ⁡ X ∈ R n f ( X ) \mathop{\min}\limits_{\mathcal X \in \mathbb R^n} f(\mathcal X) XRnminf(X),因而对于目标函数 f ( X ) f(\mathcal X) f(X),需要满足:向下有界,并且在定义域内连续可微
    这属于函数自身的性质,在迭代过程中不能无限地小下去。

  • 关于 f ( X ) f(\mathcal X) f(X)梯度函数 ∇ f ( X ) \nabla f(\mathcal X) f(X),需要在定义域内满足利普希茨连续 ( Lipschitz Continuity ) (\text{Lipschitz Continuity}) (Lipschitz Continuity)。对应数学符号表示如下:
    其中 L \mathcal L L是一个常数。
    ∀ x , x ^ ∈ R n , ∃ L : s . t . ∣ ∣ ∇ f ( x ) − ∇ f ( x ^ ) ∣ ∣ ≤ L ⋅ ∣ ∣ x − x ^ ∣ ∣ \forall x,\hat x \in \mathbb R^n, \exist \mathcal L :\quad s.t. ||\nabla f(x) - \nabla f(\hat x)|| \leq \mathcal L \cdot ||x - \hat x|| x,x^Rn,L:s.t.∣∣∇f(x)f(x^)∣∣L∣∣xx^∣∣
    如果一个普通函数 G ( x ) \mathcal G(x) G(x)满足利普希兹连续,可以将上述描述使用 G ( x ) \mathcal G(x) G(x)进行替换,并进行简单变换:
    ∣ ∣ G ( x ) − G ( x ^ ) ∣ ∣ ≤ L ⋅ ∣ ∣ x − x ^ ∣ ∣ ⇒ ∣ ∣ G ( x ) − G ( x ^ ) x − x ^ ∣ ∣ ≤ L ||\mathcal G(x) - \mathcal G(\hat x)|| \leq \mathcal L \cdot ||x - \hat x|| \Rightarrow \left|\left|\frac{\mathcal G(x) - \mathcal G(\hat x)}{x - \hat x}\right|\right| \leq \mathcal L ∣∣G(x)G(x^)∣∣L∣∣xx^∣∣ xx^G(x)G(x^) L
    关于小于号左侧的式子格式: ∣ ∣ G ( x ) − G ( x ^ ) x − x ^ ∣ ∣ \begin{aligned}\left|\left|\frac{\mathcal G(x) - \mathcal G(\hat x)}{x - \hat x}\right|\right|\end{aligned} xx^G(x)G(x^) ,根据拉格朗日中值定理,可将该式表示为如下形式:
    ∃ ξ ∈ ( x , x ^ ) ⇒ ∣ ∣ G ( x ) − G ( x ^ ) x − x ^ ∣ ∣ = G ′ ( ξ ) \exist \xi \in (x,\hat x) \Rightarrow \begin{aligned}\left|\left|\frac{\mathcal G(x) - \mathcal G(\hat x)}{x - \hat x}\right|\right|\end{aligned} = \mathcal G'(\xi) ξ(x,x^) xx^G(x)G(x^) =G(ξ)
    从而将利普希兹连续描述为如下形式:
    ∃ ξ ∈ ( x , x ^ ) ⇒ ∣ ∣ G ′ ( ξ ) ∣ ∣ ≤ L \exist \xi \in (x,\hat x) \Rightarrow ||\mathcal G'(\xi)|| \leq \mathcal L ξ(x,x^)∣∣G(ξ)∣∣L
    这意味着(不严谨):关于函数 G ( x ) \mathcal G(x) G(x)一阶导函数 G ′ ( x ) \mathcal G'(x) G(x)存在上界 L \mathcal L L。回到条件中,关于 ∇ f ( X ) \nabla f(\mathcal X) f(X)服从利普希兹连续可理解为:对目标函数的二阶梯度结果进行约束
    ∂ ∇ f ( X ) ∂ X ≤ L \begin{aligned}\frac{\partial \nabla f(\mathcal X)}{\partial \mathcal X}\end{aligned} \leq \mathcal L Xf(X)L
    根据二阶梯度的几何意义,该条件本质上是对目标函数 f ( X ) f(\mathcal X) f(X)中斜率的变化量进行约束。关于不满足利普希兹连续的函数示例: f ( x ) = x 2 f(x) = x^2 f(x)=x2。对应函数图像表示如下:
    不满足利普希兹连续的连续函数示例1
    关于该函数的一阶导函数 ∂ f ∂ x = 2 x \begin{aligned}\frac{\partial f}{\partial x} = 2x\end{aligned} xf=2x,是一个关于 x x x一次函数,在定义域 x ∈ R x \in \mathbb R xR中,其并不受某常数 L \mathcal L L的约束。
    x ⇒ ∞ x \Rightarrow \infty x时,对应的 ∂ f ∂ x ⇒ ∞ \begin{aligned}\frac{\partial f}{\partial x} \Rightarrow \infty \end{aligned} xf
    再如: f ( x ) = 1 x \begin{aligned}f(x) = \frac{1}{x}\end{aligned} f(x)=x1。对应函数图像表示如下:
    不满足利普希兹连续的连续函数示例2
    同理,关于该函数的一阶导函数 ∂ f ∂ x = − 1 x 2 \begin{aligned}\frac{\partial f}{\partial x} = -\frac{1}{x^2}\end{aligned} xf=x21,在其定义域 x > 0 x > 0 x>0中,其同样不受某常数 L \mathcal L L的约束。
    x ⇒ 0 x \Rightarrow 0 x0时,对应的 ∂ f ∂ x = − ∞ \begin{aligned}\frac{\partial f}{\partial x} = -\infty\end{aligned} xf=
    可以看出:上述两个例子在其对应的定义域内均是连续的,但它们不满足利普希兹连续。也就是说:利普希兹连续的条件更强
    关于连续相关概念按照条件强度对比表示为:连续 < < < 一致连续 < < < 利普希兹连续(利普希兹条件)

    • 上述条件强度可理解为:
      若某函数在其定义域内满足利普希兹连续,那么该函数一定满足一致连续连续,反之不行;
      同理,若某函数在其定义域内满足一致连续,那么该函数一定满足连续,反之不行
    • 其中一致连续连续之间的区别可描述为:连续仅要求函数在其定义域内没有断点或者跳跃的情况;而一致连续在没有断点或者跳跃的基础上,还需要满足:函数 f ( ⋅ ) f(\cdot) f()在定义域内任意的两个点 x 、 y x、y xy,如果 x x x y y y充分接近时,对应的 f ( x ) f(x) f(x) f ( y ) f(y) f(y)也要充分接近。很明显,上例中的 f ( x ) = 1 x \begin{aligned}f(x) = \frac{1}{x}\end{aligned} f(x)=x1就不是一致连续:首先 f ( x ) f(x) f(x)在其定义域 ( 0 , + ∞ ) (0,+\infty) (0,+)连续,但如果选择无限靠近 0 0 0的两个比较接近的点,它们的函数值并不充分接近 ( ∞ ) (\infty) ()
  • 条件 3 3 3 P k \mathcal P_k Pk下降方向 ( Descent Direction ) (\text{Descent Direction}) (Descent Direction)
    这里使用的是更加泛化的‘下降方向’,而不仅仅是最速下降方向。其在非精确搜索方法中被确定下的。关于下降方向详见线搜索方法——精确搜索。
    P k \mathcal P_k Pk作为下降方向,必然有:
    − [ ∇ f ( x k ) ] T P k = ∣ ∣ ∇ f ( x k ) ∣ ∣ ⋅ ∣ P k ∣ ∣ cos ⁡ θ k > 0 - [\nabla f(x_k)]^T \mathcal P_k = ||\nabla f(x_k)|| \cdot |\mathcal P_k|| \cos \theta_k> 0 [f(xk)]TPk=∣∣∇f(xk)∣∣Pk∣∣cosθk>0
    其中 θ k \theta_k θk负梯度方向 − ∇ f ( x k ) -\nabla f(x_k) f(xk)下降方向 P k \mathcal P_k Pk之间的夹角,因而该夹角的范围必然在 ( − π 2 , π 2 ) \begin{aligned}\left(-\frac{\pi}{2},\frac{\pi}{2}\right)\end{aligned} (2π,2π)之间。也就是说: cos ⁡ θ k > 0 \cos \theta_k >0 cosθk>0恒成立
    也可以理解为 − ∇ f ( x k ) -\nabla f(x_k) f(xk) P k \mathcal P_k Pk两者之间的夹角是锐角(没有先后顺序),对应的范围是 ( 0 , π 2 ) \begin{aligned}\left(0,\frac{\pi}{2}\right)\end{aligned} (0,2π)
    cos ⁡ θ k = − [ ∇ f ( x k ) ] T P k ∣ ∣ ∇ f ( x k ) ∣ ∣ ⋅ ∣ ∣ P k ∣ ∣ > 0 \begin{aligned} \cos \theta_k = \frac{-[\nabla f(x_k)]^T \mathcal P_k}{||\nabla f(x_k)||\cdot ||\mathcal P_k||} > 0 \end{aligned} cosθk=∣∣∇f(xk)∣∣∣∣Pk∣∣[f(xk)]TPk>0

  • 迭代过程中的最优步长 α k ( k = 1 , 2 , 3 , ⋯ ) \alpha_k(k=1,2,3,\cdots) αk(k=1,2,3,)满足 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)

推导结论介绍

关于最终需要证明的收敛性,自然是数值解序列 { x k } k = 0 ∞ \{x_k\}_{k=0}^{\infty} {xk}k=0对应的目标函数结果 { f ( x k ) } k = 0 ∞ \{f(x_k)\}_{k=0}^{\infty} {f(xk)}k=0收敛到某最优解 f ∗ f^* f
{ f ( x k ) } k = 0 ∞ ⇒ f ∗ \{f(x_k)\}_{k=0}^{\infty} \Rightarrow f^* {f(xk)}k=0f
如果从梯度的角度观察,关于数值解序列对应的目标函数梯度结果 { ∇ f ( x k ) } k = 0 ∞ \{\nabla f(x_k)\}_{k=0}^{\infty} {f(xk)}k=0收敛到 0 0 0即可:
常数函数对应的梯度范数就是 0 0 0
lim ⁡ k ⇒ + ∞ ∣ ∣ ∇ f ( x k ) ∣ ∣ = 0 \mathop{\lim}\limits_{k \Rightarrow + \infty} ||\nabla f(x_k)|| = 0 k+lim∣∣∇f(xk)∣∣=0
根据上面关于 θ k \theta_k θk的描述,将其控制为:
[ cos ⁡ θ k ] 2 ≥ η [\cos \theta_k]^2 \geq \eta [cosθk]2η
其中 η \eta η表示一个 > 0 > 0 >0的小的常数。基于此,关于 ∑ k = 0 ∞ [ cos ⁡ θ k ] 2 \begin{aligned}\sum_{k=0}^{\infty} [\cos \theta_k]^2\end{aligned} k=0[cosθk]2的结果必定发散。也就是说: + ∞ +\infty + > 0 >0 >0的较小常数相加必然还是 + ∞ +\infty +
∑ k = 0 + ∞ [ cos ⁡ θ k ] 2 = + ∞ \sum_{k=0}^{+\infty} [\cos \theta_k]^2 = +\infty k=0+[cosθk]2=+
如果将推导结论设置为如下形式:
∑ 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<+
那么该式子必然等价于:
之所以等价是因为上式中的项 ∑ k = 0 + ∞ [ cos ⁡ θ k ] 2 ⋅ ∣ ∣ ∇ f ( x k ) ∣ ∣ 2 \sum_{k=0}^{+\infty} [\cos \theta_k]^2 \cdot ||\nabla f(x_k)||^2 k=0+[cosθk]2∣∣∇f(xk)2与关于 cos ⁡ θ k \cos \theta_k cosθk的项 ∑ k = 0 + ∞ [ cos ⁡ θ k ] 2 \sum_{k=0}^{+\infty} [\cos \theta_k]^2 k=0+[cosθk]2相矛盾。这只有一种解释:

  • 随着 k k k值的增加,使得 lim ⁡ k ⇒ + ∞ ∣ ∣ ∇ f ( x k ) ∣ ∣ = 0 \mathop{\lim}\limits_{k \Rightarrow +\infty} ||\nabla f(x_k)|| = 0 k+lim∣∣∇f(xk)∣∣=0
  • 从而使 lim ⁡ k ⇒ + ∞ ∣ ∣ ∇ f ( x k ) ∣ ∣ 2 = 0 \mathop{\lim}\limits_{k \Rightarrow +\infty} ||\nabla f(x_k)||^2 = 0 k+lim∣∣∇f(xk)2=0
  • 从而使 lim ⁡ k ⇒ + ∞ [ cos ⁡ θ k ] 2 ⋅ ∣ ∣ ∇ f ( x k ) ∣ ∣ 2 < lim ⁡ k ⇒ + ∞ [ cos ⁡ θ k ] 2 = η \mathop{\lim}\limits_{k \Rightarrow +\infty}[\cos \theta_k]^2 \cdot ||\nabla f(x_k)||^2 < \mathop{\lim}\limits_{k \Rightarrow +\infty} [\cos \theta_k]^2 = \eta k+lim[cosθk]2∣∣∇f(xk)2<k+lim[cosθk]2=η
  • 最终使 ∑ k = 0 + ∞ [ cos ⁡ θ k ] 2 ⋅ ∣ ∣ ∇ f ( x k ) ∣ ∣ 2 < ∑ k = 0 + ∞ [ cos ⁡ θ k ] 2 = + ∞ \sum_{k=0}^{+\infty} [\cos \theta_k]^2 \cdot ||\nabla f(x_k)||^2 < \sum_{k=0}^{+\infty}[\cos \theta_k]^2 = +\infty k=0+[cosθk]2∣∣∇f(xk)2<k=0+[cosθk]2=+
    ∑ k = 0 + ∞ [ cos ⁡ θ k ] 2 ⋅ ∣ ∣ ∇ f ( x k ) ∣ ∣ 2 < + ∞ ⇔ lim ⁡ k ⇒ ∞ ∣ ∣ ∇ f ( x k ) ∣ ∣ = 0 \sum_{k=0}^{+\infty} [\cos \theta_k]^2 \cdot ||\nabla f(x_k)||^2 < +\infty \Leftrightarrow \lim_{k \Rightarrow \infty} ||\nabla f(x_k)|| = 0 k=0+[cosθk]2∣∣∇f(xk)2<+klim∣∣∇f(xk)∣∣=0

最终可以描述出 { f ( x k ) } k = 0 ∞ \{f(x_k)\}_{k=0}^{\infty} {f(xk)}k=0可以收敛到最优解

关于 Wolfe \text{Wolfe} Wolfe准则收敛性证明的推导过程

证明:

  • 基于 Wolfe \text{Wolfe} Wolfe准则中的 [ ∇ 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 ( x k ) ] T P k [\nabla f(x_k)]^T \mathcal P_k [f(xk)]TPk,目的是凑出利普希兹条件
    [ ∇ f ( x k + 1 ) ] T P k − [ ∇ f ( x k ) ] T P k ≥ C 2 ⋅ [ ∇ f ( x k ) ] T P k − [ ∇ f ( x k ) ] T P k ⇒ { [ ∇ f ( x k + 1 ) ] − [ ∇ f ( x k ) ] } T P k ≥ ( C 2 − 1 ) ⋅ [ ∇ f ( x k ) ] T P k \begin{aligned} & \quad [\nabla f(x_{k+1})]^T \mathcal P_k - [\nabla f(x_k)]^T \mathcal P_k \geq \mathcal C_2 \cdot [\nabla f(x_k)]^T \mathcal P_k - [\nabla f(x_k)]^T \mathcal P_k \\ & \Rightarrow \left\{ [\nabla f(x_{k+1})] - [\nabla f(x_k)] \right\}^T \mathcal P_k \geq (\mathcal C_2 -1) \cdot [\nabla f(x_k)]^T \mathcal P_k \end{aligned} [f(xk+1)]TPk[f(xk)]TPkC2[f(xk)]TPk[f(xk)]TPk{[f(xk+1)][f(xk)]}TPk(C21)[f(xk)]TPk
    观察不等式左侧,可以将 { [ ∇ f ( x k + 1 ) ] − [ ∇ f ( x k ) ] } T P k \left\{ [\nabla f(x_{k+1})] - [\nabla f(x_k)] \right\}^T \mathcal P_k {[f(xk+1)][f(xk)]}TPk视作两个向量之间的内积。基于此,必然满足如下表达:
    因为 cos ⁡ θ \cos \theta cosθ的值域是 [ − 1 , 1 ] [-1,1] [1,1]。其中 θ \theta θ表示向量 [ ∇ f ( x k + 1 ) ] − [ ∇ f ( x k ) ] [\nabla f(x_{k+1})] - [\nabla f(x_k)] [f(xk+1)][f(xk)]与向量 P k \mathcal P_k Pk之间的夹角。
    { [ ∇ f ( x k + 1 ) ] − [ ∇ f ( x k ) ] } T P k = ∣ ∣ [ ∇ f ( x k + 1 ) ] − [ ∇ f ( x k ) ] ∣ ∣ ⋅ ∣ ∣ P k ∣ ∣ ⋅ cos ⁡ θ ∣ ∣ [ ∇ f ( x k + 1 ) ] − [ ∇ f ( x k ) ] ∣ ∣ ⋅ ∣ ∣ P k ∣ ∣ ⋅ cos ⁡ θ ≤ ∣ ∣ [ ∇ f ( x k + 1 ) ] − [ ∇ f ( x k ) ] ∣ ∣ ⋅ ∣ ∣ P k ∣ ∣ \left\{ [\nabla f(x_{k+1})] - [\nabla f(x_k)] \right\}^T \mathcal P_k = ||[\nabla f(x_{k+1})] - [\nabla f(x_k)]|| \cdot ||\mathcal P_k|| \cdot \cos \theta \\ \quad \\ ||[\nabla f(x_{k+1})] - [\nabla f(x_k)]|| \cdot ||\mathcal P_k|| \cdot \cos \theta \leq ||[\nabla f(x_{k+1})] - [\nabla f(x_k)]|| \cdot ||\mathcal P_k|| {[f(xk+1)][f(xk)]}TPk=∣∣[f(xk+1)][f(xk)]∣∣∣∣Pk∣∣cosθ∣∣[f(xk+1)][f(xk)]∣∣∣∣Pk∣∣cosθ∣∣[f(xk+1)][f(xk)]∣∣∣∣Pk∣∣
    综上,可将式子整理为:
    ∣ ∣ [ ∇ f ( x k + 1 ) ] − [ ∇ f ( x k ) ] ∣ ∣ ⋅ ∣ ∣ P k ∣ ∣ ≥ { [ ∇ f ( x k + 1 ) ] − [ ∇ f ( x k ) ] } T P k ≥ ( C 2 − 1 ) ⋅ [ ∇ f ( x k ) ] T P k ||[\nabla f(x_{k+1})] - [\nabla f(x_k)]|| \cdot ||\mathcal P_k|| \geq \left\{ [\nabla f(x_{k+1})] - [\nabla f(x_k)] \right\}^T \mathcal P_k \geq (\mathcal C_2 -1) \cdot [\nabla f(x_k)]^T \mathcal P_k ∣∣[f(xk+1)][f(xk)]∣∣∣∣Pk∣∣{[f(xk+1)][f(xk)]}TPk(C21)[f(xk)]TPk

  • 观察式子 ∣ ∣ [ ∇ f ( x k + 1 ) ] − [ ∇ f ( x k ) ] ∣ ∣ ⋅ ∣ ∣ P k ∣ ∣ ||[\nabla f(x_{k+1})] - [\nabla f(x_k)]|| \cdot ||\mathcal P_k|| ∣∣[f(xk+1)][f(xk)]∣∣∣∣Pk∣∣,使用利普希兹条件将其转化为:

    • 其中 L \mathcal L L利普希兹条件中的常数;
    • x k + 1 = x k + α k ⋅ P k x_{k+1} = x_k + \alpha_k \cdot \mathcal P_k xk+1=xk+αkPk代入。

    ∣ ∣ [ ∇ f ( x k + 1 ) ] − [ ∇ f ( x k ) ] ∣ ∣ ⋅ ∣ ∣ P k ∣ ∣ ≤ L ⋅ ∣ ∣ x k + 1 − x k ∣ ∣ ⋅ ∣ ∣ P k ∣ ∣ = L ⋅ ∣ ∣ α k ⋅ P k ∣ ∣ ⋅ ∣ ∣ P k ∣ ∣ = L ⋅ α k ⋅ ∣ ∣ P k ∣ ∣ 2 \begin{aligned} ||[\nabla f(x_{k+1})] - [\nabla f(x_k)]|| \cdot ||\mathcal P_k|| & \leq \mathcal L \cdot ||x_{k+1} - x_k|| \cdot ||\mathcal P_k||\\ & = \mathcal L \cdot ||\alpha_k \cdot \mathcal P_k|| \cdot ||\mathcal P_k||\\ & = \mathcal L \cdot \alpha_k \cdot ||\mathcal P_k||^2 \end{aligned} ∣∣[f(xk+1)][f(xk)]∣∣∣∣Pk∣∣L∣∣xk+1xk∣∣∣∣Pk∣∣=L∣∣αkPk∣∣∣∣Pk∣∣=Lαk∣∣Pk2
    至此,可以得到式子:
    由于 α k , ∣ ∣ P k ∣ ∣ 2 \alpha_k,||\mathcal P_k||^2 αk,∣∣Pk2均恒正;且不等式右侧 C 2 − 1 < 0 , [ ∇ f ( x k ) ] T P k < 0 \mathcal C_2 -1 <0,[\nabla f(x_k)]^T \mathcal P_k <0 C21<0,[f(xk)]TPk<0恒成立;因此 L \mathcal L L必然是一个 > 0 >0 >0的值。
    L ⋅ α k ⋅ ∣ ∣ P k ∣ ∣ 2 ≥ ( C 2 − 1 ) ⋅ [ ∇ f ( x k ) ] T P k \mathcal L \cdot \alpha_k \cdot ||\mathcal P_k||^2 \geq (\mathcal C_2 -1) \cdot [\nabla f(x_k)]^T \mathcal P_k Lαk∣∣Pk2(C21)[f(xk)]TPk
    L , ∣ ∣ P k ∣ ∣ 2 \mathcal L,||\mathcal P_k||^2 L,∣∣Pk2移到大于等于号右侧,符号不发生变化:
    α k ≥ C 2 − 1 L ⋅ [ ∇ f ( x k ) ] T P k ∣ ∣ P k ∣ ∣ 2 \alpha_k \geq \frac{\mathcal C_2 - 1}{\mathcal L} \cdot \frac{[\nabla f(x_k)]^T \mathcal P_k}{||\mathcal P_k||^2} αkLC21∣∣Pk2[f(xk)]TPk

  • 至此,将上式与 Wolfe \text{Wolfe} Wolfe准则的第一项关联起来
    由于 C 1 ⋅ [ ∇ f ( x k ) ] T P k < 0 \mathcal C_1 \cdot [\nabla f(x_k)]^T \mathcal P_k < 0 C1[f(xk)]TPk<0那么将上式代入,必然有:
    就是‘负的不那么厉害了~’
    C 1 ⋅ [ ∇ f ( x k ) ] T P k ⋅ ( C 2 − 1 L ⋅ [ ∇ f ( x k ) ] T P k ∣ ∣ P k ∣ ∣ 2 ) ≥ C 1 ⋅ [ ∇ f ( x k ) ] T P k ⋅ α k \mathcal C_1 \cdot [\nabla f(x_k)]^T \mathcal P_k \cdot \left(\frac{\mathcal C_2 - 1}{\mathcal L} \cdot \frac{[\nabla f(x_k)]^T \mathcal P_k}{||\mathcal P_k||^2}\right) \geq \mathcal C_1 \cdot [\nabla f(x_k)]^T \mathcal P_k \cdot \alpha_k C1[f(xk)]TPk(LC21∣∣Pk2[f(xk)]TPk)C1[f(xk)]TPkαk
    从而有:
    f ( x k + 1 ) ≤ f ( x k ) + C 1 ⋅ [ ∇ f ( x k ) ] T P k ⋅ ( C 2 − 1 L ⋅ [ ∇ f ( x k ) ] T P k ∣ ∣ P k ∣ ∣ 2 ) f(x_{k+1}) \leq f(x_k) + \mathcal C_1 \cdot [\nabla f(x_k)]^T \mathcal P_k \cdot \left(\frac{\mathcal C_2 - 1}{\mathcal L} \cdot \frac{[\nabla f(x_k)]^T \mathcal P_k}{||\mathcal P_k||^2}\right) f(xk+1)f(xk)+C1[f(xk)]TPk(LC21∣∣Pk2[f(xk)]TPk)
    观察小于等于号右侧后一项:将其描述成分式形式,会包含一个关于 [ ∇ f ( x k ) ] T P k [\nabla f(x_k)]^T \mathcal P_k [f(xk)]TPk平方项,因此使用 [ ∇ f ( x k ) ] T P k = − ∣ ∣ ∇ f ( x k ) ∣ ∣ ⋅ ∣ ∣ P k ∣ ∣ ⋅ cos ⁡ θ k [\nabla f(x_k)]^T \mathcal P_k = -||\nabla f(x_k)|| \cdot ||\mathcal P_k|| \cdot \cos \theta_k [f(xk)]TPk=∣∣∇f(xk)∣∣∣∣Pk∣∣cosθk进行替换:

    • 其中负号消掉了;
    • ∣ ∣ P k ∣ ∣ 2 ||\mathcal P_k||^2 ∣∣Pk2消掉了。
      f ( x k + 1 ) ≤ f ( x k ) + C 1 ⋅ ( C 2 − 1 ) L ⋅ ∣ ∣ ∇ f ( x k ) ∣ ∣ 2 ⋅ ∣ ∣ P k ∣ ∣ 2 ⋅ [ cos ⁡ θ k ] 2 ∣ ∣ P k ∣ ∣ 2 = f ( x k ) + C 1 ⋅ ( C 2 − 1 ) L ∣ ∣ ∇ f ( x k ) ∣ ∣ 2 ⋅ [ cos ⁡ θ k ] 2 \begin{aligned} f(x_{k+1}) & \leq f(x_k) + \frac{\mathcal C_1 \cdot (\mathcal C_2 - 1)}{\mathcal L} \cdot \frac{||\nabla f(x_k)||^2 \cdot ||\mathcal P_k||^2 \cdot [\cos \theta_k]^2}{||\mathcal P_k||^2} \\ & = f(x_k) + \frac{\mathcal C_1 \cdot (\mathcal C_2 - 1)}{\mathcal L} ||\nabla f(x_k)||^2 \cdot [\cos \theta_k]^2 \end{aligned} f(xk+1)f(xk)+LC1(C21)∣∣Pk2∣∣∇f(xk)2∣∣Pk2[cosθk]2=f(xk)+LC1(C21)∣∣∇f(xk)2[cosθk]2

    此时得到一个新的关于 { f ( x k ) } k = 0 ∞ \{f(x_{k})\}_{k=0}^{\infty} {f(xk)}k=0的递推式。从而可以得到 f ( x k + 1 ) f(x_{k+1}) f(xk+1) f ( x 0 ) f(x_0) f(x0)之间的关联关系:

    • 相当于将每一次迭代中间结果累加。
    • C 1 ⋅ ( C 2 − 1 ) L ∣ ∣ ∇ f ( x k ) ∣ ∣ 2 ⋅ [ cos ⁡ θ k ] 2 \begin{aligned}\frac{\mathcal C_1 \cdot (\mathcal C_2 - 1)}{\mathcal L} ||\nabla f(x_k)||^2 \cdot [\cos \theta_k]^2\end{aligned} LC1(C21)∣∣∇f(xk)2[cosθk]2记作 I k \mathcal I_k Ik
    • 展开过程中由于 C 1 ⋅ ( C 2 − 1 ) L < 0 \begin{aligned}\frac{\mathcal C_1 \cdot (\mathcal C_2 - 1)}{\mathcal L} < 0\end{aligned} LC1(C21)<0是一个常数,直接提出即可。
      f ( x k + 1 ) ≤ f ( x k ) + I k ≤ f ( x k − 1 ) + I k − 1 + I k ≤ ⋯ ≤ f ( x 0 ) + C 1 ⋅ ( C 2 − 1 ) L ∑ j = 0 k I j = f ( x 0 ) + C 1 ⋅ ( C 2 − 1 ) L ∑ j = 0 k ∣ ∣ ∇ f ( x j ) ∣ ∣ 2 ⋅ [ cos ⁡ θ j ] 2 \begin{aligned} f(x_{k+1}) & \leq f(x_k) + \mathcal I_k \\ & \leq f(x_{k-1}) + \mathcal I_{k-1} + \mathcal I_k \\ & \leq \cdots \\ & \leq f(x_0) + \frac{\mathcal C_1 \cdot(\mathcal C_2 - 1)}{\mathcal L} \sum_{j=0}^{k} \mathcal I_j \\ & = f(x_0) + \frac{\mathcal C_1 \cdot (\mathcal C_2 - 1)}{\mathcal L} \sum_{j=0}^k ||\nabla f(x_j)||^2 \cdot [\cos \theta_j]^2 \end{aligned} f(xk+1)f(xk)+Ikf(xk1)+Ik1+Ikf(x0)+LC1(C21)j=0kIj=f(x0)+LC1(C21)j=0k∣∣∇f(xj)2[cosθj]2
  • 观察上式,由于目标函数 f ( ⋅ ) f(\cdot) f()是向下有界的,这意味着: f ( x 0 ) f(x_0) f(x0)开始迭代的过程中,每一次迭代减少的程度
    因为描述迭代过程中减小的幅度,那么 C 1 ⋅ ( C 2 − 1 ) L \begin{aligned}\frac{\mathcal C_1 \cdot (\mathcal C_2 - 1)}{\mathcal L}\end{aligned} LC1(C21)的负号就消掉了,而对应数值部分作为常数不会对极限产生影响,因而整个项都可以被忽略掉。
    ∣ f ( x j + 1 ) − f ( x j ) ∣ < ∞ j ∈ { 0 , 1 , 2 , 3 , ⋯ } |f(x_{j+1}) - f(x_j)| < \infty \quad j \in \{0,1,2,3,\cdots\} f(xj+1)f(xj)<j{0,1,2,3,}
    恒成立。因为优化目标是 min ⁡ X ∈ R n f ( X ) \mathop{\min}\limits_{\mathcal X \in \mathbb R^n} f(\mathcal X) XRnminf(X),而不是让这个迭代结果一直无限地小下去。

    从而 j → ∞ j \to \infty j时,由于迭代的 j j j项中每一项均 < ∞ < \infty <,那么最终的累加结果必然也 < ∞ < \infty <
    lim ⁡ k ⇒ ∞ ∑ j = 0 k ∣ ∣ ∇ f ( x j ) ∣ ∣ 2 ⋅ [ cos ⁡ θ j ] 2 < ∞ \mathop{\lim}\limits_{k \Rightarrow \infty} \sum_{j=0}^{k} ||\nabla f(x_j)||^2 \cdot [\cos \theta_j]^2 < \infty klimj=0k∣∣∇f(xj)2[cosθj]2<
    整理可得:
    ∑ j = 0 ∞ ∣ ∣ ∇ f ( x j ) ∣ ∣ 2 ⋅ [ cos ⁡ θ j ] 2 < ∞ \sum_{j=0}^{\infty}||\nabla f(x_j)||^2 \cdot [\cos \theta_j]^2 < \infty j=0∣∣∇f(xj)2[cosθj]2<

证毕。

相关参考:
【优化算法】线搜索方法-收敛性证明
Lagrange’s Mean Value Theorem - 拉格朗日中值定理

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/26337.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Wavefront .OBJ文件格式解读【3D】

OBJ&#xff08;或 .OBJ&#xff09;是一种几何定义文件格式&#xff0c;最初由 Wavefront Technologies 为其高级可视化器动画包开发。 该文件格式是开放的&#xff0c;已被其他 3D 图形应用程序供应商采用。 OBJ 文件格式是一种简单的数据格式&#xff0c;仅表示 3D 几何体&…

node.js安装

下载 https://nodejs.org/en 安装 D:\Program Files\nodejs 配置 D:\Program Files\nodejs 目录下新建 node_cache 和 node_global 在cmd管理员身份运行&#xff1a; npm config set prefix "D:\Program Files\nodejs\node_global" npm config set cache &qu…

算法通关村第五关——HashMap和队列问题分析

1.HashMap 1.1Hash的概念和基本特征 哈希(Hash)&#xff1a;也称为散列。就是把任意长度的输入&#xff0c;通过散列算法&#xff0c;变换成固定长度的输出&#xff0c;这个输出值就是散列值。 假设数组array存放的是1到15这些数&#xff0c;现在要存在一个大小是7的Hash表中…

Android 刷新与显示

目录 屏幕显示原理&#xff1a; 显示刷新的过程 VSYNC机制具体实现 小结&#xff1a; 屏幕显示原理&#xff1a; 过程描述&#xff1a; 应用向系统服务申请buffer 系统服务返回一个buffer给应用 应用开始绘制&#xff0c;绘制完成就提交buffer&#xff0c;系统服务把buffer数据…

7_分类算法—逻辑回归

文章目录 逻辑回归&#xff1a;1 Logistic回归&#xff08;二分类问题&#xff09;1.1 sigmoid函数1.2 Logistic回归及似然函数&#xff08;求解&#xff09;1.3 θ参数求解1.4 Logistic回归损失函数1.5 LogisticRegression总结 2 Softmax回归&#xff08;多分类问题&#xff0…

Oracle安装与配置

一 把windows2003拖到vm里去 1.1 加一块虚拟网卡 1.2 把网卡信息改一下 配完之后点一下应用 这个地方改成一个不是1但是在255之内的数&#xff0c;就可以 二 后面调试很久&#xff0c;失败了 后面还有一些步骤&#xff0c;但是总的来说&#xff0c;这次安装失败了&#xf…

适合自己企业的erp系统怎么选?这8条关键因素缺一不可!

一文看懂&#xff1a;如何选择适合自己企业的ERP系统&#xff1f;选型过程中有哪些关键因素需要考虑&#xff1f; 无论你是多大规模的企业&#xff0c;看懂这一篇&#xff0c;你都能受用无穷。 哪怕你需求复杂&#xff0c;现成ERP系统无法满足&#xff0c;最后我也给出了一条…

政府大数据资源中心建设总体方案[56页PPT]

导读&#xff1a;原文《政府大数据资源中心建设总体方案[56页PPT]》&#xff08;获取来源见文尾&#xff09;&#xff0c;本文精选其中精华及架构部分&#xff0c;逻辑清晰、内容完整&#xff0c;为快速形成售前方案提供参考。 完整版领取方式 完整版领取方式&#xff1a; 如需…

Zebec Protocol ,不止于 Web3 世界的 “Paypal”

Paypal是传统支付领域的巨头企业&#xff0c;在北美支付市场占有率约为77%以上。从具体的业务数据看&#xff0c;在8月初&#xff0c;Paypal公布的2023年第二季度财报显示&#xff0c;PayPal第二季度净营收为73亿美元&#xff0c;净利润为10.29亿美元。虽然Paypal的净利润相交去…

javaWeb项目--二级评论完整思路

先来看前端需要什么吧&#xff1a; 通过博客id&#xff0c;首先需要显示所有一级评论&#xff0c;包括评论者的头像&#xff0c;昵称&#xff0c;评论时间&#xff0c;评论内容 然后要显示每个一级评论下面的二级评论&#xff0c;包括&#xff0c;评论者的头像&#xff0c;昵称…

6.s081/6.1810(Fall 2022)Lab5: Copy-on-Write Fork for xv6

前言 本来往年这里还有个Lazy Allocation的&#xff0c;今年不知道为啥直接给跳过去了。. 其他篇章 环境搭建 Lab1: Utilities Lab2: System calls Lab3: Page tables Lab4: Traps Lab5: Copy-on-Write Fork for xv6 参考链接 官网链接 xv6手册链接&#xff0c;这个挺重要…

Windows下安装Scala(以Scala 2.11.12为例)

Windows下安装Scala&#xff08;以Scala 2.11.12为例&#xff09; 一、Scala2.11.12官网下载二、Scala2.11.12网盘下载三、Scala各版本下载地址四、Scala安装4.1、点击 scala-2.11.12.msi 文件安装4.2、设置环境变量 %SCALA_HOME%4.3、环境变量Path添加条目%SCALA_HOME%\bin 四…

1466. 重新规划路线

题目描述&#xff1a; 主要思路&#xff1a; 将所有有向边抽象为无向边&#xff0c;将原有的方向权重置为1&#xff0c;其余置为0。 从0开始遍历所有城市&#xff0c;ans权重和。 class Solution { public:vector<vector<int>> a,w;int ans0;bool book[500010];v…

使用yarn启动项目报错

使用yarn启动项目报错 解决方法&#xff1a; 1.点击“开始”菜单搜索找到 Windows PowerShell ISE并以管理员身份运行(注&#xff1a;不是以管理员的身份直接运行cmd) 2. 输入 set-ExecutionPolicy RemoteSigned 回车 3.输入&#xff08;选择全是&#xff09; 4.再输入get-Exe…

生成小程序二维码、小程序码

微信自定义生成二维码 使用微信云开发生成自定义二维码、小程序码话不多说&#xff0c;我们先来看最终的展示效果生成码有三种方式操作步骤1. 云环境的初始化2. 在页面上开辟一个容器来展示二维码&#xff08;包括预览和保存到相册的按钮&#xff09;3. 创建云函数4. 生成二维码…

RabbitMQ的6种工作模式

RabbitMQ的6种工作模式 官方文档&#xff1a; http://www.rabbitmq.com/ https://www.rabbitmq.com/getstarted.html RabbitMQ 常见的 6 种工作模式&#xff1a; 1、simple简单模式 1)、消息产生后将消息放入队列。 2)、消息的消费者监听消息队列&#xff0c;如果队列中…

在Raspberry Pi 4上安装Ubuntu 20.04 + ROS noetic(不带显示器)

在Raspberry Pi 4上安装Ubuntu 20.04 ROS noetic&#xff08;不带显示器&#xff09; 1. 所需设备 所需设备&#xff1a; 树莓派 4 B 型 wifi microSD 卡&#xff1a;最小 32GB MicroSD 转 SD 适配器 &#xff08;可选&#xff09;显示器&#xff0c;鼠标等 2. 树莓派…

机器学习---概述(二)

文章目录 1.模型评估1.1 分类模型评估1.2 回归模型评估 2. 拟合2.1 欠拟合2.2 过拟合2.3 适当拟合总结&#xff1a; 3.深度学习3.1层次&#xff08;Layers&#xff09;&#xff1a;3.2 神经元&#xff08;Neurons&#xff09;&#xff1a;3.3 总结 1.模型评估 模型评估是机器学…

【Linux操作系统】Vim:提升你的编辑效率

Vim是一款功能强大的文本编辑器&#xff0c;它具有高度可定制性和灵活性&#xff0c;可以帮助程序员和文本编辑者提高编辑效率。本文将介绍Vim的基本使用方法、常用功能和一些实用技巧。 文章目录 1. Vim的基本使用方法&#xff1a;2. 常用功能&#xff1a;2.1 文件操作&#…

Qt应用开发(基础篇)——时间类 QDateTime、QDate、QTime

一、前言 时间类QDateTime、QDate、QTime、QTimeZone保存了Qt的时间、日期、时区信息&#xff0c;常用的时间类部件都会用到这些数据结构&#xff0c;常用概念有年、月、日、时、分、秒、毫秒和时区&#xff0c;时间和时区就关系到时间戳和UTC的概念。 UTC时间&#xff0c;又称…