Notice
Recent Posts
Recent Comments
Link
«   2024/09   »
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30
Archives
Today
Total
관리 메뉴

잡동사니 블로그

[논문 읽기] Why Should I Trust You?": Explaining the Predictions of Any Classifier 본문

공부용

[논문 읽기] Why Should I Trust You?": Explaining the Predictions of Any Classifier

코딩부대찌개 2023. 9. 12. 20:39

https://arxiv.org/abs/1602.04938

 

"Why Should I Trust You?": Explaining the Predictions of Any Classifier

Despite widespread adoption, machine learning models remain mostly black boxes. Understanding the reasons behind predictions is, however, quite important in assessing trust, which is fundamental if one plans to take action based on a prediction, or when ch

arxiv.org

Abstract

  • 대부분의 ML 모델은 Black box model
    • Black box model : 특정 시스템이나 모델의 내부 동작 과정을 이해하기 어렵거나 설명하기 어려운 모델 ↔ White box model
  • 모델에 대한 trust(신뢰)를 얻기 위해 이유를 아는 것은 매우 중요함.
  • 본 논문에서는 예측을 중심으로 해석 가능한 모델을 함께 학습함으로써 모델을 설명하는 기법인 LIME을 제안함.

Introduction

  • 사용자가 모델이나 예측을 신뢰하지 않으면 사용하지 않을 것.
  • trust(신뢰)는 두가지로 정의함
    • trusting a prediction(예측에 대한 신뢰)
      • 의료진단에서 머신러닝을 사용했을 경우, 결과가 안좋을 수도 있으며 맹목적인 믿음으로 예측을 실행 할 수 없음. 즉, 근거가 있어야함.
    • trusting the model(모델에 대한 신뢰)
      • 모델을 배포하기 전에 실제 데이터에서도 작동을 잘할 것이라는 확신이 있어야함. 왜냐하면 실제 데이터는 크게 다른 경우가 많아 평가 지표가 제대로 나타낼 수 없는 경우도 많음.
  • 본 논문에서는 trusting a prediction에 대해 설명을 추가하여 trusting a prediction를 할 수 있게함.
  • LIME : 해석가능한 모델을 근하여 회귀 또는 분류 문제에서 설명을 할 수 있게 하는 알고리즘
  • SP-LIME : trusting the model을 해결하기 위해 대표적인 Instance(인스턴스) 집합을 선택함

The case for explanations

  • explaining a prediction은 모델과 예측 사이에 관계에 대해 이해(텍스트 또는 시각적 아티팩트)를 제시하는 것을 의미.

  • 모델이 환자는 독감에 걸렸다고 예측하였을 때, LIME은 예측으로 이어진 환자의 독감에 대해 이유를 설명함.
  • 재채기와 두통은 독감에 대한 예측에 기여한 반면, 안피곤함은 독감이라는 예측에 대해 반하는 증거.
  • 이처럼 이해하기 쉬운 설명이 있다면 모델의 도움을 받아 결정을 내리는데 훨신 유리함.

  • 무신론자와 기독교를 분류하는 문제에서 알고리즘2는 정확도가 높은 반면에 클래스를 구분할 때 비교적 필요없는 단어의 중요도가 높게 나왔으며 알고리즘1은 정확도는 떨어지지만 GOD이라는 확실한 단어를 통해 구분 하였음.
  • 이처럼 다양한 모델을 비교하여 모델을 선택할 경우에 모델에 대한 신뢰성을 올릴 수 있음.

Desired characteristics for explainers

  • 설명에 대해 몇가지 특성을 설명함
    • 설명을 위한 필수적인 기준은 해석 가능해야 한다는 것, 즉 입력 변수와 반응 사이의 질적 이해를 제공해야 한다는 것.
    • local fidelity(지역적 충실도)? 모델에 대해 설명이 의미가 있을려면 최소한 지역적으로는 충실해야함. 그러나 local fidelity가 global(전역적) fidelity를 대변하지는 않음. global fidelity를 해결 하는 것은 복잡한 과제로 남아있음.
    • 어떤 모델이든 설명 가능해야 함.
    • 정확도 만으로는 모델을 평가할 수 없기 때문에 모델에 대한 전체적인 관점을 제공하는것이 중요함

Local interpretable model-agnostic explanations

  • LIME의 전체적인 목표는 기존의 분류기에 대해 지역적으로 신뢰(locally faithful)를 보이는 해석 가능한 표현(interpretable representation)들을 통해 해석 가능한 모델을 정의함.

Interpretable data representations

  • features(특성)과 해석 가능한 데이터 표현을 구분하는 것이 중요함.
  • 해석 가능한 설명은 모델이 사용하는 실제 features에 관계없이 인간이 이해할 수 있는 표현을 사용할 필요가 있습니다.
    • 예를 들어 Classification(분류)와 같은 features는 “word embeddings”(워드 임베딩)과 같이 표현할 수 있지만 해석 가능한 설명은 이진으로 표현 가능(존재 한다 or 안한다)
  • 즉 $x∈\mathbb{R}^d$ 로 표현되는 표현을 같이 해석 가능한 표현으로 하기 위해 $x'∈\left\{0,1\right\}^{d'}$ 를 사용함.

Fidelity-interpretability trade-off

  • $g ∈ G$을 선언해보자
  • 여기서 G는 해석가능한 모델들인 Linear models, Decision trees와 같은 것
  • g는 해석 가능한 요소들에 대한 ‘존재 or 부재’를 제공하는 모델
  • $Ω(g)$는 (해석 가능성과 반대로) 복잡성의 척도
    • 예를 들어 Decision tree에서의 depth(깊이)나 Linear model 0이 아닌 가중치의 개수 등
  • $f : \mathbb{R}^d → \mathbb{R}$ 에서 $f(x)$는 특정 class가 속할 확률(또는 binary형태 표시)
  • $π_x(z)$ z와 x사이의 유사성 척도로 z와 x가 근접할수록 값이 커짐
  • $$ ξ(x) = \underset{g∈G}{argmin}\quad L(f, g, π_x) + Ω(g) $$
  • 즉 local fidelity와 interpretability(해석가능성)을 모두 보장 하려면 $L(f, g, π_x)$를 최소화 하는 동시에 모델 복잡성의 척도인 $Ω(g)$도 사람이 해석할 수 있을 만큼 낮게 유지 해야함.

Sampling for local exploration

  • 모델에 구애 받지 않고 해석을 하기 위해 f에 대한 어떤 가정도 하지 않고 $L(f, g, π_x)$를 최소화 하려고 함.
  • 따라서 f의 local behavior(행동)?을 학습하기 위해 가중치 $π_x$가 부여된 샘플을 그려 $L(f, g, π_x)$를 근사화함.
  • 이를 위해 $x'$ 주변의 0이 아닌 요소들 무작위로 그려서 샘플링함.
  • 샘플을 통해 $z∈R^d$를 통해 $f(z)$를 얻을 수 있음.
  • 샘플의 데이터 세트 $\mathcal{Z}$ 가 주어지면 $\underset{g∈G}{argmin}\quad L(f, g, π_x) + Ω(g)$를 최적화하여 $ξ(x)$를 얻을 수 있음.

  • LIME은 $f$를 사용하여 $x$(red cross)근처($π_x$로 인해 높은 가중치를 가짐)과 x에서 멀리 떨어져 있는($π_x$에서 낮은 가중치) Instance를 모두 샘플링함.
    • 여기선 가중치를 크기로 설정
  • 모델이 전역적으로 설명하기 어렵지만 점선은 지역적으로는 충분한 설명이 가능함.

Sparse linear explanations

  • G는 $g(z') = w_g·z'$와 같은 선형 모델로 놓음.

$$ L(f, g, π_x) = \sum\limits_{z,z'∈Z} π_x(z) (f(z) - g(z'))^2 $$

  • 위와 같이 정의된 local weight square loss를 사용함.
  • $π_x(z) = exp(−D(x, z)^2/σ^2)$를 exponential kernel(지수 커널)로 정의하고 거리함수 D와 넓이 σ를 사용
    • D에서 텍스트는 Cosine distance(코사인 거리), 이미지는 L2 distance(Euclidean distance)사용
  • 라소(Lasso)를 사용하여 먼저 K 개의 피처를 선택한 다음 최소 제곱을 사용하여 가중치를 학습하여 근사화함.

  • 알고리즘 1은 K-LASSO를 사용하여 개별 예측에 대한 설명을 생성하므로 데이터셋의 크기에 의존하지 않고 $f(x)$를 계산하는 데 걸리는 시간과 샘플 수 N에 의존함.
  • 이러한 바탕으로 해석 가능한 표현과 G를 선택하게 된다면 고유한 단점이 있음.
    • 기본 모델은 블랙박스로 취급될 수 있지만 특정 해석 가능한 표현은 특정 동작을 설명하기에 충분히 강력하지 않음.
      • 예를 들면, sepia-toned와 retro-toned의 차이는 색조의 차이기 때문에 슈퍼픽셀로는 구분이 힘듦
    • G(Sparse linear model)를 선택했을 때, 기본 모델이 지역적(local)에서도 비선형적 이라면 충실한 설명이 될 수 없음.

Conclusion

  • ML과 인간이 효과적인 상호 작용을 위해선 신뢰가 중요하며, 신뢰를 평가하기 위해 Trust(개인)? → 개별적인 예측에 대해 설명이 중요함.
  • 그렇기에 LIME을 제안 하여 텍스트 및 이미지 영역의 신뢰에 관련하여 다양한 모델에 유용하다는 것을 증명하였음.

 

 

피드백 댓글은 언제든지 환영합니당