CNN可视化工具 CAM的理解

一、Eigen-CAM 理解分析

Eigen-CAM来自论文《Eigen-CAM: Class Activation Map using Principal Components》,Eigen-CAM的流程如下图:

将特征从特征空间拉出来后,库如 yolov8s-cls,拉出是512x7x7的特征层,然后将改feature reshape X 为 49x512,49是空间特征,512是通道特征,然后将49x512通过奇异值分解后:
X=UΣVT X = U \Sigma V^T X=UΣVT
U∈R49×49,Σ∈R49×512,V∈R512×512 U \in \mathbb{R}^{49 \times 49} , \Sigma \in \mathbb{R}^{49 \times 512} , V \in \mathbb{R}^{512 \times 512}U∈R49×49,Σ∈R49×512,V∈R512×512

U(左奇异向量):U∈R49×49U \in \mathbb{R}^{49 \times 49}U∈R49×49 中的每一列 是ui∈R49u_i \in \mathbb{R}^{49}ui∈R49 表示一种空间组合方式

V(右奇异向量):V∈R512×512V \in \mathbb{R}^{512 \times 512}V∈R512×512 中的每一列 是ui∈R512u_i \in \mathbb{R}^{512}ui∈R512 表示一种通道组合方式

X=∑i=149σiuiviT X=\sum_{i=1}^{49} \sigma_i u_i v_i^T X=i=1∑49σiuiviT
uiu_iui 是 49 x 1, viTv_i^TviT 是 1 x 512, 相乘正好是 49 x 512大小,即第i 个奇异值表示,通道方向 viv_ivi 和 空间模式 uiu_iui,共同构成的这个结构模式的强度。

再说回 Eigen-CAM,是将 原始特征层 49x512 投影到 v0v_0v0这个向量上,得到一个49x1的向量,我觉得可以这样理解:
u0u_0u0 和 v0v_0v0 两个组合起来,在加上 奇异值,构成了绝大部分的 原始特征(最佳的rank-1近似),也就是,特征空间按照v0v_0v0这种方式进行分布的时候,对应的空间特征的分布响应也很大,因此,直接将原始特征投影到 v0v_0v0,得到想要的空间分布情况。

二、Eigen-CAM 实验分析

对yolov8n和yolov8m目标检测器进行eigen-cam的分析,使用的权重为预训练权重yolov8n.pt和yolov8m.pt

从21层到第4层,对各层的输出,进行Eigen-CAM可视化,左边是yolov8m,右边是yolov8n

分析:

1、首先,有一点需要明确,Eigen-CAM不能用来解读决策,因为Eigen-CAM在分析的时候,不依赖类别和loss,Eigen-CAM展示的是当前特征的第一主成分,偏向大面积区域,高频纹理,强变化区域,这些特征都让特征的方差变化很大,所以Eigen-CAM展示的是最大方法的方差,不是目标语义,或者注意力图,所以在一些任务中,经常比目标更亮,不同层直接也没有可比性,比较适合分析特征,不适合解释决策。

2、不论是yolov8m ,还是yolob8n,输入640x640,每层的感受野相同

Stage 层域 感受野
1 4~5 35 px
2 6~8 75~110 px
3 9~12 200~350 px
4 13~16 500~900 px
5 17~21 1000~1500 px

3、以yolov8m为主要,4,5层感受野比较小,因此是草地,6,7,8,增大感受野后,可以看到狗头了,第9层是SPPF,第10层是上采样,所以,第9层和第10层,可视化结果是一样的,第11层,是将第6层的结果和第10层的输出concat出来。

4、会发现yolov8m学习到的狗头的特征,整体比yolv8n学习的狗头特征明显高亮,且高亮点很多,yolov8n学习的狗头特征,特点是稀疏、高亮点弱,不密集;yolov8m学习的狗头特征,高亮点很密集

相关推荐
像风一样自由20205 分钟前
20.Milvus常见问题检索不到维度错误和数据一致性
人工智能·大模型·milvus
现代野蛮人15 分钟前
【深度学习实验】—— 基于 LSTM 与 Optuna 调参的丙型肝炎预测
人工智能·深度学习·lstm
支支დ21 分钟前
VO by Vercel 前端特定优势:为什么它是构建 AI 应用的新范式
前端·人工智能
ZGIAI37 分钟前
ZGI 让那些"等你去处理"的事,真正跑起来
人工智能·架构
ZGIAI1 小时前
ZGI:别再做Agent Demo了,先问问它在业务里能不能撑过下周三
人工智能·架构
香芋芋圆1 小时前
AI 冲击内卷之下,普通前端如何破局?WebGIS—— 低门槛突围赛道
前端·javascript·人工智能·学习·职场发展
m0_614523551 小时前
完整教程|输入一句描述,能不能直接生成一段可以继续剪辑的视频:写结构化描述到生成短样片
人工智能·音视频
stormzhangV1 小时前
AGI 时代终于来了!
人工智能·openai
清风百草2 小时前
【05】AI辅助文档管理:开发者的效率革命
人工智能·ai辅助文档管理·开发者的效率革命
甲维斯2 小时前
Gemini锐评GPT6:我要泼冷水扒底裤!
人工智能