Explaining NonLinear Classification Decisions with Deep Taylor Decomposition

문상준·2025년 7월 1일

논문 리뷰

목록 보기
11/24

Explaining NonLinear Classification Decisions with Deep Taylor Decomposition


Deep Taylor Decomposition에 대한 내용

Abstract

DNN은 성능은 good,
but,
lack of transparency == limiting the interpretability

==> DNN은 multilayer nonlinear structure 때문에, blackbox 처럼 작동

==> Deep Taylor Decomposition을 통해 분류에 쓰인 입력 요소들의 기여도(ex) 사진의 어느 부분이 사진을 cat으로 분류하는 데 어느 정도의 기여를 함)를 분해하여,
네트워크의 작동 방식을 설명

1. INTRODUCTION

Blackbox처럼 작동하는 DNN은 왜 특정 결정을 내렸는지 설명 못하는 transparent 문제
==>
interpretable classifier로 model이 input을 기반으로 nonlinear classification desicion을 어떻게 내리는지 설명

DTDinterpretable classifier를 만드는 데 사용되는 핵심 방법론

궁극적으로 입력 픽셀 공간에 분류 결정의 기여도를 보여주는 relevance map (heat map)(관련성 지도)를 생성

2. PIXEL-WISE DECOMPOSITION OF A FUNCTION

Heat map은 함수 값(즉, 신경망 출력)을 입력 변수에 redistribution 함으로써 생성

Redistribution 되는 양은 해당 입력 변수가 함수 값에 기여하는 정도!!!

이때, 함수(신경망)는 f:RdR+f : \R^d \rarr \R+ 이다.
즉, 이미지 xRH×Wx \in \R^{H \times W}이면, xRd=H×Wx \in \R^{d = H \times W}이고,
이 이미지의 prediction 결과는 고양이일 확률이기에, 0이상의 실수인 것이다.

이미지 xx의 각 픽셀 pp에 관련성 점수 Rp(x)R_p(x)를 mapping 해야한다.
이는 이미지 xx에 대해 픽셀 pp가 분류 결정 f(x)f(x)를 설명하는 데 어느 정도 기여하는지를 나타낸다.
(그러니까 이 픽셀이 ai의 결정에 어느정도 영향을 미쳤는 지를 나타냄)

우리는 Heatmapping이 아래에서 정의하는 특정 속성을 충족하길 바란다.

Definition 1. conservative(보존성)

x: f(x)=pRp(x).\forall x:\ f(x) = \sum\limits_{p} R_p(x).

히트맵에 있는 모든 픽셀의 관련성 점수를 합친 값이 신경망 모델이 최종적으로 출력한 값, 즉 모델이 감지한 총 관련성(f(x)f(x))과 정확히 같아야 한다.

당연하다. Rp(x)R_p(x)f(x)f(x)를 분배한 것이기에,,,

Definition 2. positive(양수성)

x,p: Rp(x)0\forall x, p:\ R_p(x) \geq 0

히트맵의 모든 픽셀 관련성 점수가 0보다 크거나 같아야 한다. 음수 값이 없어야 한다는 뜻이다.

특정 픽셀이 모델의 결정에 '반대되는 증거'를 제공해서는 안 된다는 것을 의미.
예를 들어, 고양이 사진에서 어떤 픽셀은 '고양이일 가능성을 높이고', 다른 픽셀은 '고양이가 아닐 가능성을 높인다'는 식의 모순된 기여는 허용하지 않는다. 모든 픽셀은 감지된 객체의 존재를 지지하거나(양수 값), 아무런 영향도 미치지 않아야(0 값) 한다.

당연하다.
f(X)0f(X) \geq 0 이고, 이를 분배한 것이 Rp(x)R_p(x)이고,
f(x)f(x)는 고양이일 확률이지 고양이가 아닐 확률이 아니기 때문이다.

Definition 3. consistent(일관성)

(f(x)=0)(R(x)=0)(f(x) = 0) \Rightarrow (R(x) = 0)

히트맵이 보존성(정의 1)양수성(정의 2)을 모두 만족할 때 '일관적'이라고 합니다.

특히, 모델이 이미지에서 아무것도 감지하지 못했을 경우(f(x)=0f(x)=0), 히트맵의 모든 픽셀 관련성 점수도 0이어야 합니다.
이는 객체가 없을 때 히트맵이 완전히 비어있어야 하며, 긍정적 기여와 부정적 기여가 상쇄되어 0이 되는 경우가 아니어야 함을 강조.
'일관성'은 논문에서 제안하는 히트맵 기법의 정확성을 평가하는 기준으로 사용.

즉, 이제 Definition 3. consistent를 만족하며, 의미 있는 heatmapping 기법을 정해야한다.

A. Taylor Decomposition

논문에서는 적절한 heatmapping 기법으로 f(x~)=0f(\tilde{x})=0x~\tilde{x}에서의 ff의 taylor expansion을 선택했다.

이는 아래와 같다.

(fxx=x~)\left( \left. \frac{\partial f}{\partial x} \right|_{x = \tilde{x}} \right)^\top

에서 전치가 있는 이유는 xx가 벡터이기 때문이다.

또한 R(x)={Rp(x)}R(x)=\{R_p(x)\} 이므로, pfxpx=x~(xpx~p)\sum_p \left. \frac{\partial f}{\partial x_p} \right|_{x = \tilde{x}} \cdot (x_p - \tilde{x}_p)R(x)R(x)가 된다.

이때, xx는 벡터이므로, f(x)=R(x)+ϵ=fxx=x~(xx~)+ϵf(x)=R(x)+\epsilon = \left. \frac{\partial f}{\partial x} \right|_{x = \tilde{x}} \odot (x - \tilde{x}) + \epsilon
이다.

여기서 ϵ\epsilon은 2차 이상의 항들인데, 이 항들은 동시에 여러 픽셀의 정보를 포함해서 재분배하기 어렵기에 무시한다.

(자세한 이유는 xx가 벡터이므로, 2차 미분일 경우
이런 식으로 되서 그럼)

R(x)=fxx=x~(xx~)R(x)=\left. \frac{\partial f}{\partial x} \right|_{x = \tilde{x}} \odot (x - \tilde{x}) 의 각 항을 설명하면, 아래와 같다.

  • x~\tilde{x} : f(x~)=0f(\tilde{x})=0 인 이미지 x~\tilde{x} 이므로, 물체를 판별하는 데 쓸모 없는 부분임
    ex) 고양이가 아닌 부분

  • (xx~)(x-\tilde{x}) : 물체를 판별하는데 쓸모 있는 부분

  • fxx=x~(xx~)\left. \frac{\partial f}{\partial x} \right|_{x = \tilde{x}} \odot (x - \tilde{x}) : x~\tilde{x}의 각 픽셀이 f(x)f(x)에 영향을 주는 정도

이제 남은 일은 최적의 x~\tilde{x}를 찾는 것이다

좋은 root point는 일부 픽셀에서 정보를 선택적으로 제거하는 동시에 주변 환경을 변경하지 않아야 한다. 즉 고양이 빼고는 정확한 이미지여야한다.

그렇기에, 다음의 ξ\xi를 찾는 것이 목표이다.

minξ ξx2subject tof(ξ)=0andξX\min_{\xi} \ \|\xi - x\|^2 \quad \text{subject to} \quad f(\xi) = 0 \quad \text{and} \quad \xi \in \mathcal{X}

이때, X\mathcal{X}는 input domain 이다.

하지만, 위 방법은 시간이 오래 걸리고, non-convexity 문제 발생

B. Sensitivity Analysis

위의 문제(적절한 root point를 찾는 것이 어렵다.)를 해결하는 가장 간단한 방법은 픽셀에 relevance를 부여할 때, squared derivatives of the classifier에 비례하게 부여하는 것이다.

R(x)(fx)2R(x) \propto \left( \frac{\partial f}{\partial x} \right)^2

이때, 제곱은 아다마르 곱셈이다.

그럼 이때의 root point는 무엇인가?
==> ξ=xδfx\xi = x - \delta \cdot \frac{\partial f}{\partial x}

여기서 점 ξξ는 실제 점 𝑥𝑥로부터 함수 ff가 가장 급격하게 감소하는 방향으로 무한히 작은 거리만큼 떨어져 있다.

따라서 ξ\xi에서의 1차 taylor expansion은 다음과 같다

f(x)=f(ξ)+(fxx=ξ)(x(xδfx))+0=f(ξ)+δ(fx)fx+0=f(ξ)+pδ(fxp)2Rp+0,f(x) = f(\xi)+ \left( \left. \frac{\partial f}{\partial x} \right|_{x=\xi} \right)^\top \cdot \left( x - \left( x - \delta \frac{\partial f}{\partial x} \right) \right) + 0 \\ = f(\xi) + \delta \left( \frac{\partial f}{\partial x} \right)^\top \frac{\partial f}{\partial x} + 0 \\ = f(\xi) + \sum_p \underbrace{ \delta \left( \frac{\partial f}{\partial x_p} \right)^2 }_{R_p} + 0,

여기서 2차 이상의 항들은 1차 taylor expansion이기에 0이 된다.

하지만 여기서 문제가 있는데, ξ\xixx에서 아주 살짝 떨어진 이미지로 했기에, f(ξ)f(\xi)f(x)f(x)와 비슷할 수 밖에 없어, pδ(fxp)2Rp\sum_p \underbrace{ \delta \left( \frac{\partial f}{\partial x_p} \right)^2 }_{R_p}는 작을 수 밖에 없다.

즉, 모든 관련성이 재분배 되지 않는 0차 항(f(ξ)f(\xi))에 흡수되기 때문에 보존적이지 않게 된다.(Definition 1 위반)

C. Deep Taylor Decomposition

Deep taylor decomposition은 divide-and-conquer에서 영감을 받았다. DNN이 학습한 함수가 인접한 layer 간의 값을 연결하는 더 간단한 하위 함수들의 집합으로 구조적으로 분해될 수 있다는 특성을 이용.
즉, input -> output이 아니라, 그 사이에 여러 layer를 하위의 함수로 취급하여, divide-and-conquer하는 것임

==>
전체 신경망 함수 ff를 직접적으로 고려하는 대신,
특정 layer의 뉴런 집합 {xi}\{x_i\}을 다음 layer의 뉴런 xjx_j에 할당된 relevance RjR_j로 mapping하는 국소 문제를 푸는 것임

// forward 방향: i -> j임
그럼 backward로 relevance backpropagation하면 j -> i 인데, 왜 뉴런 집합 {xi}\{x_i\}xjx_j에 할당된 RjR_j로 mapping 하지???

==>
그니까 taylor decomposition은 함수를 분해하는 거임
여기서 그 함수{xi}\{x_i\}을 통해 얻은 xjx_j의 relevance RjR_j를 분해하는 것이기에 그렇게 표현한 것

즉,
이 두 대상이 특정 함수 Rj({xi})R_j(\{x_i\})에 의해 함수적으로 연결되어 있다고 가정하면,
국소적(local) 함수에 Taylor decomposition를 적용하여 상위 층의 관련성 RjR_j를 하위 층의 관련성 점수 집합 {Ri}\{R_i\}로 재분배하는 것!

이렇게 하면 함수가 더 작아져서 taylor decomposition이 더 쉬워지며, 특히, root point를 찾는 것이 용이

이제 중간 hidden layer에서의 taylor decomposition을 해보자.

f(x)=f(x~)+(fxx=x~)(xx~)+ε=0+pfxpx=x~(xpx~p)Rp(x)+ε(3)f(x) = f(\tilde{x}) + \left( \left. \frac{\partial f}{\partial x} \right|_{x=\tilde{x}} \right)^\top \cdot (x - \tilde{x}) + \varepsilon\\ = 0 + \sum_p \underbrace{ \left. \frac{\partial f}{\partial x_p} \right|_{x=\tilde{x}} \cdot (x_p - \tilde{x}_p) }_{R_p(x)} + \varepsilon \tag{3}

앞에 식은 뉴런 하나(xjx_j)에서 뉴런 여러개({xi}\{x_i\})로 relevance를 분배하는 것이다.

반면 아래 식은 여러 뉴런({xj}\{x_j\})에서 여러 뉴런({xi}\{x_i\})로 relevance를 분배하는 것이다.

jRj=((jRj){xi}{x~i})({xi}{x~i})+ε=ijRjxi{x~i}(xix~i)Ri+ε,(4)\sum_j R_j = \left( \left. \frac{\partial \left( \sum_j R_j \right)}{\partial \{x_i\}} \right|_{\{\tilde{x}_i\}} \right)^\top \cdot (\{x_i\} - \{\tilde{x}_i\}) + \varepsilon \\ = \sum_i \underbrace{\sum_j \left. \frac{\partial R_j}{\partial x_i} \right|_{\{\tilde{x}_i\}} \cdot (x_i - \tilde{x}_i) }_{R_i} + \varepsilon, \tag{4}

어렵게 보이지만 간단하다.
그냥 위에 식 (3)을 여러번(hidden 뉴런 개수번 (num({xj})num(\{x_j\})) 적용하여, 누산 한 것이다.

3. APPLICATION TO ONE-LAYER NETWORKS

xj=max(0,ixiwij+bj)(5)x_j=\max\left(0, \sum_i x_i w_{ij} + b_j \right) \tag{5}
xk=jxj(6)x_k = \sum_j x_j \tag{6}

인 간단한 nn을 가정하자.

이때, 모든 j에 대해 bj0b_j\leq0이도록 하자.

==>
함수 gg의 root point {xi~}\{\tilde{x_i}\}의 존재를 보장.

==>
root point가 반드시 필요한 taylor decomposition 적용 可

예측된 출력값을 역방향으로 전파되어야 하는 총 관련성과 동일하다고 설정하면,
Rk=xkR_k = x_k 가 된다.

이때, xk=jxjx_k=\sum_j x_j 이기에,
Rk=xk=jxjR_k = x_k=\sum_j x_j 이다.

RkR_k를 각 뉴런 {xj}\{x_j\}로 분배하자.
==> taylor decomposition

Step 1. xkx_k에서 {xj}\{x_j\}로의 taylor decomposition

Rj=Rkxj{x~j}(xjx~j)(8)R_j = \left. \frac{\partial R_k}{\partial x_j} \right|_{\{\tilde{x}_j\}} \cdot (x_j - \tilde{x}_j) \tag{8}

당연히, root point xj~\tilde{x_j}는 다음을 만족해야 한다.
jxj~=0\sum_j \tilde{x_j} = 0
왜냐하면, RkR_k00이 되게 하는 {xj}\{x_j\}jxj=0\sum_j x_j =0 이기 때문이다.

또한 root point가 역할을 제대로 하려면 반드시 허용 가능한(admissible) 값이어야 하는데,

그 값은 {xj}0\{x_j\}\ge0 이다.(ReLUReLU 때문에)

위 두 조건(jxj~=0\sum_j \tilde{x_j} = 0) , ({xj~}0\{\tilde{x_j}\}\ge0)에 의해,
{xj~}=0\{\tilde{x_j}\}=0 이다.

또한 Rk=jxjR_k=\sum_j x_jxjx_j로 미분하면, 1이기에,

Rj=Rkxj{x~j}(xjx~j)=xj(8)R_j = \left. \frac{\partial R_k}{\partial x_j} \right|_{\{\tilde{x}_j\}} \cdot (x_j - \tilde{x}_j) \tag{8} =x_j

이다.

Step 2. {xj}\{x_j\}에서 {xi}\{x_i\}로의 taylor decomposition

Rj=max(0,ixiwij+bj)R_j=max(0,\sum_i x_iw_{ij}+b_j) 이다.

이를 통해 다시 {Ri}\{R_i\}로의 재분배를 하자.
==> deep taylor decomposition

식 (4)를 적용하면, 다음과 같다.

Ri=jRjxi{x~i}(j)(xix~i(j)).(11)R_i = \sum_j \left. \frac{\partial R_j}{\partial x_i} \right|_{\{\tilde{x}_i\}^{(j)}} \cdot \left( x_i - \tilde{x}_i^{(j)} \right). \tag{11}

각 관련성 RjR_j를 분해할 때마다 서로 다른 root point를 선택한다는 점을 강조하기 위해, root point({xi~}\{\tilde{x_i}\})에 위첨자 (jj)를 추가.

cf) 괜찮은 참고자료 (https://angeloyeo.github.io/2019/08/17/Layerwise_Relevance_Propagation.html)

A. Unconstrained Input Space and the w2w^2-Rule

Input을 이미지가 아닌 일반적인 상황일 때를 먼저 고려해보자.

그럼 Input=X=RdInput = \mathcal{X} = \R^d 이다.

최적의 root point (x~\tilde{x})를 찾자!

minx~ x~x2subject tof(x~)=0andx~X\min_{\tilde{x}} \ \|\tilde{x} - x\|^2 \quad \text{subject to} \quad f(\tilde{x}) = 0 \quad \text{and} \quad \tilde{x} \in \mathcal{X}

x~\tilde{x}를 찾으면 된다.

이는

  • plane equation ix~i(j)wij+bj=0\sum_i \tilde{x}_i^{(j)} w_{ij} + b_j = 0 (식 (10)에서 정의된 RjR_j 평면이다)에 수직이며, (이 plane equation의 법선 벡터는 w(j)=(w1j,w2j,...,wij)w^{(j)}=(w_{1j},w_{2j},...,w_{ij})이다.)
  • input xx를 지나는 직선

과 plane equation의 교점이다!

이 교점은 다음과 같다.

x~i(j)=xiwijiwij2(ixiwij+bj){\tilde{x}_i}^{(j)} = {x_i - \frac{w_{ij}}{\sum_i w_{ij}^2} \left( \sum_i x_i w_{ij} + b_j \right)}

이 교점을 식(11)에 대입하면, 뉴런 ii로 재분배되는 relevance를 구할 수 있고, 이는 다음과 같다.

Ri=jwij2iwij2Rj(12)R_i = \sum_j \frac{w_{ij}^2}{\sum_{i'} w_{{i'}j}^2} R_j \tag{12}

즉, w2rulew^2-rule은 input space에 제약이 없는 경우 relevance를 weight 제곱에 따라 안정적으로 분배하는 일관된 방법이다.

하지만, 만약 input space가 이미지 처럼 R+dR_+^d 이면, w2rulew^2-rule을 적용하지 못할 수 있다. 왜냐하면, 아래 그림과 같이, 구한 {xi}(j)\{x_i\}^{(j)}R+dR_+^d가 아닐 수 있기 때문이다.

그래서, B의 zrulez-rule을 사용하는 것이다.

B. Constrained Input Space and the z-Rules

C. Experiment

TBW

4. APPLICATION TO DEEP NETWORKS

A. Min-Max relevance Model

B. Training-Free Relevance Model

C. Experiment on MNIST

5. CONCLUSION

생략

0개의 댓글