本文转载自https://blog.csdn.net/ybdesire/article/details/80314925
答案是:信道压缩
那么是怎么做到的呢?
对于如下的二维矩阵,做卷积,相当于直接乘以2,貌似看上去没什么意义。
但是,对于下面这种32通道的数据,如果我用1个1x1x32的卷积核与其做卷积运算,得到的就是1个6x6的矩阵。
在这个过程中,发生了如下的事情:
(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。它的主要作用,就是降低信道数量。如下图
28x28x192的数据,被32个1x1x192的卷积核作用后,就变为28x28x32的数据。这也就是所谓信道压缩,信道降维。当然如果你愿意,也可以增加信道维度。这在Inception网络中很有用。
本篇参考了AndrewNG的Deep Learning课程。