首页 最新 热门 推荐

  • 首页
  • 最新
  • 热门
  • 推荐

机器学习笔记之优化算法(七)线搜索方法(步长角度;非精确搜索;Wolfe Condition)引言

  • 23-09-05 19:02
  • 3304
  • 5221
blog.csdn.net

机器学习笔记之优化算法——线搜索方法[步长角度,非精确搜索,Wolfe Condition]

  • 引言
    • 回顾:
      • Armijo ext{Armijo} Armijo准则及其弊端
      • Glodstein ext{Glodstein} Glodstein准则及其弊端
    • Wolfe Condition ext{Wolfe Condition} Wolfe Condition
      • 关于仅与参数 C 1 mathcal C_1 C1​相关的武断做法
      • 关于 C 1 mathcal C_1 C1​武断做法不可取的逻辑解释
      • 关于 C 1 mathcal C_1 C1​武断做法的改进: Wolfe Condition ext{Wolfe Condition} Wolfe Condition
    • 个人理解: Wolfe ext{Wolfe} Wolfe准则与 Armijo ext{Armijo} Armijo准则

引言

上一节介绍了 Glodstein ext{Glodstein} Glodstein准则 ( Glodstein Condition ) ( ext{Glodstein Condition}) (Glodstein Condition)及其弊端。本节将针对该弊端,介绍 Wolfe ext{Wolfe} Wolfe准则 ( Wolfe Condition ) ( ext{Wolfe Condition}) (Wolfe Condition)。

回顾:

Armijo ext{Armijo} Armijo准则及其弊端

在当前迭代步骤中,为了能够得到更精炼的 ϕ ( α ) phi(alpha) ϕ(α)选择范围, Armijo ext{Armijo} Armijo准则 ( Armijo Condition ) ( ext{Armijo Condition}) (Armijo Condition)提出一种关于 ϕ ( α ) phi(alpha) ϕ(α)的筛选方式,使其比 ϕ ( α ) < f ( x k ) phi(alpha) < f(x_k) ϕ(α)<f(xk​)更加严格:
Armijo Condition :  { ϕ ( α ) < L ( α ) = f ( x k ) + C 1 ⋅ [ ∇ f ( x k ) ] T P k ⋅ α C 1 ∈ ( 0 , 1 ) ext{Armijo Condition : } {ϕ(α)<L(α)=f(xk)+C1⋅[∇f(xk)]TPk⋅αC1∈(0,1)

⎧⎩⎨ϕ(α)<L(α)=f(xk)+C1⋅[∇f(xk)]TPk⋅αC1∈(0,1)
Armijo Condition : ⎩ ⎨ ⎧​ϕ(α)<L(α)=f(xk​)+C1​⋅[∇f(xk​)]TPk​⋅αC1​∈(0,1)​
这种操作产生的弊端是: C 1 mathcal C_1 C1​在取值过程中,可能出现数量较少的、并且并非 ϕ ( α ) phi(alpha) ϕ(α)主要部分的选择空间。见下图:
Armijo准则弊端
这种情况可能导致:
下面的两种情况都指向同一个问题: L ( α ) mathcal L(alpha) L(α)所划分的 α alpha α范围从整个 ϕ ( α ) phi(alpha) ϕ(α)角度观察,是片面的、局部的。

  • 可选择的 α alpha α范围较小;
  • 该小范围内的 α alpha α结果,其对应的 ϕ ( α ) phi(alpha) ϕ(α)并不优质。
    这里的‘优质’是指与整个 ϕ ( α ) phi(alpha) ϕ(α)函数结果相比都属于一个较小的结果。最优质的自然是 α ∗ = arg ⁡ min ⁡ α > 0 ϕ ( α ) alpha^* = mathop{argmin}limits_{alpha > 0} phi(alpha) α∗=α>0argmin​ϕ(α),但我们在每次迭代过程中并不执著于 α ∗ alpha^* α∗,仅希望选择出的 α alpha α结果能够有效地使 { f ( x k ) } k = 0 ∞ {f(x_{k})}_{k=0}^{infty} {f(xk​)}k=0∞​收敛到最优值 f ∗ f^* f∗。

Glodstein ext{Glodstein} Glodstein准则及其弊端

针对 Armijo ext{Armijo} Armijo准则的问题, Glodstein ext{Glodstein} Glodstein准则在其基础上添加一个下界:
Glodstein Condition :  { f ( x k ) + ( 1 − C ) ⋅ [ ∇ f ( x k ) ] T P k ⋅ α ⏟ Lower Bound ≤ ϕ ( α ) ≤ f ( x k ) + C ⋅ [ ∇ f ( x k ) ] T P k ⋅ α C ∈ ( 0 , 1 2 ) ext{Glodstein Condition : } {f(xk)+(1−C)⋅[∇f(xk)]TPk⋅α⏟Lower Bound≤ϕ(α)≤f(xk)+C⋅[∇f(xk)]TPk⋅αC∈(0,12)

⎧⎩⎨⎪⎪⎪⎪⎪⎪⎪⎪f(xk)+(1−C)⋅[∇f(xk)]TPk⋅αLower Bound≤ϕ(α)≤f(xk)+C⋅[∇f(xk)]TPk⋅αC∈(0,12)
Glodstein Condition : ⎩ ⎨ ⎧​​Lower Bound f(xk​)+(1−C)⋅[∇f(xk​)]TPk​⋅α​​≤ϕ(α)≤f(xk​)+C⋅[∇f(xk​)]TPk​⋅αC∈(0,21​)​​
其中分别描述上界、下界的划分函数:

  • Upper Bound :  L U ( α ) = f ( x k ) + C ⋅ [ ∇ f ( x k ) ] T P k ⋅ α ext{Upper Bound : } LU(α)=f(xk)+C⋅[∇f(xk)]TPk⋅α
    LU(α)=f(xk)+C⋅[∇f(xk)]TPk⋅α
    Upper Bound : LU​(α)=f(xk​)+C⋅[∇f(xk​)]TPk​⋅α​
  • Lower Bound :  L L ( α ) = f ( x k ) + ( 1 − C ) ⋅ [ ∇ f ( x k ) ] T P k ⋅ α ext{Lower Bound : } mathcal L_{mathcal L}(alpha) = f(x_k) + (1 - mathcal C) cdot [ abla f(x_k)]^T mathcal P_k cdot alpha Lower Bound : LL​(α)=f(xk​)+(1−C)⋅[∇f(xk​)]TPk​⋅α

关于 f ( x k ) + 1 2 [ ∇ f ( x k ) ] T P k ⋅ α f(xk)+12[∇f(xk)]TPk⋅α

f(xk)+12[∇f(xk)]TPk⋅α
f(xk​)+21​[∇f(xk​)]TPk​⋅α​对称。这能保证满足该范围的 α alpha α结果,其对应的 ϕ ( α ) phi(alpha) ϕ(α)总是位于 ϕ ( α ) phi(alpha) ϕ(α)的核心部分,而不是片面的、局部的部分。见下图:
其中两条绿色实线之间区域内的 ϕ ( α ) phi(alpha) ϕ(α)结果相比 Armijo ext{Armijo} Armijo准则,其描述的范围更加核心。
Glodstein准则特点
但 Goldstein ext{Goldstein} Goldstein准则自身同样存在弊端:当参数 C mathcal C C靠近 1 2 12
21​​
时,对应上下界包含的 ϕ ( α ) phi(alpha) ϕ(α)结果极少
。从而可能使一些优质 α alpha α结果丢失。见下图:
Glodstein准则弊端

Wolfe Condition ext{Wolfe Condition} Wolfe Condition

首先,我们可以发现一个关于 Armijo ext{Armijo} Armijo准则与 Goldstein ext{Goldstein} Goldstein准则的共同问题:被选择的仅仅是满足划分边界条件的 α alpha α结果,而被选择的 α alpha α结果是否存在被选择的意义是未知的。
换句话说,基于这两种准则选择出的 α alpha α结果仅仅是因为:

  • 该 α alpha α对应的 ϕ ( α ) phi(alpha) ϕ(α)位于决策边界 L ( α ) = f ( x k ) + C 1 ⋅ [ ∇ f ( x k ) ] T P k ⋅ α mathcal L(alpha) = f(x_k) + mathcal C_1 cdot [ abla f(x_k)]^T mathcal P_k cdot alpha L(α)=f(xk​)+C1​⋅[∇f(xk​)]TPk​⋅α的下方 ( Armijo Condition ) ( ext{Armijo Condition}) (Armijo Condition);
  • 该 α alpha α对应的 ϕ ( α ) phi(alpha) ϕ(α)位于上决策边界 L U ( α ) mathcal L_{mathcal U}(alpha) LU​(α)与下决策边界 L L ( α ) mathcal L_{mathcal L}(alpha) LL​(α)所围成的范围之间 ( Glodstein Condition ) ( ext{Glodstein Condition}) (Glodstein Condition)。

这意味着:我们确实得到了若干 α alpha α结果,但是这些结果是否优质属于未知状态。

我们尝试从满足 Armijo ext{Armijo} Armijo准则的基础上,通过某种规则剔除掉部分没有竞争力的 α alpha α结果,从而在剩余结果中找到优质的 α alpha α结果。见下图:
Wolfe初始状态
初始状态下,我们找到了一个 C 1 ∈ ( 0 , 1 ) mathcal C_1 in (0,1) C1​∈(0,1),并描述出了它的划分边界 L ( α ) mathcal L(alpha) L(α);由于 L ( α ) mathcal L(alpha) L(α)的斜率 C 1 ⋅ [ ∇ f ( x k ) ] T P k mathcal C_1 cdot [ abla f(x_k)]^T mathcal P_k C1​⋅[∇f(xk​)]TPk​必然大于 l ( α ) l(alpha) l(α)的斜率 [ ∇ f ( x k ) ] T P k [ abla f(x_k)]^T mathcal P_k [∇f(xk​)]TPk​,因此从 α = 0 alpha = 0 α=0出发,找到切线斜率与 L ( α ) mathcal L(alpha) L(α)斜率相同的点:
下图中的绿色虚线表示切线斜率与 L ( α ) mathcal L(alpha) L(α)斜率相同的 α alpha α点,短绿线表示寻找过程,点 A mathcal A A表示满足条件的切点。
Wolfe步骤1
通过观察可以发现:点 A mathcal A A必然不是极值点(虽然看起来有点像~),因为该点处的斜率 ≠ 0 eq 0 =0。这里能够确定:从 [ 0 , f ( x k ) ] [0,f(x_k)] [0,f(xk​)]到 A mathcal A A点这一段函数内的所有点相比于 A mathcal A A都没有竞争力。而这些点的切线斜率 ϕ ′ ( α ) phi'(alpha) ϕ′(α)满足:
[ ∇ f ( x k ) ] T P k ≤ ϕ ′ ( α ) ≤ C 1 ⋅ [ ∇ f ( x k ) ] T P k [ abla f(x_k)]^T mathcal P_k leq phi'(alpha) leq mathcal C_1 cdot [ abla f(x_k)]^T mathcal P_k [∇f(xk​)]TPk​≤ϕ′(α)≤C1​⋅[∇f(xk​)]TPk​

关于仅与参数 C 1 mathcal C_1 C1​相关的武断做法

如果将这些没有竞争力的点去除掉,保留剩余的点,结合 Armijo ext{Armijo} Armijo准则,会有如下的步长 α alpha α选择方式:

  • 其中 ϕ ′ ( α ) = ∂ f ( x k + α ⋅ P k ) ∂ α = [ ∇ f ( x k + α ⋅ P k ) ] T P k ϕ′(α)=∂f(xk+α⋅Pk)∂α=[∇f(xk+α⋅Pk)]TPk
    ϕ′(α)=∂α∂f(xk​+α⋅Pk​)​=[∇f(xk​+α⋅Pk​)]TPk​​
    ,在后续的计算中均简化写作 ϕ ′ ( α ) phi'(alpha) ϕ′(α)。
  • 关于斜率 ϕ ′ ( α ) ≤ C 1 ⋅ [ ∇ f ( x k ) ] T P k phi'(alpha)leq mathcal C_1 cdot [ abla f(x_k)]^T mathcal P_k ϕ′(α)≤C1​⋅[∇f(xk​)]TPk​点不再理会,而 [ ∇ f ( x k ) ] T P k [ abla f(x_k)]^T mathcal P_k [∇f(xk​)]TPk​是 ϕ ( 0 ) phi(0) ϕ(0)的斜率,作为下界。
    { ϕ ( α ) ≤ f ( x k ) + C 1 ⋅ [ ∇ f ( x k ) ] T P k ⋅ α ϕ ′ ( α ) ≥ C 1 ⋅ [ ∇ f ( x k ) ] T P k C 1 ∈ ( 0 , 1 ) {ϕ(α)≤f(xk)+C1⋅[∇f(xk)]TPk⋅αϕ′(α)≥C1⋅[∇f(xk)]TPkC1∈(0,1)
    ⎩ ⎨ ⎧​ϕ(α)≤f(xk​)+C1​⋅[∇f(xk​)]TPk​⋅αϕ′(α)≥C1​⋅[∇f(xk​)]TPk​C1​∈(0,1)​

基于上述逻辑,被选择的 ϕ ( α ) phi(alpha) ϕ(α)见下图:
其中 A ′ mathcal A' A′点表示该图像中斜率与 L ( α ) mathcal L(alpha) L(α)相同的其他位置的点。
被选择的phi(alpha)

上述这种方式可取吗 ? ? ?从逻辑角度上是可行的,但不可取。

关于 C 1 mathcal C_1 C1​武断做法不可取的逻辑解释

  • 由于 C 1 ∈ ( 0 , 1 ) mathcal C_1 in (0,1) C1​∈(0,1),因而 C 1 ⋅ [ ∇ f ( x k ) ] T P k < 0 mathcal C_1 cdot [ abla f(x_k)]^T mathcal P_k < 0 C1​⋅[∇f(xk​)]TPk​<0恒成立。也就是说:无论 C 1 mathcal C_1 C1​如何趋近于 0 0 0, Armijo ext{Armijo} Armijo准则划分边界 L ( α ) mathcal L(alpha) L(α)如何趋近于 ϕ ( α ) = f ( x k ) phi(alpha) = f(x_k) ϕ(α)=f(xk​),都无法获取使 ϕ ′ ( α ) = 0 phi'(alpha) = 0 ϕ′(α)=0的极值解。
    很简单,就是因为取不到~

    而与此同时,我们为了追求这个极值解,可能反而会损失一系列 ϕ ( α ) phi(alpha) ϕ(α)优质的 α alpha α点。
    如果仅使用 C 1 mathcal C_1 C1​一个参数,那么要去除的点在 Armijo ext{Armijo} Armijo准则划分边界 L ( α ) mathcal L(alpha) L(α)确定的那一刻就已经被确定了,这势必会误伤一些 ϕ ( α ) phi(alpha) ϕ(α)优质的 α alpha α结果。

  • 其次,这里的操作是非精确搜索,因而不执著去追求极值解(那不就变成精确搜索了吗~),并且这仅仅是一次迭代的计算过程,没有必要消耗计算代价去追求更优质的 ϕ ( α ) phi(alpha) ϕ(α),这也是我们希望尽量保留 ϕ ( α ) phi(alpha) ϕ(α)优质解的核心原因:
    与上一张图被选择的 ϕ ( α ) phi(alpha) ϕ(α)值对比观察,红色椭圆形虚线区域中描述的 ϕ ( α ) phi(alpha) ϕ(α)值是比较优质的,但因为 C 1 mathcal C_1 C1​的原因导致该部分结果被‘一刀切’了。这并不是我们希望看到的结果。
    一刀切描述

关于 C 1 mathcal C_1 C1​武断做法的改进: Wolfe Condition ext{Wolfe Condition} Wolfe Condition

如何避免上述一刀切的情况出现 ? ? ? Wolfe ext{Wolfe} Wolfe准则提供了而一种更软性的操作。

设置一个参数 C 2 ∈ ( C 1 , 1 ) mathcal C_2 in (mathcal C_1,1) C2​∈(C1​,1),该参数对应的斜率表示为 C 2 ⋅ [ ∇ f ( x k ) ] T P k mathcal C_2 cdot [ abla f(x_k)]^T mathcal P_k C2​⋅[∇f(xk​)]TPk​,而该斜率在 ( [ ∇ f ( x k ) ] T P k , C 1 ⋅ [ ∇ f ( x k ) ] T P k ) ([ abla f(x_k)]^T mathcal P_k,mathcal C_1 cdot [ abla f(x_k)]^T mathcal P_k ) ([∇f(xk​)]TPk​,C1​⋅[∇f(xk​)]TPk​)之间滑动(变换)。此时会出现一种缓和的情况:即便假设 C 1 mathcal C_1 C1​无限接近于 0 0 0,但由于 C 2 mathcal C_2 C2​的作用,使 ϕ ( α ) phi(alpha) ϕ(α)点的选择与 C 1 mathcal C_1 C1​没有太大关联:

  • 这里相当于将斜率 C 1 ⋅ [ ∇ f ( x k ) ] T P k mathcal C_1 cdot [ abla f(x_k)]^T mathcal P_k C1​⋅[∇f(xk​)]TPk​视作一个边界。
  • 上面的一刀切情况相当于 C 1 ⇒ 0 mathcal C_1 Rightarrow 0 C1​⇒0的同时, C 2 ⇒ C 1 mathcal C_2 Rightarrowmathcal C_1 C2​⇒C1​的情况。
  • 由于 C 2 ∈ ( C 1 , 1 ) mathcal C_2 in (mathcal C_1,1) C2​∈(C1​,1)因而完全可以通过调整 C 2 mathcal C_2 C2​针对那些斜率小于 C 1 ⋅ [ ∇ f ( x k ) ] T P k mathcal C_1 cdot [ abla f(x_k)]^T mathcal P_k C1​⋅[∇f(xk​)]TPk​,但 ϕ ( α ) phi(alpha) ϕ(α)优质的结果进行酌情选择。

最终根据 Armijo ext{Armijo} Armijo准则, Wolfe ext{Wolfe} Wolfe准则操作如下:
{ ϕ ( α ) ≤ 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 ) {ϕ(α)≤f(xk)+C1[∇f(xk)]TPk⋅αϕ′(α)≥C2⋅[∇f(xk)]TPkC1∈(0,1)C2∈(C1,1)

⎩ ⎨ ⎧​ϕ(α)≤f(xk​)+C1​[∇f(xk​)]TPk​⋅αϕ′(α)≥C2​⋅[∇f(xk​)]TPk​C1​∈(0,1)C2​∈(C1​,1)​

个人理解: Wolfe ext{Wolfe} Wolfe准则与 Armijo ext{Armijo} Armijo准则

在开头部分提到关于 Armijio ext{Armijio} Armijio准则的弊端,在介绍完 Wolfe ext{Wolfe} Wolfe准则之后,有种 Armijo ext{Armijo} Armijo准则的弊端卷土重来的感觉。个人认为: Wolfe ext{Wolfe} Wolfe准则提出的这种基于 C 2 ∈ ( C 1 , 1 ) mathcal C_2 in (mathcal C_1,1) C2​∈(C1​,1)的软性下界同样也在影响 C 1 mathcal C_1 C1​的选择:

  • 如果是单纯的 Armijo ext{Armijo} Armijo准则,我们可能更偏好 C 1 mathcal C_1 C1​远离 0 0 0一些。因为 C 1 ⇒ 0 mathcal C_1 Rightarrow 0 C1​⇒0意味着这种状态越趋近优化算法(四)中描述的必要不充分条件;这种 C 1 mathcal C_1 C1​的选择方式也势必会增加 Armijo ext{Armijo} Armijo准则弊端的风险;
  • 而 Wolfe ext{Wolfe} Wolfe准则中,即便 C 1 mathcal C_1 C1​偏向 0 0 0方向,我们依然可以通过调整 C 2 mathcal C_2 C2​对相对不优质的 ϕ ( α ) phi(alpha) ϕ(α)点进行过滤。从剩余的优质点中选择并进行迭代。

相关参考:
【优化算法】线搜索方法-步长-Wolfe Condition

注:本文转载自blog.csdn.net的静静的喝酒的文章"https://blog.csdn.net/qq_34758157/article/details/132043302"。版权归原作者所有,此博客不拥有其著作权,亦不承担相应法律责任。如有侵权,请联系我们删除。
复制链接
复制链接
相关推荐
发表评论
登录后才能发表评论和回复 注册

/ 登录

评论记录:

未查询到任何数据!
回复评论:

分类栏目

后端 (14832) 前端 (14280) 移动开发 (3760) 编程语言 (3851) Java (3904) Python (3298) 人工智能 (10119) AIGC (2810) 大数据 (3499) 数据库 (3945) 数据结构与算法 (3757) 音视频 (2669) 云原生 (3145) 云平台 (2965) 前沿技术 (2993) 开源 (2160) 小程序 (2860) 运维 (2533) 服务器 (2698) 操作系统 (2325) 硬件开发 (2492) 嵌入式 (2955) 微软技术 (2769) 软件工程 (2056) 测试 (2865) 网络空间安全 (2948) 网络与通信 (2797) 用户体验设计 (2592) 学习和成长 (2593) 搜索 (2744) 开发工具 (7108) 游戏 (2829) HarmonyOS (2935) 区块链 (2782) 数学 (3112) 3C硬件 (2759) 资讯 (2909) Android (4709) iOS (1850) 代码人生 (3043) 阅读 (2841)

热门文章

101
推荐
关于我们 隐私政策 免责声明 联系我们
Copyright © 2020-2025 蚁人论坛 (iYenn.com) All Rights Reserved.
Scroll to Top