更新梯度下降的等式

时间:2015-12-14 19:08:37

标签: optimization machine-learning gradient-descent

如果我们有一个近似函数y = f(w,x),其中输入x,输出y,w是权重。根据梯度下降规则,我们应该根据w = w - df / dw更新权重。但是,我们可能会根据w = w - w * df / dw更新权重吗?谁看过这个吗?我想这样做的原因是因为我在算法中这样做更容易。

1 个答案:

答案 0 :(得分:1)

回想一下,梯度下降是基于在w附近的f(w,x)的泰勒展开,并且其目的---在你的背景中 - 在中反复修改重量小步骤 。基于函数f(w,x)的非常局部的知识,反向梯度方向仅是搜索方向。

通常,权重的迭代包括步长,产生表达式

w_(i+1) = w_(i) - nu_j df/dw,

其中通过使用线搜索找到步长nu_j的值,参见例如https://en.wikipedia.org/wiki/Line_search

因此,基于上面的讨论,回答你的问题:不,根据

更新不是一个好主意
w_(i+1) = w_(i) - w_(i) df/dw.

为什么呢?如果(i)很大(在上下文中),我们将根据非常本地的信息采取一个巨大的步骤,并且我们将使用与精细阶梯梯度下降方法非常不同的东西。

另外,正如lejlot在下面的评论中指出的那样,w(i)的负值意味着你在梯度的(正)方向上移动,即在函数增长最快的方向上,在本地,是最糟糕的搜索方向(对于最小化问题)。