batch_norm_training(如上图)的反向 其作用就是两个:
一:求loss关于 γ和β的梯度
二:求loss关于 xi的梯度(此层的输入是上层的输出 用于链式与上一层求导对接)
一:求loss关于 γ和β的梯度 利用
先对yi求导 再用yi对γ和β求导
二:求loss关于 xi的梯度 利用
先对yi求导 再对yi对xi求导
要yi对xi求导 需要带入
中的能用xi表示的参数 其中
把上面三个式子依次带入 或者说想对xi求导 那么就需要下面三个方面求导:
^xi对xi求导
^xi对 σ求导 σ对xi和μ求导 μ对xi求导
^xi对 μ求导 μ对xi求导
最后所有的求导为: