关于坐标下降法(Coordinate Descent)你没理解的事情

本文探讨了坐标下降法如何在凸函数中找到局部极小值,以及在不可微情况下可能遇到的问题。它解释了凸函数下找到局部极值即为全局的情况,同时介绍了严格和块坐标下降法的区别。关键点在于凸性、局部极值与全局最小值的关系以及特定函数结构的影响。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

概念

  • 见下:
    在这里插入图片描述
  • 其实就是先固定其他相关变量的值,只对某个未知变量进行优化。

原理

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

坐标下降法与全局最小值

  • 那么问题来了,假如我们寻找到了一个点x使得在所有单个坐标轴上f(x)都最小,是否证明我们找到了全局最小值点?

  • 这个问题要分情况来看:

  • a. 若f(x)是可微的凸函数,答案是Yes,因为f(x)在任何坐标方向上求偏导都是0,并且对于凸函数来说,局部极小值就是全局最小值:
    在这里插入图片描述

  • b. 若f(x)是不可微的凸函数,答案是No,我们可以很容易举出反例,比如下图中算法会在不可微点(右图中红色虚线交叉点)停止迭代,因为在任意坐标方向上f(x)都找不到的更小值了。
    在这里插入图片描述
    知道为什么嘛?红点处对应的就是三维图这里的位置:
    在这里插入图片描述
    这个红色的凹槽处任何一点都会导致坐标下降法停止,然而真正的最低点只有一处,不用我说了吧。
    为什么导致坐标下降法停止呢?因为在这条凹槽上的任何一点,你尝试沿着 x 1 x_1 x1 x 2 x_2 x2方向移动,你发现每个方向都会导致函数值 f ( x ) f(x) f(x)增加,所以坐标下降法认为到达底部了,其实没有。

  • c.见下:
    在这里插入图片描述
    在这里插入图片描述
    因为是凸函数,所以有上式中的第一个 > = >= >=符号,你可以随机取两点想象一下。然后又由于 x x x是咱们用坐标下降法得到的最终结果,所以在每个维度求和的时候,第一项应当为0 ,即 ▽ g ( x ) ( y i − x i ) ▽g(x)(y_i-x_i) g(x)(yixi)中的梯度为0,所以该项=0,而后面一项你要这么理解。首先,每一个 h i h_i hi都是凸函数是什么意思?就是在每个维度上,都增加了一个凹槽,该凹槽是凸函数状的,如图:
    在这里插入图片描述
    上图中的两个红色凹槽分别是平行于两个坐标轴的,他们就是 h 1 h_1 h1 h 2 h_2 h2,两个凸函数。其实通过b你也能看出来,凹槽存在不可怕,可怕的是存在像b中那样的凹槽,对于两个坐标的增益都是负的,而这里的两个凹槽你可以试一试,不可能出现b中的情况,因为它们的平行于坐标轴的。所以当你真正达到坐标下降法的最低点后,公式中的 h i ( y i ) − h i ( x i ) h_i(y_i)-h_i(x_i) hi(yi)hi(xi)必然是正的。

特点

  • 坐标轴的顺序可以是任意的,可以使用{1,2,…,n}的任何排列
  • 之前我们介绍的是严格的坐标下降法,即每次仅沿着单个坐标轴的方向寻找函数极小值。与之相对应的是块坐标下降法,即每次沿着多个坐标轴的方向(超平面)取极值。
  • 将新的
    在这里插入图片描述
  • 见下:
    在这里插入图片描述
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

CtrlZ1

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值