CNN 사후 자체설명과 k평균 프로토타입
CNN의 최종 선형층을 k‑평균 기반 분류기로 교체하고, 인코더의 다양한 깊이에서 추출한 특징 활성화를 프로토타입과 비교함으로써 사후 자체설명을 구현한다. 이 방법은 기존 성능을 유지하면서 의미론적 충실도를 높이며, 얕은 층을 활용할 경우 설명 해상도는 향상되지만 약간의 정확도 감소가 발생한다.
저자: Ahcène Boubekki, Line H. Clemmensen
이 논문은 현대 이미지 분류에 널리 사용되는 Convolutional Neural Network(CNN)를 자기 설명 모델(Self‑Explainable Model, SEM)로 재구성하고, 기존 선형 분류기의 한계를 극복하기 위해 k‑평균 기반 프로토타입 분류기를 도입한다. 먼저, CNN의 평균 풀링과 최종 선형 계층이 내적 연산과 교환 가능함을 수학적으로 증명함으로써, 클래스별 가중치 벡터를 프로토타입으로 해석할 수 있음을 보인다. 그러나 이러한 가중치 프로토타입은 클래스 수에 의해 제한되고, 데이터 분포를 충분히 대표하지 못한다는 문제점이 있다.
이를 해결하기 위해, 최종 선형층을 k‑평균 기반 분류기로 교체한다. 각 클래스마다 K/C개의 프로토타입을 학습 데이터의 평균 풀링 출력(z) 위에서 k‑평균 군집화로 얻고, 유사도는 ‑ℓ2 거리의 지수 형태로 정의한다. 가장 높은 유사도를 가진 프로토타입의 클래스를 예측값으로 선택함으로써, 프로토타입이 실제 데이터 중심에 위치하도록 강제한다. 이 과정은 기존 성능을 유지하면서 프로토타입의 의미론적 충실도를 크게 향상시킨다.
다음으로, 인코더 자체에 대한 설명을 확장한다. ResNet34와 같은 백본을 B개의 블록으로 나누고, 각 블록의 출력 x(b)를 동일 해상도 R′ 로 선형 보간(u(b))한 뒤 정규화·스케일링하여 하나의 행렬 q_h 로 결합한다. q_h의 각 행을 k‑평균 프로토타입에 할당하고, 할당 결과를 이진 매트릭스 q_s 로 저장한다. q_s는 입력 이미지의 저해상도 세그멘테이션 맵으로 해석되며, 클래스별 클러스터 빈도 평균 풀링을 통해 최종 예측을 도출한다.
특징 중요도는 각 위치의 특징 벡터와 클래스 프로토타입 간 내적을 프로토타입의 제곱 노름으로 정규화한 값으로 정의한다. 이 값은 클래스별 중요도 맵을 제공하고, 깊이 b에서의 맵은 깊이 b+1에서의 맵을 공간 일관성을 이용해 업샘플링하고, q_s에 의해 정의된 세그먼트별 평균을 취해 계산한다. 따라서 그래디언트 기반 방법에 의존하지 않고, 컨볼루션 수용 영역의 일관성을 활용한 gradient‑free 설명을 제공한다.
실험에서는 ImageNet 사전학습 ResNet34를 사용해 MNIST, STL‑10, CUB‑200 데이터셋에 적용하였다. B4 모델은 마지막 블록(B4)만 사용하고, B234 모델은 마지막 세 블록(B2, B3, B4)을 결합한다. 결과는 k‑평균 기반 분류기로 교체한 경우(CNN→KMEx)가 원본 CNN과 거의 동일한 정확도를 유지함을 보여준다. 반면 B234와 같이 얕은 층을 포함하면 설명 해상도가 높아지지만, 약 1~2% 정도의 정확도 감소가 관찰된다. 프로토타입과 클래스 임베딩 사이의 코사인 유사도 분석에서는 KMEx 프로토타입이 클래스 내부에 잘 정렬되는 반면, 기존 CNN 가중치는 거의 직교에 가깝고 데이터와의 정렬이 부족함을 확인한다. 시각화된 UMAP 결과와 설명 맵은 이러한 정렬 차이를 직관적으로 보여준다.
본 연구는 (1) CNN을 SEM으로 재해석하는 이론적 틀, (2) k‑평균 기반 프로토타입을 활용한 사후 설명 방법, (3) 다중 깊이 특징을 결합해 고해상도 개념 맵을 생성하는 절차, (4) gradient‑free 특성 중요도 추정 방식을 제시한다는 점에서 의미가 크다. 특히 사후 프로토타입 학습은 기존 모델의 구조와 성능을 그대로 유지하면서 해석 가능성을 크게 향상시킨다. 향후 연구에서는 프로토타입 수를 동적으로 조정하거나, 비지도 방식의 개념 발견과 결합해 더욱 풍부한 설명을 제공할 수 있을 것으로 기대된다.
원본 논문
고화질 논문을 불러오는 중입니다...
댓글 및 학술 토론
Loading comments...
의견 남기기