An Image is Worth 16x16 Words: Transformers for Image Recognition at Scale

An Image is Worth 16x16 Words_ Transformers for Image Recognition at Scale, Alexey Dosovitskiy et al., 2020.pdf

ViT for Image Classification

https://kmhana.tistory.com/27

요약

하나의 단어를 $W$개의 스칼라를 가진 벡터로 나타낼 때, 하나의 문장은 이 벡터를 $N$ 개 가진 행렬로 나타낼 수 있다. 이미지는 patch로 나눈 후 $N*N$개의 특징벡터를 가진 "문장"으로 취급할 수 있다. 즉, NLP에서 Transformer의 analogy를 그대로 Image Processing에 적용할 수 있다. 이 아이디어를 이용해 Transformer의 구조를 image recognition에 적용한 모델, ViT를 제안한다.

들어가기 전에 앞서: Convolution의 한계

Convolution 연산에는 Receptive Field가 존재한다.

즉, 3x3 Convolution 1회 후에는 하나의 스칼라가 3x3영역의 정보밖에 담지 못하며, 이것을 n회 수행하면 보통은 (stride에 따라 달라지지만) receptive field가 넓어지지만 해당 receptive field를 벗어나는 곳에 있는 정보를 반영할 수가 없다.

Attention은 그러한 한계를 극복하면서도 필요하면 멀리, 필요하면 가까이 있는 정보를 적절히 섞어 특징 벡터를 뽑아낼 수 있는 연산이다. (global하다고 표현) 물론 Attention에도 positional encoding이 필요하다는 단점이 있으며 이는 후술한다.

1. Introduction

2017년 Transformer가 제시된 이후로, self-attention을 computer vision에 활용하려는 시도는 여럿 있어왔다. 그러나 ResNet을 뛰어넘진 못해왔다.