understandable-machine-intelligence-lab/Quantus

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

Quantus – 신경망 설명을 평가하기 위한 툴킷

무엇인가요 Quantus는 연구자와 실무자가 신경망 설명 방법(XAI 방법이라도 불림)의 품질을 측정하는 데 도움을 주는 오픈소스 파이썬 라이브러리입니다. 35개 이상의 정량적 지표를 6가지 범주(신뢰성, 강건성, 국소화, 복잡성, 무작위화/민감도, 공리적)로 분류하며, 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
}

관련

  • 프로젝트
  • 프로젝트
  • 프로젝트
  • 프로젝트
  • 프로젝트