news 2026/4/23 16:28:33

day46_Grad-CAM@浙大疏锦行

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
day46_Grad-CAM@浙大疏锦行

Day 46 Grad-CAM 与 Hook 机制@浙大疏锦行

1. Hook 机制 (钩子函数)

概念

Hook 本质上是一种回调函数 (Callback),允许我们在不修改模型原始代码结构的情况下,动态地“监听”或“修改”模型内部中间层的输入、输出或梯度。

作用

  • 调试与可视化:查看中间层特征图(Feature Maps)。
  • 特征提取:提取高层语义特征用于下游任务。
  • 梯度分析:监控或裁剪梯度。
  • 可解释性:如 Grad-CAM 的实现。

PyTorch 中的 Hook 类型

  1. Module Hooks (针对层/模块)
    • register_forward_hook(hook_func): 在前向传播结束后调用。
      • hook_func(module, input, output): 可以获取该层的输入和输出。
    • register_backward_hook(hook_func): 在反向传播结束后调用。
      • hook_func(module, grad_input, grad_output): 可以获取该层的输入梯度和输出梯度。
  2. Tensor Hooks (针对张量)
    • tensor.register_hook(hook_func): 在计算该张量的梯度时调用,常用于修改梯度。

Grad-CAM (Gradient-weighted Class Activation Mapping)

简介

Grad-CAM 是一种可视化技术,用于解释卷积神经网络(CNN)的决策依据。它能生成热力图 (Heatmap),高亮显示图像中对模型预测结果贡献最大的区域(即“模型在看哪里”)。

原理

Grad-CAM 利用梯度信息来衡量最后一个卷积层中每个通道(Feature Map)对目标类别的重要性。

主要步骤:

  1. 前向传播:获取目标卷积层(通常是最后一层卷积)的特征图 (Activations)
  2. 反向传播:计算目标类别分数相对于该层特征图的梯度 (Gradients)
  3. 计算权重:对梯度进行全局平均池化 (Global Average Pooling),得到每个通道的重要性权重α k \alpha_kαk
  4. 加权求和:将权重与对应的特征图相乘并求和。
  5. ReLU 激活:应用 ReLU 函数,只保留对类别有正向贡献的区域(去除负值)。
    L G r a d − C A M c = R e L U ( ∑ k α k c A k ) L_{Grad-CAM}^c = ReLU(\sum_k \alpha_k^c A^k)LGradCAMc=ReLU(kαkcAk)
  6. 可视化:将生成的热力图上采样到原图大小,并叠加显示。

代码实现关键点

  • Hook
    • 使用forward_hook捕获特征图activations
    • 使用backward_hook捕获梯度gradients
  • 反向传播触发
    • 手动构造一个one-hot向量(目标类别为 1,其余为 0)。
    • 执行output.backward(gradient=one_hot)来计算针对特定类别的梯度。

@浙大疏锦行

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/22 8:41:47

LIS2DW12三轴加速度传感器原理图设计,已量产(加速度传感器)

目录 1、核心传感电路:LIS2DW12 的引脚逻辑 2、电源部分:低噪 + 低功耗的双重保障 3、接口细节:I2C 上拉与扩展预留 4、容易忽略的细节 最近在做一款低功耗便携监测设备,选传感模块时一眼盯上了 ST 的 LIS2DW12—— 这颗三轴加速度计的参数简直是为便携场景量身定做:1…

作者头像 李华
网站建设 2026/4/23 7:48:39

Yandex竞价实战指南:5个让ROI翻倍的深度优化技巧

在俄罗斯及东欧市场,Yandex Direct作为核心广告投放平台,其竞价系统优化直接决定企业获客成本与转化效率。据2025年数字营销效果调研报告显示,采用系统化优化策略的广告主平均CTR提升47%,CPA降低32%。本文将拆解从基础设置到高阶策…

作者头像 李华
网站建设 2026/4/23 7:54:11

RTMP推流平台EasyDSS无人机推流直播在生态环境智慧监测中的新实践

在生态文明建设成为国家战略的今天,对广袤森林、湿地、河流、海洋等生态系统的常态化监测,面临着监测范围广、地形复杂、数据实时性要求高等多重挑战。传统的地面巡查和卫星遥感手段,受限于人力与视野,难以满足精细化、动态化的现…

作者头像 李华
网站建设 2026/4/23 7:51:11

Docker Machine 深入解析

Docker Machine 深入解析 引言 Docker Machine 是 Docker 官方提供的一个工具,用于简化 Docker 容器的部署和管理工作。它可以帮助用户在本地计算机、虚拟机或者云服务提供商上创建和管理 Docker 主机。本文将深入解析 Docker Machine 的概念、安装、配置和使用,以帮助读者…

作者头像 李华
网站建设 2026/4/23 7:49:26

构建活的界面:AIGUI底板的动态布局

在 AIGUI(AI Generated UI)的完整技术架构中,我们已经较为详细地介绍过八要素和元件体系,其中交付给用户的个性化、动态化的交互界面,最终是由“底板”来承载。八要素是 AIGUI 的设计语言,元件是这种语言中…

作者头像 李华