一个简单的问题,当我将损失函数反向传播到我的参数时,我使用了缩放后的输出(例如tanh(x)* 2),我是否需要包括缩放后的输出的导数而不是原始输出?谢谢!
答案 0 :(得分:0)
在对错误进行反向传播之前,我们必须针对每个参数计算损失函数的梯度。该计算包括首先计算输出的梯度,然后重复使用链式规则。因此,执行此操作时,缩放常数保持不变。因此,是的,您必须相应地调整错误。
例如,您可能已经观察到以下L2 regularized loss - a.k.a Ridge regression:
损失= 1/2 * | T-Y | ^ 2 + \ lambda * || w || ^ 2
在这里,我们正在缩小 平方误差。因此,当我们计算梯度1/2和2时会抵消。如果不首先将其乘以0.5,则必须将梯度按比例放大2。否则,梯度矢量将指向其他方向,而不是使损耗最小的方向。