초록

Screenshot from 2022-04-13 22-46-43.png

컴퓨터비전에서도 트랜스포머의 제곱 복잡도는 문제가 됩니다.

본 논문은 Quadtree 어텐션을 도입하여 제곱의 연산 복잡도선형으로 줄입니다.

Quadtree 트랜스포머는 토큰 피라미드를 생성하여 어텐션을 Coarse-To-Fine 방식으로 연산합니다.

피라미드의 각 레벨에서 어텐션 점수가 높은 상위 K개의 패치를 선택하고, 다음 레벨에서 상위 K개 패치와 Relevant한 Regions 안에서만 어텐션을 수행합니다.

Quadtree 어텐션은 Feature Matching의 ScanNet의 Flops를 50% 줄이면서 4.0% 개선합니다.

이미지 분류에서는 이전 SOTA 모델의 Top-1 정확도를 0.4~1.5% 개선합니다.

이외의 태스크들에서도 이전 SOTA 트랜스포머 모델의 성능을 개선했습니다.

도입

컴퓨터비전에서 표준 트랜스포머를 활용하기 위해 기존 연구들은 저해상도 혹은 Sparse Tokens에 트랜스포머를 적용합니다.

하지만 역시 고해상도에 트랜스포머를 적용하는 것이 더 좋은 성능을 내기 때문에 많은 연구들이 트랜스포머의 계산 복잡도를 줄이기 위해 디자인을 연구하고 있습니다.

그 중 Linear Approximate 트랜스포머인 PVT는 선형 방식으로 어텐션 연산을 진행했지만 여전히 비전 태스크에서 좋지 않은 성능을 냈습니다. 그 이유는 키와 밸류를 다운샘플링하여 연산 비용을 줄였지만, 픽셀 레벨의 디테일을 포착하지 못했기 때문입니다.

이와 반대로 스윈 트랜스포머는 트랜스포머의 가장 중요한 이점인 Long-Range Dependencies를 손해보면서도, 하나의 어텐션 블록안에 있는 Local Windows로 어텐션을 제한했습니다.

이러한 이전 방법들과 다르게 본 논문은 효율적인 비전 트랜스포머를 구성하여 Fine Image Details와 Long-Range Dependencies 모두 잡았습니다. 이는 대부분의 이미지 영역은 서로 Irrelevant하다는 관측에 기반하여, 토큰 피라미드를 생성하고 Coarse-To-Fine 방식으로 어텐션을 계산하기 때문입니다.

이러한 방식을 통해, 거친 수준(Coarse Level) 영역이 유망하지 않을 경우 미세 수준(Fine Level)에서 관련없는 영역을 빠르게 건너뛸 수 있습니다.

Screenshot from 2022-04-13 22-46-43.png

위 그림은 크로스 어텐션을 통해 피쳐 매칭을 하는 과정의 일부입니다.

위 그림의 Level 1에서 이미지 A 속 파란 이미지의 어텐션을 계산할 때 이미지 B 안의 모든 패치들을 함께 사용합니다. 그리고 파란색으로 하이라이트된 상위 K개(K=2) 패치를 선택합니다.

Level 2에서 이미지 A 속 4개의 Framed Sub-Patches(Level 1의 파란 패치의 자식 패치들)에 대해, Level 1의 이미지 B 속 상위 K개의 패치에 대응되는 Sub-Patches와 함께 어텐션을 계산합니다.