在进行反向传播时,我使用链规则,然后用加权系数进行梯度下降,并且正在更新权重,所以我不明白该方法在下面的方程中是如何工作的。
这是源像。
发布于 2018-12-14 05:16:05
您所提到的反向传播方程可以从链规则中导出。我从你的评论中看到,你已经明白了,只想对这份声明进行一次复核。因此,我将给出一个非常快速的推导方程。
请看下面的计算图表:

我现在考虑一个训练例子。您可以以类似的方式将此概念扩展到整个培训集。
这里描述的损失函数是:-ylog(a) - (1 - y)log(1 - a)。这仅仅意味着,当y= 0时,对a=1的预测是非常不利的。
在以下方面区分这一职能:
\frac{dL}{da} = -\frac{y}{a} - (1 - y).\frac{1}{1 - a}.(-1)或
= -\frac{y}{a} +\frac{1 - y}{1 - a}
这是因为\frac{d f(g(x))}{dx} = f'(x). g'(x)。在这里,g(x) = 1 - a, f(x) = log (x).,f(g(x)) = log(g(x)) = log( 1 - a)。
现在,根据计算图,a = sigmoid(z)或a = \frac{1}{1 + e^{-z}}。利用与上面相同的微积分规则,
\frac{da}{dz} = a(1 - a)
\frac{dL}{dz} = \frac{dL}{da}.\frac{da}{dz}
\frac{dL}{dz} = -\frac{y}{a} +\frac{1 - y}{1 - a}#qcStackCode#。a(1 - a)#qcStackCode#
当您继续解决这个问题时,您得到的结果是a - y (正好是反向传播的第一个方程)。
同样,第二个方程(或\frac{dL}{dw})可以计算为\frac{dL}{dz}.\frac{dz}{dw}。您已经有了作为a - y的第一个任期。为了计算第二项,
\frac{dz}{dw} = x。这可以简单地理解,因为z是被w参数化的线性方程,而偏置单位是常数(因此它在微分上等于0)。
这就是你可以继续向后传播的方法。
不过,有一点实现说明。当您同时考虑所有培训示例时,您需要引入某些微妙之处,如np.sum()、\frac{1}{m}的借口或激活A^{[l]}上的各种转置操作。考虑到上面的推导,我想你现在应该能够处理这个问题了。
https://datascience.stackexchange.com/questions/38096
复制相似问题