在神经网络反向传播中,如何得到微分方程?
In neural Networks back propagation, how to get differential equations?
我很困惑为什么 dz=da*g'(z)
?
众所周知,在前向传播中,a=g(z)
,对z
求导后,可以得到da/dz=g'(z)
,那么dz=da*1/g'(z)
?
谢谢!!
据我所知,在很多课程中,像 dZ
这样的表示法是 dJ/dZ
等的一种更短的书写方式。所有导数都是关于各种参数、激活和加权和等的成本
微分方程基于最后一层出现,然后你可以向后构建它们,最后一层的方程可以基于几个激活函数。
线性 g'(z) = 1 or 1D of 1 vector based on layer dimensions
Sigmoid g'(z) = g(z)*(1-g(z))
Tanh g'(z) = 1 - thanh^2(z)
Relu = 1 如果 g(z)>0 否则 0
Leaky Relu = 1 如果 g(z)>0 并且您保持的任何 leaky relu 斜率。
从那里你基本上必须计算前面层的部分梯度。查看 http://neuralnetworksanddeeplearning.com/chap2.html 以获得更深入的了解
我很困惑为什么 dz=da*g'(z)
?
众所周知,在前向传播中,a=g(z)
,对z
求导后,可以得到da/dz=g'(z)
,那么dz=da*1/g'(z)
?
谢谢!!
据我所知,在很多课程中,像 dZ
这样的表示法是 dJ/dZ
等的一种更短的书写方式。所有导数都是关于各种参数、激活和加权和等的成本
微分方程基于最后一层出现,然后你可以向后构建它们,最后一层的方程可以基于几个激活函数。
线性 g'(z) = 1 or 1D of 1 vector based on layer dimensions
Sigmoid g'(z) = g(z)*(1-g(z))
Tanh g'(z) = 1 - thanh^2(z)
Relu = 1 如果 g(z)>0 否则 0
Leaky Relu = 1 如果 g(z)>0 并且您保持的任何 leaky relu 斜率。
从那里你基本上必须计算前面层的部分梯度。查看 http://neuralnetworksanddeeplearning.com/chap2.html 以获得更深入的了解