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
}
相關
- 專案
- 專案
- 專案
- 專案
- 專案