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])。
典型工作流程
- 准备输入 – 训练好的模型、数据批次(
x_batch)、真实标签(y_batch)以及要评估的解释(a_batch)。 - 实例化指标 – 例如从
quantus.metrics.faithfulness中导入FaithfulnessCorrelation()。 - 运行指标 – 调用
metric.evaluate(model, x_batch, a_batch, y_batch)获取数值评分。 - 比较 – 对多个解释方法和指标重复执行;使用库内建绘图工具可视化结果。
快速上手
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
}
相关
- 项目
- 项目
- 项目
- 项目
- 项目