lej*_*lot 67

反向传播是计算有向图计算中的梯度的有效方法,例如神经网络.这不是一种学习方法,而是一种经常用于学习方法的好的计算技巧.这实际上是衍生链规则的简单实现,它简单地使您能够根据图形大小计算线性时间内所有所需的偏导数(而朴素梯度计算将随深度呈指数级增长).

SGD是众多优化方法之一,即一阶优化器,意思是它基于对目标梯度的分析.因此,就神经网络而言,它通常与backprop一起应用以进行有效更新.您还可以将SGD应用于以不同方式获得的梯度(从采样,数值逼近器等).对称地,您可以使用其他优化技术与backprop,所有可以使用渐变/雅可比的.

这种常见的误解来自于这样一个事实,即为了简单起见,人们有时会说"使用backprop进行训练",实际上意味着(如果他们没有指定优化器)"使用backprop作为梯度计算技术训练SGD".此外,在旧教科书中,您可以找到诸如"delta rule"之类的内容以及其他一些令人困惑的术语,这些术语描述的完全相同(因为神经网络社区很长一段时间与一般优化社区有点独立).

因此,您有两层抽象:

  • 梯度计算 - backprop发挥作用
  • 优化级别 - 其中SGD,Adam,Rprop,BFGS等技术发挥作用,(如果它们是一阶或更高阶段)使用上面计算的梯度


moh*_*_18 14

随机梯度下降(SGD)是用于例如最小化损失函数的优化方法.

在SGD中,您在每次迭代时使用1个示例来更新模型的权重,具体取决于此示例所导致的错误,而不是使用所有示例的错误的平均值(如"简单" 梯度下降) ,在每次迭代.为此,SGD需要计算"模型的梯度".

反向传播是计算SGD使用的这种"梯度"的有效技术.


小智 10

反向传播只是一种计算模型多变量导数的方法,而 SGD 是定位损失/成本函数最小值的方法。


Ben*_*ari 5

[快速回答]

长话短说

  • 反向传播是一种找到每个参数的误差导数的技巧W[i]

  • 随机梯度下降 ( SGD ) 更新W[i]