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 中的卷积神经网络(CNN)和视觉 Transformer(ViT)提供了简单的方法来可视化和分析特定类别的激活。通过突出显示模型在做出特定预测时关注图像的哪些部分,帮助开发者调试出人意料的分类结果。

工作原理

该库使用 PyTorch 的钩子机制来获取内部激活,无需用户修改模型架构。支持 12 种不同的类激活图(CAM)方法,包括 Grad-CAM、Layer-CAM 和 LeGrad,可生成热力图并叠加在原始输入图像上。还内置了忠实度度量(如置信度平均下降和上升),用于衡量 CAM 反映模型决策过程的准确性。

适用人群

专为使用计算机视觉模型的 PyTorch 用户设计,适用于需要解释模型预测、执行错误分析以及验证视觉线索重要性的场景。

主要亮点

  • 丰富的方法库:通过单一统一的 API 支持 12 种 CAM 方法。
  • 广泛的架构支持:兼容 CNN 和视觉 Transformer(ViT)。
  • 忠实度度量:提供工具以定量评估激活图的可靠性。
  • 适用于智能代理:explain() 函数生成可由人类或代码代理验证的证据包。
  • 轻量依赖:仅需 PyTorch、NumPy、Pillow 和 Matplotlib。

相关

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