본문 바로가기
LG Aimers(AI 전문가 과정)/Module 4. 설명가능한 AI(Explainable AI)

Part 2. Explainable AI (XAI)

by 전주혁 2022. 7. 31.

Module 4. 설명 가능한 AI 서울대학교 문태섭 교수님이 강의를 하셨고 Module 4에 관한 모든 내용은 LG Aimers 및 서울대학교 문태섭 교수님으로부터 나왔다.

 

 

 

 

 

Explainable AI (XAI)

Saliency map-based 기반 설명 방법

CAM(Calss Activation Map)

 -> GAP(Global Average Pooling)이란 특정한 layer를 만든 후 이 layer와 activation을 합쳐서 설명하는 방법

 -> CAM을 이용한 CNN의 최종 layer의 해상도는 비교적 낮기 때문에 upsampling을 통해 개선함

 -> GAP Layer = 각 activation map의 모든 activation들의 평균

 

CAM의 장단점

 - 장점 : 모델이 집중하는 object들을 명백히 보여줌

 - 단점 : Model-specific

           : 캠의 설명은 마지막 layer에서만 얻기 때문에 해상도가 낮다

 

 

 

Grad-CAM

 -> CAM을 gradient 정보를 활용해서 개선한 방법

 -> GAP가 없는 모델에도 activation을 결합하는 방식을 보완

 

 

Grad-CAM 장단점

 - 장점 : Model agnostic -> 어느곳에나 사용이 가능하다

 - 단점 : 때때로 평균 기울기가 정확하지 않을 때가 존재한다.

 

Grad-CAM의 예측 결과이다.

밑의 예측한 결과를 보면 두 사진 다 nurse로 정확하게 예측을 하였다.

하지만 중앙에 있는 사진은 nurse의 특징을 잡아서 nurse로 예측을 한 것이 아닌,

여자의 얼굴을 focus로 잡고 nurse로 예측을 한 결과를 볼 수 있다.

그렇게 저 Model은 편향이 되어있다는 것을 알 수 있다.

 

반대로 오른쪽의 사진은 똑같이 nurse로 예측을 했지만,

의료기기에 focus를 맞춰서 예측을 한 것을 알 수 있다.

 

그렇기 때문에 오른쪽 모델이 편향이 되어있지 않은 최적의 Model이다.

 

 

 

 

 

Perturbation-based 기반 설명 방법

Perturbation-based

 -> 입력 데이터를 조금씩 바꾸면서 그에 대힌 출력을 보고 그 변화에 기반해서 설명

 

 

LIME(Local Interpretable Model-agnostic Explanations)

 -> 어떤 분류기가 딥러닝 모델처럼 매우 복잡한 비선형적 특징을 가지고 있더라도 주어진 데이터 포인트들에 대해서는 아주 Local하게는 다 선형적인 모델로 근사화가 가능하다는 관찰에서 출발

 -> 주어진 입력 데이터들(슈퍼 픽셀들)을 조금씩 교란하면서 그 데이터를 모델에 통과시키고 나온 출력을 보고 입출력 쌍들을 선형 모델로 근사하여 설명을 도출

 

 

 

LIME의 장단점

 - 장점 : Black-box

             -> 주어진 입력과 그에 대한 출력만 있으면 어떤 모델에 대해서도 다 적용할 수 있는 설명방법

 - 단점 : 계산이 매우 복잡(Black-box 방법의 한계)

           : 이미지 전체 특성에 대한 분류에는 한계가 존재

 

 

 

 

RISE(Randomized Input Sampling for Explanation)

 - Black-box 방법

 - LIME과 비슷하게 여러번 입력을 perturb해서 설명 구하는 방식

RISE

 S 사진 해석

 -> 여러개의 랜덤 마스킹이 되어잇는 입력에 대한 출력 score를 구하고 그 score(확률)들을 이용해서 이 마스크들을 가중치를 둬서 평균을 냈을 때 나오는 값

 

 

RISE의 장단점

 - 장점 : 더욱 명확한 saliency-map

 - 단점 : 매우 높은 계산 복잡도

           : 랜덤한 noisy가 존재

 

 

비교

 

 

Influence function-based

 - Training 이미지 없이 모델을 훈련시켰을 때 해당 test 이미지의 분류 스코어가 얼마나 변할 것인지를 근사화 하는 함수

 

- 모델간의 차이를 보여줌