[TOC]
a) 熟悉全连接层、损失函数的反向传播
b) 熟悉卷积层的反向传播-单通道、无padding、步长1
c) 熟悉卷积层的反向传播-多通道、无padding、步长1
d) 熟悉卷积层的反向传播-多通道、无padding、步长不为1
e) 熟悉以上4点的依赖知识
a)
b)
c) 记损失函数L关于第$l$ 层卷积的输出$z^l$ 的偏导为$\delta^l = \frac {\partial L} {\partial z^l} \ \ \ (3)$
有padding和没padding的前向传播过程完全一样,只需要将 无padding 中所有公式中的$z^{l-1}$ 替换为$pz^{l-1}$ 即可。
因此根据以上约定,卷积核权重$W^{l-1} \in \Bbb R^{k_1^{l-1} \times k_2^{l-1} \times C^{l-1} \times C^{l}}$ ,偏置$b^{l-1} \in \Bbb R^{C^l}$ ,每个输出通道一个偏置。 则有第$l$ 层卷积层,第$d$个通道输出为: $$ \begin{align} &z^l_{d,i,j} = \sum_{c=1}^{C^{l-1}}\sum_{m=0}^{k_1^{l-1}-1} \sum_{n=0}^{k_2^{l-1}-1} W_{m,n,c,d}^{l-1} pz_{c,i \cdot s_1^{l-1}+m,j \cdot s_2^{l-1}+n}^{l-1} + b^{l-1}_d & i \in [0,H^l-1], j\in [0,\hat W^l-1]\tag 4 \end{align} $$
其中:$H^l = (H^{l-1} - k_1^{l-1} + 2p_1^{l-1})/s_1^{l-1}+ 1;\ \ \ \ \ \hat W^l = (\hat W^{l-1} - k_2^{l-1} +2p_2^{l-1})/s_2^{l-1}+ 1 $ ;
同样反向传播过程中,也只需要将 无padding 中所有公式中的$z^{l-1}$ 替换为$pz^{l-1}$ 即可。
a) 首先来看损失函数$L$关于第$l-1$层权重$W^{l-1}$和偏置$b^{l-1}$的梯度: $$ \begin{align} &\frac {\partial L} {\partial W_{m,n,c,d}^{l-1}} = \sum_i \sum_j \frac {\partial L} {\partial z^l_{d,i,j}} * \frac {\partial z^l_{d,i,j}} {\partial W_{m,n,c,d}^{l-1}} &//l层的d通道每个神经元都有梯度传给权重W^{l-1}{m,n,c,d}\ &=\sum_i \sum_j \delta^l{d,i,j} * \frac {\partial ( \sum_{c=1}^{C^{l-1}}\sum_{m=0}^{k_1^{l-1}-1} \sum_{n=0}^{k_2^{l-1}-1} W_{m,n,c,d}^{l-1} pz_{c,i \cdot s_1^{l-1}+m,j \cdot s_2^{l-1}+n}^{l-1} + b^{l-1}d )} {\partial W^{l-1}{m,n,c,d}} \ &=\sum_i \sum_j \delta^l_{d,i,j} * pz_{c,i \cdot s_1^{l-1}+m,j \cdot s_2^{l-1}+n}^{l-1} \tag 5 \end{align} \ $$
b) 损失函数$L$关于第$l-1$层偏置$b^{l-1}$的梯度同 $$ \begin{align} \frac {\partial L} {\partial b^{l-1}d} =\sum_i \sum_j \delta^l{d,i,j} \tag 6 \end{align} $$
根据 无padding 中公式(8)有 $$ \frac {\partial L} {\partial pz^{l-1}{c,i,j}}=\sum{d=1}^{C^l}\sum_{m=0}^{k_1^{l-1}-1} \sum_{n=0}^{k_2^{l-1}-1}rot_{180^\circ} W^{l-1}{m,n,c,d}p\delta^{l{padding}}_{d,i+m,j+n} \tag 8 $$
其中$p\delta^{l_{padding}}{d,i,j}$ 是$\delta^l$ 在行列直接插入$(s_1^{l-1}-1,s_2^{l-1}-1)$ 行列零元素后(即$\delta^{l{padding}}$),再在元素外围填充高度和宽度为
我们知道$\delta^{l-1}c$ 就是$(\frac {\partial L} {\partial pz^{l-1}{c,i,j}}){h \times w}$ 去除高度和宽度的填充后的矩阵,因此有 $$ \begin{align} &\delta^{l-1}c=(\frac {\partial L} {\partial pz^{l-1}{c,i,j}}){p_1^{l-1} \le i < H^{l-1} + p_1^{l-1},p^{l-1}2 \le j < \hat W^{l-1}+p_2^{l-1}} \ &=(\sum{d=1}^{C^l}\sum_{m=0}^{k_1^{l-1}-1} \sum_{n=0}^{k_2^{l-1}-1}rot_{180^\circ} W^{l-1}{m,n,c,d}p\delta^{l{padding}}{d,i+m,j+n}){p_1^{l-1} \le i < H^{l-1} + p_1^{l-1},p^{l-1}_2 \le j < \hat W^{l-1}+p_2^{l-1}} \tag 9 \end{align} $$