阅读 20 SEO

为什么是梯度

梯度下降是一个优化算法,为什么是梯度呢?为什么不是硬度?长度?零度?百度?

图片来自本人半年前发布在B站的可视化梯度下降,要不您去看看?点链接

优化问题分成无约束优化和有约束优化,有约束优化最终都要调整成无约束优化问题,所以我们直接看无约束优化问题,它的标准形式如下:

严格的数学定义里要求 是一个平滑函数,一般来说 是向量,比如机器学习里面动不动就是上百维的 ,我们的目标是找到一个 使得 最小,小学二年级在学习完微积分后我们知道最小值肯定出现在 一阶导数等于0的时候,可以使一阶导数等于0的 叫驻点,那你可能就要问了,既然可以得到解析解(analytical solution/closed solution),为什么还要用梯度下降求呢?原因大概如此:如果 极其复杂的话,计算它的一阶导数非常困难,其次还得让计算机求解


简书不让输入这个公式,智能上图片,丑~~

为了求解一个问题,引入另一个复杂问题~这不是解决问题的思路~所以才会出现优化算法。

求解优化问题肯定脱离不了大概也许是计算机世界最伟大的思想——迭代,给定一个初始的 ,叫它 , 通过某种策略,得到一个新的 ,叫它 ,要求 ,再找一个新的 ,叫 ,同样要求 ,一只更新 ,一直得到更小的 ,直到您满意为止,如何从 到 直到 就是各种优化算法干的活,简单点说就是如何从大概有两种思路,一种叫线性搜索(Linear Search),另一种叫信任域(Trust Range),Trust Range我没仔细看过,不瞎指挥~梯度下降属于线性搜索。

既然要求 ,再次迭代的函数值要小于这次的函数值,只要每次迭代都能保证这样,函数值就会一直变小,多么美好的愿景(耗子尾汁),如何得到  呢?这里需要引荐一个人,Taylor


图片来自百度搜索

当然不是霉霉,而是下面这位:

图片来自百度搜索~

以这位泰勒命名的定理,泰勒定理,还记得么?


定理:

设   是一个正整数。如果定义在一个包含  的区间上的函数   在   点处  次可导,那么对于这个区间上的任意  ,都有:


没错,这是一张图片,因为简书不支持导数符号~我服~

其中的多项式称为函数在a 处的泰勒展开式,剩余的 是泰勒公式的余项,是 的高阶无穷小。


上面定理来自维基百科泰勒公式,看起来就很伤吧,没关系,这不重要,放在我们的情况下可以这样解释,新引入一个 ,如果这个 足够小的话, 近似等于 ,这里为啥把一阶导数换成梯度符号 ,首先因为帅,其次因为简书不支持上面一撇的写法。当然计算二阶导数会更准确,但是也更复杂了,使用二阶导数更新的方法叫牛顿方法(newton)超出本文的番位,后面咱再聊,我们现在就使用一阶导数近似:

是向量所以 也是向量,是向量就有两部分长度和方向

是大于0的非常小的常数,叫它步长吧, 是单位向量,新一轮的函数值可以写成:

,既然要求它小于 ,所以 小于0,既然是让 ,反正是走一步,那就尽量让这一步的函数值小一点,索性就让这一次迭代的函数值最小得了,当然是在 这个常数一定的情况~~~所以新一轮迭代的要求可以写成:

因为每次迭代 都发生了变化,所以每次都可以计算上面这个最小化问题,大概跟下山一样,每次下降到一个位置,就需要重新选择一个方向继续下降。其中 是上一轮的函数值,已知, 大于0的很小的常数,事先给定的,已知,与下面的最小化是等价的:

啰嗦一句,最小化 就是最小化 ,也就是最小化 ,也就是 最下化 ,意思就是,下一步在步长 固定的情况下尽可能的让 小,每一次迭代都尽可能的小,直到到达某个 稳定下来~其实这个思路非常贪婪,很可能会掉入局部最小值无法自拔,当然也有解决思路,有机会聊~

怎么解?两个向量做乘法,假如两个向量的夹角 ,看下图:


这个图真大~好想不能调整~

根据向量乘法的定义 ,其中 是大于0的, 最小等于-1,于是 最小等于 ,此时 ,像这样:


还是好大的图

和 的方向是相反的,向量表示就是 ,有没有一种似曾相识的感觉,没错,梯度下降的公式终于出现了,新一轮可以使 尽可能小移动方向是负梯度方向~梯度下降~

如果每次我们都选择负梯度方向更新 ,在保证 的同时,还能保证 一直是最小的,每次迭代都会更新 ,所以下次又可以计算 ,这样一直迭代下去,总是会找到一个 使得 最小~当然可能是局部最小。

PS:

既然保证每次迭代 ,也就是 小于0就可以,所以 不一定非要选择负梯度方向


哎~好大的图~弄的好丑

只要 足够小,  可以选择左边蓝色区域的任意方向,都以保证新一轮的 小于 。

作者:三次元魔法师

原文链接:https://www.jianshu.com/p/63ba3d26af15

文章分类
后端
文章标签
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 gxwowoo@163.com 举报,一经查实,本站将立刻删除。
相关推荐