understandable-machine-intelligence-lab/Quantus

[JMLR 2023] Quantus is an eXplainable AI toolkit for responsible evaluation of neural network explanations

Quantus – 用于评估神经网络解释的工具包

是什么 Quantus 是一个开源 Python 库,帮助研究人员和实践者 衡量 神经网络解释方法(也称为 XAI 方法)的质量。它提供了 35 个以上的定量指标,分为六个类别(忠实性、鲁棒性、定位性、复杂性、随机化/敏感性、公理性),并支持 PyTorch 和 TensorFlow 模型。

为何重要 直观地解释模型预测很容易,但判断哪种解释方法真正反映了模型的推理过程却很困难。Quantus 通过将定性的视觉检查转化为可复现的数值,自动化了这一决策过程,使得方法比较、敏感性分析以及可被他人复现的结果报告成为可能。

主要特性

  • 35+ 个即用型指标:覆盖 XAI 研究中使用的主流评估维度。
  • 框架无关:支持 PyTorch 或 TensorFlow 模型,并兼容 Captum、tf-explain 和 Zennit 等主流解释库。
  • 多模态支持:目前支持图像、时间序列和表格数据,NLP 支持正在计划中。
  • 批量实现:使现有忠实性指标的处理速度提升最高达 12 倍。
  • 可扩展:可添加新指标,且项目持续开发中(例如:EfficientMPRT、SmoothMPRT)。
  • 文档与教程:提供 Colab 笔记本、Binder 启动链接,以及 ReadTheDocs 上的详细文档。
  • 安装选项:PyPI 提供轻量级核心包;可选扩展安装所需深度学习框架(quantus[torch]quantus[tensorflow])。

典型工作流程

  1. 准备输入 – 训练好的模型、数据批次(x_batch)、真实标签(y_batch)以及要评估的解释(a_batch)。
  2. 实例化指标 – 例如从 quantus.metrics.faithfulness 中导入 FaithfulnessCorrelation()
  3. 运行指标 – 调用 metric.evaluate(model, x_batch, a_batch, y_batch) 获取数值评分。
  4. 比较 – 对多个解释方法和指标重复执行;使用库内建绘图工具可视化结果。

快速上手

pip install "quantus[torch]"   # 或 "quantus[tensorflow]"

然后按照 README 中链接的 Colab 教程,使用预训练的 LeNet 模型进行分步示例。

社区 该项目由 Understandable Machine Intelligence Lab 维护。欢迎通过 GitHub 和 Discord 社区贡献代码。

引用 如果使用 Quantus,请引用配套的 JMLR 论文:

@article{hedstrom2023quantus,
  author = {Anna Hedström et al.},
  title  = {Quantus: An Explainable AI Toolkit for Responsible Evaluation of Neural Network Explanations and Beyond},
  journal= {JMLR},
  year   = 2023
}

相关

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