abstract
본 논문에서는 CNN 기반 모델에 대해 visual explanations을 생성하는 기법을 제안한다. 이를 통해 이러한 모델들이 더 투명하고 설명 가능해진다. Gradient-weighted Class Activation Mapping(Grad-CAM)은 분류 네트워크에서 특정 클래스의 기울기를 최종 합성곱 계층으로부터 흘려보내어, 해당 개념을 예측하는 데 중요한 이미지 영역을 강조하는 localization map을 생성한다. 이전 기법들과 달리, Grad-CAM은 다양한 CNN 계열 모델들(이미지 캡셔닝, 멀티 모달 입력 등)에 아키텍처 변경이나 재학습 없이 그대로 적용할 수 있다.
Grad-CAM을 기존의 fine-grained 시각화 기법들과 결합하여, 고해상도 class-discriminative visualization인 Guided Grad-CAM을 만들고, 이를 다양한 CNN 계열 모델들에 적용한다. 우리의 시각화 기법은 다음과 같은 장점을 보여준다.
① 실패 사례에 대한 인사이트 제공
모델의 실패 사례에 대한 시각화된 히트맵으로 보여줘서 feature map이 어디에 주목했는지 파악가능하다.
② ILSVRC-15 weakly-supervised localization 성능 향상
클래스 레이블만으로 위치 정보를 학습하는 방식에서도, Grad-CAM 기반 시각화가 기존 CAM 계열 기법을 뛰어넘는 정확도를 기록해, 약지도 학습 환경에서의 객체 위치 검출(localization) 정밀도를 크게 끌어올린다.
③ 적대적 교란(adversarial perturbation)에 대한 강건성
입력 이미지에 작은 노이즈나 교란을 줘도 Grad-CAM이 뽑아내는 강조된 영역이 크게 변하지 않는다.
④ 히트맵의 모델 충실도 보장
Grad-CAM이 생성하는 히트맵이 실제 네트워크가 연산 과정에서 활용한 내부 activation과 높은 일치도를 보인다.
⑤ dataset bias을 식별하여 모델의 generalization 지원
학습 데이터에 내재된 편향을 시각적으로 드러내서 모델이 어떤 특징에 과도하게 의존하는지 파악할 수 있다.
❓weakly-supervised localization란?
학습 단계에서는 바운딩 박스 없이 클래스 레이블만 사용하고, 평가 단계에서 각 클래스별 바운딩 박스를 예측한다.
introduction
인공지능에서 해석 가능성(interpretability)은 매우 중요하다. 지능형 시스템에 대한 신뢰를 구축하고 이를 우리 일상에 의미 있게 통합하기 위해서는 왜 이 예측을 했는가를 스스로 설명할 수 있는 투명한 모델을 만들어야한다.
일반적으로 정확도(accuracy) 와 해석 가능성(interpretability) 사이에는 트레이드오프가 존재한다. 예를 들어, 고전적인 rule-based systems은 해석하기 쉽지만, 정확도가 떨어지는 경향이 있다. 최근 200레이어가 넘는 ResNets는 여러 과제에서 최첨단 성능을 보여주지만 모델의 복잡성은 해석 난이도를 더욱 높인다. 그래서 최근에는 해석 가능성과 정확성의 스펙트럼을 탐색하는 연구가 활발히 진행되고 있다.
Zhou은 CAM(Class Activation Mapping)이라는 기법을 제안하여, 완전 연결층을 포함하지 않는 제한된 종류의 CNN에서 판별적 영역(discriminative regions)을 찾아내는 방법을 내놓았다. 본질적으로 이 기법은 모델의 성능을 포기하는 대신 투명성을 얻는 방향이다. 반면, Grad-CAM 접근법은 딥 모델을 그대로 유지하면서 해석 가능성을 부여한다. Grad-CAM 접근법은 CAM을 일반화한 기법으로서 다음 세 가지를 모두 지원한다.
① 완전 연결층을 포함하는 CNN (예: VGG)
② 구조화된 출력을 생성하는 CNN (예: 이미지 캡셔닝)
③ 다중 모달 입력이나 강화 학습에 사용되는 CNN(예: VQA)
이처럼 Grad-CAM은 폭넓은 CNN 계열 모델에 적용 가능하면서, 해석 가능성과 성능 간의 트레이드오프를 회피한다.
이미지 분류 과제에서 좋은 시각적 설명은 다음 두 가지를 만족해야한다.
① 클래스-구분성(class-discriminative)
이미지 내에서 해당 클래스를 정확히 localize한다.
② 고해상도(high-resolution)
fine-grained 디테일을 포착한다.
픽셀 공간 기반 그래디언트 시각화인 Guided Backpropagation은 고해상도로 이미지의 디테일을 잘 강조하지만, 클래스-구분성은 없다. 반면, CAM이나 Grad-CAM 같은 로컬라이제이션 기법은 고해상도는 안되지만 클래스-구분성이 매우 뛰어나다.

(a), (g): 원본 이미지
(b), (h): Guided Backpropagation
(c), (i), (f), (l): Grad-CAM
(d), (j): Guided Grad-CAM
(e), (k): Occlusion map
두 기법의 장점을 결합하기 위해, 우리는 기존의 픽셀 공간 그래디언트 시각화에 Grad-CAM을 융합하여 Guided Grad-CAM을 제안한다. Guided Grad-CAM은 고해상도이면서도 클래스-구분적인 시각화를 동시에 제공한다.
Related Work
ⓐ CNN 시각화
여러 선행 연구들은 중요한 픽셀을 강조함으로써 CNN의 예측을 시각화해왔다. 특정 픽셀의 값 변동이 예측 점수에 가장 큰 영향을 미치는 픽셀을 찾아내는 방식이다. Simonyan은 예측된 클래스 점수에 대한 각 픽셀 강도의 편미분을 시각화했고, Guided Backpropagation과 Deconvolution은 raw gradient에 수학적 수정을 가해, 질 좋은 정밀 시각화를 만들었다. 이 방법들은 고해상도의 세밀한 시각화를 제공하지만, 클래스-구분성은 부족하다. 클래스가 달라도 시각화 결과가 거의 똑같이 나온다.
최대 활성화를 유도하는 이미지를 합성하는 방법이나 잠재 표현(latent representation)을 역변환하는 방법도 있다. 이들은 고해상도이면서 클래스-구분성도 확보할 수 있지만, 특정 입력 이미지가 아닌 네트워크 전체 동작을 시각화한다는 한계가 있다.
ⓑ 모델 신뢰도 평가
해석 가능성에 대한 개념들과 모델에 대한 신뢰도를 평가하는 방법들에 착안하여, 우리는 Grad-CAM 시각화 기법을 인간 대상 실험을 통해 평가했다.
ⓒ 기울기 기반 중요도 정렬
기울기 기반 뉴런 중요도를 활용하여, 이를 인간의 클래스별 도메인 지식과 매핑함으로써 새로운 클래스를 위한 분류기를 학습하는 방법도 있다. 이 기울기 기반 중요도를 인간의 attention maps에 정렬시켜, 비전과 언어 모델이 인간의 시각적 주의 패턴과 더욱 일치하도록 만드는 기법도 있다.
ⓓ Weakly-supervised localization
약지도 학습 로컬라이제이션은 이미지에 바운딩 박스 없이 오직 전체 클래스 레이블만으로 물체의 위치를 찾아내려는 과제다. CAM 방식은 분류용 CNN에서 완전연결층을 전역 평균 풀링과 합성곱층으로 바꿔 클래스별 특성 맵을 직접 얻도록 해 로컬라이즈하지만 아키텍처 변경이 필요하고 정확도가 떨어진다. 반면 Grad-CAM은 마지막 합성곱층의 피처맵에 출력 클래스에 대한 기울기 정보를 가중치로 곱해 히트맵을 만들기 때문에, 기존의 어떠한 CNN 구조라도 순전파 한 번과 부분 역전파 한 번만으로 클래스-구분적 로컬라이제이션이 가능하며 다양한 모델에도 적용할 수 있다.
Grad-CAM
CNN의 더 깊은 레이어가 물체의 고수준 시각 정보를 더 잘 포착한다. 마지막 합성곱층의 뉴런들은 이미지 내에서 클래스별 의미 있는 부분을 탐지하도록 학습된다. Grad-CAM은 특정 클래스 c에 대한 예측 점수 yᶜ를 그 레이어의 k번째 활성화 맵 Aᵏ에 대해 미분하여, 이 역전파된 기울기 정보를 너비(u)와 높이(v) 차원에 걸쳐 전역 평균 풀링해서 뉴런 중요도 가중치 스칼라 αₖᶜ를 계산한다. 이 가중치들은 각 채널 k의 특성 맵 Aᵏ에 곱해져 클래스에 특화된 활성화 지도를 생성하는 데 사용된다.
αₖᶜ를 계산할 때, A 이후의 네트워크에 대한 기울기가 차례로 곱해지는 역전파 과정인 깊은 네트워크를 선형화한 값이 얻어진다. 즉 αₖᶜ는 특성 맵 k가 목표 클래스 c에 얼마나 중요한지를 나타내는 가중치다.
이 가중치들을 이용해 전방 패스로 얻어진 각 채널별 활성화 맵 Aᵏ에 αₖᶜ를 곱한 뒤 모두 더하고, 그 결과에 ReLU를 적용하면 클래스 c에 대한 분류 결정 과정을 시각화할 수 있는 최종 국소화 맵 Lᴄ가 만들어진다.

마지막 합성곱층 특성맵과 동일한 크기의 히트맵 Lᴄ가 생성된다. 우리는 관심 클래스의 점수 yc를 높이는 데 긍정적으로 기여한 특징만 보고 싶기 때문에, 채널별 활성화 맵의 선형 결합 결과에 ReLU를 적용한다. 음수 값은 다른 클래스에 속할 가능성이 크므로 0으로 제거한다.
yc는 이미지 분류 CNN에서 생성된 클래스 점수일 필요는 없다. 그것은 캡션에서의 단어들이나 질문에 대한 답과 같은 미분 가능한 값일 수 있다.
❓전역 평균 풀링(Global Average Pooling, GAP)이란?
u × v크기의 특성 맵을 스칼라 값으로 변환하는 과정이다. 특성맵의 크기가 u × v라면, 각 특성 맵의 모든 픽셀 값을 평균 내어서 하나의 스칼라 값을 계산한다. 이 과정을 통해 특성 맵의 공간적 차원을 없애고, 단일 숫자로 압축한다.
ⓐ Grad-CAM이 CAM을 일반화한다.
CAM은 특정 아키텍처를 가진 이미지 분류에서 사용된다. 전역 평균 풀링을 통해 합성곱 특성 맵을 풀링한 후, 이 값을 소프트맥스 층에 직접 입력하여 각 클래스의 점수를 계산한다. 최종 직전 레이어에서 K개의 특성 맵(u × v)를 생성하고, Ak(ij)는 특성 맵 Ak의 위치 (i, j)에서의 활성화를 나타낸다. 이 특성 맵들은 이후 전역 평균 풀링을 통해 공간적으로 풀링되고, 선형 변환을 거쳐 각 클래스 c에 대한 점수 Yᶜ를 생성한다.


wₖᶜ는 k번째 특성 맵과 c번째 클래스를 연결하는 가중치다. wₖᶜ에 대한 표현은 Grad-CAM에서 사용되는 αₖᶜ와 동일하다. 따라서 Grad-CAM은 CAM의 일반화다. 이 일반화는 이미지 캡셔닝과 VQA(시각적 질문응답)와 같은 더 복잡한 상호작용을 가진 합성곱 층이 연속적으로 연결된 CNN 기반 모델들에서도 시각적 설명을 생성할 수 있게 한다.
ⓑ Guided Grad-CAM
Grad-CAM은 클래스-구분적(class-discriminative)이고 관련된 이미지 영역을 로컬라이징할 수 있지만, 픽셀 단위의 세밀한 디테일을 강조하는 능력이 부족하다. 이러한 디테일을 강조하는 방법으로는 픽셀 공간 그래디언트 시각화 기법인 Guided Backpropagation이나 Deconvolution이 있다.
이 두 기법의 장점을 결합하기 위해, 우리는 Guided Backpropagation과 Grad-CAM 시각화를 원소별 곱셈(element-wise multiplication)을 통해 융합한다.
ⓒ 반사실적 설명
Grad-CAM에 약간의 수정을 가하면, 네트워크가 예측을 변경할 수 있도록 도와주는 영역을 강조하는 설명을 얻을 수 있다. 모델이 예측을 내리기 위해 꼭 필요한 부분을 찾아내는 것이다. 우리는 이 설명 방식을 반사실적 설명(counterfactual explanations)이라고 부른다. yᶜ의 그래디언트를 합성곱층의 특성맵 A에 대해 부정한다. 가중치를 적용한 특성맵 A의 합을 계산하고, ReLU를 거쳐 반사실적 설명을 계산한다.

Evaluating Localization Ability of Grad-CAM
ⓐ Weakly-supervised Localization
Grad-CAM의 위치 지정 능력을 평가한다. 분류와 마찬가지로 평가에서는 top-1과 top-5 예측된 카테고리 모두에 대해 수행된다. 이미지가 주어지면 먼저 네트워크에서 클래스 예측을 얻는다. 각 예측된 클래스에 대해 Grad-CAM 맵을 생성한 뒤, 최대 강도의 15%를 임계값으로 사용하여 이진화한다. 이렇게 하면 연결된 픽셀 영역이 생성되며, 가장 큰 영역을 감싸는 바운딩 박스를 그린다. 이는 약한 지도 학습(weakly-supervised localization)이다. 모델은 훈련 중에 바운딩 박스 주석을 접한 적이 없지만 바운딩 박스를 예측한다.
우리는 Grad-CAM의 위치 지정을 VGG-16, AlexNet, GoogleNet으로 사전 훈련된 모델들을 사용하여 평가한다. val 세트에서 top-1과 top-5 위치 지정 오류를 나타냈다. Grad-CAM의 위치 지정 오류는 c-MWP와 Backprop에 비해 훨씬 우수하다. Grad-CAM은 또한 VGG-16에서 CAM보다 더 나은 top-1 위치 지정 오류를 달성한다. CAM은 모델 아키텍처를 변경하고 재훈련을 필요로 하므로 분류 오류가 나빠지지만, Grad-CAM은 분류 성능을 저하시키지 않는다.

ⓑ Weakly-supervised Segmentation
Semantic segmentation는 이미지의 각 픽셀에 객체 클래스 또는 배경을 할당하는 작업이다. 이는 도전적이고 픽셀 수준의 주석이 필요하다. 약한 지도 학습(weakly-supervised segmentation)에서는 이미지 수준의 주석만을 사용하여 객체를 세분화한다. 최근 작업에서 약한 지도 학습 이미지 세분화 모델을 훈련시키기 위한 새로운 손실 함수를 소개했다. 그들의 손실 함수는 세 가지 원칙에 기반을 두고 있다.
① 약한 위치 지정 단서(weak localization cues)로 시드를 생성하여 세분화 네트워크가 이 단서를 일치시키도록 유도한다.
② 이미지에서 어떤 클래스가 있는지에 대한 정보를 바탕으로 객체 시드를 합리적인 크기의 영역으로 확장한다.
③ 훈련 시 불완전한 경계를 해결하기 위해 세분화를 객체 경계에 맞게 제한한다.
그러나 그들의 알고리즘은 약한 위치 지정 시드의 선택에 민감하며, 시드가 없으면 네트워크가 객체를 정확하게 위치 지정하는 데 실패한다. 그들은 CAM 맵을 객체 시드로 사용하여 클래스의 약한 위치 지정을 수행했다. 우리는 CAM 맵을 Grad-CAM으로 교체해서 PASCAL VOC 2012 세분화 작업에서 Intersection over Union (IoU) 점수 49.6을 얻었다(이전에 CAM을 사용했을 때는 44.6점)
ⓒ Pointing Game 실험
pointing game 실험은 타겟 객체를 장면에서 로컬라이징하는 다양한 시각화 방법의 구별 능력을 평가한다. 그들의 평가 프로토콜은 각 시각화 기법에 실제 객체 라벨을 제공한 후, 생성된 히트맵에서 최대 활성화 지점을 추출하는 방식으로 진행된다. 그 후, 이 지점이 타겟 객체 카테고리의 주석이 달린 인스턴스 중 하나에 포함되는지 평가하여 hit 또는 miss로 간주한다. 로컬라이제이션 정확도는 다음과 같이 계산된다.

위 평가는 시각화 기법의 precision만을 측정한다. 우리는 이를 수정하여 recall도 측정한다. CNN 분류기에서 상위 5개 클래스 예측에 대한 로컬라이제이션 맵을 계산하고, 포인팅 게임 설정을 사용하여 평가한다. 추가 옵션으로, 맵에서 최대 활성화 지점이 임계값 이하일 경우 상위 5개 예측 중 어떤 것이든 거부할 수 있다. 즉, 시각화가 그라운드 트루스 카테고리에서 제외된 예측을 정확하게 거부하면 히트로 간주한다. 우리는 Grad-CAM이 c-MWP보다 상당한 차이로 더 나은 성능을 보인다는 것을 발견했다.
Evaluating Visualizations
이 섹션에서는 모델 예측에 대한 해석 가능성과 충실도 간의 상충 관계를 이해하기 위해 수행한 인간 실험 및 연구를 설명한다.
ⓐ Evaluating Class Discrimination
Grad-CAM이 클래스 간 구별을 돕는지 측정하기 위해, 우리는 네 가지 기법을 통해 카테고리별 시각화를 얻는다. (Deconvolution, Guided Backpropagation, Deconvolution Grad-CAM, Guided Grad-CAM). 우리는 이 시각화들을 43명의 작업자에게 보여주고, "이 이미지에 묘사된 것은 두 객체 카테고리 중 어떤 것인가요?"라고 묻는다.
직관적으로, 좋은 예측 설명은 클래스에 대해 구별 가능한 시각화를 생성하는 것이다. 이 실험은 90개의 이미지-카테고리 쌍에 대해 모든 4가지 시각화를 사용하여 진행되었으며, 각 이미지에 대해 9개의 평가가 수집되었고, 그라운드 트루스와 비교하여 평균 정확도를 계산했다.

Guided Grad-CAM을 볼 때, 사람들은 61.23%의 경우에 시각화된 카테고리를 정확히 식별했다. Guided Grad-CAM은 모든 방법 중에서 가장 높은 성능을 보였습니다.
ⓑ Evaluating Trust
Guided Backpropagation과 Guided Grad-CAM 시각화를 비교하여 어떤 설명이 더 신뢰할 수 있는지 평가한다. AlexNet의 시각화와 VGG-16의 시각화, 그리고 예측된 객체 카테고리가 주어지면, 54명의 사람들은 두 모델의 신뢰성을 서로 비교하여 -2~2의 척도로 평가한다.
사람들은 두 모델이 동일한 예측을 했음에도 불구하고 예측 설명만 보고 더 정확한 분류기를 식별할 수 있었다. Guided Grad-CAM은 더 높은 점수인 1.27을 기록했다. 따라서 Guided Grad-CAM는 개별 예측 설명만으로도 더 잘 일반화하는 모델에 신뢰를 줄 수 있도록 도와준다.
ⓒ Faithfulness vs Interpretability
시각화의 충실도(faithfulness)는 모델이 학습한 기능을 정확하게 설명하는 능력이다. 시각화의 해석 가능성(interpretability)과 충실도 사이에는 상충 관계가 존재한다. 우리는 충실도를 평가하려고 한다. 입력 데이터에서의 설명은 모델에 충실해야한다. 이 실험에서는 이미지 차폐(image occlusion) 방법을 사용하여 모델의 예측이 입력 이미지의 특정 부분에 얼마나 의존하는지를 측정한다. 입력 이미지의 일부가 가려졌을 때 CNN 점수의 차이를 측정한다. Grad-CAM과 Guided Grad-CAM은 차폐된 부분이 모델의 예측에 영향을 미친 중요한 부분을 정확하게 강조했다. 그 순위 상관계수는 각각 0.254와 0.261이다. 반면 Guided Backpropagation, c-MWP, CAM은 각각 0.168, 0.220, 0.208을 기록했다. 이 값은 PASCAL 2007 검증 세트의 2510개 이미지에 대해 평균적으로 얻어진 값이다. 이는 Grad-CAM이 이전 방법들보다 모델에 더 충실하다는 것을 보여준다. 차폐 맵과의 상관 관계를 통해 Grad-CAM이 모델에 더 충실하다는 것을 확인한다.
Diagnosing image classification CNNs with Grad-CAM
이 섹션에서는 이미지 분류 CNN의 실패 유형 분석, 적대적 노이즈(adversarial noise)의 영향 이해, 데이터셋의 편향 식별 및 제거와 같은 다양한 측면에서 Grad-CAM의 활용을 추가로 보여준다.
ⓐ Analyzing failure modes for VGG-16
VGG-16이 어떤 실수를 하고 있는지를 파악하기 위해. 먼저 모델이 예측을 실패한 예제들의 목록을 가져온다. 이러한 오분류된 예제들에 대해, Guided Grad-CAM을 사용하여 실제 정답 클래스와 모델이 예측한 클래스 각각에 대한 시각화를 생성한다. 겉보기에 말이 안 되는 예측도 시각화를 통해 보면 나름의 합리적인 이유가 있다는 것을 확인할 수 있다. 이런 관찰은 이전의 연구에서도 언급된 바 있다. Guided Grad-CAM 시각화의 주요 장점은 고해상도이며 클래스 구별력이 뛰어나기 때문에, 이런 분석을 보다 쉽게 수행할 수 있다는 점이다.

ⓑ Effect of adversarial noise on VGG-16
현재의 딥러닝 네트워크는 적대적 예제(adversarial examples)에 취약하다. 적대적 예제는 입력 이미지에 사람이 인식할 수 없을 정도의 미세한 노이즈를 가함으로써, 모델이 잘못된 클래스로 높은 확신을 가지고 오분류하게 만드는 이미지를 말한다.
우리는 ImageNet으로 사전 학습된 VGG-16 모델에 대해, 이미지에 존재하지 않는 카테고리에 0.9999 이상의 높은 확률을 부여하고, 실제로 존재하는 카테고리에는 낮은 확률을 부여하도록 적대적 이미지를 생성했다. 그 후, 실제로 존재하는 카테고리들에 대해 Grad-CAM 시각화를 계산했다.
네트워크는 해당 클래스들이 존재하지 않는다고 확신하지만, Grad-CAM은 여전히 해당 객체를 정확히 찾아낸다. 이 결과는 Grad-CAM이 적대적 노이즈에 대해 강건하다는 것을 보여준다.

ⓒ Identifying bias in dataset
이 섹션에서는 Grad-CAM의 또 다른 활용 사례인 학습 데이터셋의 편향 식별 및 완화에 대해 설명한다. 편향된 데이터셋으로 학습된 모델은 실제 환경에서 일반화되지 않거나, 편견과 고정관념을 지속적으로 강화할 수 있다. 우리는 ImageNet으로 사전 학습된 VGG-16 모델을 doctor vs nurse 이진 분류 작업에 맞게 파인튜닝했다. 학습 및 검증 데이터셋은 각 클래스에 대해 인기 이미지 검색 엔진에서 상위 250개의 관련 이미지를 수집하여 구성했다. 반면, 테스트셋은 두 클래스에 걸쳐 성별 분포가 균형 있게 조정된 데이터로 구성했다.
훈련된 모델은 검증 데이터에서는 높은 정확도를 보였지만, 테스트 데이터에서는 82% 정확도로 일반화 성능이 떨어지는 결과를 보였다. Grad-CAM을 통해 모델의 예측을 시각화한 결과, 모델이 의사와 간호사를 구분할 때 사람의 얼굴이나 헤어스타일을 주로 참고한다는 것이 드러났다. 즉, 모델이 gender stereotype을 학습한 것이다. 실제로, 모델은 여성 의사를 간호사로, 남성 간호사를 의사로 잘못 분류하는 경우가 많았다. 이미지 검색 결과 자체가 성별 편향을 가지고 있었는데, 의사 이미지의 78%가 남성, 간호사 이미지의 93%가 여성이었다.

Grad-CAM 시각화를 통해 얻은 이러한 직관을 바탕으로, 우리는 훈련 데이터셋에서의 편향을 줄이기 위해 남성 간호사와 여성 의사 이미지를 추가했다. 이때 각 클래스당 이미지 수는 이전과 동일하게 유지했다. 이렇게 다시 학습된 모델은 더 나은 일반화 성능(테스트 정확도 90%)을 보였을 뿐만 아니라, 올바른 이미지 영역을 참고하는 경향도 나타냈다.
이 실험은 Grad-CAM이 데이터셋의 편향을 탐지하고 완화하는 데 도움을 줄 수 있다는 개념을 증명한다. 이는 단순히 모델 성능을 향상시키는 것을 넘어, 공정하고 윤리적인 결과를 위해서도 중요하다.
ⓓ Textual Explanations with Grad-CAM
이제 텍스트 기반 설명(textual explanation)을 생성하는 방법을 살펴보겠다. 최근 연구에서는 학습된 신경망의 합성곱 층 뉴런에 자동으로 이름을 붙이는 방법을 제안했다. 이 이름들은 각 뉴런이 이미지에서 탐지하려는 개념을 나타낸다.
먼저 마지막 합성곱 층의 뉴런 이름들을 가져온다. 클래스별 뉴런 중요도 αₖ에 따라 상위 5개 및 하위 5개의 뉴런을 정렬하여 선택한다. 이 뉴런들의 이름을 텍스트 설명으로 활용할 수 있다. Places365 데이터셋으로 학습된 이미지 분류 모델(VGG-16)에 대한 시각적 설명과 텍스트 설명의 예시를 보여준다.

(a)에서는 'Book-store' 클래스를 예측할 때, positive 뉴런들이 book, shelf와 같은 직관적인 개념을 탐지한다. negative 뉴런들은 sky, road, water, car처럼 'Book-store' 이미지에 등장하지 않는 개념을 탐지한다.
(b)에서는 ‘waterfall’을 예측할 때, 시각적 설명과 텍스트 설명 모두 ‘water’와 ‘stratified’ 같은 개념을 강조하는데, 이들은 폭포 이미지를 설명하기에 적절한 개념이다.
Grad-CAM for Image Captioning and VQA
우리는 Grad-CAM을 이미지 캡셔닝 및 VQA(시각 질문 응답) 같은 Vision & Language 작업에 적용합니다. 기존 시각화 기법들과 비교했을 때, Grad-CAM은 이러한 작업에 대해 더 해석 가능한 시각적 설명(visual explanation)을 제공한다. 기존 시각화 기법들은 다음과 같은 문제점이 있다.
① 예측이 달라져도 히트맵이 거의 변하지 않는다.
② 클래스 구별력이 부족하다.
③ 해당 모델 구조에 적용할 수 없는 경우도 있다.
Grad-CAM은 이런 문제들을 피하면서, 이미지 캡션 생성이나 질문 응답 같은 복잡한 작업에서도 시각적으로 납득할 수 있는 설명을 만들어낼 수 있다.
ⓐ Image Captioning
이 섹션에서는 Grad-CAM을 사용하여 Image Captioning 모델의 spatial support를 시각화한다. 캡션이 주어지면, 우리는 해당 캡션의 로그 확률에 대해 CNN의 마지막 합성곱 층의 유닛에 대한 그래디언트를 계산하고, Grad-CAM 시각화를 생성한다.

첫 번째 예제에서는, 생성된 캡션에 대해 Grad-CAM이 연들과 사람들의 모든 출현 위치를 정확히 찾아낸다. 이 객체들이 상대적으로 작은 크기임에도 불구하고 잘 포착했다.
다음 예제에서는 Grad-CAM이 피자와 남자를 정확히 강조하지만, 근처에 있는 여자는 무시한다. 왜냐하면 해당 캡션에는 woman이 언급되어 있지 않기 때문이다.
ⓑ Visual Question Answering(VQA)
일반적인 VQA 파이프라인은 이미지를 처리하기 위한 CNN과, 질문을 처리하기 위한 RNN 기반 언어 모델로 구성된다. 이미지 표현과 질문 표현은 결합되어 답변을 예측하는데, 이때는 보통 1000개 클래스 분류 문제로 간주된다. (답변 후보가 1000개이기 때문이다)
이 작업이 분류 문제이므로, 우리는 선택된 정답의 예측 점수 yc을 기준으로, Grad-CAM을 사용하여 이미지 위에 시각화를 생성함으로써 그 답변의 이유를 설명한다. 비록 VQA는 시각 정보와 언어 정보가 모두 관여하는 복잡한 작업이지만, VQA 모델에 대해 그림 12에서 제시된 Grad-CAM 설명 결과는 놀라울 정도로 직관적이고 유용한 정보를 제공한다. Grad-CAM의 성능을 occlusion map과의 상관관계(rank correlation)로 정량 평가한다. 그 결과, Grad-CAM의 순위 상관계수는 0.60 ± 0.038, Guided Backpropagation은 0.42 ± 0.038이다. Grad-CAM이 더 높은 충실도(faithfulness)를 가지며, 모델의 예측을 더 정확하게 반영하는 시각화임을 보여준다.
conclusion
이 연구에서는 Grad-CAM(Gradient-weighted Class Activation Mapping)이라는 새로운 클래스 구별적 시각화 기법을 제안했다. 이 방법은 시각적 설명(visual explanation)을 제공함으로써 CNN 기반 모델의 예측 과정을 더 투명하게 이해할 수 있도록 도와준다.
또한, 우리는 Grad-CAM이 생성한 로컬라이제이션 맵을 기존의 고해상도 시각화 기법과 결합하여, 해상도가 높고 클래스 구별력도 우수한 시각화 방법인 Guided Grad-CAM을 제안했다. 이러한 시각화는 기존 방법들보다 해석 가능성(interpretability)과 모델에 대한 충실도(faithfulness) 두 측면에서 더 뛰어난 성능을 보여준다.
광범위한 human study을 통해, 우리의 시각화가 클래스 간 차이를 더 정확하게 구분할 수 있고, 모델의 신뢰성 판단에 도움을 주며, 데이터셋 내의 편향을 식별하는 데 기여할 수 있음을 확인했다.
더 나아가, 우리는 Grad-CAM을 통해 중요한 뉴런을 식별하고, 그 정보를 활용해 textual explanation을 생성하는 방법도 제시했다. Grad-CAM은 이미지 분류, 이미지 캡셔닝, VQA(시각 질문 응답) 같은 다양한 작업에 널리 적용 가능하다는 것을 입증했다.
우리는 진정한 인공지능 시스템이란 단순히 지능적이기만 한 것이 아니라, 스스로의 믿음과 행동에 대해 사람에게 설명할 수 있어야 한다고 믿는다. 앞으로의 연구는 강화학습, 자연어 처리, 비디오 분석과 같은 다양한 영역에서 딥러닝 모델의 결정 과정을 설명하는 방법으로 확장될 수 있다.