PAIR-code/what-if-tool

Source code/webpage/demos for the What-If Tool

해결하는 문제

What-If Tool (WIT)은 "블랙박스" 머신러닝 모델을 분석하고 이해하기 위한 시각적 인터페이스를 제공합니다. 사용자는 코드를 작성할 필요 없이 데이터셋에서 모델이 어떻게 작동하는지 탐색할 수 있어, 모델 성능 디버깅, 공정성 조사, 특정 특성이 예측에 미치는 영향을 더 쉽게 파악할 수 있습니다.

작동 방식

WIT는 TensorBoard, Jupyter 또는 Colab notebooks의 플러그인으로 통합됩니다. 학습된 ML 모델(TensorFlow Estimators, TensorFlow Serving, AI Platform Prediction 또는 사용자 지정 Python 예측 함수를 통해)과 예제 데이터셋에 연결됩니다.

사용자는 다음과 같은 방법으로 데이터 및 모델과 상호 작용할 수 있습니다:

  • 시각화 (Visualization): Facets Dive를 사용하여 특성이나 추론 결과별로 데이터셋을 구성하고 슬라이스합니다.
  • 반사실 (Counterfactuals): 데이터셋에서 결과가 다르게 분류된 가장 유사한 예제를 찾아 무엇이 결과를 바꾸었는지 확인합니다.
  • 수동 편집 (Manual Editing): 브라우저에서 특정 데이터 포인트의 특성 값을 편집하고 즉시 추론을 다시 실행하여 예측이 어떻게 변하는지 확인할 수 있습니다.
  • 성능 분석 (Performance Analysis): ROC 곡선과 혼동 행렬을 생성하며, 이를 특정 특성(예: 성별)별로 슬라이스하여 데이터의 다양한 하위 집합에 대한 공정성과 성능을 분석합니다.
  • 기여도 (Attribution): 특성 기여도 값(예: SHAP 또는 Integrated Gradients에서 도출)을 시각화하여 어떤 특성이 예측에 가장 큰 영향을 미쳤는지 보여줍니다.

대상 사용자

  • ML 연구원 및 개발자: 이상한 결과를 디버깅하고 모델의 공정성을 조사하기 위해.
  • 비기술적 이해관계자: 자신의 데이터를 사용하여 데이터셋에 대한 모델 성능을 이해하기 위해.
  • 일반 사용자: 대화형 탐색을 통해 머신러닝에 대해 배우기 위해.

주요 특징

  • 노코드 인터페이스: 코드를 작성하지 않고도 모델과 데이터를 시각적으로 탐색.
  • 반사실적 탐색: 다른 분류 결과를 가진 가장 가까운 예제와 클릭 한 번으로 비교.
  • 공정성 도구: 편향을 감지하기 위한 슬라이스 가능한 ROC 곡선 및 혼동 행렬.
  • 대화형 편집: 실시간으로 데이터 포인트를 편집하여 모델 출력의 즉각적인 변화 확인.
  • 모델 비교: 동일한 입력 데이터에 대해 두 가지 다른 모델의 결과를 비교하는 기능.

관련

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