ML_AI/24_여름방학 인공지능 스터디

[논문 리뷰] Attention Is All You Need

안정민 2024. 9. 22. 10:17

 

https://arxiv.org/pdf/1706.03762

 

이번 논문 리뷰는 학부연구생 논문 작성을 위해 베이스 레퍼런스를 정확히 개념파악을 하기 위해 시작하였다

이전에 네이버 부스트클래스에서 얕게 다뤄본 경험은 있지만, 시간도 조금 흘러 기억이 잘 안 나기도 하고, 논문 원문을 읽어보고 싶어서 정리하게 되었다.

 

논문 리뷰 시 아래의 티스토리 블로그를 참고했다

https://aistudy9314.tistory.com/63


1. Introduction

순환 신경망, 장기 단기 기억[13] 및 게이트 순환[7] 신경망은 언어 모델링 및 기계 번역과 같은 시퀀스 모델링 및 변환 문제[35, 2, 5]에서 최첨단 접근 방식으로 확고하게 자리 잡았습니다[35, 2, 5]. 그 이후로 수많은 노력이 반복 언어 모델과 인코더-디코더 아키텍처의 경계를 계속 허물고 있습니다[38, 24, 15]. 반복 모델은 일반적으로 입력 및 출력 시퀀스의 심볼 위치를 따라 계산을 고려합니다. 계산 시간의 단계에 따라 위치를 정렬하면 이전 숨겨진 상태 ht-1과 위치 t에 대한 입력의 함수로 숨겨진 상태 ht 시퀀스가 생성됩니다. 이러한 본질적으로 순차적인 특성으로 인해 훈련 예제 내에서 병렬화가 배제되며, 메모리 제약으로 인해 예제 간 배치가 제한됨에 따라 더 긴 시퀀스 길이에서 중요해집니다. 최근 연구는 인수분해 트릭[21]과 조건부 계산[32]을 통해 계산 효율성을 크게 개선하는 동시에 후자의 경우 모델 성능을 개선했습니다. 그러나 순차 계산의 근본적인 제약은 여전히 남아 있습니다. 주의 메커니즘은 다양한 작업에서 매력적인 시퀀스 모델링 및 변환 모델의 필수적인 부분이 되었으며, 입력 또는 출력 시퀀스의 거리에 관계없이 종속성을 모델링할 수 있습니다[2, 19]. 그러나 소수의 경우를 제외한 모든 경우에서 이러한 주의 메커니즘은 반복 네트워크와 함께 사용됩니다[27]. 이 작업에서 우리는 재발을 피하고 대신 주의 메커니즘에 전적으로 의존하여 입력과 출력 간의 전역 의존성을 도출하는 모델 아키텍처인 트랜스포머를 제안합니다. 트랜스포머는 훨씬 더 많은 병렬화를 허용하며 8개의 P100 GPU에서 최소 12시간 동안 훈련한 후 번역 품질 면에서 새로운 최첨단 기술에 도달할 수 있습니다.

 

위 그림과 같은 recurrent 모델의 경우 입력을 순차적으로 넣어주어야 하기 때문에 계산 수행 시 병렬 처리가 불가능

→ memory and computation burden 이 증가함

 

Transformers 모델의 경우 "인수분해 트릭""조건부 계산"을 통해 계산 효율성을 높이고 모델 성능을 개선함

Attention 기법 → input 또는 output 데이터에서 sequence distance에 무관하게 서로 간의 dependancy를 모델링

 

Transformer는 recurrence를 회피하고, attention 메커니즘에 전적으로 의존하여 입력과 출력 간의 전역 의존성을 도출하는 모델 아키텍처 & 훨씬 더 많은 병렬화를 허용

 

 

2. Backgrounds

순차적 계산을 줄이는 목표는 또한 모든 입력 및 출력 위치에 대해 숨겨진 표현을 병렬로 계산하는 컨볼루션 신경망을 기본 빌딩 블록으로 사용하는 확장 신경망 GPU[16], 바이트넷[18] 및 ConvS2S[9]의 기초를 형성합니다. 이러한 모델에서 두 개의 임의의 입력 또는 출력 위치의 신호를 연관시키는 데 필요한 연산 수는 위치 간 거리에서 ConvS2S의 경우 선형적으로, 바이트넷의 경우 대수적으로 증가합니다. 따라서 멀리 떨어진 위치 간의 종속성을 학습하는 것이 더 어려워집니다[12]. 트랜스포머에서 이는 주의 가중치 위치 평균화로 인한 유효 해상도 감소의 대가로 일정한 수의 연산으로 감소하지만, 섹션 3.2에 설명된 것처럼 다중 머리 주의로 대응하는 효과입니다.

 

 

intra-attention 이라고도 하는 Self-attention는 시퀀스의 표현을 계산하기 위해 단일 시퀀스의 다양한 위치와 관련된 attention 메커니즘입니다. Self-attention 는 읽기 이해, 추상 요약, 텍스트 수반 및 학습 작업 독립 문장 표현[4, 27, 28, 22]을 포함한 다양한 작업에서 성공적으로 사용되었습니다[4, 27, 28, 22]. End-to-end memory networks 는 시퀀스 정렬 반복 대신 recurrent attention 메커니즘을 기반으로 하며 간단한 언어 질문 응답 및 언어 모델링 작업에서 우수한 성능을 발휘하는 것으로 나타났습니다[34]. 그러나 우리가 아는 한, Transformer는 시퀀스 정렬 RNN이나 컨볼루션을 사용하지 않고 입력과 출력의 표현을 계산하기 위해 전적으로 Self-attention 에 의존하는 최초의 변환 모델입니다. 다음 섹션에서는 Transformer를 설명하고, Self-attention를 동기화하며, [17, 18] 및 [9]와 같은 모델에 비해 장점에 대해 논의할 것입니다.