https://github.com/lucidrains/perceiver-pytorch

Perceiver: General Perception with Iterative Attention

Perceiver: General Perception with Iterative Attention (Google DeepMind Research Paper Explained)

내가 이 글을 쓰며 참고한 영상은 바로 위 영상이다.

DeepMind Perceiver and Perceiver IO | Paper Explained

Perceiver IO_ A General Architecture for Structured Inputs amp Outputs, Andrew Jaegle et al., 2021.pdf

Perceiver_ General Perception with Iterative Attention, Andrew Jaegle et al., 2021.pdf

Abstract

생물학적 시스템에서는 시각, 청각, 촉각, 자기수용감각 등 다양한 양상의 고차원 입력을 받아 동시에 처리해 세계를 인지한다. 그러나 딥러닝의 인지 모델은 각각의 양상을 위해 디자인되었으며 vision model의 local grid structure과 같은 domain-specific assumptions에 자주 의존한다.

이러한 전제는 유용한 inductive bias를 만들어 내지만 각각의 모델들을 각각의 양상에 한정시킨다. 본 논문에서는 Transformer 기반으로 architectural assumption 없이 작동하는 Perceiver을 소개한다.

이 모델은 asymmetric attention mechanism을 이용해 지속적으로 입력을 tight한 잠재벡터에 distill하고, 이는 매우 큰 입력도 모델이 처리할 수 있도록 만들어준다.

이 논문에서는 Perceiver가 image, point clouds, audio ,video, video+audio에 걸쳐 다른 모델과 경쟁력 있음을 보였으며, 특히 50000 pixels를 직접적으로 사용함으로써 ResNet-50과 ViT에 비교할 만한 성능을 얻어냈다. 또한 AudioSet의 모든 양상에 대해 경쟁력이 있었다.

Untitled

1. Introduction

그간 여러 모델에 설정된 architectural assumption과 그에 의해 발생하는 inductive bias는 모델의 성능을 극적으로 높여 주었다. 그러나 이렇게 모델을 설계하면 input이 변할 때마다 architecture을 다시 디자인해야만 하는 단점이 있다. 예를 들어 2D convolution을 사용한 모델은 3D Point Cloud에 적용하기에는 적합하지 않다.

이 논문에서는 하나의 Transformer-based architecture로 다양한 종류의 입력을 처리할 수 있는 Perceiver을 제시한다. 이전에도 Transformer을 사용한 연구는 있었지만 $O(N^2)$의 attention의 시간복잡도에 걸려 데이터를 직접적으로 처리하지 못하고 다른 해결책을 모색한 경우가 많았다. 이 논문에서는 이러한 한계점을 해결했다.