【深度学习基础篇】手算卷积神经网络:13道经典题全解析(考研/面试必备)
卷积神经网络是深度学习的核心,而手算卷积尺寸和参数量是理解其原理的第一步。本文整理了13道经典手算题,先给出题目供读者自测,再提供详细解答和关键公式总结,帮助大家彻底掌握卷积计算。
一、基础单通道卷积(7题)
题目自测
- 现有特征图4×4,卷积核大小为2,卷出来的特征图多大?卷积核的参数量多少?
- 现有特征图4×4,卷积核大小为3,卷出来的特征图多大?
- 现有特征图4×4,卷积核大小为3,padding=1,卷出来的特征图多大?
- 现有特征图100×100,卷积核大小为3,卷出来的特征图多大?
- 现有特征图100×100,卷积核大小为3,padding=1,卷出来的特征图多大?
- 特征图8×8,卷积核大小为7,卷出来的特征图多大?这个卷积核的参数量多少?
- 特征图100×100,卷积核大小为7,卷出来的特征图多大?
二、进阶多通道卷积(6题)
题目自测
- 特征图100×100,卷积核大小为7,padding多少,特征图大小不变?
- 特征图224×224,卷积核大小为5,padding=2,卷出来的特征图多大?
- 特征图3×4×4,padding=1,卷积核数量1,卷出来的特征图为1×4×4。这套卷积核多大?卷积核的参数量多少?
- 特征图3×4×4,卷积核3×3×3,padding=1,卷积核数量7,卷出来的特征图多大?
- 特征图3×224×224,卷积核3×3×3,padding=1,卷积核数量64,卷出来的特征图多大?
- 特征图64×224×224,卷积核X×3×3,padding=1,卷积核数量128。卷出来的特征图多大?X是多少?这套卷积核的参数量多少?
三、详细解答和关键步骤
默认步长
stride = 1,输入通道数C_in = 1(单通道)。
核心公式
- 输出尺寸 :
输出尺寸 = 输入尺寸 - 卷积核大小 + 2 × padding + 1 - 参数量(单通道) :
参数量 = 卷积核大小 × 卷积核大小
(一)基础单通道卷积解答
-
特征图4×4,卷积核2×2,padding=0
- 输出尺寸:
4 - 2 + 0 + 1 = 3→ 3×3 - 参数量:
2 × 2 = 4 - 关键:无padding时,直接套用基础公式。
- 输出尺寸:
-
特征图4×4,卷积核3×3,padding=0
- 输出尺寸:
4 - 3 + 0 + 1 = 2→ 2×2 - 关键:注意卷积核不能超过特征图尺寸。
- 输出尺寸:
-
特征图4×4,卷积核3×3,padding=1
- 输出尺寸:
4 - 3 + 2×1 + 1 = 4→ 4×4 - 关键 :当
padding = (卷积核大小 - 1) / 2时,输出尺寸与输入尺寸相同。
- 输出尺寸:
-
特征图100×100,卷积核3×3,padding=0
- 输出尺寸:
100 - 3 + 0 + 1 = 98→ 98×98
- 输出尺寸:
-
特征图100×100,卷积核3×3,padding=1
- 输出尺寸:
100 - 3 + 2×1 + 1 = 100→ 100×100 - 易错点 :容易忘记公式最后的
+1,导致算成99×99。
- 输出尺寸:
-
特征图8×8,卷积核7×7,padding=0
- 输出尺寸:
8 - 7 + 0 + 1 = 2→ 2×2 - 参数量:
7 × 7 = 49
- 输出尺寸:
-
特征图100×100,卷积核7×7,padding=0
- 输出尺寸:
100 - 7 + 0 + 1 = 94→ 94×94
- 输出尺寸:
(二)进阶多通道卷积解答
核心公式:
- 卷积核尺寸 :
输入通道数 × 卷积核空间尺寸 × 卷积核空间尺寸(如 3×3×3)- 参数量(多通道) :
参数量 = 输入通道数 × 卷积核空间尺寸 × 卷积核空间尺寸 × 输出通道数- 输出特征图 :
输出通道数 × 输出空间尺寸 × 输出空间尺寸
-
特征图100×100,卷积核7×7,求padding使大小不变
- 公式:
padding = (卷积核大小 - 1) / 2 - 计算:
(7 - 1) / 2 = 3 - 答案 :3
- 关键:这是保持特征图尺寸不变的黄金法则。
- 公式:
-
特征图224×224,卷积核5×5,padding=2
- 输出尺寸:
224 - 5 + 2×2 + 1 = 224→ 224×224 - 验证 :
padding = (5 - 1) / 2 = 2,符合尺寸不变法则。
- 输出尺寸:
-
特征图3×4×4,padding=1,卷积核数量1,输出1×4×4
- 卷积核大小:输入通道数为3,空间尺寸需保持4×4,故卷积核为 3×3×3
- 参数量:
3 × 3 × 3 = 27 - 关键:卷积核的输入通道数必须与输入特征图的通道数一致。
-
特征图3×4×4,卷积核3×3×3,padding=1,卷积核数量7
- 空间尺寸:
4 - 3 + 2×1 + 1 = 4 - 输出特征图:7×4×4
- 空间尺寸:
-
特征图3×224×224,卷积核3×3×3,padding=1,卷积核数量64
- 空间尺寸:
224 - 3 + 2×1 + 1 = 224 - 输出特征图:64×224×224
- 空间尺寸:
-
特征图64×224×224,卷积核X×3×3,padding=1,卷积核数量128
- X的值:卷积核输入通道数必须等于输入特征图通道数,故 X = 64
- 空间尺寸:
224 - 3 + 2×1 + 1 = 224 - 输出特征图:128×224×224
- 参数量:
64 × 3 × 3 × 128 = 73728
四、关键公式总结
| 场景 | 核心公式 | 备注 |
|---|---|---|
| 单通道输出尺寸 | 输出尺寸 = 输入尺寸 - K + 2P + 1 |
K=卷积核大小, P=padding, stride=1 |
| 多通道输出尺寸 | 与单通道公式相同 | 尺寸只与空间维度有关 |
| 单通道参数量 | K × K |
输入通道数为1 |
| 多通道参数量 | C_in × K × K × C_out |
C_in=输入通道数, C_out=输出通道数 |
| 尺寸不变法则 | P = (K - 1) / 2 |
当stride=1时,输出尺寸等于输入尺寸 |
五、学习复盘建议
- 牢记公式:输出尺寸和参数量的公式是基础,必须烂熟于心。
- 注意通道数:多通道卷积中,卷积核的输入通道数必须与输入特征图的通道数一致。
- 黄金法则 :
padding = (K - 1) / 2是保持尺寸不变的关键,在网络设计中非常常用。 - 多练手算:通过大量练习,培养对卷积计算的直觉,这对理解网络结构和排查问题非常有帮助。
本文由 [ppppppatrick] 整理,适合深度学习入门、考研复试和算法面试备考。如果对你有帮助,欢迎点赞、收藏、关注~