task : contrastive explanation. A 대비해서 B를 선택한 이유가 무엇인지 설명
problem : 모델이 설명 가능했으면 좋겠는데, 그 설명을 모두 열거할 수는 없고 A over B인 이유를 설명하면 간단해짐.
idea : 최종 모델 class y를 예측할 때 쓰이는 weight W의 row에 대해서 뺀 다음에 이걸 projection 해서 hidden 이랑 곱해줌. 이렇게 곱해준 값을 text span을 masking해서 forward를 여러번 한 다음에 그 값들을 비교해서 가장 변화가 큰 값을 highlight함.
input/output : text - > class // text span highlighted for why model predicts class y over y'
architecture : RoBERTa
objective : MLM
baseline : -
data : NLI, BIOS(biography를 받고 직업을 분류하는 task)
evaluation : 이해를 잘 못함.
result : 이해를 잘 못함. 정성적으로만 평가한듯?
contribution : contrastive explanation이라는 영역의 거의 선구 work인 듯.
etc. :
Details
method
일단 masking하고 모델 forward 를 여러번 할 것임. 이런 방법을 여기서는 amnesic 방법론이라고 부름.
K : model class
y : output class
enc : neural encoder
$W \in \mathbb{R}^{K \times d}$ : final linear layer
$y^*$ : model prediction (fact) / $y'$ : alternative prediction
$p$ : model probabilities
$w{y^*}$, $w{y'}$ : weight matrix W에서 두 클래스를 예측데 쓰인 row.
$w{y^*}$, $w{y'}$ 이 두개의 weight row를 하나의 contrastive direction $u$로 만듦.
만약에 모델이 $y^$를 더 높게 예측한다면 $u^Th_x>0$ 일 것임.
이 u를 사용하여 hidden state $h_x$에 대한 projection을 만듦.
이 C연산의 결과값은 $h_x$에서 contrastive intervention로 해석될 수 있는 행렬이 됨.
이후 이전과 같이 $q = \text{softmax}(Wh_x)$와 같은 연산을 한 뒤 아래와 같은 방식으로 text span의 계수를 구함.
이때 p는 projection을 안한 값의 model prediction이고 q는 한 값.
paper
TL;DR
Details
method
일단 masking하고 모델 forward 를 여러번 할 것임. 이런 방법을 여기서는 amnesic 방법론이라고 부름.
$w{y^*}$, $w{y'}$ 이 두개의 weight row를 하나의 contrastive direction $u$로 만듦.
만약에 모델이 $y^$를 더 높게 예측한다면 $u^Th_x>0$ 일 것임.
이 u를 사용하여 hidden state $h_x$에 대한 projection을 만듦. 이 C연산의 결과값은 $h_x$에서 contrastive intervention로 해석될 수 있는 행렬이 됨. 이후 이전과 같이 $q = \text{softmax}(Wh_x)$와 같은 연산을 한 뒤 아래와 같은 방식으로 text span의 계수를 구함.
이때 p는 projection을 안한 값의 model prediction이고 q는 한 값.
result
결과 해석이 잘 안됨 ..