我是否需要在反向传播方程(SGD)中包含我的缩放输出?

问题描述 投票:0回答:1

快速问题,当我将损失函数反向传播到我的参数并使用缩放输出(例如tanh(x)* 2)时,我是否需要在原始输出中包含缩放输出的导数?谢谢!

machine-learning neural-network deep-learning backpropagation derivative
1个回答
0
投票

在我们可以反馈错误之前,我们要计算相对于每个参数的损失函数的梯度。该计算涉及首先计算输出的梯度,然后重复使用链规则。因此,当您执行此操作时,缩放常量保持不变。所以,是的,您必须相应地缩放错误。

例如,您可能已经观察到以下L2 regularized loss - a.k.a Ridge regression

损失= 1/2 * | T - Y | ^ 2 + \ lambda * || w || ^ 2

在这里,我们缩小平方误差。因此,当我们计算梯度1/2和2时会抵消。如果我们不首先将它乘以0.5,那么我们将不得不将梯度向上扩展2.否则,梯度向量将指向某个其他方向而不是最小化损失的方向。

© www.soinside.com 2019 - 2024. All rights reserved.