在深度学习的过程中,发现了很多网络结构中都存在了有1x1卷积的存在。也就是说,之前我们通常选择的卷积核都是3x3或者5x5大小的,作用都是用来提取特征,那么这么使用的1x1卷积核有什么作用呢,表面上看来是不是这个卷积核在输入上滑动,就相当于给输入元素乘以一个系数,逐格逐元素提取特征呢。其实并非这么简单。
另外,1x1卷积这个方法也是现在比较火的方法,如 googLeNet、ResNet、DenseNet ,中得到了非常广泛的应用。特别是在 googLeNet 的 Inception中,发挥的淋漓尽致。
它的作用总结下来大致分为两个方面:
1、改变通道
(1)升 / 降维
(2)数据融合
(3)减少计算量
2、非线性操作
1、改变通道
通道的概念这里在再复习一下。
在彩色图像中通道RGB通道为 3 ,也就是(红、黄、蓝)三个通道。比如一张彩色输入图片为 128x128x3.。这里可能会问,那后面卷积之后出现的(比如说)64x64x32 后面的通道为32吗?
这里的数据就不再是最开始输入的图像数据了,这里通过卷积之后就变成了特征数据,后面的通道32也不再是表示什么红黄蓝之类的东西了,而是与之卷积的卷积核的数量。
(1)降维 / 升维
很容易知道由于1x1的卷积不会改变原始数据的 height 和 width