Angelos Katharopoulos, Apoorv Vyas, Nikolaos Pappas, François Fleuret  ·  ICML 2020  ·  arXiv:2006.16236

Transformers are RNNs:
Fast Autoregressive Transformers with Linear Attention

이 논문은 Transformer를 "커널 함수로 근사한 어텐션"의 관점에서 바라본다 — Softmax를 커널 특징 맵(kernel feature map)으로 대체하고 행렬 곱의 결합법칙을 활용하면, Transformer는 O(N²)에서 O(N)으로 선형화될 뿐 아니라 수학적으로 RNN과 동치임이 밝혀진다.

arXiv →
linear attention kernel self-attention efficient transformer autoregressive inference Transformer–RNN 등가성 causal masking

문제의 배경 — 기존 연구의 한계

Transformer(Vaswani et al., 2017)는 자연어 처리, 오디오, 이미지 생성 등 광범위한 분야에서 놀라운 성능을 보였습니다. 그러나 이 강력함에는 숨겨진 대가가 있었습니다 — 입력 시퀀스 길이 N에 대해 O(N²)의 시간 및 메모리 복잡도입니다. 긴 시퀀스를 처리할수록 비용이 기하급수적으로 늘어나는 구조적 문제였습니다.

이 병목의 근원은 self-attention입니다. N개 입력에 대해 N×N 크기의 어텐션 행렬을 계산해야 하고, 이를 저장·처리하는 비용이 O(N²)가 됩니다.

"Transformers achieve remarkable performance in several tasks but due to their quadratic complexity, with respect to the input's length, they are prohibitively slow for very long sequences."

번역: Transformer는 여러 과제에서 탁월한 성능을 보이지만, 입력 길이에 대한 이차적 복잡도로 인해 매우 긴 시퀀스에서는 현실적으로 사용하기 어렵다.

기존 접근법과 그 한계

한계 Sparse Attention (Child et al., 2019 — Sparse Transformer): 어텐션 행렬을 희소 분해(sparse factorization)하여 √N 인수로 복잡도를 줄임. 복잡도 O(N√N). 그러나 자기회귀적 추론(autoregressive inference) 속도를 향상시키지 못함 — 훈련 효율성에 초점을 맞춘 접근.
한계 Reformer (Kitaev et al., 2020): 지역 민감 해싱(locality-sensitive hashing, LSH)으로 복잡도를 O(N log N)까지 줄임. 그러나 키와 쿼리를 동일하게 묶는 제약이 있어 쿼리와 키가 달라야 하는 디코딩 태스크에 사용 불가. 마찬가지로 자기회귀 추론의 속도를 근본적으로 개선하지 못함.
한계 Transformer-XL (Dai et al., 2019): 이전 컨텍스트 메모리를 유지해 더 긴 의존성 포착. 그러나 이전 컨텍스트 저장으로 계산 비용이 추가되고 점근적 복잡도는 그대로 O(N²).

핵심 문제는 이렇습니다: "왜 지금까지 이 한계가 해소되지 않았는가?" 기존 연구들은 근사 또는 구조적 제약으로 복잡도를 줄였지만, Softmax 어텐션의 수학적 구조 자체를 바꾸지 않았습니다. Softmax 함수가 만들어내는 전역 정규화(global normalization)가 O(N²) 계산을 필수적으로 만들기 때문입니다.

이 논문은 묻습니다: "Softmax를 대체하는 수식이 있다면, 행렬 곱의 순서를 바꿔 복잡도를 근본적으로 줄일 수 있지 않을까?"

이 논문의 선택 — 핵심 아이디어와 트레이드오프

통찰: 어텐션을 커널 함수로 보기

이 논문의 핵심 통찰은 Softmax 어텐션의 유사도 함수를 커널(kernel)로 해석하는 것입니다. 일반화된 어텐션은 다음과 같이 쓸 수 있습니다:

"The definition of attention in equation 2 is generic and can be used to define several other attention implementations... The only constraint we need to impose to sim(·), in order for equation 3 to define an attention function, is to be non-negative. This includes all kernels k(x,y): R²ˣᶠ → R⁺."

번역: 어텐션의 정의는 일반적이며, 유사도 함수 sim(·)에 필요한 유일한 제약은 비음수성(non-negativity)이다. 이는 모든 양의 정수값 커널을 포함한다.

즉, Softmax를 쓰지 않아도 됩니다! 유사도 함수가 비음수만 보장된다면 어떤 함수든 어텐션을 정의할 수 있습니다. 이 통찰이 모든 것의 출발점입니다.

핵심 트릭: 행렬 곱의 결합법칙

커널을 특징 맵(feature map) φ로 분해할 수 있다면, 즉 sim(q,k) = φ(q)ᵀφ(k)라면:

핵심 아이디어 행렬 곱의 결합법칙을 활용해 연산 순서를 바꾼다. 기존 방법: (φ(Q)φ(K)ᵀ)V → N×N 어텐션 행렬 먼저 계산 → O(N²)
제안 방법: φ(Q)(φ(K)ᵀV) → 오른쪽부터 먼저 계산 → O(N)

연산 순서 비교 — 클릭해서 확인

Q [N×D] K [N×D] QKᵀ = [N×N] O(N²) 병목! V [N×M] V′ [N×M] 전체 복잡도: O(N²·max(D,M))

무엇을 포기했는가 — 트레이드오프

트레이드오프 Softmax의 정확한 지수 커널(exponential kernel)을 포기합니다. Softmax 어텐션의 커널은 exp(qᵀk/√D)인데, 이 지수 커널의 특징 맵 φ는 무한 차원이라 유한 차원으로 정확히 선형화하는 것은 불가능합니다. 따라서 논문은 이를 유한 차원의 근사 특징 맵으로 대체합니다. 성능 손실이 얼마나 될지가 핵심 질문이며, 실험 결과 대부분의 태스크에서 무시할 수 있는 수준임을 보입니다.
얻은 것 자기회귀 추론 시 상수 시간·메모리. 선형 어텐션에서 인과 마스킹(causal masking)을 적용하면 각 타임스텝에서 고정 크기의 내부 상태(φ(K)VT 행렬)만 유지하면 됩니다. 이는 RNN과 정확히 동일한 구조이며, 추론 속도가 수천 배 빨라집니다.

보충 이 아이디어는 커널 기반 어텐션 해석(Tsai et al., 2019)에서 영감을 받았습니다. 그러나 Tsai et al.이 어텐션을 이론적으로 이해하기 위해 커널 관점을 사용했다면, 이 논문은 그것을 실제 계산 속도 향상에 직접 활용합니다.

방법론

1. Transformer 정형화

논문은 먼저 일반적인 Transformer 레이어를 다음과 같이 정의합니다:

\[ T_l(x) = f_l(A_l(x) + x) \]
변수의미비고
x ∈ ℝᴺˣᶠN개의 F차원 특징 벡터로 이루어진 입력 시퀀스시퀀스 길이 N
f_l(·)각 위치를 독립적으로 변환하는 함수 (보통 2층 FFN)위치 간 교류 없음
A_l(·)self-attention 함수 — 위치 간 정보를 교환하는 유일한 부분O(N²) 병목 지점

직관적 해설

각 Transformer 레이어는 두 부분으로 구성됩니다: (1) self-attention A_l — 모든 위치를 서로 비교하여 정보를 섞고, (2) feedforward f_l — 각 위치를 개별적으로 변환합니다. Residual connection (+x)은 그래디언트 흐름을 안정화합니다.

수학적 유도

A_l(x)는 Q=xW_Q, K=xW_K, V=xW_V로 projection하고, 어텐션 가중치를 이용해 V의 가중 평균을 계산합니다. f_l은 Layer Normalization과 함께 적용됩니다.

Softmax 어텐션의 정의 (기존 방식):

\[ V_i' = rac{\sum_{j=1}^{N} ext{sim}(Q_i, K_j) V_j}{\sum_{j=1}^{N} ext{sim}(Q_i, K_j)} \]
변수의미비고
Qᵢi번째 위치의 쿼리 벡터xᵢWQ로 계산
Kⱼj번째 위치의 키 벡터xⱼWK로 계산
Vⱼj번째 위치의 값 벡터xⱼWV로 계산
sim(q,k)쿼리와 키 사이의 유사도 함수Softmax의 경우 exp(qᵀk/√D)

직관적 해설

i번째 위치의 새로운 표현 V′ᵢ는 모든 위치 j의 값 Vⱼ를 유사도 점수로 가중 평균한 것입니다. 분모는 가중치의 합으로 정규화합니다. Softmax는 sim(q,k) = exp(qᵀk/√D)입니다.

수학적 유도

이 식이 O(N²)인 이유: V′ᵢ 하나를 계산하려면 N번의 sim(Qᵢ, Kⱼ) 계산이 필요하고, N개의 V′ᵢ를 계산하면 총 N²번입니다. 또한 역전파를 위해 N×N 어텐션 행렬 전체를 메모리에 유지해야 합니다.

2. 선형 어텐션 (Linearized Attention)

커널 특징 맵 φ: ℝᴰ → ℝᶜ을 도입해 sim(q,k) = φ(q)ᵀφ(k)로 분해하면:

\[ V_i' = rac{\phi(Q_i)^T \left(\sum_{j=1}^{N} \phi(K_j) V_j^T ight)}{\phi(Q_i)^T \left(\sum_{j=1}^{N} \phi(K_j) ight)} \]
변수의미비고
φ(·)커널 특징 맵 (kernel feature map)비음수 값을 출력해야 함
C특징 맵의 출력 차원유한 차원이어야 선형화 가능
Σφ(Kⱼ)VⱼT모든 키-값 쌍의 누적 합 행렬 [C×M]한 번만 계산하고 재사용

직관적 해설

결합법칙 덕분에 Σφ(Kⱼ)VⱼT를 먼저 계산하면 단 하나의 [C×M] 행렬만 얻습니다. 이 행렬을 모든 쿼리 φ(Qᵢ)에 재사용하면, N번의 행렬-벡터 곱만으로 모든 V′ᵢ를 계산할 수 있습니다. 총 복잡도: O(NCM) — N에 대해 선형!

수학적 유도

식 (4)→(5): φ(Qᵢ)ᵀφ(Kⱼ) = φ(Kⱼ)φ(Qᵢ)ᵀ (스칼라이므로 교환 가능). 이를 이용해 Σⱼ[φ(Qᵢ)ᵀφ(Kⱼ)]Vⱼ = φ(Qᵢ)ᵀ[Σⱼφ(Kⱼ)VⱼT]로 재정렬. 행렬 곱의 결합법칙: (AB)C = A(BC).

3. 특징 맵(Feature Map) 선택

논문은 실험에서 다음 특징 맵을 사용합니다:

\[ \phi(x) = ext{elu}(x) + 1 \]
변수의미비고
elu(x)Exponential Linear Unit: x≥0이면 x, x<0이면 exp(x)-1x≥0일 때 항등 함수
+1비음수성 보장을 위한 오프셋elu(x) ∈ (-1, ∞)이므로 +1 추가

직관적 해설

왜 ReLU가 아닌 ELU를 사용하나요? x < 0에서 ReLU는 출력이 0이 되어 그래디언트도 0이 됩니다. ELU는 x < 0에서도 exp(x)-1의 음수 값을 가져 그래디언트가 살아있습니다. +1을 더하면 항상 양수가 되어 비음수 커널 조건을 만족합니다.

수학적 유도

φ(x) = elu(x)+1이면 φ(x) ≥ 0 for all x. 이로 인해 sim(q,k) = φ(q)ᵀφ(k) ≥ 0이 보장됩니다. 이 특징 맵을 사용하면 어텐션 연산 비용이 O(NDM)이 됩니다.

φ(x) = elu(x)+1 함수 시각화

주황색: φ(x) = elu(x)+1 (항상 양수). 회색 점선: y=0 기준선. x < 0에서도 그래디언트가 살아있음을 확인할 수 있습니다.

4. 인과 마스킹 (Causal Masking) — Transformer가 RNN이 되는 순간

자기회귀 생성을 위해서는 위치 i가 이전 위치 j ≤ i만 참조해야 합니다. 이를 선형 어텐션에 적용하면:

\[ V_i' = rac{\phi(Q_i)^T S_i}{\phi(Q_i)^T z_i} \quad ext{where} \quad S_i = \sum_{j=1}^{i} \phi(K_j) V_j^T, \quad z_i = \sum_{j=1}^{i} \phi(K_j) \]
변수의미비고
Sᵢ [C×M]i번째까지의 누적 키-값 행렬 (attention memory)Sᵢ = Sᵢ₋₁ + φ(Kᵢ)VᵢT
zᵢ [C]i번째까지의 정규화 벡터 (normalizer memory)zᵢ = zᵢ₋₁ + φ(Kᵢ)

직관적 해설

Sᵢ는 Sᵢ₋₁에서 φ(Kᵢ)VᵢT만 더하면 됩니다 — 일정 시간 갱신! 이것은 정확히 RNN의 은닉 상태 업데이트입니다. V′ᵢ를 구하려면 S, z라는 두 고정 크기 행렬만 필요합니다. 시퀀스가 길어져도 메모리는 늘어나지 않습니다.

수학적 유도

Sᵢ = Σⱼ₌₁ⁱ φ(Kⱼ)VⱼT이므로 Sᵢ = Sᵢ₋₁ + φ(Kᵢ)VᵢT (O(1) 업데이트). 추론 시 매 타임스텝마다 이 업데이트만 수행하면 됩니다. 전체 시퀀스 복잡도: O(NC²M) vs Softmax의 O(N²D).

5. RNN으로서의 Transformer

인과 선형 어텐션을 RNN 형태로 재작성하면:

\[ s_i = s_{i-1} + \phi(x_i W_K)(x_i W_V)^T \] \[ z_i = z_{i-1} + \phi(x_i W_K) \] \[ y_i = f_l\!\left( rac{\phi(x_i W_Q)^T s_i}{\phi(x_i W_Q)^T z_i} + x_i ight) \]
변수의미비고
s₀ = 0, z₀ = 0초기 은닉 상태 (hidden states)RNN의 초기 상태와 동일
sᵢ [C×M]어텐션 메모리 (attention memory)매 타임스텝 O(1) 업데이트
zᵢ [C]정규화 메모리 (normalizer memory)매 타임스텝 O(1) 업데이트

직관적 해설

이 세 방정식은 정확히 RNN입니다! 입력 xᵢ를 받아 내부 상태 (s,z)를 업데이트하고 출력 yᵢ를 생성합니다. Universal Transformer(Dehghani et al., 2018)처럼 깊이에 대한 재귀가 아니라, 시간에 대한 재귀입니다.

수학적 유도

훈련 시: S = Σφ(K)VT를 병렬로 계산 (Transformers의 장점 유지). 추론 시: 매 스텝 s, z만 업데이트 (상수 메모리). 이것이 "두 세계의 장점을 모두 취한다"는 논문의 핵심 주장입니다.

6. 핵심 알고리즘 (Algorithm 1)

인과 마스킹이 있는 선형 Transformer의 순전파를 단계별로 살펴봅니다:

스텝 1 / 5
V̄ (출력) φ(Q)ᵀS = 분자 S ← S + φ(K)VT 입력: φ(Q), φ(K), V S←0, V̄←0 초기화 z ← z + φ(K) φ(Q)ᵀz = 분모

7. 구현 세부사항

그래디언트 계산 — 선형 시간·상수 메모리

단순히 수식 (12)를 deep learning 프레임워크에서 구현하면, 역전파를 위해 모든 중간 상태 Sᵢ를 저장해야 합니다. 이는 메모리를 max(D,M)배 증가시켜 긴 시퀀스에서 실용성을 잃습니다. 논문은 이를 해결하기 위해 그래디언트를 누적합(cumulative sum)으로 유도합니다:

\[ abla_{\phi(Q_i)} L = abla_{ar{V}_i} L \left(\sum_{j=1}^{i} \phi(K_j) V_j^T ight)^T \] \[ abla_{\phi(K_i)} L = \left(\sum_{j=i}^{N} \phi(Q_j) abla_{ar{V}_j} L^T ight) V_i \] \[ abla_{V_i} L = \left(\sum_{j=i}^{N} \phi(Q_j) abla_{ar{V}_j} L^T ight)^T \phi(K_i) \]

직관적 해설

Q에 대한 그래디언트: 순방향(1→N)으로 누적합. K,V에 대한 그래디언트: 역방향(N→1)으로 누적합 — 이것은 BPTT(Backpropagation Through Time)와 동일한 구조입니다! 모든 누적합은 O(NCM) 시간, O(N·max(C,M)) 메모리로 계산됩니다.

수학적 유도

[Appendix A 부연] Kⱼ는 모든 V̄ᵢ (i≥j)에 영향을 미치므로, ∂L/∂Klt = Σᵢ≥ⱼ (∂L/∂V̄ᵢ)(∂V̄ᵢ/∂Klt). 이를 벡터 형태로 정리하면 역방향 누적합이 됩니다. 이 구현은 약 200줄의 CUDA 코드로 구현됩니다.

8. 하이퍼파라미터 및 훈련 설정

설정MNIST 이미지 생성CIFAR-10 이미지 생성음성 인식 (WSJ)
레이어 수8169
어텐션 헤드886
임베딩 차원256 (헤드당 32)256 (헤드당 32)256 (헤드당 32)
FFN 차원1024 (임베딩×4)1024 (임베딩×4)1024 (임베딩×4)
출력 모델10-logistic mixture10-logistic mixtureCTC loss (음소)
옵티마이저RAdam (lr=1e-4)RAdam (lr=1e-4)RAdam (lr=1e-4→감소)
배치 크기104 (Linear/Reformer)-
훈련 기간250 에포크7일수렴까지
GPUNVidia GTX 1080 Ti (11GB)NVidia P40 (24GB)-
구현PyTorch (Paszke et al., 2019). CUDA 그래디언트 커널 ~200줄. 코드: linear-transformers.com

결과

4,462×
처리량 향상 (CIFAR-10)
Softmax 대비 (추론)
317×
처리량 향상 (MNIST)
Softmax 대비 (추론)
O(N)
시간·메모리 복잡도
기존 O(N²) → 선형화
O(1)
추론 시 메모리
시퀀스 길이 무관

실험 1: 합성 데이터 — 수렴성 및 메모리/속도

복사 태스크(sequence duplication)에서 4층 8헤드 Transformer를 최대 128 길이 시퀀스로 훈련. 결과: 선형 어텐션은 Softmax와 동일한 최종 손실에 수렴하며, Reformer보다 낮은 손실을 보입니다.

"linear converges smoothly and reaches a lower loss than lsh due to the lack of noise introduced by hashing. In particular, it reaches the same loss as softmax."

번역: 선형 어텐션은 해싱에 의한 노이즈 없이 부드럽게 수렴하며, LSH보다 낮은 손실을 달성한다. 특히 Softmax와 동일한 손실에 도달한다.

속도 및 메모리: NVidia GTX 1080 Ti (11GB)에서 다양한 시퀀스 길이 N ∈ {2⁹, 2¹⁰, ..., 2¹⁶}로 비교. Softmax는 N²로 스케일 — N=4,096이 최대. 선형 어텐션은 N=2¹⁶(65,536)까지 가능하며 메모리와 시간 모두 선형으로 스케일합니다.

실험 2: MNIST 이미지 생성

방법Bits/dim ↓처리량 (이미지/초) ↑상대 속도
Baseline Softmax 0.6210.45
LSH-1 (Reformer) 0.7450.681.5×
LSH-4 (Reformer) 0.6760.270.6×
Ours Linear 0.644142.8317×

보충 Bits/dim(비트/픽셀)은 낮을수록 좋습니다. 선형 어텐션은 Softmax보다 0.023 bits/dim 차이(약 4% 열세)밖에 없으면서 317배 빠릅니다. 이 속도 향상이 가능한 이유: 추론 시 메모리가 상수여서 단일 GPU로 10,000개 MNIST 이미지를 동시 생성할 수 있기 때문입니다.

실험 3: CIFAR-10 이미지 생성

시퀀스 길이 3,072 (32×32×3). Softmax는 배치 크기 1로도 겨우 P40 24GB에서 실행. 7일 동안 모든 모델 훈련.

방법Bits/dim ↓처리량 (이미지/초) ↑상대 속도
Baseline Softmax 3.470.004
LSH-1 3.390.0153.75×
LSH-4 3.510.0051.25×
Ours Linear 3.4017.854,462×

7일 동안 선형 Transformer는 Softmax보다 3배 많은 에포크를 완료 — 결과적으로 더 나은 퍼플렉시티를 달성합니다. 이 실험은 시퀀스가 길수록 선형 어텐션의 이점이 더 커짐을 보여줍니다 (MNIST 317× → CIFAR-10 4,462×).

실험 4: 자동 음성 인식 (WSJ 데이터셋)

비자기회귀(non-autoregressive) 태스크에서도 선형 어텐션이 작동하는지 확인. CTC 손실을 사용하는 end-to-end 음성 인식. WSJ 80시간 데이터셋, 40차원 mel-scale filterbank 특징.

방법검증 PER ↓에포크당 시간 (초) ↓
Baseline Bi-LSTM 10.941047
Softmax (표준 Transformer) 5.122711
LSH-4 (Reformer) 9.332250
Ours Linear 8.08824

PER(음소 오류율)에서 Softmax가 가장 우수합니다. 그러나 선형 Transformer는 에포크당 훈련 시간이 Softmax의 1/3 수준 — 같은 시간에 약 4배 더 많은 에포크를 완료합니다. 이 실험은 선형 어텐션이 자기회귀 태스크뿐 아니라 일반 순방향 태스크에도 적용 가능함을 보여줍니다.

평가 음성 인식에서 선형 어텐션은 Softmax보다 2.96 PER 열세입니다. 이는 음성 인식이 어텐션의 정밀한 전역 정보 통합이 중요한 태스크이기 때문일 수 있습니다. 긴 시퀀스 자기회귀 생성(이미지, 텍스트)에서의 이점이 분류형 태스크에서는 다소 줄어들 수 있습니다.

부록: Stateful Softmax 비교 (Table 4)

보충 [부록 데이터] 논문의 보완 실험에서는 키와 값을 저장하고 재사용하는 "stateful-softmax" 베이스라인과도 비교합니다. MNIST에서 stateful-softmax는 16.8×, CIFAR-10에서 80×로 크게 개선되지만, 여전히 선형 어텐션(317×, 4,462×)에 비해 훨씬 느립니다. Stateful-softmax는 상태 크기가 시퀀스 길이에 비례하여 증가하기 때문입니다.

한계점 & 트레이드오프

한계 Softmax 어텐션의 정확한 지수 커널을 재현하지 못합니다. φ(x) = elu(x)+1은 Softmax exp(qᵀk/√D)의 근사일 뿐입니다. 특히 어텐션이 날카롭게 집중(sharp attention)되어야 하는 태스크 — 정확한 심볼 복사, 특정 위치 검색 등 — 에서 성능 차이가 나타날 수 있습니다.
한계 음성 인식 등 일부 태스크에서 정확도 하락. WSJ 음성 인식에서 선형 어텐션(PER 8.08%)은 Softmax(5.12%)보다 약 3% 열세입니다. Reformer(9.33%)보다는 우수하지만, Softmax Transformer를 완전히 대체하기 어려운 태스크가 존재합니다.
한계 Softmax로 사전훈련된 모델과의 호환성. GPT, BERT 등 기존 Softmax 기반 사전훈련 모델을 선형 어텐션으로 바로 전환할 수 없습니다. 논문은 이것을 한계로 인식하고, "RBF 커널을 랜덤 푸리에 특징으로 근사하면 Softmax 사전훈련 모델을 활용할 수 있을 것"이라는 방향을 제시합니다.
한계 특징 맵 선택의 민감성. 어떤 특징 맵을 사용하느냐에 따라 성능과 안정성이 달라집니다. 논문은 φ(x)=elu(x)+1이 실험에서 잘 작동함을 보이지만, 더 긴 시퀀스나 더 깊은 모델에서 수치 안정성 문제가 생길 수 있고, 최적 특징 맵 선택은 열린 문제입니다.

얻은 것 vs 잃은 것 — 요약

얻은 것잃은 것
O(N) 시간·메모리 복잡도Softmax의 정확한 지수 커널
자기회귀 추론 시 상수 메모리일부 정밀한 주의 집중 능력
수천~수만 배 빠른 추론 속도기존 사전훈련 모델과의 호환성
Transformer-RNN 동치 관계 발견최적 특징 맵 탐색 필요

영향력 & 후속 연구

이 논문은 두 가지 독립적인 공헌을 담고 있습니다: 첫째 선형 어텐션이라는 실용적 도구, 둘째 Transformer–RNN 동치 관계라는 이론적 통찰. 이 두 공헌은 서로 다른 방향의 연구를 촉발했습니다.

누구에게 도움이 되는가?

긴 시퀀스에서 자기회귀 생성을 수행해야 하는 모든 응용 — 픽셀 단위 이미지 생성, 오디오 생성, 긴 문서 요약, DNA/단백질 시퀀스 모델링 — 에서 추론 비용을 획기적으로 줄이는 데 직접 활용할 수 있습니다.

저자가 제안한 후속 과제

논문은 결론에서 두 가지 명시적 후속 연구 방향을 제시합니다:

① RNN과 Transformer 사이의 정보 저장·검색 메커니즘 비교 탐구. ② 더 나은 특징 맵 선택 — 특히 랜덤 푸리에 특징(random Fourier features)으로 RBF 커널을 근사해 Softmax 사전훈련 모델과의 호환성 확보.

이 논문이 열어준 연구 방향

평가 이 논문은 이후 Performer(Choromanski et al., 2021), RWKV, Mamba 등의 선형 또는 선형화 시퀀스 모델 연구에 직접적인 영감을 주었습니다. 특히 "Transformer가 RNN과 수학적으로 동치"라는 관점은 이후 여러 모델이 "훈련은 병렬 Transformer처럼, 추론은 RNN처럼"이라는 아이디어를 추구하게 만들었습니다. 2020년대 중반의 SSM(State Space Model) 붐의 지적 선조라 볼 수 있습니다.

Q&A — 연구자의 고민과 독자의 질문

Q. 왜 행렬 곱 순서를 바꾸는 게 이렇게 큰 차이를 만드나요?

핵심은 어떤 두 행렬을 먼저 곱하느냐에 따라 중간 결과물의 크기가 달라진다는 것입니다. 기존 방식 (φ(Q)φ(K)ᵀ)V: φ(Q)φ(K)ᵀ = [N×C]·[C×N] = [N×N] — N이 크면 이 행렬이 거대해집니다. 제안 방식 φ(Q)(φ(K)ᵀV): φ(K)ᵀV = [C×N]·[N×M] = [C×M] — N에 무관한 고정 크기입니다. 행렬 곱의 결합법칙은 수학적으로 (AB)C = A(BC)이므로 결과는 동일하지만, 중간 단계에서 다루는 데이터 크기가 완전히 다릅니다.

Q. 선형 어텐션이 Softmax 어텐션과 "같은 성능"을 낼 수 있는 이유는 무엇인가요?

Softmax는 exp(qᵀk/√D)인데, 이것은 특정 커널의 특징 맵이 무한 차원인 경우에 해당합니다. 논문은 다항식(polynomial) 커널처럼 유한 차원 특징 맵으로 표현되는 커널이 지수 커널과 "동등하게 잘 작동한다"는 선행 연구(Tsai et al., 2019)를 인용합니다. φ(x) = elu(x)+1은 완벽한 대체가 아니지만, 대부분의 태스크에서 Transformer가 학습할 수 있는 패턴을 포착할 수 있을 만큼 충분히 표현력이 있습니다.

"We observe that if a kernel with positive similarity scores is applied on the queries and keys, linear attention converges normally."

번역: 쿼리와 키에 양의 유사도 점수를 가진 커널을 적용하면 선형 어텐션이 정상적으로 수렴한다.

Q. 훈련 시에도 O(N)이 되나요? 아니면 추론에서만?

훈련 시에도 O(N)입니다! 이것이 Sparse Transformer나 Reformer 등 다른 효율적 Transformer와의 핵심 차이입니다. 비인과(non-causal) 선형 어텐션에서는 Σⱼφ(Kⱼ)VⱼT를 한 번만 계산하고 모든 쿼리에 재사용하여 O(NCM)이 됩니다. 인과 마스킹에서는 누적합 트릭과 특수 CUDA 그래디언트 커널을 사용하여 순전파와 역전파 모두 O(N)·상수 메모리를 달성합니다.

Q. Reformer와 비교해서 어떤 점이 다른가요?

세 가지 핵심 차이가 있습니다. ① 제약 없음: Reformer는 LSH를 위해 Q=K를 강제합니다. 이로 인해 Q≠K인 디코딩 태스크(예: seq2seq)에 사용할 수 없습니다. 선형 어텐션은 Q와 K가 달라도 됩니다. ② 자기회귀 추론 속도: Reformer는 추론 시 여전히 시퀀스 의존적 비용이 있지만, 선형 어텐션은 진정한 상수 시간·메모리 추론을 달성합니다. ③ 점근적 복잡도: Reformer O(N log N) vs 선형 어텐션 O(N).

Q. "Transformer는 RNN이다"라는 주장이 실용적으로 무엇을 의미하나요?

이 동치 관계는 Transformer 아키텍처를 두 모드로 실행할 수 있음을 의미합니다: 훈련 시는 병렬 Transformer 모드 — 전체 시퀀스가 주어지면 GPU를 최대로 활용. 추론 시는 RNN 모드 — 이전 은닉 상태 (S, z)만 유지하고 토큰 하나씩 처리. 이것은 이후 RWKV, RetNet, Mamba 등이 채택한 "훈련은 병렬, 추론은 순차"라는 패러다임의 선구입니다.

통찰 이 논문 이전에 Transformer와 RNN은 "근본적으로 다른" 것으로 여겨졌습니다. 이 논문은 그것이 사실이 아님을 — 적어도 커널 어텐션의 경우 — 수학적으로 증명합니다. 이 통찰은 LLM 추론 효율화 연구의 새로운 지평을 열었습니다.
Q. 코드는 어디서 볼 수 있나요?

논문에 따르면 PyTorch 구현과 문서, 예제가 linear-transformers.com에 공개되어 있습니다. CUDA 그래디언트 커널은 약 200줄로 구현됩니다.

인터랙티브: 어텐션 행렬 비교

Softmax 어텐션과 선형 어텐션이 생성하는 어텐션 가중치 행렬을 비교합니다. 인과 마스킹 적용 시 선형 어텐션의 작동 방식을 확인하세요.

Softmax 어텐션 (인과 마스킹)

각 행: 해당 위치의 어텐션 분포. 상삼각 = 0 (미래 마스킹).

선형 어텐션의 누적 상태 S (인과)

누적 상태 Sᵢ의 크기 (||Sᵢ||). 시퀀스가 진행될수록 증가.

원본 Figure & 실험 결과

논문의 주요 Figure를 원본 이미지로 보여드립니다. 각 Figure의 논문 내 위치와 주목할 포인트를 함께 확인하세요.

Figure 1,2: 속도/메모리 비교 및 수렴 분석
Figure 1 & 2 (논문 §4.1, p.5): 왼쪽 — 시퀀스 길이에 따른 속도·메모리 비교. Softmax는 N²로 4,096에서 한계, 선형 어텐션은 2¹⁶까지 선형 스케일. 오른쪽 — 복사 태스크 수렴 곡선. 선형 어텐션이 Softmax와 동일한 손실에 수렴함을 확인.
주목: 선형 어텐션(파란선)이 LSH보다 낮은 손실까지 수렴하며, Softmax(주황)와 거의 같은 최종 성능에 도달합니다.
Figure 3: MNIST 이미지 생성 결과
Figure 3 (논문 §4.2.1, p.6): MNIST 이미지 생성 — 무조건 샘플과 이미지 완성. (a) 가려진 원본, (b) 선형 Transformer 완성, (c) 원본. 선명한 경계선과 일관된 필체가 특징.
주목: 선형 Transformer는 같은 필체와 선 두께로 이미지를 완성하며, 장거리 시간 의존성을 학습했음을 보여줍니다.
Figure 4: CIFAR-10 이미지 생성 결과
Figure 4 (논문 §4.2.2, p.7): CIFAR-10 이미지 생성. 복잡한 자연 이미지에서도 공간적 일관성을 유지하며 완성.
주목: 시퀀스가 MNIST의 4배 긴 3,072 픽셀임에도 불구하고 공간적 일관성이 유지됩니다. 처리량 4,462× 향상.
Figure 5: 전체 훈련 곡선
Figure 5 (부록 §B, p.14): 세 실험의 훈련 진행 곡선. (a) MNIST: 선형이 Softmax와 동등하게 수렴. (b) CIFAR-10 (7일): 선형이 3배 많은 에포크를 완료해 더 나은 성능. (c) 음성 인식: 선형(x축: wall-clock time)이 Reformer보다 빠르게 수렴.
[부록 추가] 훈련 비용이 동일할 때 선형 Transformer가 Reformer 대비 훨씬 빠른 수렴을 보임을 확인.