深度学习入门文档深度页
池化与下采样
用局部最大值、平均值或自适应汇总缩小空间尺寸。
学习目标
- 手算 MaxPool
- 比较平均/最大
- 使用自适应池化
为什么需要这个概念
深层特征不需要一直保持原始分辨率。
- 控制计算和感受野
- 理解 CNN 形状变化
学习前需要掌握
卷积形状内容待补充
背景与问题
深层特征不需要一直保持原始分辨率。
概念定义
池化通常无可学习权重,降低 H/W、减少计算并扩大后续感受野。
直观理解
把邻近小区域浓缩成一个代表值。
核心原理
普通池化不改变 batch 和通道;MaxPool(2,2) 常使高宽减半。
现代网络也用 stride 卷积下采样;池化不会凭空恢复丢失信息。
数学表达
核心公式
Ω 是当前池化窗口。
变量含义
Ω局部窗口c通道
计算步骤
- 1取局部最大值
代码对应位置
示例 1池化与下采样 · PyTorch 示例:验证池化与下采样的输入、计算和输出。
变量解释
| 变量 | 含义 |
|---|---|
Ω | 局部窗口 |
c | 通道 |
完整数值示例
2×2 MaxPool
已知条件
- [[1,3],[2,0]]
- 1
取局部最大值
3
处理前后对比
计算与实现步骤
- 1
划分窗口
- 2
局部汇总
- 3
按 stride 移动
- 4
得到缩小特征图
代码实现
示例 1
池化与下采样 · PyTorch 示例
池化与下采样 · PyTorch 示例
PyTorch
example_01.py用途:验证池化与下采样的输入、计算和输出。
pool=nn.MaxPool2d(2,2)
x=torch.tensor([[[[1.,3.],[2.,0.]]]])
print(pool(x))代码解析
解析始终位于完整代码下方,并按实际代码段逐项对应。
输入数据与任务
验证池化与下采样的输入、计算和输出。
Step 1 · 1–3 行
输出中间参数、形状或最终指标,用于核对代码是否符合预期。
pool=nn.MaxPool2d(2,2)
x=torch.tensor([[[[1.,3.],[2.,0.]]]])
print(pool(x))预期输出或运行结果
tensor([[[[3.]]]])。
常见错误 · 3 条
- 池化过多尺寸归零
- 以为池化可学习
- 忽略边界公式
实际应用
- CNN 下采样
- 全局特征汇总
常见错误
池化过多尺寸归零
以为池化可学习
忽略边界公式
文档来源
07_CNN卷积神经网络详解原始文档
学习资料/deeplearning/07_CNN卷积神经网络详解.md- §9 池化层
- §11 感受野
常见问题
池化是必需层吗?
不是,可用 stride 卷积替代。
AdaptiveAvgPool 的优势?
可指定固定输出尺寸,分类头不写死输入高宽。
推荐学习资料
暂未收录相关资料
参考库不会生成虚假资源或无效外部链接。