卷积

作者: 馒头and花卷 | 来源:发表于2020-04-22 22:24 被阅读0次

整理一下, 关于卷积层梯度反向传递的过程.

参考
参考

注: s\not=1的部分是自己推得, 可能是错的(自己想了很久, 感觉错的机会不大).

符号

在这里插入图片描述

输入: x \in \mathbb{R}^{N \times C \times H \times W};
权重: w \in \mathbb{R}^{F \times C \times HH \times WW};
biases: b;
输出:y \in \mathbb{R}^{N \times F \times H' \times W'}


H' = 1+ (H+2 p-HH)/s \\ W' = 1+ (W+2p-WW)/s,
其中p表示补零(pad), s表示滑动距离(stride).

y=x*w,
其中*表示卷积.

2-D, s=1

不考虑C, 可以将补零后的视作x.

在这里插入图片描述

\mathrm{d}b

在这里插入图片描述

\mathrm{d}w

\mathrm{d}w=x*\mathrm{d}y

在这里插入图片描述

\mathrm{d}x

\mathrm{d}x=\mathrm{d}\hat{y} * w^r.

在这里插入图片描述

\mathrm{d}x_{mn}可以表示为俩个矩阵对应元素相乘再对各元素求和.

在这里插入图片描述
在这里插入图片描述
是以 为中心完全补零(上下各补, 左右各补), 是左右翻转, 上下翻转后的结果.

举个例子

在这里插入图片描述

2-D s\not =1

在这里插入图片描述

\mathrm{d}b

一样的

\mathrm{d}w

\mathrm{d} w = x * \mathrm{d}\hat{y},
其中\hat{y}是在y的基础上, 在行列间添加s-1个0.

在这里插入图片描述

\mathrm{d} x

\mathrm{d}x = \mathrm{d}\hat{y} * w^r,
其中w^r和上面一样都是左右翻转加上上下翻转, \mathrm{d}\hat{y}先在\mathrm{d}y的基础上各行各列插入s-1零, 并在左右各补WW-1零, 上下各补HH-1零.

在这里插入图片描述

depth

加上了C,则
y_f=\sum_c y_{fc},
其中
y_{fc} = x_c*w_{fc}+b_{fc},

\frac{\partial L}{\partial y_fc} = \frac{\partial L}{\partial y_{f}},
剩下的就是和之前的类似的操作了.

相关文章

网友评论

      本文标题:卷积

      本文链接:https://www.haomeiwen.com/subject/soigihtx.html