概念出处
原文链接这个概念最开始来自于这篇论文。global averaging pooling简称为GAP,所以下文用GAP来代替,如果下文有解释不清楚或者有误的地方,还望指正。
Connected Layer和GAP的联系
Connected Layer是CNN分类网络的重要组成部分,而且基本上全连接层之后会加上激活函数(activation function)进行分类,而且全连接层的作用是将最后一层卷积得到的feature map stretch变为向量,而且对这个向量进行降第维度,最终输入到激活函数,得到每个类别的得分。
首先对于CNN卷积神经网络大家可能有一个初步的了解,而且最后一层基本为全连接层,但是在这篇文章里面开始打算运用GAP来代替,原因如下
首先,connected layer 具有较多的参数,而且最后一层输出比较重要,使得整个模型过拟合的可能性较高
第二,GAP层没有参数用于优化,在一定程度上减少或避免了过拟合。
第三,GAP通过将feature map和分类问题中的类别之间进行对应,效果比Fully Connected Layer更好
global average pooling 与average pooling 的差别
主要区别是在pooling窗口区域大小,GAP对于整个feature map进行取平均,average pooling在feature map中的一个子区域取平均值。而且在这个子区域里面滑动。(这一点有点不理解滑动是什么意思)
GAP的意义和作用
- 对网络进行正则化处理,GAP层没有参数用于优化,在一定程度上减少或避免了过拟合。
2.== 对通道进行处理==,即为最后GAP输出的依旧跟Connected Layers一致,最后有几个分类,GAP最后全局池化的结果也为几个类别。而且直接赋予了每个channel的实际意义。 - GAP通过将feature map和分类问题中的类别之间进行对应,效果比Fully Connected Layer更好