1x1卷积的作用

  1. 压缩通道
    例子:
    对于下面这种32通道的数据,如果用1个1x1x32的卷积核与其做卷积运算,得到的就是1个6x6的矩阵
    在这里插入图片描述
    同理,如果用N个1x1x32的卷积核与其做卷积运算,得到的就是N个6x6的矩阵。

也就是说我们可以通过改变1x1卷积核的个数来改变最后输出的通道数

  1. 控制特征图的深度
    1x1的卷积核由于大小只有1x1,所以并不需要考虑像素跟周边像素的关系,它主要用于调节通道数,对不同的通道上的像素点进行线性组合,然后进行非线性化操作,可以完成升维和降维的功能,如下图所示,选择2个1x1大小的卷积核,那么特征图的深度将会从3变成2,如果使用4个1x1的卷积核,特征图的深度将会由3变成4,
    在这里插入图片描述
  2. 减少参数
    前面所说的降维,其实也是减少了参数,因为特征图少了,参数也自然跟着就减少,相当于在特征图的通道数上进行卷积,压缩特征图,二次提取特征,使得新特征图的特征表达更佳。接着再通过两个例子来看看它是如何减少参数的。
    在GoogleNet的3a模块中,假设输入特征图的大小是2828192,1x1卷积通道为64,3x3卷积通道为128,5x5卷积通道为32:
    在这里插入图片描述

在这里插入图片描述

上面的卷积核参数计算如下:
192 × (1×1×64) +192 × (3×3×128) + 192 × (5×5×32) = 387072
而下面的3x3卷积层前加入通道数为96的1x1的卷积,5x5的特征图后面加入通道数为16的1x1的卷积,参数的计算如下:
192 × (1×1×64) +(192×1×1×96+ 96 × 3×3×128)+(192×1×1×16+16×5×5×32)= 157184

  1. 实现了跨通道的信息组合,并增加了非线性特征
    使用11卷积核,实现降维和升维的操作其实就是channel间信息的线性组合变化,33,64channels的卷积核前面添加一个11,28channels的卷积核,就变成了33,28channels的卷积核,原来的64个channels就可以理解为跨通道线性组合变成了28channels,这就是通道间的信息交互。因为1*1卷积核,可以在保持feature map尺度不变的(即不损失分辨率)的前提下大幅增加非线性特性(利用后接的非线性激活函数),把网络做的很deep,增加非线性特性。
  • 1
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值