XAI

XAI Method 2

date
Jul 9, 2023
slug
xai-method-2
author
status
Public
tags
DeepLearning
XAI
summary
type
Post
thumbnail
category
XAI
updatedAt
Jul 9, 2023 02:35 PM

<Influence function-based>

notion image
마지막으로 지금까지 본 것들과는 약간 다른 influence function의 기반한 설명 방법을 소개하겠다. 지금까지는 주어진 테스트 이미지가 있으면 모델이 이미지를 분류하고 그 분류 결과에 대한 설명을 해당 테스트 이미지에서 하이라이트 하는 방식의 방법들이었다.
그런데 이 방법에서는, 주어진 모델이 어떤 학습데이터로부터 학습한 것이므로 그 데이터셋에 있는 트레이닝 이미지들의 함수라고 볼 수 있고, 따라서 각 테스트 이미지를 분류하는데 가장 큰 영향을 미친 트레이닝 이미지가 해당분류에 대한 설명이라고 제공을 하는 것이다.
notion image
[Koh and Liang, Understanding black-box predictions via influence functions, ICML 2017]
즉, 이 그림에서 여러가지 트레이닝 이미지들이 있는데, 이 주어진 테스트 이미지를 강아지라고 분류하는데 있어서 가장 큰 영향을 미친 트레이닝 샘플은 여기 빨간색으로 표시한 정면을 바라보고 있는 강아지 이미지를 보여주는 것이다.
그래서 이 트레이닝 샘플 보여 주게 되면 해당 테스트에 대한 가장 큰 도움을 준 학습 이미지란 것을 보여 줌으로써 설명을 하게 되는 것이다.

1) Influence function

notion image
이러한 종류의 설명을 하기 위해서 해당 논문에서는 influence function 이라는 것을 활용하고 있는데, 만약 어떤 트레이닝 이미지(여기는 z로 표시)없이 모델을 훈련 시켰을 때 해당 테스트 이미지에 분류 스코어가 얼마만큼 변할 것인지를 근사하는 함수가 바로 influence function이다.
그래서 그 함수값을 가지고 각 트레이닝 이미지마다 이 영향력을 계산하고 그 영향력이 가장 큰 이미지를 설명으로 제공하는 방식이다.
notion image
이러한 influence function을 이용해서 왼쪽 위에 있는 테스트 이미지를 물고기라고 분류하는데 있어서 가장 도움을 준 트레이닝 이미지들을 찾아낸 예시가 그림에 나와있다.
여기서는 두 가지 모델, 그러니까 두 번째 행에 나와 있는 RBF 커널을 사용하는 svm 모델과 또 Inception이라는 CNN 모델 에서 뽑아낸 특징들에 기반한 분류기에 대한 설명을 제공하고 있다.
그림을 보면 svm 모델은 단순히 테스트 이미지와 색깔이 비슷한 트레이닝 이미지들을 중요하게 사용해서 테스트를 하게 된다. 반면에, 인셉션 모델은 실제로 테스트 이미지와 매우 유사한 그런 비슷한 열대어 사진들이 중요하게 트레이닝 이미지로 작용한 것을 알 수 있고 이를 통해서 인셉션 모델이 더 제대로 된 특징들을 잘 뽑아내서 학습하고 분류하고 있음을 알 수 있다.

<Quantitative Metrics>

notion image
이러한 XAI방법들을 어떻게 비교하고 평가하는지, 고안된 설명방법들에 문제점들은 없는지 살펴보겠다.
앞서 말씀드린 것처럼 여러 가지 다른 방식으로 고안된 xai의 방법들이 있는데, 과연 어느 방법이 좋은 설명 방법인지 이런 것들을 평가 이해할 필요가 있습니다. 평가하는 방법들에 관한 내용입니다.

1) Metrics : Human-based visual assessment

가장 먼저 쉽게 생각할 수 있는 방법은 사람들이 직접 이러한 Xai 방법들이 만들어 낸 설명을 보고 비교 평가하는 것입니다.
notion image
notion image
[Grad-CAM: Visual Explanations from Deep Networks via Gradient-based Localization [Ramprasaath et al., 2017]
Amazon Mechanical Turk 같은 것들을 활용해서 사람들에게 직접 퀴즈를 내는 방식입니다. 한 예로 아래와 같이 입력 이미지에 대해서 어떤 모델이 사람이나 또는 말이라고 예측을 하였고, 그 예측에 대한 설명을 오른쪽에 보여 줍니다.
그러면 사람들이 그런 설명을 보고 이 모델이 과연 어떤 예측을 하였는지, 그러니까 어떤 예측에 대한 설명인지를 맞춰 보도록 하는 것입니다.
만약에 이러한 설명이 "말"을 하이라이트 하고 있다고 하면 사람들은 그 설명을 보고 아마도 이 모델이 말이라고 예측 하였을 것이라고 할 것이고, 만약 그것이 진짜 맞는 모델 예측 이라면 대한 설명은 잘 된 것이라고 할 수 있습니다.
이렇게 해서 두 가지 설명방법 이 예에서는 Guided Backprop과 Guided Grad-CAM을 직접적으로 비교할 수 있을 것이고요.
여기서는 Guided grad-cam이라는 방법에 설명을 보고 사람들이 더 모델의 예측을 잘 마추었으니(61.23%) , Guided grad-cam이라는 방법이 더 좋은 설명 방법이라고 할 수 있는 것입니다.
notion image
notion image
이러한 사람의 직접적인 평가를 얻는 방법으로 또 하나 가능한 것은 위와 같다.
이번에는 주어진 이미지에 대해서 모델이 예를 들어서 “사람”이라고 예측을 하였는데, 그 사람의 예측에 대한 두 가지 다른 설명을 보여주는 것이다. 각 설명 방법에 결과를 왼쪽에 보여줄지 아니면 오른쪽에 보여줄지는 이미지마다 랜덤하게 보여준다.
그러면 이 두 가지 설명을 보고 과연 어느 쪽 설명이 더 좋은지 사람들에게 고르라고 하는 것이다. 이렇게 직접 비교를 통해 어느 설명 방법이 좋은지 평가를 할 수가 있게 되고, 이 예시에서도 역시 Guided grad-cam방법이 더 높은 점수를 받아서 좋은 설명이었다라고 결론을 내릴 수 있었다.
notion image
이렇게 직접 사람이 설명 방법들을 비교 평가하는 것은 매우 값이 비싸고, 또 그 평가하는데 시간이 오래 걸리게 되는 것을 알 수가 있다. 그래서 이렇게 직접 비교보다는 약간의 한계가 있을 수는 있지만 더 효율적으로 설명 가능 방법들을 비교하고 평가하는 그런 방법들도 많이 고안되고 있다.

2) Metrics : Human annotation

notion image
첫 번째 다른 방법은 사람들이 이미 만들어 놓은 annotation 데이터를 이용하는 것이다. 즉, object detection이나 시멘틱 세그멘테이션 모델을 학습하기 위한 학습데이터셋으로는 오른쪽에 보는 것처럼 주어진 이미지에 대한 그 객체에 바운딩박스나 아니면 픽셀 레벨의 레이블되어있는 시맨틱 세그멘테이션 맵이 이미 제공되고 있다.
그러면 이런 어노테이션을 활용해서 설명가능기법들을 평가할 수 있을 것이고, 여기서는 pointing game과 weakly supervised semantic segmentation 이라는 방법을 소개 하겠다.

2-1) pointing Game

notion image
notion image
[Zhang et al., Top-down Neural Attention by Excitation Backprop, IJCV 2018]
pointing game은 바운딩박스를 활용해서 평가를 하는 방법이다.
위의 식에서 보시는 것처럼 각 이미지 i에 대한 B라고 표시한 라운딩 박스들이 주어져 있을 때 그 각각의 이미지에 대한 설명 h를 구했다고 하면,
Grad-CAM을 예를 들면 Grad-CAM의 설명 중에서 가장 중요도가 높은 픽셀을 구할 수가 있을 것이다. 그리고 그 픽셀을 여기 P라고 했을 때 그 P가 주어진 바운딩박스 안에 들어가는지를 보고 평가하는 것이다.
고양이이미지를 예를 들면 고양이의 바운딩박스가 있을 때, XAI방법이 가장 중요하다고 보여주는 픽셀이 사람이 만든 그 바운딩박스 안에 있다고 한다면 좋은 설명이라고 할 수 있을 것이라는 가정에서 출발하는 것이다.
그렇게 각 이미지마다 가장 설명 값이 높은 픽셀이 바운딩박스 안에 들어가는 정확도를 계산해서 평가를 한다.
notion image
위 표에 보면 이런 포인팅 게임 방식을 이용해서 설명가능 방법들을 여러모델 구조와 데이터셋에 대해서 평가 한 것을 보여주고 있고, 여기서는 CAM 또는 RISE 방식이 좋은 결과를 보여 주는 것을 알 수 있다.
이런 식으로 서로 다른 설명하는 방법을 비교하고 평가하는 것입니다.

2-2) Weakly supervised semantic segmentation

두 번째로 사람의 어노테이션을 이용하는 평가방법은 weakly supervised semantic segmentation 방법이다.
즉, 어떤 이미지에 대해서 classification label만 주어져 있을 때 그것을 활용하여 픽셀별로 객체의 label을 예측하는 시멘틱 세그멘테이션을 수행하는 방법을 weakly supervised semantic segmentation이라고 한다. 이때 weakly supervised라고 하는 이유는 정말 우리가 하고자 하는 픽셀별로 정답 레이블이 다 주어져 있지 않기 때문이다.
notion image
이때 classification label만 있으면 그것을 이용해서 이미지 분류기를 만들 수 있고 그에 대한 설명을 구할 수 있을 것이다. 그렇게 구하는 설명, 그러니까 이미지 내에서 중요한 픽셀들을 하이라이트를 했을 때 이를 이용해서 역시 적절한 thersholding 등을 통해 가장 오른쪽에 있는 것과 같은 픽셀별 레이블, 또는 세그맨테이션 맵을 구할 수 있을 것이다.
그렇게 구한 세그멘테이션을 젤 왼쪽에 있는 정답 세그멘테이션 맵과 비교해서 평가를 한다.
이때 평가하는 메트릭은 mean IOU, 즉 Intersection over Union을 활용하는데, 이는 정답 맵과 이렇게 만들어 낸 세그멘테이션 맵이 얼마나 겹치는지를 평가하는 메트릭이다. 메트릭 값을 통해서 설명가능 방법으로 만들어낸 시맨틱 세그멘테이션 결과가 좋을수록 그 설명 가는 방법이 더 좋다라고 평가를 하는 방식이다.
이러한 평가 방법들에 단점은 여전히 아마존 미케니컬 터커와 같이 매번 결과를 직접 사람에게 묻는 것까지는 아니지만 그래도 사람이 직접 제공한 어노테이션을 활용하므로 그러한 어노테이션 데이터를 얻기가 쉽지 않고 비싸다는데 있다.
notion image
또, 이러한 바운딩박스나 세그멘테이션 레이블이 과연 진짜 좋은 설명을 가져오는 정답인가에 대한 명확하지 않은 단점이 있다.