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
}

相關

  • 專案
  • 專案
  • 專案
  • 專案
  • 專案