Self-Attention Attribution: Interpreting Information Interactions Inside Transformer

[접기]

목차

  • 1. Attention to Attribution
  • 2. Prune Attention Heads
  • 3. Adversarial Attack


Self-Attention Attribution: Interpreting Information Interactions Inside Transformer
- Preprint 2020. 04. -
https://arxiv.org/pdf/2004.11207.pdf

1. Attention to Attribution


attention과 attribution 비교
BERT의 attention을 시각화해보아도 그 안에서 의미를 찾아내기는 어렵습니다. 위 그림의 (a)가 바로 attention을 시각화한 예시입니다. 대부분의 단어들이 연결되어있어 어느 쌍이 실제 결과에 영향을 크게 주는 지 알아보기 힘듭니다. 이 논문에서는 이를 attribution으로 대체하여 그림의 (b)와 같이 시각화 하였습니다.
attribution 구하기 (연속) attribution 구하기 (이산)
attribution을 계산하는 식은 위와 같습니다. 전반적인 아이디어나 계산 방법은 이전에 나온 Axiomatic Attribution for Deep Networks에서와 비슷합니다. 실제로 참고문헌이기도 하니 함께 읽어보면 좋을 듯 싶습니다. 간단하게만 짚고 넘어가자면, 인풋 A에 대해 그래프 F를 미분하고 다시 적분할건데, 이 때 인풋 A는 0일 때, 0.1A일 때, ..., 1.0A일 때와 같이 0부터 A까시 서서히 증가시킵니다. 이러면 마치 물리학에서 포텐셜 에너지를 구하는 것과 비슷한데 실제로 비슷한 성질을 띕니다. 그 성질로는 "가능한 모든 입력에 대해 같은 출력을 내는 두 그래프는 같은 attribution도 같다.", "두 그래프를 선형결합하면 attribution도 선형결합한 값과 같다." 등이 있습니다. 수학적으로 다루기에 좋은 값이 되는 것이지요. 이미지에서는 좋은 결과를 보여주었으나 텍스트에서는 뚜렷한 결과가 없없는데, 이 논문에서는 실제 입력 텍스트가 아니라 attention weight에 attribution을 적용함으로써 의미있는 결과를 얻었습니다. 어떻게 분석할지 뿐만 아니라 무엇을 분석할지 또한 중요한 것 같네요.

2. Prune Attention Heads


prune 순서에 따른 성능 하락폭 비교
논문에서는 attribution이 attention보다 의미있다는 증거 중 하나로 BERT의 multi-head attention에서 어떤 head부터 prune하는지에 따른 성능을 제시하였습니다. 위 그래프에서 볼 수 있듯이, attention의 대소에 따라 prune했을 때 보다 attribution의 대소에 따라 prune했을 때 성능 차이가 더 벌어지고, 이는 곧 성능의 관점에서 attribution이 attention보다 강한 영향력을 갖는다는 것을 보여줍니다.
다른 prune 방법들과의 비교
다른 prune 방법들과 attribution이 작은 것부터 prune하는 방법을 비교한 결과가 위 그래프입니다. 다른 방법들보다 attribution을 사용한 방법이 거의 항상 좋은 결과를 냅니다.

3. Adversarial Attack


trigger를 활용한 attack 결과
논문에서는 attribution을 adversarial attack에도 활용할 수 있다고 제안하였습니다. 위 그림을 예로 들면, contradiction이라고 분류하는 데에 큰 attribution을 갖는 단어 쌍들을 관찰했고, 그 중 높은 비율로 등장한 것이 floods - ice 쌍과 Iowa - Florida 쌍입니다. 그리고 이를 trigger로 사용하여 분류가 entailment와 neutral인 데이터에 추가했을 때 실제로 분류 결과가 contradiction으로 바뀌는 경우를 보여줍니다.