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学习的狗头特征,高亮点很密集

相关推荐
Jmayday2 小时前
机器学习基本理论
人工智能·机器学习
ZhengEnCi2 小时前
01b-上下文向量与信息瓶颈
人工智能
王_teacher2 小时前
机器学习 矩阵求导 完整公式+严谨推导
人工智能·线性代数·考研·机器学习·矩阵·线性回归
码以致用2 小时前
DeerFlow Memory架构
人工智能·ai·架构·agent
ting94520002 小时前
从零构建大模型实战:数据处理与 GPT-2 完整实现
人工智能
学点程序2 小时前
Manifest:帮个人 AI Agent 降低模型成本的开源路由器
人工智能·开源
可观测性用观测云2 小时前
观测云 x AI Agent:运维智能化的范式跃迁实践
人工智能
数数科技的数据干货2 小时前
ThinkingAI携手华为云,共建企业级AI Agent平台Agentic Engine
人工智能·ai·华为云·agent
人工智能AI技术2 小时前
春招急救:7天面试突击方案
人工智能
2603_954708312 小时前
如何确保微电网标准化架构设计流程的完整性?
网络·人工智能·物联网·架构·系统架构