Grad-CAM可视化CNN决策依据
解释Grad-CAM(Gradient-weighted Class Activation Mapping)的工作原理及其在CNN可解释性中的应用。
回答
编译有声
Grad-CAM (Selvaraju et al., 2017) 生成热力图,显示图像哪些区域对CNN的某个分类决策贡献最大。
工作原理:
- 前向传播直至最后一个卷积层,获取特征图
A^k(k个通道) - 计算目标类别c对特征图
A^k的梯度(求偏导) - 全局平均池化梯度,得到通道权重:
α_k^c = 1/Z * ΣΣ ∂y^c/∂A^k_ij - 对特征图加权求和:
L^c_Grad-CAM = ReLU(Σ α_k^c * A^k) - 将热力图插值到原图大小并叠加
关键设计:
- 使用ReLU只保留正贡献区域(对类别有促进作用的像素)
- 使用最后一层卷积(保留空间信息+高层语义)
应用:
- 模型调试:发现模型是否依赖背景或伪影
- 医学诊断定位病灶区域
- 与文字结合:visual question answering中定位关键区域
变体:Grad-CAM++ (更精确的定位)、Score-CAM (消除梯度噪声)、Eigen-CAM (无梯度方法),适用于Transformer的Chefer-CAM。