1. 卷积神经网络中的特征图尺寸计算原理
在卷积神经网络(CNN)中,特征图尺寸的计算是网络设计的基础环节。每次卷积操作后,输出特征图的尺寸变化直接影响着后续网络层的参数配置和最终模型性能。这个计算过程涉及四个核心参数:输入尺寸、卷积核大小、步长和填充。
1.1 基础计算公式解析
最基础的特征图尺寸计算公式为:
code复制输出尺寸 = (输入尺寸 - 卷积核大小 + 2×填充)/步长 + 1
这个公式适用于宽度和高度两个维度,需要分别计算。例如:
- 输入图像尺寸:224×224
- 卷积核大小:3×3
- 步长(stride):1
- 填充(padding):1
则输出尺寸 = (224 - 3 + 2×1)/1 + 1 = 224
注意:计算结果必须为整数,否则说明参数配置不合理会导致特征图尺寸不完整
1.2 各参数对输出的影响机制
-
卷积核大小:决定了感受野的范围。较大的卷积核可以捕获更广域的上下文信息,但会显著减小特征图尺寸。现代CNN通常使用3×3的小卷积核堆叠,在保持感受野的同时减少参数量。
-
步长:控制卷积核移动的间隔。步长=2时,特征图尺寸会减半,常用于下采样。但过大的步长会导致信息丢失,实践中很少超过2。
-
填充:分为三种模式:
- Valid:不填充(padding=0)
- Same:填充使输出尺寸与输入相同
- Full:最大填充(较少使用)
需要模型API调用? 免费领10W Token,多模型网关一键接入 Claude、DeepSeek 等主流模型。
2. 实际应用中的计算场景
2.1 标准卷积计算示例
假设我们有一个7×7的输入,使用3×3卷积核:
- 无填充,步长1:输出尺寸=(7-3)/1+1=5
- 同填充,步长1:需要padding=1 → (7-3+2)/1+1=7
- 步长2时:无填充输出=(7-3)/2+1=3
2.2 特殊卷积类型的尺寸计算
-
空洞卷积(Dilated Convolution):
计算公式调整为:code复制输出尺寸 = (输入尺寸 + 2×填充 - 空洞率×(卷积核大小-1)-1)/步长 + 1空洞率=2时,3×3卷积核实际感受野为5×5
-
转置卷积(反卷积):
用于上采样,计算公式为:code复制
输出尺
