![](https://img-blog.csdnimg.cn/20190918140158853.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
优化算法
讲解深度学习中一些常见的优化算法
LiuHDme
计算机硕士在读
研究领域:搜广推
展开
-
学习率衰减
学习率衰减(learning rate decay)同样也可以让我们的学习算法运行地更快,它能保证损失函数最终摆动时处在离最优值很近的范围内。为什么需要学习率衰减前面我们讲过,mini-batch 梯度下降算法可以提高更新权重的速度,让我们及时看到损失函数的情况,但是每个损失函数并不会一直下降,而是在保证整体趋势减小的情况下略微波动,如果用一个等高线图来表示就是这样的:上图的中心点为最...原创 2020-03-09 01:38:57 · 2308 阅读 · 0 评论 -
Adam 优化算法
在深度学习的发展过程中出现过很多优化算法,但是有些优化算法并不能被非常广泛地使用,因此出现了一些质疑优化算法的声音。但是当有人尝试将动量梯度下降和 RMSprop 结合起来后,人们发现这种新的优化算法效果非常好而且在很多问题上的表现都不错,后来便广泛地使用了起来。Adam 算法本质上是将动量梯度下降算法和 RMSprop 结合了起来。如果读过前几篇文章,那么对下面的算法描述一定不陌生:...原创 2020-03-09 01:38:01 · 551 阅读 · 0 评论 -
RMSprop
RMSprop 翻译成中文是“均方根传递”,它也能加速算法学习的速度。仍然使用上篇文章中的图:在此,我们假设 W 为水平方向的参数,b 为竖直方向的参数。从上图可以看出,更新 W 时的步伐过小,而更新 b 的步伐过大,这是 dW 过小和 db 过大造成的,如果我们可以增大 dW 和减小 db,就可以使上图蓝线更快地向右行进,而减少上下振动。下面就来实现这个目的。回忆一下,在动量梯度下降...原创 2020-03-09 01:37:02 · 1311 阅读 · 0 评论 -
动量梯度下降算法
上篇文章介绍了指数加权平均,这篇文章介绍在此基础上介绍一下动量梯度下降算法。所谓动量梯度下降算法,简言之就计算梯度的指数加权平均,然后使用这个梯度来更新权重,下面我们来详细解释这句话。我们在使用梯度下降算法更新权重时,希望损失函数能减小直到最优值。我们可以在一副等高线图中,画出损失函数随着迭代次数增加而减小的路径,即如下图所示:图中红点为最优点,蓝线为损失函数的减小路径,从图中左侧出发...原创 2020-03-09 01:35:03 · 2828 阅读 · 0 评论 -
指数加权平均
有一些算法比梯度下降算法更有效,为了学习这些算法,我们需要先了解一个概念——指数加权平均(Exponentially weighted averages)我会先讲指数加权平均的具体做法,然后再讲这么做的原因。指数加权平均假设我们收集了一个在北半球的地区一年中每天的温度,像这样:t(1) = 4°Ct(2) = 9°Ct(3) = 6°C…t(180) = 15°C…将这...原创 2020-03-09 01:33:16 · 3111 阅读 · 3 评论 -
Mini-Batch 梯度下降
这篇文章简要介绍什么是 mini-batch 梯度下降算法及其特点在训练网络时,如果训练数据非常庞大,那么把所有训练数据都输入一次神经网络需要非常长的时间,另外,这些数据可能根本无法一次性装入内存。人们在实践中发现并证明了另外一种方法,这种方法可以解决这些问题,更快地完成训练。假如我们有 m = 500000 对训练数据 X Y,把这些数据按照每组 1000 对分成 500 组,即 X 被...原创 2020-03-09 01:25:38 · 1143 阅读 · 1 评论