attention(주목) 말 그대로 우리가 어디에 집중해야할지 나타내는 것이다
고전적 기법들은 앞서 작성한 SIFT와 HOG가 있었듯이 feature selection, Itti의 sailency map 기법들이 있었다
마찬가지로 고전기법이기에 수작업을 거쳐 attention을 추출하였다
이후 딥러닝과 attention을 결합하여 RAM, STN, SENet들이 등장하였다
컴퓨터비전을 기준으로 설명하겠다
한 이미지에 사람-개-원반 그리고 배경이 있다고 가정해보자
일반적인 attention의 경우 사람,개,원반에 높은 attention을 배경에 낮은 attention을 부여할 것이다
그러나 self attention은 한 이미지내에서 객체들 간의 attention을 고려한다
개가 원반을 물고 있으면 개와 원반에 아주 강한 attention을 그리고 사람에게 중간의 attention 배경에 낮은 attention을 줄것이다
self attention은 이런 식으로 영상내 요소들의 상호 간에 attention을 결정한다
이전에는 attention을 CNN과 RNN구조에서 보조 역할로 사용하였으나
self attention을 적극 이용하여 CNN RNN의 구조가 아닌 새로운 방식으로 model을 구축한 transformer가 자연어처리 분야에서 등장하였다
이후 컴퓨터비전에도 transformer를 도입하여
classification: ViT
detection: DETR
segmentation: SETR
tracking: MOTR
이를 general하게 처리하는 Swin Transformer 등 다양한 모델이 등장했다
즉 c는 아래의 식으로 표현할 수 있다
(attention vector)
context vector
이제 남은건 어떤걸 query, key, value로 결정할 것인가이다
이는 transformer model을 보면서 알아가보자