Grad-CAM热力图可视化

原理篇

Grad-CAM热力图可视化属于深度学习可解释性的研究范畴。深度学习常被认为是一种黑盒的操作,对于图像分类来说,最终它的依据是什么,我们需要进行可解释性的探究。对于上图中的狗和猫,我们需要特定的类别来绘制出特定的区域。对于狗,热力图上的显示的区域正是狗所在的区域,红色的部分是关注的比较多的部分,蓝色的是关注的少的部分。对于猫,热力图关注的是猫所在的区域。这样就能直观的显示出来对于某些特定类别到底是图像上的哪些区域来导致了这种正确的分类。另外我们也可以改进我们的算法来对所关注的区域有没有更加的契合。

上图是关于动作的分类,左边是刷牙,右边是锯树。对于刷牙来说,我们需要关注的是牙刷和口所在的区域;对于锯树来说,我们需要关注的是电锯和人头部所在的区域。

CAM(Class Activation Mapping类激活图)

在Grad-CAM之前,就有CAM的研究,它是来自于麻省理工学院(MIT)的研究人员。

在CAM之中就可以对于图片分类所关注的图像所在的区域进行高亮,比如狗的头部,母鸡的头部,杠铃两端的杠铃片,钟楼上的钟都能够进行高亮。

CAM需要修改原始网络,用全局池化层替换全连接层,并重新训练模型。在上图中我们可以看到,在最后所得到的feature map的多个通道进行全局池化,每一个通道的特征图会变成一个值,如绿色的特征图会对应绿色的神经元,红色的特征图对应红色的神经元,蓝色的特征图对应蓝色的神经元。然后进行分类,分类的时候可以得到相应的权重W1、W2、Wn。然后对于特征图的每个通道进行加权求和,所用的权重就是之前得到的W1、W2、Wn等。进行相加以后,由于最后的特征图一般会小于原始图像,所以还需要一个上采样的操作,上采样到原图尺寸并且和原图叠加就可以得到类激活图CAM。

Grad-CAM

Grad-CAM更加的灵活方便,不需要全局池化层,也不需要重新训练网络。

{{o.name}}
{{m.name}}

猜你喜欢

转载自my.oschina.net/u/3768341/blog/5572249
今日推荐