【问题标题】:Update equation for gradient descent更新梯度下降方程
【发布时间】:2016-03-20 09:19:42
【问题描述】:

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

【问题讨论】:

  • 简而言之 - 不,这不是一个有效的渐变,你不能只是组成方程式并将它们插入:-)

标签: optimization machine-learning gradient-descent


【解决方案1】:

回想一下,梯度下降是基于 f(w, x) 在 w 附近的泰勒展开式,并且有它的目的——在你的上下文中——在 反复修改权重 小步骤。反向梯度方向只是一个搜索方向,基于函数 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.

为什么?如果 w_(i) 很大(在上下文中),我们将基于非常局部的信息迈出一大步,并且我们将使用与精细梯度下降法截然不同的方法。

此外,正如 lejlot 在下面的 cmets 中指出的那样,w(i) 的负值意味着您沿梯度的(正)方向遍历,即沿函数增长最快的方向,即是局部最差的搜索方向(对于最小化问题)。

【讨论】:

  • 还有一个(甚至更大)的问题——如果w_(i) 是负数怎么办?你会反对渐变
  • 确实,为那个 lejlot +1,我将编辑以包含在答案中。
  • 非常感谢您的回答。我现在明白了。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2022-06-21
  • 2016-06-13
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-09-25
  • 2012-08-17
相关资源
最近更新 更多