1. 通道维度调整(降维/升维)
- 作用:通过改变输出通道数(即滤波器的数量),1×1卷积可以灵活调整特征图的通道维度。
- 示例:
- 降维:若输入为
[H, W, 256]
,使用64个1×1卷积核,输出变为[H, W, 64]
,显著减少后续计算量(如Inception模块)。 - 升维:增加通道数以提取更复杂的特征组合。
- 降维:若输入为
- 优势:减少参数和计算量,提升模型效率。
2. 跨通道信息交互
- 作用:1×1卷积将输入的所有通道进行线性组合,学习不同通道间的关联性。
- 示例:RGB图像(3通道)经1×1卷积生成新通道,每个新通道是原始3通道的加权组合。
- 意义:增强特征表达能力,促进多通道信息的融合。
3. 引入非线性
- 操作:1×1卷积后通常接激活函数(如ReLU)。
- 效果:在保持空间尺寸不变的情况下,增加网络的非线性拟合能力。
- 对比:若不用1×1卷积,单纯通道线性组合无法引入非线性。
4. 替代全连接层
- 场景:在全局平均池化后,用1×1卷积替代全连接层。
- 优势:
- 允许输入尺寸可变(全连接层需固定输入尺寸)。
- 减少参数量(全连接层参数量为
C_in × H × W × C_out
,而1×1卷积仅需C_in × C_out
)。
5. 残差连接的通道对齐
- 问题:在残差网络(ResNet)中,输入和输出的通道数可能不一致,无法直接相加。
- 解决:使用1×1卷积调整通道数,使残差分支与主分支通道匹配。
- 示例:输入为64通道,残差块输出128通道,则1×1卷积将64→128通道。
6. 轻量化设计
- 计算效率:1×1卷积的参数量和计算量远小于大尺寸卷积(如3×3或5×5)。
- 应用:在移动端模型(如MobileNet)中,常与深度可分离卷积结合,进一步降低计算成本。
经典应用案例
- Inception模块(GoogLeNet):用1×1卷积先降维,再进行3×3、5×5卷积,减少计算量。
- ResNet:通过1×1卷积调整残差分支的通道数。
- SENet:在注意力机制中使用1×1卷积建模通道间依赖关系。
数学视角
- 输入:尺寸为
[H, W, C_in]
的特征图。 - 1×1卷积核:每个核的尺寸为
[1, 1, C_in]
,共C_out
个核。 - 输出:尺寸为
[H, W, C_out]
,每个输出通道是输入通道的线性组合:
总结
1×1卷积的核心价值在于高效调整通道维度、融合跨通道信息并引入非线性,同时保持空间结构不变。它是现代CNN中实现轻量化、模块化设计的关键组件之一。