본문 바로가기
AI

컴퓨터비전(CV)을 위한 설명 가능한 인공지능 (Explainable AI) 솔루션

by markbyun 2025. 5. 9.

설명 가능한 인공지능(Explainable AI, XAI)은 인공지능 모델의 예측 결과를 인간이 이해할 수 있는 방식으로 설명하는 기술입니다. 특히 CNN(Convolutional Neural Network) 기반의 이미지 분류 모델은 고성능에도 불구하고 그 내부 작동 방식이 블랙박스처럼 불투명하다는 비판을 받아왔습니다. 이러한 문제를 해결하기 위해 CAM(Class Activation Mapping) 계열의 기법들이 개발되었습니다.

** You can find the English verion of this content at this page (https://markbyun.blogspot.com/2025/05/gradient-free-explanation-ai-for-cnn.html)

1. 설명 가능한 인공지능(XAI) 소개

CAM은 CNN 기반의 이미지 분류 모델에서 모델이 어떤 이미지의 어느 부분을 보고 특정 클래스로 분류했는지 시각적으로 확인할 수 있는 기술입니다. 주로 모델 해석(Explainability) 목적으로 사용되며, 특히 의료 영상, 자율주행, 보안 등 신뢰성과 해석 가능성이 중요한 분야에서 활용됩니다.

CAM, Grad-CAM, Score-CAM 등의 방법은 입력 이미지 내에서 모델이 예측에 기여한 영역을 시각적으로 보여주며, CNN이 어떤 특징에 주목했는지 설명합니다. 하지만 각 기법마다 한계가 존재합니다:

  • CAM: 처음으로 각 클래스별로 네트웍이 입력 이미지의 어떤 부분에 집중했는지를 시각적으로 보여준 방법입니다. 하지만 이 계산을 위해서 네트웍의 Global Average Pooling (GAP) 레이어를 반드시 필요로 하므로 GAP 레이어가 없는 네트웍에는 적용할 수 없는 문제가 있습니다.

CAM 구조

  • Grad-CAM: CAM의 한계를 극복한 기법으로, 기존 CNN 구조 대부분에 적용 가능한 시각화 방법입니다. 특히 ResNet, EfficientNet, VGG, Transformer 기반 모델 등 다양한 아키텍처에서도 사용할 수 있어 널리 활용됩니다. Grad-CAM은 모델이 어떤 이미지의 어느 부분을 보고 특정 클래스를 예측했는지 설명해주는 시각화 기법입니다. CAM처럼 heatmap을 생성하지만, Gradient(기울기)를 활용하여 더 일반적인 네트워크에 적용할 수 있습니다. 즉, 특정 클래스 C 에 대한 출력값의 gradient를 마지막 합성곱 층의 feature map에 대해 구합니다. 따라서 이 gradient는 클래스 C가 예측될 때, 각 feature map이 얼마나 기여했는지를 보여줍니다. 하지만 gradient 계산이 필수적이라 모델 학습 시에만 사용할 수 있는 한계가 있습니다.

Grad-CAM 구조

  • Score-CAM: Grad-CAM의 단점을 개선한 기법으로, Gradient(기울기)를 사용하지 않고도 모델의 시각적 주의 영역을 추출할 수 있는 방식입니다. Score-CAM은 CNN의 특정 클래스 출력값을 기준으로, feature map이 모델의 예측에 어떤 영향을 미치는지를 직접 실험적으로 측정하여 시각화하는 기법입니다. 즉, CNN의 마지막 합성곱 층의 feature map을 하나씩 꺼내서 원래 이미지에 mask처럼 적용한 후 마스킹된 이미지를 모델에 넣고 해당 클래스의 score(logit) 를 확인하고 이 score를 해당 feature map의 중요도(weight) 로 사용. Gradient-free지만 매우 느려서 실시간 응용에 부적합.

Score-CAM 구조


2. Recipro-CAM의 등장 배경

Recipro-CAM은 위의 문제들을 해결하고자 제안된 기법으로, gradient-free 이면서도 빠르고 범용적인 시각화를 제공하는 방법입니다. 본 논문은 다음과 같은 질문을 바탕으로 Recipro-CAM을 설계하였습니다:

  • gradient 없이도 유의미한 클래스 활성화 맵을 생성할 수 있을까?
  • 실시간에 가까운 성능을 보장할 수 있을까?
  • 특정 구조에 종속되지 않고 다양한 CNN에 적용 가능한가?

3. Recipro-CAM의 알고리즘 구조

Recipro-CAM 구조

Recipro-CAM은 다음과 같은 단계로 구성됩니다:

  1. 특징 맵 추출: 마지막 혹은 임의의 중간 convolution layer에서 feature map을 획득
  2. 위치 기반 마스킹: 선택된 feature map의 각 위치에 대해 one-hot 마스크 생성 (1x1 binary mask) 후 마스크 적용된 feature map의 픽셀 개수에 해당하는 마스킹된 새로운 feature map들을 생성
  3. 전방 전달 수행: 마스킹된 feature map들을 선택된 레이어 다음 레이어의 입력으로 적용하여 해당 클래스에 대한 점수 획득
  4. 점수 행렬 구성: 각 위치에 대한 점수를 매트릭스로 조립
  5. 보간 및 정규화: 최종적으로 시각화를 위해 입력 해상도로 보간 및 정규화

이 과정은 gradient를 사용하지 않으며, 각 위치의 활성화가 모델 출력에 어떻게 기여하는지를 직접 측정하는 방식입니다. 또한 CNN 구조에 구애받지 않으며 속도 또한 뛰어납니다.


4. 실험 결과 및 비교

논문에서는 ImageNet, PASCAL VOC 등 다양한 데이터셋과 ResNet, DenseNet, ResNeXt 등 CNN 구조에서 Recipro-CAM의 성능을 평가하였습니다. 평가 지표로는 다음이 사용되었습니다:

  • Pointing Game Accuracy: 객체의 정확한 위치 예측 평가
  • ADCC: Average Drop, Increase, and Coherence 비교
  • 연산 속도: 실행 시간 비교

주요 결과:

  • ImageNet에서 Score-CAM 대비 ADCC 3.72% 개선
  • 최대 148배 빠른 실행 속도
  • Grad-CAM 수준의 정확도 유지

ReciproCAM, Grad-CAM, Score-CAM 정확도 비교


5. 실제 적용 가능성

Recipro-CAM은 효율성과 정확성을 모두 만족하기 때문에 의료영상 분석, 자율주행, 이상 탐지 등 실시간성과 설명가능성이 요구되는 분야에 적합합니다. 또한 gradient-free 방식이므로 edge 장치나 black-box 구조의 네트워크에도 쉽게 적용할 수 있습니다.

실행 속도 비교


6. 결론

Recipro-CAM은 설명 가능한 인공지능의 새로운 가능성을 제시합니다. Grad-CAM과 Score-CAM의 단점을 보완하면서도 높은 정확도와 해석력을 유지하며, 범용성과 속도 측면에서 강력한 장점을 지닙니다. 향후 다양한 분야에 응용될 가능성이 높습니다.

CAM 실행 결과 비교


참고문헌

  1. Byun, S.-Y., & Lee, W. (2022). Recipro-CAM: Fast Gradient-Free Visual Explanations for Convolutional Neural Networks. arXiv:2209.14074.
  2. Selvaraju, R. R., et al. (2017). Grad-CAM: Visual Explanations from Deep Networks via Gradient-based Localization.
  3. Wang, H., et al. (2020). Score-CAM: Score-Weighted Visual Explanations for CNNs.