딥러닝 학습의 한계점: 대용량 학습 데이터로 부터 학습하는 모델 구조 - 점점 더 복잡해지고 이해하기 어려워짐.
사람이 모델을 쓸 때 그 동작을 이해하고 신뢰할 수 있게 해주는 기계 학습 기술
- intrincsic: 모델의 복잡도를 훈련하기 이전부터 설명하기 용이하도록 제안한 뒤 학습을 시켜서 그 후 학습된 모델을 가지고 설명하는 방법
- post-hoc: 임의 모델의 훈련이 끝난 뒤에 이 방법을 적용해서 그 모델의 행동을 설명하는 방법
입력에 대한 모델의 gradient로 설명을 제공
gradient라는 것이 각 픽셀의 값이 조금 바뀌었을 때 이 함수의 출력 값이 얼마나 빨리 변하는지를 구하는 값
단점: 구한 설명들이 매우 noisy할 수 있다!
a simple method to address the noisy gradients
saliency map 기반의 설명 가능 방법
GAP레이어는 각 activation map의 모든 activation들의 평균을 내는 연산을 뜻한다.
어떤 activation map에 activation이 크게 된다는 것은 map이 주어진 입력과 관련이 많다는 뜻이고 또한 그것을 결합하는 w가 크다는 것도 최종 분류에 큰 영향을 주는 activation이라는 뜻이므로 그것을 결합하면 입력에 대한 예측을 잘 설명하는 방식이 되는 것.
CAM의 단점을 극복하기 위한
CAM을 gradient 정보를 활용해서 확장한 설명 방법
global average pooling 없는 모델에도 activation을 결합하는 방식을 보완
어떤 w가 특정 모델 구조를 가지고 학습된 w를 사용하는 것이 아니라 어느 activation map에서도 그 activation map의 gradient를 구한 다음에 그것의 global average pooling값으로 w를 적용한다는 뜻
학습된 모델이 제대로 학습하고 있는지 또는 이 모델의 예측에 편향성이 존재하지 않는지도 알아낼 수도 있다.
gradient 값이 크다는 것은 해당 activation에 대한 출력 값의 민감도가 크다는 말이지만 그것이 반드시 그 activation이 최종 결과를 게산하는 데 있어서 중요도를 정확히 반영하지는 않는 뜻
입력 데이터를 조금씩 바꾸면서 그에 대한 출력을 보고, 그변화에 기반해서 설명
어떤 분류기가 딥러닝 모델처럼 매우 복잡한 비선형적 특징을 가지고 있더라도 주언진 데이터 포인트들에 대해서는 아주 LOCAL하게는 다 선형적인 모델로 근사화가 가능하다는 관찰에서 출발하고 있다.
주어진 데이터를 조금씩 교란해 가면서 그 교란된 입력 데이터를 모델에 여러 번 통과시킴으로써 나오는 출력을 보고 이렇게 나온 입출력 pair들을 간단한 성형 모델로 근사함으로써 설명을 얻어내는 방법
딥러닝 모델뿐 아니라 주어진 입력과 그에 대한 출력만 얻을 수 있다면 어떤 모델에 대해서도 다 적용할 수 있는 설명 방법
lime과 비슷하게 여러번 입력을 perturb해서 설명을 구하는 방법
여러 개의 랜덤 마스킹이 되어 있는 입력에 대한 출력 스코어를 구하고 그 스코어 그러니깐 확률들을 이용해서 이 마스크들을 가중치를 둬서 평균을 냈을 때 나오는 것이 설명 map인 것
주어진 모델이 어떤 training set으로부터 학습한 것이므로 그 데이터셋에 있는 training image들의 함수라고 볼 수 있고 각 테스트 이미지를 분류하는데 가장 큰 영향을 미친 training image가 해당 분류에 대한 설명이라고 제공을 하는 것
ex) AMT test
some metrices employ human annotations as a ground truth and compare them wuth interpretation
weakly supervised라고 하는 이유?
: 픽셀별로 정답 label이 다 주어져 있지 않기 때문이다.
정답 map과 이렇게 만들어낸 segmentation map이 얼마나 겹치는지를 평가하는 metric
ROAR removes some portion of pixels in train data in the order of high interpretation values of the original model, and retrains a new model
장점
- 조금 더 객관적이고 정확한 평가를 할 수 있다
단점
- 픽셀을 지우고 나서 매번 재학습해야한다
interpretation = edge detector?