跳到主内容
快讯直播
AI智模界
AI 词典

全局平均池化:用一个平均数替掉全连接层

一句话定义

全局平均池化(Global Average Pooling,GAP)就是把卷积网络输出的每张特征图“整张取一个平均数”——把一个通道里 H×W 个数字压成 1 个数字,最后得到一个长度等于通道数的向量,用来替代分类头里的全连接层。

它是怎么做的

特征图的形状是 C×H×W:C 个通道,每个通道是 H 行 W 列的一张响应图。GAP 对每个通道单独操作,把这 H×W 个数加起来除以 H×W,得到一个平均值;C 个通道得到 C 个数,拼成 C 维向量,直接送进 softmax 做分类。这个层没有任何需要学习的参数。

打个比方:一个班每科一份成绩单,每个通道是一个科目,H×W 是班上的几十个学生。全连接层相当于给“每个学生的每道题”都单独配一个可学习权重,参数爆炸,还容易把某几个学生的偶然高分当成规律(过拟合)。GAP 相当于只算每科平均分,再根据各科平均分判断这是文科班还是理科班——要判断“班级风格”,平均分往往就够了。

和相邻概念的区别

和普通平均池化(Average Pooling)比:普通池化有窗口和步长,比如 2×2 窗口,输出仍然是 H/2 × W/2 的图,空间结构还在;GAP 的“窗口”就是整张特征图,输出不再有高和宽。

和全局最大池化(Global Max Pooling)比:一个取平均、一个取最大。最大池化更像在问“这个特征出现过没有、最强有多强”,平均池化更像在问“整体上这个特征有多普遍”。

和全连接层(Fully Connected, FC)比,核心差别是位置:

对比项全连接层(FC)全局平均池化(GAP)
参数量与 C×H×W 成正比,通常很大0
位置信息每个位置权重不同,知道“哪里响应强”所有位置权重相同(1/(H×W)),被平均掉
输入尺寸固定任意,输出恒为 C 维
适合的任务需要空间信息的下游任务只关心“有什么”的分类任务

对实际工作的意义

GAP 由 Network in Network 这类工作推广开来,如今是分类网络的标配头:省参数、抗过拟合,还让模型能接受任意分辨率输入,是全卷积网络(FCN)思路的关键一环。

但它的代价恰恰是丢位置。分类只关心“图里有没有猫”,猫在左上角还是右下角无所谓,GAP 很合适;检测、分割、关键点定位要回答的正是“在哪里”,把带空间维度的结构换成 GAP,等于主动把坐标信息平均掉,精度通常会明显下降。这类任务一般保留特征图的高宽(空洞卷积、上采样、特征金字塔等),或者额外引入位置编码、坐标注意力把位置信息找回来。

所以换网络头之前先问一句:这个任务需不需要知道“在哪”。需要,就别随手换成 GAP。

AI 生成本文由 AI 基于公开信息自动生成,仅供参考。