frgfm/torch-cam

Class activation maps for your PyTorch models (CAM, Grad-CAM, Grad-CAM++, Smooth Grad-CAM++, Score-CAM, SS-CAM, IS-CAM, XGrad-CAM, Layer-CAM, Finer-CAM, LeGrad, RefineCAM)

解决的问题

TorchCAM 提供了一种简单的方法,用于可视化和探索 PyTorch 模型中卷积层的类别特定激活。通过生成热力图,突出显示模型在做出特定预测时关注图像的哪些部分,帮助开发者调试出人意料的分类结果。

工作原理

该库使用 PyTorch 的钩子机制,无需修改模型架构即可获取内部模型信息。CAM 提取器作为模型的包装器;当模型进行推理时,提取器会捕获必要的激活。用户随后指定一个类别索引以生成激活图,该图可以作为原始热力图可视化,或叠加在原始图像上。

适用人群

专为使用 PyTorch 基础计算机视觉模型并需要解释模型决策过程的研究人员和开发者设计。

主要亮点

  • 丰富的方法库:实现了多种 CAM 技术,包括 Grad-CAM、Grad-CAM++、Score-CAM、Layer-CAM 以及适用于 Vision Transformers 的 LeGrad。
  • 无缝集成:使用钩子机制作为现有 PyTorch 模型的包装器,几乎无需修改代码。
  • Hugging Face Space:包含一个实时演示应用,用于测试不同的 CAM 方法。
  • 性能基准测试:提供各种方法在分类置信度和延迟开销方面的详细指标。
  • 广泛兼容性:支持标准卷积层、Vision Transformers、3D/视频数据以及批量输入。

相关

  • 项目
  • 项目
  • 项目
  • 项目
  • 项目