为什么我们在反向传播期间计算神经网络输出的 Error wrt 的偏导数?

数据挖掘 神经网络 反向传播
2022-03-07 20:45:53

图片来自 Hinton 的课程视频

如图所示,我们计算输出神经元输出的 Error wrt 的偏导数。它不应该是正常的导数吗?那个特定的错误不是仅由那个输出决定的吗?

2个回答

之所以使用偏导数,是因为它将值如何计算(从网络中的所有其他参数和输出)与值如何影响输出分开。这纯粹是根据定义,因此您可以进行计算。

误差函数的“正态”导数可以表示为任何“完整”组独立偏导数之和。有一些这样的集合是可能的——在一个简单的前馈网络中,每一层一个,一个用于所有组合的权重。

所以本质上你是在计算网络权重的“正常”导数,但是由于问题的性质,这是通过在多个步骤中计算偏导数来完成的。


警告:我可能没有 100% 准确地使用这些数学术语。例如,我忽略了训练数据的作用并将其视为一个常数。

我认为“正常导数”是指dEdyj.

这在这里没有意义。当您计算导数时dYdX你要的是极限比率ΔYΔX当你做ΔX小的。这只有在实际存在限制时才有意义,即。如果这个比率在你做的时候接近一个常数ΔX小的。

在您的情况下,通常可以找到许多不同的增量,我们可以将它们应用于权重,所有这些都会产生相同的增量yj. (一般来说,如果有 N 个权重,就有一个(N1)- 权重增量的维空间,所有这些对yj.) 许多这些不同的体重增量会对您的最终成绩产生不同的影响E(通过其他yi的)。这意味着该比率没有固定的限制ΔEΔyj趋向于。不同的权重增量将导致该比率的值大不相同。所以没有“正常导数”。

您想找到每个权重的增量如何单独修改最终E. 这会告诉您更新它们的数量。这正是偏导数想要告诉你的。