全连接层与全卷积层的转换

如图所示,X 是一个2*2*1的feature map,通过一个 全连接层W输出 4维向量 Y

dd808735362605d6f96c05a9ea1c1d4c.png

计算的方法是:将X展平成一个1维列向量,再与W做矩阵乘法:

y1 = W的第一行与X的所有元素相乘再相加

这种运算还可以写作:W第一行与X所有元素的互相关运算,如下图,即对应位置的元素相乘再相加(实际操作时,卷积与互相关等价):

 

对于每一个yi,都是由权重矩阵的第i行与X'对应元素相乘,这个相乘的过程和用权重矩阵的第i行所构成的卷积核去卷积X会产生一样的结果 :

那么将X通过全连接层得到4维向量就相当于以全连接层中的权重矩阵中的四行向量所组成的4个卷积核去卷积2*2*1的feature map

因为此时的卷积核的大小就和feature map的大小一样,因此称之为全卷积,全卷积最终得到1*1*4的矩阵(向量),与全连接层的效果是相同的。

那么如果图片是多通道的话,比如第一张图是2通道:

 

 只需要把卷积核也变换一下就可以了,两个黄色卷积核分别与特征图的两个通道卷积,之后相加,得到灰色热图中的第一个维度;两个绿色卷积核分别与特征图的两个维度卷积,之后相加,得到灰色热图中的第二个维度,以此类推。

参考文章:全连接层与卷积层的关系转换 - 程序员大本营


版权声明:本文为m0_63095029原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。