赞
踩
一般情况下,卷积层用于提取二维数据如图片、视频等的特征,针对于具体任务(分类、回归、图像分割)等,卷积层后续会用到不同类型的网络,拿分类问题举例,最简单的方式就是将卷积网络提取出的特征(feature map)输入到softmax全连接层对应不同的类别。首先,这里的feature map是二维多通道的数据结构,类似于三个通道(红黄绿)的彩色图片,也就是这里的feature map具有空间上的信息;其次,在GAP被提出之前,常用的方式是将feature map直接拉平成一维向量(下图左),但是GAP不同,是将每个通道的二维图像做平均,最后也就是每个通道对应一个均值(下图右)。
GAP相较于全连接的优势:
但同时GAP也有使训练收敛速度变慢的缺点。
长期以来,大家都希望可以解释神经网络这个“黑盒”,尤其是深度学习在图像领域大放异彩,解释性也越来越被广泛关注。Class Activation Mapping (CAM)论文发表于2016年CVPR,是针对图像分类问题的一种经典的可解释方法,而其本身也和全局平均池化有千丝万缕的联系。这里先看看CAM的效果,下图第一行是刷牙和砍树的图片,第二行是分类的解释——高亮的区域很好地匹配了刷牙和砍树行为的位置,换句话说,证明神经网络和我们人类在判断这些图片的时候的关注点是一致的!
那么CAM是怎么实现的呢?
举个例子,比如feature map是5个通道,那么经过GAP之后变成了一维向量x,且一个元素对应一个通道,所以x是5×1的向量;然后分类层假如我们要分两类,那么就需要2×5的权重矩阵W,W的第一行和x对应元素相乘并相加(內积),就得到了类别0的概率:
同理有类别1的概率(简便起见,图上省略了softmax激活函数,但实际上概率要经过softmax得到。)从上面式子可以看出,W第一行的哪个权重越大,代表这个通道的均值对类别-0结果的贡献/重要性越大,而这个通道的均值又是来自于feature map的对应通道,那么是不是说这个权重也就代表了二维feature map对结果的重要性呢?到这里CAM的核心思想就有了,那么再来看论文原文的图片就非常容易理解了。上面的式子是对GAP之后的均值进行加权得到分类的概率,而CAM是把GAP之前的feature map进行加权得到了分类的解释.
而对于图像分类的可解释性方法还有很多,比如Grad-CAM, Grad-CAM++等,本期不一一展开讨论。
参考文献
[1] Network in Network.
[2] Learning Deep Features for Discriminative Localization.
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。