2017년 구글브레인이 발표한 논문이다.
이전의 순환신경망(RNN)과 인코더-디코더 구조의 합성신경망(CNN) 이후
Transformer라는 이름의 모델을 제안하였다.
트랜스포머 모델의 등장을 기점으로 인공지능 서비스들의 성능이 대폭 향상되었다.
대부분의 언어 모델은 해당 논문을 기반으로 하고 있어 매우 중요한 의미를 가지는 논문이다.
기존의 RNN, LSTM, GRU 등은 연속된 처리만 가능했다.
이를 Recurrent 모델이라 하는데,
계산 단계에서 symbol position을 적절히 맞추기 위해
이전 상태 과 위치 의 함수인 은닉 상태 를 생성한다.
문장의 길이가 길어질수록 은닉 상태를 많이 생성해야 해서
메모리를 많이 사용하게 되는 단점이 있었다.
Attention mechanism은 입출력 sequence의 거리에 상관없는 의존성을 유지하도록 모델링한다.
즉, 이 논문에서 Transformer는 회귀(recurrence)를 제거하고 입력-출력 간 전역 의존성을 학습하는 attention mechanism만을 사용한 모델 구조를 제안한다.

결국 multi head attention 구조라서
레이어의 복잡도는 높지만, head를 싸그리 모아서 선형 변환 함수에 넣기 때문에
Maximum path length는 1이 나온다는 것을 알 수 있다.
Transformer는 효율적인 병렬화를 가능하게 하여 SOTA를 달성했다.
8개의 P100 GPU만으로 딱 12시간만을 학습하여 이전보다 2 높은 28.4 BLEU를 달성하였다.
비교 태스크는 WMT 2014 영어→독일어 번역이다.
비교 대상인 WMT 모델은 8개의 GPU로 8일 동안 학습시켜 41.8점의 점수를 기록한 BLEU state-of-the-art 단일 모델이다.
Transformer는 크게 인코더와 디코더로 나뉜다.
(1) 인코더는 입력인 상징 표현(symbol representations) 을
연속 표현(continuous representations) 으로 매핑한다.
(2) 가 주어지면, 디코더는 한번에 한 원소씩 출력 sequence 를 생성한다.
(3) 각 단계는 자동회귀(auto-regressive)이다.
(4) 다음 단계의 symbol을 생성할 때 이전 단계에서 생성된 symbol을 추가 입력으로 받는다.
(5) Transformer는 인코더와 디코더 모두에서 쌓은 self-attention과 point-wise FC layer를 사용한다.
