深度学习:池化(Pooling)

池化(Pooling)操作在卷积神经网络中用于降低特征图的尺寸,减少计算量,并提供某种程度的平移不变性。我们以最常用的最大池化(Max Pooling)为例,来解释池化操作之后的特征图大小计算。
假设有以下参数:
  • 输入特征图大小: ( H i n × W i n ) ( H{in} \times W{in} ) (Hin×Win)
  • 池化窗口大小: ( K × K ) ( K \times K ) (K×K)
  • 步幅:( S )
  • 填充:( P )
池化之后的输出特征图大小可以用以下公式计算:

H o u t = ⌊ H i n − K + 2 P S ⌋ + 1 H{out} = \left\lfloor \frac{H{in} - K + 2P}{S} \right\rfloor + 1 Hout=⌊SHin−K+2P⌋+1
W o u t = ⌊ W i n − K + 2 P S ⌋ + 1 W{out} = \left\lfloor \frac{W{in} - K + 2P}{S} \right\rfloor + 1 Wout=⌊SWin−K+2P⌋+1

示例

假设输入特征图的大小是 ( 4 × 4 ) (4 \times 4) (4×4),池化窗口大小是 (2 \\times 2),步幅是 (2),无填充(即 (P = 0))。

参数:

  • ( H i n = 4 ) ( H_{in} = 4 ) (Hin=4)
  • ( W i n = 4 ) ( W_{in} = 4 ) (Win=4)
  • ( K = 2 )
  • ( S = 2 )
  • ( P = 0 )
计算:

H o u t = ⌊ 4 − 2 + 0 2 ⌋ + 1 = ⌊ 2 2 ⌋ + 1 = 1 + 1 = 2 H{out} = \left\lfloor \frac{4 - 2 + 0}{2} \right\rfloor + 1 = \left\lfloor \frac{2}{2} \right\rfloor + 1 = 1 + 1 = 2 Hout=⌊24−2+0⌋+1=⌊22⌋+1=1+1=2
W o u t = ⌊ 4 − 2 + 0 2 ⌋ + 1 = ⌊ 2 2 ⌋ + 1 = 1 + 1 = 2 W{out} = \left\lfloor \frac{4 - 2 + 0}{2} \right\rfloor + 1 = \left\lfloor \frac{2}{2} \right\rfloor + 1 = 1 + 1 = 2 Wout=⌊24−2+0⌋+1=⌊22⌋+1=1+1=2

因此,池化之后的输出特征图大小是 ( 2 × 2 ) (2 \times 2) (2×2)。

具体示例

假设输入特征图如下:

1 3 2 4 5 6 7 8 9 2 4 6 3 1 0 5 \begin{bmatrix} 1 & 3 & 2 & 4 \\ 5 & 6 & 7 & 8 \\ 9 & 2 & 4 & 6 \\ 3 & 1 & 0 & 5 \end{bmatrix} 1593362127404865

最大池化操作的结果将是:

\[ 6 8 9 6 \] \] \[ \\begin{bmatrix} 6 \& 8 \\\\ 9 \& 6 \\end{bmatrix} \] \[\[6986\]

步骤:
  • 取左上角的 ( 2 × 2 ) (2 \times 2) (2×2) 区域 ( 1 3 5 6 ) (\begin {bmatrix} 1 & 3 \\ 5 & 6 \end{bmatrix}) (1536),最大值是6。
  • 移动窗口至右上角 ( 2 4 7 8 ) (\begin{bmatrix} 2 &4 \\ 7 & 8 \end{bmatrix}) (2748),最大值是8。
  • 移动窗口至左下角 ( 9 2 3 1 ) (\begin{bmatrix} 9 &2 \\ 3 & 1 \end{bmatrix}) (9321),最大值是9。
  • 移动窗口至右下角 ( 4 6 0 5 ) (\begin{bmatrix} 4 & 6 \\ 0 & 5 \end{bmatrix}) (4065),最大值是6。
最终得到输出特征图:

6 8 9 6 \] \\begin{bmatrix} 6 \&8 \\\\ 9 \& 6 \\end{bmatrix} \[6986

通过以上计算和示例,明确了池化操作之后的特征图大小计算方法和具体操作过程。

相关推荐
冬奇Lab11 小时前
Agent 系列(23):Web Agent——让 Agent 真正浏览网页
人工智能·llm·agent
冬奇Lab11 小时前
每日一个开源项目(第135篇):codebase-memory-mcp - 给 AI Agent 一张代码库的知识图谱
人工智能·开源·llm
IT_陈寒14 小时前
JavaScript的闭包把我坑惨了,说好的内存会自动回收呢?
前端·人工智能·后端
jooloo18 小时前
Codex 间歇性 400 之谜:一条对话里,它为什么有时候用 chat/completions,有时候切到 responses?
人工智能
用户51914958484518 小时前
OpenSSL PKCS#12 PBMAC1 堆栈缓冲区溢出漏洞 (CVE-2025-11187) 分析与验证
人工智能·aigc
用户51914958484519 小时前
HP Sound Research SECOMNService 权限提升漏洞利用工具
人工智能·aigc
用户0183493016919 小时前
给 AI 智能体能力包一层 BFF,前端只调一个接口
人工智能
这token有力气1 天前
Function Calling 格式漂移
人工智能