Paper Review/NLP & LLM

[OUTTA Alpha팀 논문 리뷰 요약] Part 9-3. Roformer: Enhanced Transformer with Rotary Position Embedding

YeonJuJeon 2025. 2. 1. 22:48

논문 링크: https://arxiv.org/pdf/2104.09864

 

 

OUTTA 논문 리뷰 링크: [2025-1] 전윤경- Roformer: Enhanced Transformer with Rotary Position Embedding

 

[2025-1] 전윤경- Roformer: Enhanced Transformer with Rotary Position Embedding

IntroductionRoPE: 회전 행렬을 사용하여 절대적인 위치를 인코딩하고 self attention 공식에 명시적인 상대적 위치 의존성을 통합함.유연한 시퀀스 길이 지원상대적 거리가 증가함에 따라 토큰 간의 의

blog.outta.ai


1. Introduction

  • RoPE (Rotary Position Embedding) 기법을 도입하여 Transformer 성능 개선
  • 회전 행렬을 이용한 절대 위치 인코딩 및 상대적 위치 의존성 통합
  • 기존 위치 임베딩 방법 대비 유연한 시퀀스 길이 지원, 상대적 거리 증가 시 토큰 간 의존도 감소
  • 선형 Self-Attention에서도 상대적 위치 정보 적용 가능

2. Background & Related Work

기존 위치 임베딩 기법

  1. 절대적 위치 임베딩 (APE; Absolute Positional Encoding)
    • sinusoidal 함수 적용 (Vaswani et al., 2017)
    • 한정된 시퀀스 길이에 대해 학습됨 → 길이가 다르면 재학습 필요
  2. 상대적 위치 임베딩 (RPE; Relative Positional Encoding)
    • 각 레이어마다 상대적 위치 정보를 직접 주입
    • Transformer 모델의 일반화 능력 강화

기존 연구

연구 주요 특징
Shaw et al. 학습 가능한 상대적 위치 임베딩 $p^k_r, p^v_r$ 적용
Dai et al. (Transformer-XL) 절대적 위치 임베딩을 sinusoidal 함수로 변환
T5 content-to-content 외 3개 항을 학습 가능한 bias로 변경
TUPE position-to-position이 무의미하다고 가정, content-to-content와 동일한 parameter 공유
DeBERTa APE를 RPE로 대체, content-to-content만 유지
  • 위 방법들은 대부분 Additive 방식을 사용
  • RoPE는 Multiplicative 방식을 사용하여 차별화

3. RoFormer: Rotary Position Embedding 기반 Transformer

1) Self-Attention에서 RoPE 적용 방식

  • 기존 self-attention은 query ($q_m$), key ($k_n$) 내적을 사용

$$q_m^\top k_n$$

  • RoPE는 위치 정보를 회전 행렬 ($R_d$)로 적용하여 내적 구조 변경

$$q_m^\top k_n = (R_d W_q x_m)^\top (R_d W_k x_n)$$

  • 즉, 쿼리/키 벡터에 회전 변환을 적용하여 상대적 위치 정보를 유지

2) RoPE의 일반적 형태 (General Form)

 

  • $R_d^{\Theta, m}$: 사전 정의된 회전 행렬
  • $W_{q,k}$: query 및 key 변환 행렬

회전 행렬 ($R_d^{\Theta, m}$) 구조

$$R_d^{\Theta, m} = \begin{bmatrix} \cos m\theta_1 & -\sin m\theta_1 & 0 & 0 & \cdots \\ \sin m\theta_1 & \cos m\theta_1 & 0 & 0 & \cdots \\ 0 & 0 & \cos m\theta_2 & -\sin m\theta_2 & \cdots \\ 0 & 0 & \sin m\theta_2 & \cos m\theta_2 & \cdots \\ \vdots & \vdots & \vdots & \vdots & \ddots \end{bmatrix}$$

  • 각 차원의 벡터를 독립적인 2D 회전 변환을 통해 상대적 위치 정보 인코딩
  • $\theta_i = 10000^{-2(i-1)/d}$ 를 사용하여 장기적인 거리에서도 점진적 감소 보장

3) RoPE의 주요 특성

(1) Long-Term Decay (장거리 의존성 감소)

  • 토큰 간 상대적 거리가 멀어질수록 내적 값 감소
  • Transformer의 일반화 능력 향상

(2) Linear Attention 적용 가능

  • 기존 Self-Attention: 복잡도 $O(N^2)$
  • 선형 Attention에서도 RoPE 사용 가능
  • 쿼리와 키에 회전 변환 적용 시 정보 손실 없음

$$\text{Attention}(Q, K, V)_m = \frac{\sum_{n=1}^{N} R_d^{\Theta, m} \phi(q_m)^\top R_d^{\Theta, n} \phi(k_n) v_n}{\sum_{n=1}^{N} \phi(q_m)^\top \phi(k_n)}$$


4. 실험 (Experiments & Evaluation)

1) 기계 번역 (Machine Translation)

  • BLEU 점수 비교 (WMT 2014 English-German 데이터셋)
  • RoFormer가 기존 Transformer 대비 성능 향상
    • Transformer-base: 27.3
    • RoFormer: 27.5

2) 사전 학습 (Pre-training)

  • BERT 모델의 sinusoidal 위치 인코딩을 RoPE로 대체
  • BookCorpus + Wikipedia 데이터셋 사용
  • MLM Loss 비교 → RoFormer가 빠른 수렴 속도 보임

3) GLUE Benchmark Fine-tuning

  • MRPC, SST-2, QNLI, STS-B, QQP, MNLI 등 평가
  • 6개 중 3개 태스크에서 RoFormer가 BERT보다 우수
모델 MRPC SST-2 QNLI STS-B QQP MNLI (m/mm)
BERT 88.9 93.5 90.7 85.8 71.2 84.6/83.4
RoFormer 89.5 90.5 88.0 87.0 86.4 80.2/79.8

 

4) Performer 모델 적용 (Linear Attention 적용 실험)

  • RoPE 적용 시 Performer의 학습 속도 향상 및 Loss 감소
  • RoPE 없이 훈련한 Performer보다 더 빠르게 수렴

5) 중국어 데이터셋 평가 (Long Text Processing)

  • 512자 이하: 기존 WoBERT와 유사한 성능
  • 1024자로 확장: WoBERT 대비 1.5% 정확도 향상
  • 긴 문서에서의 성능 우수
모델 512자 정확도 1024자 정확도
BERT 64.07% 66.07%
WoBERT 64.13% 67.77%
RoFormer 64.13% 69.79%

 


5. 결론 및 한계점

1) 주요 기여

  • Transformer의 성능을 향상시키기 위해 RoPE 도입
  • 회전 행렬을 사용한 상대적 위치 정보 적용
  • 긴 문장에서도 뛰어난 성능 발휘
  • 선형 Self-Attention에서도 적용 가능

2) 한계점

  • RoPE가 다른 위치 인코딩보다 빠르게 수렴하는 이유에 대한 명확한 이론적 설명 부족
  • 긴 문장에서 성능이 뛰어난 이유에 대한 추가 분석 필요

💡 최종 요약

  1. Transformer의 Self-Attention 구조에 RoPE 적용 → 상대적 위치 정보 유지 가능
  2. 회전 행렬 기반으로 상대적 위치 정보를 반영하는 Multiplicative 기법 사용
  3. BERT, Transformer, Performer 등에 적용하여 성능 향상 검증
  4. 긴 문서 처리에서 기존 모델 대비 1.5% 이상 성능 향상
  5. 선형 Attention에서도 활용 가능하여 확장성 높음

👉 RoPE는 Transformer의 위치 정보 인코딩을 개선하는 혁신적인 방법으로, 다양한 NLP 태스크에서 강력한 성능을 보임!