그래디언트 가중 클래스 활성화 매핑(Gradient-weighted Class Activation Mapping, Grad-CAM)은 딥러닝에서 합성곱 신경망의 결정을 더 해석 가능하게 만드는 기법이다. 이 기법은 특정 예측에 가장 큰 영향을 미친 입력 이미지의 영역을 강조하는 거친 히트맵 형태의 시각화를 생성한다. 특정 네트워크 구조를 요구했던 초기 클래스 활성화 매핑 방법과 달리, Grad-CAM은 구조 변경이나 재학습 없이 다양한 CNN 기반 모델에서 작동한다. 이 기법은 2017년 Ramprasaath R. Selvaraju, Michael Cogswell, Abhishek Das, Ramakrishna Vedantam, Devi Parikh, Dhruv Batra가 소개했으며, IEEE 국제 컴퓨터 비전 학회(ICCV)에서 발표되었다. 이 방법은 모델 디버깅, 과학적 분석, AI 시스템에 대한 신뢰 구축을 위한 표준 도구가 되었다.
Grad-CAM의 핵심 아이디어는 마지막 합성곱 계층의 특징 맵에 대한 대상 클래스 점수의 그래디언트를 사용하는 것이다. 이러한 그래디언트는 특징 맵의 각 공간 위치가 클래스 점수에 얼마나 기여하는지를 나타낸다. Grad-CAM은 그래디언트를 공간 차원에 대해 전역 평균 풀링하여 각 특징 맵 채널의 중요도 가중치를 얻는다. 그런 다음 특징 맵의 가중 조합을 ReLU 활성화 함수에 통과시켜 양의 기여만 유지함으로써 거친 위치 파악 맵을 생성한다. 이 맵은 입력 이미지 크기로 업샘플링되어 모델이 '본' 위치를 보여주기 위해 겹쳐진다.
Grad-CAM은 이전 접근법을 일반화한다. 2016년 Zhou 등이 소개한 원래 클래스 활성화 매핑(CAM) 방법은 전역 평균 풀링 계층과 완전 연결 계층이 필요했으며, 완전 연결 계층의 가중치가 채널 중요도로 사용되었다. Grad-CAM은 그래디언트를 사용하여 이러한 제약을 제거함으로써 합성곱 계층이 있는 모든 CNN에 적용 가능하게 만들었다. 이러한 유연성 덕분에 Grad-CAM은 컴퓨터 비전 연구와 응용 분야에서 널리 채택되었다.
수학적 공식화
주어진 이미지와 관심 클래스 c에 대해, y^c를 소프트맥스 계층 이전의 클래스 c에 대한 원시 점수(로짓)라고 하자. A^k를 공간 차원이 H x W인 마지막 합성곱 계층의 k번째 특징 맵이라고 하자. 채널 k에 대한 중요도 가중치 alpha_k^c는 y^c의 A^k에 대한 그래디언트를 전역 평균 풀링하여 계산된다:
alpha_k^c = (1/Z) * sum_i sum_j (dy^c / dA^k_{ij})
여기서 Z = H * W는 공간 위치의 수이다. Grad-CAM 맵 L^c는 특징 맵의 가중 조합에 ReLU를 적용한 것이다:
L^c = ReLU( sum_k alpha_k^c * A^k )
ReLU는 클래스 점수에 양의 영향을 미치는 특징만 강조되도록 보장한다. 결과 맵은 이중 선형 보간법을 사용하여 입력 이미지 해상도로 업샘플링되고 시각화를 위해 [0,1] 범위로 정규화된다.
다른 시각화 방법과의 비교
Grad-CAM은 입력 영역을 강조하여 모델 예측을 설명하는 속성 부여 방법 계열에 속한다. 다른 방법으로는 입력 이미지에 대한 클래스 점수의 그래디언트를 사용하는 살리언시 맵(Simonyan 등, 2013), 더 선명한 시각화를 위해 역전파를 수정하는 유도 역전파(Springenberg 등, 2014), 기준점에서 경로를 따라 그래디언트를 누적하는 통합 그래디언트(Sundararajan 등, 2017)가 있다. Grad-CAM은 클래스 판별적이며 거친 맵을 생성하는 반면, 유도 역전파는 세밀하지만 클래스 비판별적 맵을 생성한다. 두 방법의 장점을 결합하기 위해 저자들은 고차 그래디언트를 사용하여 특징 맵에 가중치를 부여하는 Grad-CAM++를 도입했으며, 유도 역전파와 Grad-CAM 맵을 요소별 곱셈하여 고해상도 클래스 판별적 시각화를 생성하는 유도 Grad-CAM 변형도 제안했다.
컴퓨터 비전에서의 응용
Grad-CAM은 다양한 분야에 적용되었다. 의료 영상에서 방사선 전문의가 모델이 X선, MRI 또는 CT 스캔에서 병변이나 이상을 표시하는 이유를 이해하는 데 도움을 준다. 예를 들어, 흉부 X선에서 폐렴을 감지하도록 훈련된 모델은 강조된 영역이 폐 혼탁에 해당하는지 확인하여 검증할 수 있다. 자율 주행에서 Grad-CAM은 모델이 차선 감지나 장애물 인식에 사용하는 도로 장면의 부분을 보여주어 안전 검증에 도움을 준다. 새 종이나 자동차 모델과 같은 세분류 분류에서 Grad-CAM은 예측을 유도하는 판별적 특징(예: 부리 모양이나 헤드라이트)을 드러낸다. 또한 원격 감지, 농업, 산업 검사에도 사용되었다.
한계와 비판
널리 사용됨에도 불구하고 Grad-CAM에는 한계가 있다. 위치 파악 맵은 일반적으로 마지막 합성곱 계층의 해상도로 거칠어 세부 사항을 놓칠 수 있다. 이 방법은 대상 계층 선택에 민감하며, 더 이른 계층을 사용하면 더 세밀하지만 클래스 판별력이 낮은 맵을 생성한다. Grad-CAM은 모델이 부정적 증거(예: 특징의 부재)를 사용하거나 그래디언트가 노이즈가 많을 때 오해의 소지가 있는 시각화를 생성할 수 있다. 일부 연구는 Grad-CAM 맵이 예측을 변경하지 않고 적대적 섭동에 의해 조작될 수 있음을 보여주어 해석 가능성에 대한 신뢰성에 우려를 제기한다. 또한 이 방법은 모델의 결정이 공간적 특징에 기반한다고 가정하지만, 이는 모든 구조에 해당하지 않을 수 있다.
확장과 변형
Grad-CAM의 한계를 해결하기 위해 여러 확장이 제안되었다. Grad-CAM++(Chattopadhay 등, 2018)는 양의 부분 도함수의 가중 조합을 사용하여 특히 여러 객체 인스턴스에 대해 더 정확한 맵을 생성한다. Score-CAM(Wang 등, 2020)은 신뢰도 증가를 가중치로 사용하여 그래디언트를 제거함으로써 노이즈를 줄인다. Ablation-CAM(Desai와 Ramaswamy, 2020)은 절제 연구를 사용하여 채널 중요도를 계산한다. Layer-CAM(Jiang 등, 2021)은 그래디언트 기반과 그래디언트 비기반 방법을 결합하여 고해상도 맵을 생성한다. 이러한 변형은 약한 지도 객체 위치 파악을 위해 PASCAL VOC 및 COCO와 같은 데이터셋에서 벤치마킹되었으며, Grad-CAM과 후속 모델은 경쟁력 있는 결과를 달성한다.
다른 AI 모델과의 통합
Grad-CAM은 주로 CNN을 위해 설계되었지만, 그 원리는 다른 구조에도 적용되었다. 비전 트랜스포머(ViT)의 경우 주의 맵을 직접 사용할 수 있지만, Grad-CAM과 같은 그래디언트 기반 방법은 클래스 토큰의 주의 헤드에 적용되었다. 대규모 언어 모델과 생성 모델에서는 유사한 그래디언트 기반 속성 부여 기법이 토큰 수준 예측을 설명하는 데 사용되지만, 공간적 해석은 다르다. Grad-CAM은 또한 잔차 네트워크 및 U-Net 구조와 결합되어 분할 작업에 사용되며, 입력의 어떤 부분이 분할 결정을 주도하는지 식별하는 데 도움을 준다.
실용적 사용과 도구
Grad-CAM은 널리 사용되는 딥러닝 프레임워크에서 구현된다. PyTorch에서는 torchcam 및 pytorch-grad-cam과 같은 라이브러리가 즉시 사용 가능한 함수를 제공한다. TensorFlow는 tf-explain을 통해 유사한 구현을 제공한다. 원저자들은 논문의 코드가 포함된 저장소를 공개했으며, 이는 널리 포크되고 확장되었다. 일반적인 사용 사례에서 실무자는 사전 훈련된 모델(예: VGG16, ResNet50 또는 EfficientNet)을 로드하고 대상 계층(일반적으로 마지막 합성곱 블록)을 선택한 다음 주어진 이미지와 클래스에 대해 Grad-CAM을 계산한다. 출력은 OpenCV 또는 matplotlib과 같은 라이브러리를 사용하여 이미지에 겹칠 수 있는 히트맵이다. 해석 가능한 AI에 대한 많은 온라인 튜토리얼과 강좌는 Grad-CAM을 핵심 주제로 포함한다.
영향과 미래 방향
Grad-CAM은 설명 가능한 AI 분야에 상당한 영향을 미쳤다. 수천 번 인용되었으며 해석 가능성 연구의 표준 기준선이다. 그 성공은 강조된 영역이 예측에 인과적으로 책임이 있는지 검증하는 방법을 포함하여 충실하고 견고한 설명에 대한 추가 연구를 촉발했다. 미래 방향에는 Grad-CAM을 비디오 데이터, 3D 의료 볼륨, 시각과 언어를 결합한 다중 모달 모델로 확장하는 것이 포함된다. AI 시스템이 의료 및 자율 주행과 같은 고위험 분야에 배포됨에 따라 Grad-CAM과 같은 기법은 감사와 신뢰 구축에 필수적으로 유지될 것이다.
참고 문헌
Selvaraju, R. R., Cogswell, M., Das, A., Vedantam, R., Parikh, D., & Batra, D. (2017). Grad-CAM: Visual Explanations from Deep Networks via Gradient-based Localization. ICCV.
Zhou, B., Khosla, A., Lapedriza, A., Oliva, A., & Torralba, A. (2016). Learning Deep Features for Discriminative Localization. CVPR.
Chattopadhay, A., Sarkar, A., Howlader, P., & Balasubramanian, V. N. (2018). Grad-CAM++: Generalized Gradient-based Visual Explanations for Deep Convolutional Networks. WACV.
Wang, H., Wang, Z., Du, M., Yang, F., Zhang, Z., Ding, S., Mardziel, P., & Hu, X. (2020). Score-CAM: Score-Weighted Visual Explanations for Convolutional Neural Networks. CVPR Workshop.