gpt4 book ai didi

machine-learning - 梯度下降收敛 如何判断收敛?

转载 作者:行者123 更新时间:2023-11-30 08:25:27 26 4
gpt4 key购买 nike

我通过在线资源(即 coursera 上的机器学习)学习了梯度下降。然而提供的信息只是说重复梯度下降直到收敛。

他们对收敛的定义是使用相对于迭代次数的成本函数图,并观察图何时变平。因此我假设我会执行以下操作:

if (change_in_costfunction > precisionvalue) {
repeat gradient_descent
}

或者,我想知道是否有另一种确定收敛的方法是观察系数接近其真实值:

if (change_in_coefficient_j > precisionvalue) {
repeat gradient_descent_for_j
}
...repeat for all coefficients

那么收敛是基于成本函数还是系数?那么我们如何确定精度值呢?它应该是系数或总成本函数的百分比吗?

最佳答案

您可以想象梯度下降 (GD) 的工作原理,认为您将大理石扔进碗里,然后开始拍照。弹珠会振荡,直到摩擦力将其停止在底部。现在想象一下,您所处的环境中摩擦力非常小,以至于弹珠需要很长时间才能完全停止,因此我们可以假设当振荡足够小时,弹珠已经到达底部(尽管它可能会继续振荡)。在下图中,您可以看到 GD 的前八个步骤(弹珠的照片)。

enter image description here

如果我们继续拍摄大理石没有明显移动的照片,您应该缩放图像:

enter image description here

我们可以继续拍照, Action 就会变得更加无关紧要。

因此,达到 GD 在目标函数中做出非常小的变化的点称为收敛,这并不意味着它已经达到最佳结果(但它确实非常接近,即使不是在最佳结果上)。

可以选择精度值作为阈值,在该阈值中,GD 的连续迭代几乎相同:

grad(i) = 0.0001
grad(i+1) = 0.000099989 <-- grad has changed less than 0.01% => STOP

关于machine-learning - 梯度下降收敛 如何判断收敛?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17289082/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com