当前位置: 首页 >> 基本常识
每天五分钟机器学习:随机梯度下降算法运行过程中可能出现的情况
  
  来源: www.fycek.com 点击:739

02 0X1778 41 0X1778 59数字实验室

本文的重点

我们现在知道随机梯度下降算法的原理是什么,但是我们仍然有一些问题需要解决。在运行随机梯度下降算法时,如何检测算法是否收敛?

批梯度下降算法

批梯度下降算法收敛的一个标准是根据迭代次数绘制最优成本函数。我们希望确保成本函数j(θ)在每次迭代中都会降级。

随机梯度下降算法

对于每1000次迭代(1000个样本),我们将得到此时的θ值,然后计算最后1000个样本成本值的平均值,然后绘制它们。通过这些绘制的图像,我们可以发现随机性。梯度下降算法是否收敛可能导致以下四种情况:

0×251C

在第一种情况下(蓝线),算法的值实际上在减少,然后从某一点开始减速,这表明算法基本上是收敛的。如果你尝试一个较小的学习速度,那么算法可能会变慢,但有可能得到一个更好的解决方案(红线)。更好的解决方案是因为随机梯度下降不是直接收敛的。到了全局最小值,但要在全局最小值附近反复振荡,所以当我们使用一个较小的学习速率时,最终的冲击会很小,有可能得到一个更好的参数,得到一个较低的生成值。

一条更平滑的线(红线),这就是我们增加样本数量的情况。当然,增加样本的缺点是,在我们想要在图上获得一个数据点之前,我们只需要计算最后1000个样本,但是现在我们需要计算最后一个。5000个样本,因此我们得到一些关于学习算法反馈的反馈

{!--PGC U列--

第三种情况(蓝线),在这种情况下,我们可以知道我们的成本函数并没有下降。我们可以增加它使函数更为渐进,也许我们可以看到向下的趋势(红线),或者也许函数图仍然是起伏的,没有下降(洋红线),那么我们的模型本身可能会有一些错误。

在第四种情况下,我们发现曲线实际上在上升。这是一个非常明显的信号。此时我们需要使用较小的学习率A。

总结

我们使用的方法不需要定期扫描整个训练集来计算整个样本集的成本函数。相反,我们只需要平均最后1000个或每次多少个样本。

利用该方法,可以保证随机梯度下降法的工作性和收敛性,并可用于调节学习率α。

随机梯度下降算法运行过程中可能出现的情况17.4

本文的重点

我们现在知道随机梯度下降算法的原理是什么,但是我们仍然有一些问题需要解决。在运行随机梯度下降算法时,如何检测算法是否收敛?

批梯度下降算法

批梯度下降算法收敛的一个标准是根据迭代次数绘制最优成本函数。我们希望确保成本函数j(θ)在每次迭代中都会降级。

随机梯度下降算法

对于每1000次迭代(1000个样本),我们将在此时获得θ值,然后计算最后1000个样本的成本值的平均值,然后绘制它们。通过这些绘制的图像,我们可以检测随机性。梯度下降算法是否收敛可能导致以下四种情况:

在第一种情况下(蓝线),算法的值实际上在减小,然后它将从某一点减慢,这表明该算法基本上是收敛的。如果您尝试较小的学习速率,则算法可能会变慢,但可以获得更好的解决方案(红线)。更好的解决方案是因为随机梯度下降不是直接收敛。对于全局最小值,但要在全局最小值附近反复振荡,所以当我们使用较小的学习率时,最终的震动会很小,有可能获得更好的参数,并获得更低的生成值。

更平滑的线(红线),这是我们增加样本数量的情况。当然,增加样本的缺点是在我们想要在图上获得数据点之前,我们只需要计算最后1000个样本,但现在我们需要计算最后一个样本。 5000个样本,所以我们得到一些关于学习算法反馈的反馈

{! - PGC_COLUMN - }

第三种情况(蓝线),在这种情况下,我们可以知道我们的成本函数没有减少。我们可以增加它以使功能更加渐进,也许我们可以看到下降趋势(红线)或者功能图仍然是颠簸而不是下降(洋红色线),那么我们的模型本身可能会有一些错误。

在第四种情况下,我们发现曲线实际上在上升。这是一个非常明显的信号。我们此时需要使用较小的学习率a。

总结

我们使用的方法不需要定期扫描整个训练集来计算整个样本集的成本函数。相反,我们只需要平均最后1000个或每次有多少个样本。

使用这种方法,可以保证随机梯度下降法正在工作和收敛,你可以用它来调整学习率α。

随机梯度下降算法运行期间可能出现的情况17.4

银河娱乐游戏

友情链接:
沙湾信息网 版权所有© www.fycek.com 技术支持:沙湾信息网 | 网站地图