机器学习总结(三)——梯度下降详解

梯度下降通俗解释

机器学习的问题中,线性回归问题是一个特殊的情况,线性回归可以直接求解,但是其他问题不行!机器学习总结(三)——梯度下降详解_第1张图片

举一个通俗的例子

机器学习总结(三)——梯度下降详解_第2张图片
针对我们的问题,我们想要找到loss最小值所对应的θ值。我们“下山”的路有很多条,哪一条下山最快呢?
那必定是对应点处的切线方向啊,也叫对应点的梯度反方向。
机器学习总结(三)——梯度下降详解_第3张图片
每下降一步(或者叫“下山”一步),对应的点都会改变,所以对应的梯度方向也会改变。
我们每次走一步,一步应该多大呢?
机器学习总结(三)——梯度下降详解_第4张图片
机器学习总结(三)——梯度下降详解_第5张图片

步长应该小一些!!!

参数更新方法

机器学习总结(三)——梯度下降详解_第6张图片
机器学习总结(三)——梯度下降详解_第7张图片
机器学习总结(三)——梯度下降详解_第8张图片
机器学习总结(三)——梯度下降详解_第9张图片
机器学习总结(三)——梯度下降详解_第10张图片
机器学习总结(三)——梯度下降详解_第11张图片
机器学习总结(三)——梯度下降详解_第12张图片
机器学习总结(三)——梯度下降详解_第13张图片

优化参数设置

机器学习总结(三)——梯度下降详解_第14张图片

批量梯度下降(GD)

机器学习总结(三)——梯度下降详解_第15张图片
批量梯度下降非常耗时!(因为要计算大量样本的梯度!!!!)
我们从样本中随机选取一个,算梯度下降不就可以节约很多时间!!!
这是个一个不错的idea,这个叫做随机梯度下降——SGD

随机梯度下降(SGD)

机器学习总结(三)——梯度下降详解_第16张图片
随机梯度下降虽然节约时间,但是结果并不好。结果不一定朝着收敛的方向。就像上图一样,结果是浮动的!!!

GD结果虽然好,但是太耗时!!!
SGD虽然节约时间,但是结果不理想!!!

那怎么办呀?

我们可以结合一下这两种方法!!!

小批量梯度下降,应运而生!!!

小批量梯度下降

机器学习总结(三)——梯度下降详解_第17张图片
机器学习总结(三)——梯度下降详解_第18张图片
batch设置的大的话,结果越精准,但是耗时大!
batch设置的小的话,计算速度快,但是结果不是很准确!
那我们如何权衡呢?
在咋们机器性能能接受的范围内,尽可能设置的大一些!!!

batch大的话,吃显存!!

学习率(步长)

机器学习总结(三)——梯度下降详解_第19张图片
LR一般自己设置为0.01或者0.001这些比较小的数值!!!
机器学习总结(三)——梯度下降详解_第20张图片

学习率设置的小,一次更新的小。学习率设置的大,一次更新的大。

附录

在机器学习中,基本不可能直接求解,而是通过优化求解的。

你可能感兴趣的:(机器学习)