기존 시퀀스 모델의 복잡한 순환과 합성곱 기반 모델링에서 완전히 새로운 아키텍쳐를 제시한다. 오직 어텐션 메커니즘을 기반으로 하는 단순하지만 새로운 네이트워크 구조를 가진 모델이 트렌스포머이다.
본 모델은 번역 과제 실험에서 굉장히 우수한 성능을 보여줬다고 한다. 뿐만 아니라 병렬 처리성이 높아져 학습에 훨씬 적은 시간이 소요된다고 한다.
트랜스포머는 대규모 혹은 제한된 소규모 학습 데이터 기반의 영어 구문 분석 과제에서도 높은 성능을 보이며, 다른 과제들에도 일반화가 가능하다는 것을 보여준다.
순환 신경망(RNN), 장단기 기억망(LSTM) 그리고 게이트드 리커런트 신경망(게이트드 RNN) 등은 특히 시퀀스 모델링 및 언어 모델링과 기계 번역과 같은 변환 문제에서 최신 기술로 강력하게 인정 받았다고 한다. 여러 노력들이 이후에도 계속해서 순환 언어 모델 및 인코더-디코더 아키텍처의 경계를 확장하고 있다
순환 모델들은 h(t)시퀀스를 생성하기 위해서는 h(t-1)의 연산 값을 받아야 한다. 이러한 특성은 메모리 제약이 예제간의 배치를 제한하기 때문에 더 긴 시퀀스 길이에서 중요해지는 훈련 예제 내의 병렬화를 할 수 없습니다. 계산 효율성을 늘리는 연구가 있었음에도 불구하고 근본적인 제약은 있다.
Attention 메커니즘은 다양한 작업에서 입력, 출력 시퀀스의 커리에 상관없이 모델링을 할 수 있다. 하지만 몇가지 경우를 제외한 모든 경우에서 Attention 메커니즘은 순환 신경망과 함께 사용된다.
본 연구는 모델 아키텍처가 순환 구조를 대신해 입력과 출력 사이의 글로벌 의존성을 끌어내기 위해 오직 어텐션에 의존하는 모델 트랜스포머를 제안한다고 한다.
본 문단에서는 Transformer 모델과 self-attention의 중요성을 강조하며, 이러한 모델이 기존의 접근 방식과 어떻게 다른지 설명하고 있다.
이 파트에서는 대부분의 경쟁력 있는 신경망 시퀀스 변환 모델이 인코더-디코더 구조를 사용한다는 아이디어를 소개하고 있다 (자기 회귀 모델이면 결국 순차적인 처리가 들어가는데 원래 제시한 근본적인 문제와 동일한거 아닌가?… 아직 의문이다.)
결과적으로 Transformer 모델: Transformer 모델은 이러한 구조를 따르며, 인코더와 디코더 모두에서 쌓인 self-attention 및 포인트별 완전 연결 레이어를 사용한다. Figure 1의 왼쪽과 오른쪽 절반에서 해당 구조가 시각적으로 나타낸다.
Transformer 모델의 인코더와 디코더 스택에 대한 설명을 한다. Transformer 모델은 이러한 스택을 여러 번 쌓아서 깊은 신경망 아키텍처를 형성한다. 각각의 인코더 및 디코더 레이어에는 여러 하위 레이어(sub-layer)가 있다 아래 구조는 Transformer 모델의 핵심 부분이며, 인코더와 디코더 각각이 정보를 처리하고 전달하는 방식을 설명한다.
이 부분은 어텐션 메커니즘 중 “스케일드 닷-프로덕트 어텐션(Scaled Dot-Product Attention)”에 대한 설명이며, 어텐션 함수의 구체적인 계산 방법과 어텐션 함수에 사용되는 두 가지 주요 유형인 “가산 어텐션(Additive Attention)”과 “닷-프로덕트 어텐션(Dot-Product Attention)”을 비교하고 있다.
Attention(Q, K, V ) = softmax(QKt / √dk)V
즉, 스케일드 닷-프로덕트 어텐션은 어텐션 함수의 일종으로, 스케일링을 사용하여 쿼리와 키 간의 유사도를 계산하고 가중치를 얻어 값을 조합하는 방식이다. 닷-프로덕트 어텐션은 일반적으로 가산 어텐션보다 빠르고 효율적이지만, 큰 dk 값에서 스케일링이 필요하다.
dmodel 차원의 키, 값 및 쿼리로 단일 주의 기능을 수행하는 대신 쿼리, 키 및 값을 각각 dk, dk 및 dv 차원으로 학습된 선형 투영을 사용하여 h번 선형 투영하는 것이 유용하다는 것을 발견했다고 한다.
MultiHead(Q, K, V ) = Concat(head1, ..., headh)WO
여기서 각 헤드(headi)는 다음과 같이 계산된다.
headi = Attention(QWiQ , K WiK , V WiV )
Transformer 모델에서 멀티헤드 어텐션을 세 가지 다른 방식으로 활용하는 방법을 설명하고 있다.
FFN(x) = max(0, xW1 + b1 )W2 + b2
여기서 x는 입력 벡터, W1과 b1은 첫 번째 선형 변환에 사용되는 가중치 행렬과 편향 벡터, W2와 b2는 두 번째 선형 변환에 사용되는 가중치 행렬과 편향 벡터이다. 이 네트워크의 목적은 입력 벡터 x를 두 번의 선형 변환과 ReLU 활성화 함수를 통해 변환하여 출력 벡터를 생성하는 것이다.
이러한 설명은 모델의 입력과 출력을 처리하는 방식과 가중치 공유에 대한 내용을 다루고 있다. Transformer 모델은 이러한 임베딩 및 가중치 공유 기술을 사용하여 자연어 처리 작업을 수행한다.
PE(pos, 2i) = sin(pos / 10000^(2i / dmodel))
PE(pos, 2i+1) = cos(pos / 10000^(2i / dmodel))
위치 인코딩은 Transformer 모델에서 시퀀스의 위치 정보를 포함하도록 도와주는 중요한 메커니즘 중 하나이며, 이 모델에서는 사인과 코사인 함수를 사용한 위치 인코딩을 사용하여 상대적 위치 정보를 모델에 제공한다.
자기 어텐션(self-attention) 레이어를 주로 사용하는 이유와 이를 순환 레이어(recurrent layers) 및 합성곱 레이어(convolutional layers)와 비교하는 이유에 대해 설명한다. 주요 비교 대상은 하나의 가변 길이 시퀀스 (x1, …, xn)를 다른 동일한 길이의 시퀀스 (z1, …, zn)로 매핑하는 모델의 레이어이다. 이런 비교를 통해 자기 어텐션 사용을 근거하는 세 가지 요소를 고려한다.
각 레이어 당 총 계산 복잡성은 모델의 효율성을 판단하는 중요한 요소 중 하나입니다.
레이어 내에서 얼마나 많은 병렬 계산이 가능한지는 연산을 효율적으로 분산하는 데 중요합니다.
모델이 두 위치 사이의 긴 범위 종속성을 학습하는 데 필요한 경로의 길이는 학습 능력에 큰 영향을 미칩니다.
요약하면, 자기 어텐션 레이어는 복잡성, 병렬화 가능성 및 긴 범위 종속성 학습 측면에서 순환 레이어 및 컨볼루션 레이어와 비교하여 몇 가지 이점을 가지며, 또한 해석 가능성을 제공할 수 있다.
이제 모델 훈련에 대한 설명이다.
요약하면, 모델 훈련은 고성능의 그래픽 처리 장치를 사용하여 수행되었으며, 베이스 모델과 큰 모델의 경우 각각 다른 훈련 시간과 총 훈련 단계를 갖고 있다. 훈련 시간은 모델의 크기와 하드웨어 리소스에 따라 달라질 수 있다.
lrate = d^(-0.5) * min(step_num^(-0.5), step_num * warmup_steps^(-1.5))
이 학습률 스케줄링 방법은 초기 훈련 단계에서 높은 학습률로 시작하고, 점진적으로 안정된 값으로 수렴하도록 모델을 조절한다. 이러한 방식은 훈련 초기에 빠르게 수렴하고 이후에는 미세한 조정을 수행하도록 도와준다.
Transformer 모델의 훈련 중에 적용된 정규화 기법은 다음과 같다
레지듀얼 드롭아웃은 모델의 학습 중 일반화를 증가시키고 과적합(overfitting)을 방지하는 데 도움이 되며, 레이블 스무딩은 모델의 예측을 더 안정적으로 만들고 훈련 중에 더 효과적으로 학습할 수 있도록 도와준다.
이 실험에서는 다양한 모델 변형을 적용하고, 그 결과를 Table 3에 제시한다.
Transformer 모델의 일반화 능력을 평가하기 위해 영어 구성 파싱(English constituency parsing) 작업에 대한 실험 결과를 설명한다. 구성 파싱 작업은 특정한 도전 과제를 제공하는데, 출력은 강력한 구조적 제약 사항에 따르며 입력보다 길이가 상당히 긴 작업이다. 또한, RNN 시퀀스-대-시퀀스 모델은 작은 데이터 환경에서 최첨단 결과를 얻을 수 없었다.
이 결과는 Transformer 모델이 다양한 작업에 적용될 수 있으며, 특히 작은 데이터 환경에서도 강력한 성능을 발휘할 수 있음을 보여준다.
이 연구에서는 Transformer라는 모델을 제안하였으며, 이 모델은 어텐션(attention)만을 기반으로 한 최초의 시퀀스 변환 모델이다.이 모델은 주로 인코더-디코더 아키텍처에서 사용되는 순환 레이어를 다중 헤드 자기 어텐션(multi-headed self-attention)으로 대체한다.
번역 작업을 위해 Transformer는 순환 또는 합성곱 레이어에 기반한 아키텍처보다 훨씬 빠르게 훈련될 수 있다. WMT 2014 영어-독일어 및 WMT 2014 영어-프랑스 번역 작업에서 우수한 성과를 달성하며, 특히 전자 작업에서 우리의 최고 모델은 이전에 보고된 모든 앙상블 모델을 능가한다.
우리는 어텐션 기반 모델의 미래에 대해 흥미를 가지며, 이를 다른 작업에 적용할 계획이라고 한다. Transformer를 텍스트 이외의 입력 및 출력 모달리티를 다루는 문제로 확장하고, 이미지, 오디오, 비디오와 같은 대규모 입력과 출력을 효율적으로 처리하기 위한 로컬 및 제한된 어텐션 메커니즘을 연구할 계획이라고도 한다. 또한, 생성 작업을 순차적으로 처리하지 않는 방법을 연구하는 것도 연구 목표 중 하나입니다.
사용한 모델을 훈련하고 평가하는 데 사용한 코드는 코드 깃허브 에서 사용할 수 있다고 한다!!
댓글