시각적 주의(visual attention) 또는 기계 학습 모델의 결정에 있어 이미지에서 가장 관련성이 높은 영역을 강조하는 시각적 표현을 돌출 맵(saliency map)이라고 한다. 컴퓨터 비전에서 이러한 맵은 각 픽셀이 인간 시각 시스템 또는 불투명한 모델에 대해 가지는 중요도의 정도를 반영한다. 예를 들어, 사진에서 관찰자는 먼저 요새나 엷은 구름을 볼 수 있으며, 해당 이미지의 돌출 맵은 이러한 영역을 밝게 표시하여 중요성을 나타낸다. 시선 추적 기반 돌출 맵이 인간의 시선을 근사하는 반면, 기계 학습의 경사 기반 돌출 맵은 모델이 예측을 수행할 때 어디에 집중하는지 보여준다.
인공지능의 맥락에서 돌출 맵은 설명 가능한 AI의 핵심 도구가 되었다. 이는 출력에 가장 큰 영향을 미치는 입력 픽셀이나 특징을 강조하여 심층 신경망이 결정에 도달하는 방식을 시각적으로 설명한다. 이 기법은 이미지 분류와 객체 탐지에서 특히 흔하지만, 후기 트랜스포머 아키텍처에서는 주의 맵(attention map)을 통해 확장된다. 이 개념은 인지 과학과 기계 학습을 연결하며, 인간 시각에 기반을 둔 특성은 알고리즘 접근 방식과 평가 방법 모두를 형성했다.
인간 시각 돌출성
인간 돌출 맵은 사람의 주의를 먼저 끄는 위치를 예측하는 것을 목표로 한다. V1 돌출 가설에 따르면 일차 시각 피질(V1)이 돌출 맵을 담당하는 것으로 보이며, 이는 돌출성이 생물학적으로 근거한 현상임을 시사한다. 인간 돌출성의 계산 모델은 종종 색상, 대비, 가장자리, 움직임과 같은 저수준 특징에 의존한다.
이 영역에서 가장 일반적인 응용 분야는 다음과 같다:
- 이미지 및 비디오 압축: 인간의 눈은 프레임의 작은 관심 영역에만 집중하므로, 돌출 맵을 사용하면 해당 영역 외부를 낮은 품질로 인코딩하여 인지된 손실 없이 파일 크기를 줄일 수 있다.
- 이미지 및 비디오 품질 평가: 돌출 영역의 차이에 더 높은 가중치를 부여하는 품질 지표는 주관적인 인간 의견과 더 높은 상관관계를 달성한다.
- 이미지 리타게팅: 정보가 없는 영역을 확장하거나 축소하여 이미지 크기를 조정하고 중요한 콘텐츠를 보존하며, 정확한 돌출성 추정에 의존한다.
- 객체 탐지 및 인식: 복잡한 알고리즘을 이미지 전체에 적용하는 대신, 인식할 객체를 포함할 가능성이 높은 가장 돌출된 영역에 적용한다.
OpenCV에서 구현된 고전적 추정 알고리즘은 세 가지 주요 유형으로 나뉜다: 정적 돌출성(이미지 특징 및 통계 기반), 움직임 돌출성(광학 흐름의 움직임 기반, 움직이는 객체가 돌출됨), 객체성(가능한 객체 주변에 경계 상자를 제공). 또한 시각 왜곡 민감도라는 새로운 정적 방법이 있으며, 이는 텍스처 영역보다 실제 가장자리(객체 윤곽)를 더 돌출된 것으로 취급하고, 작은 기울기 임계값, 형태학적 연산, 거리 변환을 사용하여 가장자리를 분리한다.
분할로서의 돌출성
돌출성 추정은 이미지 분할의 한 사례로 볼 수 있다. 이미지 분할은 디지털 이미지를 여러 세그먼트 또는 슈퍼픽셀로 분할하는 과정이다. 목표는 이미지 표현을 의미 있고 분석하기 쉬운 것으로 단순화하는 것이며, 종종 모든 픽셀에 레이블을 할당한다. 돌출성의 경우 분할 문제는 이진적이다: 각 픽셀을 전경(돌출) 또는 배경으로 레이블을 지정한다. 출력은 종종 돌출 객체가 흰색으로 표시되고 나머지가 검은색인 이진 마스크이거나, 강도가 돌출성을 나타내는 연속 히트맵이다.
이 연결은 분할 기법과 손실 함수를 재사용할 수 있고, 돌출 영역에 대한 전반적 이해가 이미지 분할과 같은 작업에 도움이 되므로 특히 중요하다. 그러나 돌출 맵은 일반적으로 경계가 아닌 부드럽거나 등급화된 중요성을 제공한다.
딥러닝을 위한 경사 기반 돌출성
신경망에 적용될 때 돌출 맵은 종종 입력에 대한 클래스 점수의 기울기를 취하여 계산된다. 이는 2010년대에 합성곱 네트워크를 위해 개발되었으며, 첫 번째 주요 접근 방식은 단순 기울기를 사용했다: 각 픽셀에 대해 출력 점수가 해당 픽셀의 작은 변화에 얼마나 민감한지 계산한다. 기울기의 크기는 상대적 중요성을 나타낸다.
더 정교한 기법이 이어졌다:
- 통합 기울기(Integrated gradients): 기준 입력에서 실제 입력까지의 경로를 따라 기울기를 합산하여 중요성을 할당하며, 포화를 고려하고 예측 점수가 중간 지점에서만 변경되는 경우 속성을 보장한다.
- 클래스 활성화 매핑(CAM): 마지막 합성곱 계층의 특징 맵과 대상 클래스에 대한 가중치를 사용하여, 일반적으로 업샘플링된 공간 해상도에서 거친 돌출 맵을 생성한다.
- Grad-CAM: 클래스 점수의 특징 맵에 대한 기울기를 사용하여 활성화에 가중치를 부여하는 CAM의 확장이다.
이러한 방법은 합성곱 신경망(예: Residual Network (ResNet))에 특화되어 있지만, 주의 메커니즘을 통해 Transformer (architecture) 모델로 일반화되어 주의 맵, 주의 롤아웃 또는 판별적 주의 맵을 학습하는 방식으로 확장되었다.
트랜스포머의 주의 맵
자연어 처리와 비전에서 Transformer (architecture) 아키텍처의 부상과 함께 돌출 맵은 주의 가중치의 형태를 취한다. 트랜스포머에서 Multi-Head Attention 메커니즘은 입력의 한 토큰이 다른 토큰에 얼마나 주의를 기울이는지 나타내는 점수를 계산한다. 이러한 가중치는 계층과 헤드에 걸쳐 집계되어 이미지와 같은 주어진 입력에 대한 돌출 맵을 생성할 수 있다. 주의 롤아웃 및 클래스 판별 주의 맵과 같은 기법이 이러한 맵을 더 해석 가능하게 만들기 위해 개발되었다.
이러한 맵은 이미지 분류 결정을 설명하는 데 자주 사용되지만, 텍스트에서 중요한 단어나 토큰을 강조하는 동일한 아이디어가 적용된다. 2020년대 현재, 트랜스포머의 돌출성 탐지는 Large language model 해석 가능성을 지원하는 활발한 연구 영역이지만, 주의 점수가 항상 출력에 인과적으로 책임이 있는 것은 아니므로 경사 기반 맵보다 모델에 덜 충실할 수 있다.
알고리즘 구현 예시
많은 알고리즘이 복잡하지만, 간단한 정적 돌출성 공식이 제안되었다. 이는 프레임의 각 픽셀에서 다른 모든 픽셀까지의 거리를 계산한다. 픽셀 I_k에 대해 돌출성 SALS(I_k)는 모든 픽셀에 대한 합으로 주어진다:
SALS(I_k) = Σ_{i=1}^N |I_k - I_i|,
여기서 I_i는 [0,255] 범위의 픽셀 값이고 N은 총 픽셀 수이다. 이는 SALS(I_k) = |I_k - I_1| + |I_k - I_2| + ... + |I_k - I_N|으로 확장된다.
이 공식은 이미지 히스토그램으로 표현할 수 있다: SALS(I_k) = Σ_n F_n × |I_k - I_n|, 여기서 F_n은 강도 값 n(0에서 255)의 빈도이다. 히스토그램 계산은 시간 복잡도 O(N)을 가진다. 이는 전체 이미지에 대한 각 픽셀의 중요성에 대한 고유한 표현을 제공한다.
이 유형은 고전적 접근 방식으로, 현재는 종종 신경망으로 대체되지만 핵심 원리를 보여준다.
신경망 돌출성 방법
경사 기반 및 전통적 방법 외에도, 현대 신경망은 종종 비디오 및 다중 모달 데이터를 위한 돌출 맵을 출력하도록 특별히 훈련된다. 세 가지 주목할 만한 예는 다음과 같다:
- TASED-Net: 저해상도 시공간 특징을 추출하는 인코더와, 모든 시간 정보를 집계하면서 공간 특징을 디코딩하는 예측 네트워크로 구성된다.
- STRA-Net: 시각 및 광학 흐름 결합을 통해 시공간 특징을 통합하고, 주의 메커니즘을 사용하여 다중 규모 돌출성에 초점을 맞춘다.
- STAViS: 시공간 시각 및 청각 정보를 결합한다. 단일 네트워크를 사용하여 음원 위치를 학습한 다음 두 돌출성 신호를 융합하여 최종 맵을 생성한다.
이러한 네트워크는 시간에 따른 인간 고정을 예측하기 위해 비디오 데이터 세트로 훈련된다. 이는 돌출성을 데이터에서 학습할 수 있음을 보여주며, 프레임 수준 방법을 움직임과 오디오로 풍부하게 만들었다.
설명 가능한 AI에서의 응용
설명 가능한 인공지능(XAI)에서 돌출 맵은 인공지능 모델이 무엇을 보고 있는지 이해하는 주요 방법이다. 이미지 분류 또는 객체 식별을 수행하는 모델의 경우, 돌출 맵은 예측에 가장 영향력 있는 픽셀 또는 영역을 정확히 나타낸다. 예를 들어, 신경망이 사진에 개가 포함된 것으로 분류하면 돌출 맵은 배경이 아닌 개의 머리와 꼬리를 강조할 수 있다. 이는 특정 클래스 결정에 가장 많이 기여하는 영역을 강조한다.
돌출성 방법의 선택은 품질과 해석 가능성에 영향을 미친다. 단순 기울기는 빠르지만 노이즈가 많고 관련 없는 영역에 중요성을 부여할 수 있는 반면, 통합 기울기와 CAM은 더 의미 있는 설명을 제공할 수 있다. 시스템 수준의 안전성과 책임성 측면에서 돌출 맵은 모델이 배경이나 워터마크로 인한 우연한 상관관계가 아닌 관련 특징에 의존하는지 확인하는 데 사용된다.
그러나 돌출 맵은 전체 이야기를 말하지 않는다. 이는 중요성을 나타내지만 모델의 논리나 반사실적 상황은 나타내지 않는다. 2020년대 현재, 더 견고하고 충실한 설명 가능성을 위한 연구가 계속되고 있다.
결론
돌출 맵은 인간 시각에 대한 이해와 딥러닝 모델의 내부 작동을 연결한다. 이는 주의의 생물학적 모델이자 모델 디버깅, 이미지 압축, 결정 설명을 위한 실용적 도구로 기능한다. 고전적 이미지 처리에서 Deep learning 접근 방식과 Transformer (architecture) 기반 주의로의 진화와 함께, 돌출성 매핑은 더 유연하고 강력해졌지만, "중요한" 영역이 정확히 무엇을 구성하는지에 대한 질문을 여전히 제기한다. 개발은 진행 중이며, 돌출 맵은 픽셀 수준 및 신경 모델 해석 가능성 모두의 필수적인 부분이다.