每天五分钟机器学习:随着算法迭代次数动态调整学习率

本文重点

我们使用的学习率往往是不变的,本节课程我们将令学习率随着迭代次数的增加而减小,这会对算法的学习有很大的好处。

好处

当我们运行随机梯度下降时,算法会从某个点开始,然后曲折的逼近最小值,但是不会真正的收敛,而是一直在最小值附近徘徊。因此你最终得到的参数,实际上只是接近全局最小值,而不是真正的全局最小值。

在大多数随机梯度下降算法的典型应用中,学习速率a一般是保持不变的。如果你想让随机梯度下降能够收敛到全局最小值,那么你可以随时减少学习速率a的值,令学习率随着迭代次数的增加而减小,一种典型的变化就是:

 

=某个常数1/迭代次数+某个常数2

迭代次数指的是我们的训练样本的数量,因为是随机梯度下降,每次只训练一个样本

常数1和常数2是超参数需要我们手动指定,假设这两个超参数选择了比较不错的,那么随机梯度下降的图像如下图所示。每天五分钟机器学习:随着算法迭代次数动态调整学习率_第1张图片

 

算法会在最小值附近震荡,但当它越来越接近最小值的时候,由于你减少了学习速率,因此震荡会越来越小,直到落到全局最小值的地方。

你可能感兴趣的:(每天五分钟玩转机器学习算法,算法,学习,人工智能,梯度下降)