我假设每一层的梯度会以某种方式变为0.1。在绘制/堆叠网络中,一层的梯度可以通过累积梯度的方式计算,如所示。
在ResNet中,梯度通过跳跃连接传播。那么,如何实现如上图所示的x
的梯度呢?是0.1x0.1+0.1
还是0.1
?
回答:
已在上图中添加了梯度计算。梯度delta_x
是进入的梯度delta_y
与梯度delta_y
和delta_F
的乘积之和。
所以在你的例子中,应该是0.1×0.1×0.1+0.1。
但请注意,在实际计算delta_F
时,delta_y
会乘以weight_1
,并根据ReLu
是否激活而被通过/阻断
,然后再乘以weights_2
。