1x1的卷积作用

本文转载自https://blog.csdn.net/ybdesire/article/details/80314925

答案是:信道压缩
那么是怎么做到的呢?
对于如下的二维矩阵,做卷积,相当于直接乘以2,貌似看上去没什么意义。
在这里插入图片描述
但是,对于下面这种32通道的数据,如果我用1个1x1x32的卷积核与其做卷积运算,得到的就是1个6x6的矩阵。
1x1的卷积作用_第1张图片
在这个过程中,发生了如下的事情:

(1)遍历36个单元格(6x6)
(2)计算左图中32个信道中截面与卷积核中32个元素的乘积
(3)此时得到的结果,仍然是6x6x32的矩阵
(4)每个6x6的矩阵都叠加起来,得到一个6x6的矩阵
(5)接下来用Relu函数作用于这个6x6的矩阵
(6)得到6x6的输出
同理,如果我用N个1x1x32的卷积核与其做卷积运算,得到的就是N个6x6的矩阵。

所以,1x1的卷积,可以从根本上理解为:有一个全连接的神经网络,作用在了不同的32个位置上。

这种做法,通常称为1x1卷积或Network in Network。它的主要作用,就是降低信道数量。如下图
1x1的卷积作用_第2张图片
28x28x192的数据,被32个1x1x192的卷积核作用后,就变为28x28x32的数据。这也就是所谓信道压缩,信道降维。当然如果你愿意,也可以增加信道维度。这在Inception网络中很有用。

本篇参考了AndrewNG的Deep Learning课程。

你可能感兴趣的:(深度学习从入门到放弃)