XYZNOT

논문 · arXiv 2104.09864

RoFormer: 회전식 위치 임베딩을 적용한 향상된 트랜스포머

RoFormer: Enhanced Transformer with Rotary Position Embedding

게시일 cs.CLcs.AIcs.LG arXivPDF

XYZNOT로 읽기 (전문 번역과 AI 해설)

세 줄 요약

  1. 🎯 기존의 표준 위치 임베딩은 덧셈 방식의 절대 벡터이거나 선형 셀프 어텐션과의 호환성을 깨뜨리는 상대적 수정 방식입니다.
  2. 🔧 RoPE는 쿼리 및 키 벡터에 직교 블록 대각 회전 행렬을 곱하여 내적 결과가 오직 토큰 간의 상대적 거리에만 의존하도록 만듭니다.
  3. 📈 WMT 2014 En-De에서 27.5 BLEU를 달성하고, 사전 학습 중 더 빠르게 수렴하며, 시퀀스 길이 1024의 CAIL2019-SCM에서 WoBERT보다 정확도를 1.5% 향상시킵니다.

초록

위치 인코딩은 최근 트랜스포머 아키텍처에서 효과적인 것으로 나타났습니다. 이는 시퀀스 내 서로 다른 위치의 요소 간 종속성 모델링에 유용한 지도(supervision) 정보를 제공합니다. 본 논문에서는 먼저 트랜스포머 기반 언어 모델의 학습 과정에 위치 정보를 통합하는 다양한 방법을 조사합니다. 그런 다음 위치 정보를 효과적으로 활용하기 위한 새로운 방법인 회전식 위치 임베딩(Rotary Position Embedding, RoPE)을 제안합니다. 구체적으로 제안된 RoPE는 절대 위치를 회전 행렬로 인코딩하는 동시에 셀프 어텐션 수식에 명시적인 상대 위치 종속성을 통합합니다. 특히 RoPE는 시퀀스 길이의 유연성, 상대적 거리가 증가함에 따라 토큰 간 종속성이 감쇠하는 특성, 선형 셀프 어텐션에 상대적 위치 인코딩을 적용할 수 있는 능력 등 가치 있는 특성들을 제공합니다. 마지막으로 회전식 위치 임베딩으로 향상된 트랜스포머인 RoFormer를 다양한 장문 텍스트 분류 벤치마크 데이터셋에서 평가합니다. 실험 결과 RoFormer는 대안적 방법들을 지속적으로 능가함을 보여줍니다. 또한 일부 실험 결과를 설명하기 위한 이론적 분석도 제공합니다. RoFormer는 이미 Huggingface에 통합되어 있습니다: \url{https://huggingface.co/docs/transformers/model_doc/roformer}.

영어 원문 초록

Position encoding recently has shown effective in the transformer architecture. It enables valuable supervision for dependency modeling between elements at different positions of the sequence. In this paper, we first investigate various methods to integrate positional information into the learning process of transformer-based language models. Then, we propose a novel method named Rotary Position Embedding(RoPE) to effectively leverage the positional information. Specifically, the proposed RoPE encodes the absolute position with a rotation matrix and meanwhile incorporates the explicit relative position dependency in self-attention formulation. Notably, RoPE enables valuable properties, including the flexibility of sequence length, decaying inter-token dependency with increasing relative distances, and the capability of equipping the linear self-attention with relative position encoding. Finally, we evaluate the enhanced transformer with rotary position embedding, also called RoFormer, on various long text classification benchmark datasets. Our experiments show that it consistently overcomes its alternatives. Furthermore, we provide a theoretical analysis to explain some experimental results. RoFormer is already integrated into Huggingface: \url{https://huggingface.co/docs/transformers/model_doc/roformer}.

논문 해설

문제 및 연구 배경

트랜스포머의 셀프 어텐션은 본질적으로 순열 불변(permutation-invariant) 특성을 가지므로 명시적인 위치 정보가 필요합니다. 기존 접근 방식은 크게 두 가지로 나뉩니다. 단어 표현에 직접 더해지는 절대 위치 임베딩(학습 가능하거나 고정된 사인 곡선 벡터)과 어텐션 행렬에 통합되는 상대 위치 임베딩(예: Shaw et al., Transformer-XL, T5, DeBERTa)입니다. 그러나 기존의 상대적 방식은 중간 어텐션 로짓을 수정하는 덧셈 분해에 크게 의존하므로, 분해 가능한 표현이 필요한 커널 기반 선형 셀프 어텐션 메커니즘과 호환되지 않습니다. 게다가 모델들이 가변적인 시퀀스 길이에 걸쳐 원활하게 확장하는 데 종종 어려움을 겪습니다.

핵심 아이디어

  • 벡터 회전을 통한 상대 거리 표현: 위치 벡터를 더하는 대신, RoPE는 아핀 변환된 쿼리와 키에 위치 의존적인 회전 행렬을 적용합니다. 인덱스 의 회전된 쿼리와 인덱스 의 회전된 키 사이의 내적은 자연스럽게 상대 거리 에만 의존하게 됩니다.
  • 직교성 및 노름(Norm) 보존: 회전 연산자는 직교 행렬이므로 쿼리와 키의 유클리드 노름을 보존하여 은닉 상태를 안정화합니다.
  • 장기 감쇠(Long-term Decay): 사인파 주파수 스케일링에 따라 상대 거리가 증가할수록 토큰 간 상호작용이 자연스럽게 감쇠하며, 이는 거리가 먼 토큰일수록 종속성이 약해진다는 언어적 직관과 일치합니다.
  • 선형 어텐션과의 호환성: 위치 정보가 내적을 수행하기 전 토큰 벡터에 직접 적용되므로, RoPE는 커널 기반 선형 어텐션(예: Performer)과 결합될 수 있습니다.

방법론 (핵심 수식 포함)

목표는 내적이 임베딩과 상대 거리에만 의존하는 함수 와 를 찾는 것입니다:

2차원 부분공간에서 실수 벡터를 복소수로 취급하면 다음과 같은 해를 얻을 수 있습니다:

짝수 임베딩 차원 에 대해, 공간은 주파수 를 갖는 개의 2차원 부분공간으로 분할됩니다. 일반 변환은 블록 대각 회전 행렬 을 적용합니다:

결과적으로 위치 과 사이의 어텐션 점수는 다음을 만족합니다:

희소 행렬 곱셈 없이 이를 효율적으로 계산하기 위해, RoPE는 원소별(element-wise) 연산을 통해 구현됩니다:

실험 결과 (주요 수치 포함)

  • 기계 번역: WMT 2014 영어-독일어 번역에서 RoFormer는 27.5 BLEU를 기록하며 Transformer-base 기준선(27.3 BLEU)을 능가했습니다.
  • 사전 학습 수렴 속도: BookCorpus 및 Wikipedia에서 RoPE를 적용한 BERT-base를 학습할 때, RoFormer는 바닐라 BERT보다 빠르게 수렴하고 더 낮은 마스크 언어 모델링(MLM) 손실에 도달했습니다.
  • GLUE 미세 조정: 사전 학습된 RoFormer는 MRPC (89.5 vs. 88.9 F1), STS-B (87.0 vs. 85.8 Spearman), QQP (86.4 vs. 71.2 F1) 등의 다운스트림 점수를 크게 향상시켰으나, SST-2 (90.7 vs. 93.5), QNLI (88.0 vs. 90.5), MNLI-m/mm (80.2/79.8 vs. 84.6/83.4)에서는 BERT보다 다소 낮은 성능을 보였습니다.
  • 선형 어텐션 (Performer): Enwik8 데이터셋에서 12계층 문자 기반 Performer에 RoPE를 추가했을 때 수렴 속도가 대폭 향상되고 학습 손실이 감소했습니다.
  • 장문 텍스트 의미 일치: CAIL2019-SCM에서 RoFormer-512는 68.29%의 테스트 정확도를 기록했습니다(BERT-512는 67.77%, WoBERT-512는 68.10%). RoFormer-1024로 확장했을 때 테스트 정확도는 **69.79%**로 증가했습니다(WoBERT-512 대비 절대값 1.5% 향상).

한계점 및 향후 연구 과제

  • 덧셈 방식의 대안과 비교하여 2차원 회전 수식이 사전 학습 중에 왜 더 빠르게 수렴하는지에 대한 이론적 설명이 부족하다고 논문에서 밝히고 있습니다.
  • 장기 감쇠 특성은 수학적으로 입증되었으나, RoFormer가 긴 시퀀스에서 다른 모델들보다 눈에 띄게 더 잘 일반화되는 이유는 아직 명확히 규명되지 않은 연구 과제입니다.
  • 대규모 사전 학습에서 RoFormer를 평가하려면 상당한 GPU 연산 자원이 필요하므로, 더 광범위한 스케일링 특성은 향후 연구 과제로 남겨져 있습니다.

핵심 용어

Rotary Position Embedding (RoPE)
쿼리 및 키 표현에 직교 블록 대각 회전 행렬을 곱하여 위치 정보를 주입하는 위치 인코딩 메커니즘입니다.
RoFormer
표준 절대 또는 덧셈 방식의 상대 위치 인코딩 대신 회전식 위치 임베딩(RoPE)을 탑재한 트랜스포머 아키텍처입니다.
Long-term Decay
상대적 위치 거리 이 증가함에 따라 쿼리와 키의 내적 값이 감소하는 수학적 특성입니다.
Linear Attention
커널 특성 맵을 계산하여 행렬 곱셈 순서를 변경함으로써 선형 계산 복잡도를 달성하는 어텐션 메커니즘입니다.
PerFormer
RoPE가 선형 어텐션에 상대 위치 정보를 원활하게 제공할 수 있음을 입증하기 위해 논문에서 테스트된 선형 어텐션 트랜스포머 아키텍처입니다.
CAIL2019-SCM
512 토큰을 초과하는 장문 텍스트 모델링 역량을 평가하는 데 사용되는 법률 사례 삼원조로 구성된 Chinese AI and Law 2019 유사 사건 매칭 벤치마크입니다.
WoBERT
중국어 말뭉치에서 RoFormer의 비교 기준선이자 사전 학습 기반 모델로 사용된 단어 기반 중국어 BERT 모델입니다.

자주 묻는 질문

RoPE는 표준 사인 곡선(Sinusoidal) 위치 임베딩과 어떻게 다른가요?

사인 곡선 임베딩은 선형 투영 전에 입력 토큰 벡터에 더해지는 반면, RoPE는 어텐션 계층 내부에서 쿼리 및 키 투영 벡터에 직접 회전 변환으로 곱해집니다.

다른 상대 인코딩과 달리 RoPE가 선형 셀프 어텐션과 호환되는 이유는 무엇인가요?

기존 상대 인코딩은 소프트맥스 연산 내부의 쌍별 어텐션 로짓을 수정하므로 선형 어텐션에 필요한 인수분해를 깨뜨립니다. 반면 RoPE는 벡터의 노름을 변경하지 않고 쿼리와 키 벡터를 개별적으로 회전시키므로 선형 어텐션 커널이 정상적으로 작동할 수 있습니다.

RoPE를 적용하려면 $R^d_{\Theta, m}$과의 조밀 행렬(Dense matrix) 곱셈이 필요한가요?

아닙니다. 은 블록으로 구성된 희소 블록 대각 행렬이므로, 코사인 및 사인 벡터를 활용한 원소별 곱셈과 쌍별 재조합을 통해 계산적으로 구현됩니다.

더 긴 컨텍스트로 확장할 때 RoFormer의 성능은 어떠한가요?

CAIL2019-SCM 벤치마크에서 컨텍스트 길이를 512에서 1024로 늘렸을 때 RoFormer의 테스트 정확도가 68.29%에서 69.79%로 향상되어 강력한 시퀀스 길이 일반화 능력을 보였습니다.

이 페이지의 해설은 AI가 논문을 바탕으로 작성했으며 오류가 있을 수 있습니다. 자세한 내용은 원문을 확인하세요.

XYZNOT로 읽기 (전문 번역과 AI 해설)