4、手动实现四种优化器

优化器
优化器是为了优化网络参数而设置的各种参数更新算法,主要围绕损失函数的梯度而计算的。
SGD
SGD主要是按照梯度下降的斜率来决定参数的更新。 因为神经网络参数更新的目的就是找到使loss函数最小的地方,例如loss = w^2这种函数,你只要顺着梯度的下降方向调整你的参数就可以顺利找到x = 0这个最小值点。 而在寻找的过程中,loss的梯度函数为2w,当x<0时,grad算出来是负数,此时w = w - lr * grad就可以向正确的方向更新参数。lr(learning rate)就是学习速率,在其中的作用可以简单看做步幅,当lr较小时,就相当于步幅比较小,假设你此时的w初值在比较高的地方,想要下降到最低点就要走很多步,而反之如果你的lr比较大,你虽然前期下降的很快,可是当你快到底端的时候,尽管此时的梯度已经很小了,可你的步幅太大,总会跨过那个最低点,就会导致你收敛不到最佳值。 w1.as

4、手动实现四种优化器最先出现在Python成神之路

版权声明:
作者:dingding
链接:https://www.techfm.club/p/18238.html
来源:TechFM
文章版权归作者所有,未经允许请勿转载。

THE END
分享
二维码
< <上一篇
下一篇>>