2017년의 시퀀스 모델들은 순환 또는 합성곱을 기반으로 했으며, 이는 시퀀스를 한 번에 한 조각씩 처리한다. 순환은 모델이 두 번째 단계를 수행하기 전에 첫 번째 단계를 기다려야 하므로, 장거리 문맥을 학습하기가 느리고 하드웨어 전반에 걸쳐 병렬화하기가 어렵다.

트랜스포머는 주의(attention)라는 아이디어를 끌어와 논리적 극한까지 밀어붙였다. 즉, 순환을 완전히 제거하고 모든 위치가 한 번의 연산으로 다른 모든 위치와 자신을 비교하도록 한 것이다. 각 단어는 다음 단계로 나아가기 전에 다른 모든 단어가 얼마나 중요한지 가중치를 매길 수 있다.

전체 시퀀스를 병렬로 처리할 수 있기 때문에, 훈련은 많은 GPU에 걸쳐 훨씬 쉽게 확장된다. WMT 2014 영어-독일어 과제에서 이 모델은 이전 최고 기록을 2 BLEU 포인트 이상 능가했고, 영어-프랑스어에서는 8개의 GPU로 3.5일 후 단일 모델 기록을 세웠다. 이는 당시 선도 모델들의 훈련 비용의 일부에 불과했다.

이 통찰은 더 큰 모델이 아니라 단순화였다. 순차적 병목을 제거함으로써 네트워크는 장거리 관계를 저렴하게 그리고 규모 있게 학습할 수 있었다.

모든 토큰이 모든 토큰에 주목하도록 하라

주의는 모든 토큰이 얼마나 멀리 떨어져 있든 관계없이 단일 병렬 패스에서 다른 모든 토큰과 문맥적으로 관계를 맺을 수 있게 한다.

병렬 처리는 모델이 더 빠르게 훈련되고 기존 하드웨어를 훨씬 더 효율적으로 사용한다는 것을 의미한다.

이 아키텍처는 일반화되어, 과제별 변경 없이 번역과 구문 분석에서 강력한 결과에 도달한다.

순환을 버린 것은 하이퍼파라미터를 조정한 것이 아니라 구조적 병목을 제거한 것으로, 모든 곳에서 성과를 낸 아키텍처 변경이었다.

직렬 프로세스를 병렬 프로세스로 대체하는 것은 구조적 이점이다. 즉, 데이터뿐 아니라 아키텍처가 학습할 수 있는 것의 상한을 정한다.

트랜스포머는 2020년대의 대형 채팅 모델을 포함하여 거의 모든 현대 언어 모델의 기반 아키텍처가 되었는데, 이는 순환 신경망이 할 수 없었던 방식으로 데이터와 연산에 따라 확장되기 때문이다. 순환을 병렬 주의로 대체한 것은 현대 소프트웨어에서 가장 중대한 단일 아키텍처 결정 중 하나이다.

근거 확인하기

출처

  1. Attention Is All You Need arXiv · arxiv.org
  2. Transformer (deep learning architecture) Wikipedia · en.wikipedia.org