복잡한 어텐션 연산량을 선형 시간(Linear-Time)으로 확 줄이면서도 정보 손실이 전혀 없는 FAVOR+ 의 수학적 원리를 파헤쳐 봅니다.
오늘 리뷰할 논문은 효율적인 트랜스포머(Efficient Transformer) 연구의 마스터피스 중 하나로 꼽히는 "Rethinking Attention with Performers" 입니다.
요즘 대형 언어 모델(LLM)을 써보시면 문맥 길이가 길어질수록 메모리가 펑펑 터지는 'OOM(Out of Memory)' 문제를 다들 겪어보셨을 텐데요. 이 논문은 기존의 복잡한 어텐션(Attention) 계산 순서를 기발한 수학적 마법(FAVOR+)으로 뒤집어서, 메모리 사용량을 기하급수적 폭발에서 선형적인 증가로 확 줄여버린 놀라운 아이디어를 담고 있습니다.
이 글을 끝까지 읽으시면, 복잡한 수식의 늪에 빠지지 않고도 어떻게 트랜스포머가 한계를 극복하여 수만 자의 텍스트나 긴 단백질 서열을 한 번에 스윽 읽어내는지 그 직관적인 원리를 깨닫게 되실 겁니다.
논문의 핵심으로 들어가기 전에, 왜 이런 연구가 필요했는지 배경지식을 가볍게 짚고 넘어가 보겠습니다.
트랜스포머 모델의 심장은 바로 어텐션입니다. 문장 속 단어들이 서로 얼마나 연관되어 있는지를 점수로 매기는 과정이죠.
"나는 어제 아주 맛있는 피자를 먹었다"라는 문장에서 '먹었다'라는 단어가 '피자'와 강하게 연결되어 있음을 파악하는 능력입니다.
단어의 총 개수(시퀀스 길이)를 이라고 해볼게요. 기존 어텐션은 모든 단어가 다른 모든 단어와 빠짐없이 1:1로 인사를 나눠야 합니다.
| 단어 수 | 필요한 인사 횟수 |
|---|---|
| 10개 | 100번 |
| 1만 개 | 1억 번 |
이를 수학적으로는 계산량과 메모리 소모가 단위로 커진다고 표현합니다.
AI가 똑똑해지려면 책 한 권을 통째로 읽거나, 고해상도 이미지를 한 번에 분석하거나, 엄청나게 긴 DNA 염기서열을 봐야 합니다. 하지만 문맥이 조금만 길어져도 GPU 메모리가 제곱으로 팽창하며 터져버리기 때문에, 이 의 벽을 허무는 것은 AI 학계의 가장 시급한 숙제였습니다.
이 논문이 꼬집는 가장 근본적인 문제는 "Softmax 함수의 병목 현상" 입니다. 어텐션을 계산할 때는 반드시 Softmax라는 함수를 거쳐야 하는데, 이 녀석 때문에 무조건 거대한 크기의 표(행렬)를 메모리에 만들어야만 합니다.
Performer 이전에도 이 문제를 풀려는 시도는 아주 많았습니다. 보통 두 가지 꼼수를 썼습니다.
| 방식 | 설명 | 치명적 단점 |
|---|---|---|
| Sparse Attention | "너무 머니까 내 주변 10단어하고만 연결하자!" | 멀리 떨어진 단어 간의 의미를 놓침 |
| Local Attention | "긴 글을 100단어씩 뚝뚝 끊어서 보자!" | 문맥이 조각나며 정보 유실 발생 |
1,000명의 사람이 모인 네트워킹 파티장이 있습니다.
Performer의 목표
정보의 손실(꼼수) 전혀 없이, 완벽하게 기존 어텐션과 똑같은 결과를 내면서도 메모리만 크기로 획기적으로 줄이는 것.
Performer는 FAVOR+ (Fast Attention Via positive Orthogonal Random features) 라는 강력한 수학적 무기를 도입하여 이 문제를 해결합니다.
원래 어텐션의 수식은 이렇습니다.
괄호 안의 와 를 내적한 뒤 를 씌우는 과정이 문제입니다. 지수 함수()가 포함되어 있어서 괄호를 풀고 분배/결합 법칙을 쓸 수가 없습니다. 무조건 와 를 먼저 곱해 어마어마한 행렬을 만들어야 하죠.
저자들은 여기서 천재적인 접근을 합니다.
"Softmax 자물쇠를 부수지 말고, 아주 비슷한 복제 키를 만들어서 쪼개버리자!"
수학의 커널 근사(Kernel Approximation) 기법을 이용해 식을 아래와 같이 변형합니다.
라는 마법의 필터(무작위 특성 투영)를 씌웠더니, 묶여있던 와 가 분리되었습니다. 이제 괄호의 위치를 바꿀 수 있게 된 겁니다! 거대한 행렬을 만들 필요 없이, 덩치가 작은 와 를 먼저 곱해버리고 나중에 를 곱하면 끝납니다.
🧮 비유 1: 계산기 괄호 옮기기 (결합 법칙 비유)
메모리 한도가 숫자 '100'까지인 계산기가 있습니다.
Performer는 행렬 곱셈에서 이 '괄호 옮기기' 를 가능하게 한 것입니다.
🧚 비유 2: 브로커(요정) 배치 비유
다시 파티장으로 돌아가 보죠. 1,000명이 1:1로 악수하는 대신, 파티장 한가운데에 5명의 정보 브로커 요정( 차원) 을 배치합니다.
100만 번 필요했던 대화가 순식간에 줄어들면서도 모두가 정보를 알게 됩니다!
내가 이해한 포인트
결국 행렬을 어떤 순서로 묶어서 곱하느냐(결합 법칙)의 차이가 메모리 점유율의 형태를 완전히 바꿔버린다는 점을 한눈에 알 수 있었습니다. 이 논문의 핵심 기여인 "공간 복잡도 달성" 을 눈으로 가장 명확하게 증명하는 도식입니다.
내가 이해한 포인트
데이터가 4,000자만 넘어가도 기존 모델은 GPU 메모리가 터져서 죽어버리지만, Performer는 6만 자가 넘어가도 아주 평온하게 버팁니다. 이론으로 수립한 수학 공식이 실제 하드웨어 인프라에서도 완벽하게 작동하여 병목을 없앴음을 증명하는 실험적 결과입니다.
저자들은 이 마법의 공식이 진짜로 성능 하락 없이 작동하는지 확인하기 위해 아주 가혹한 환경에서 테스트를 진행했습니다.
| 태스크 | 내용 | 결과 |
|---|---|---|
| 픽셀 예측 | 고해상도 이미지를 1차원 픽셀로 길게 늘어뜨려 입력 | 65,536 길이 시퀀스에서 메모리 초과 없이 학습 완료 |
| 단백질 서열 분석 | 무지막지하게 긴 아미노산 서열 구조 학습 | 기존 트랜스포머와 정확도 그래프가 완벽히 일치 |
더 놀라운 것은 정확도(Accuracy) 그래프가 기존 트랜스포머와 소름 돋게 완벽히 겹쳤다는 점입니다.
연산량을 쥐어짜 내기 위해 꼼수를 쓴 것이 아니라, 수학적으로 정답을 완벽하게 근사(Unbiased estimation)했기 때문에 모델이 전혀 멍청해지지 않았음을 증명한 것입니다. 다른 꼼수 기반의 경량화 모델(Reformer, Linformer 등)과 비교했을 때도 압도적인 성능 유지력을 보여주었습니다.
문장 길이에 따라 매핑의 차원 수를 동적으로 조절하는 어댑티브 FAVOR+ 구조를 설계한다면, 짧은 문장에서의 오버헤드 문제를 해결하면서도 긴 문장에서의 강점을 그대로 살릴 수 있을 것으로 보입니다.
AI 연구에서 단순히 "이거저거 깎아내서 가볍게 만들자!"라는 엔지니어링적 접근이 아니라, 수학의 깊은 원리(커널 이론, 직교성 등)를 가져와 근본적인 수식 자체를 재설계해 버린 저자들의 뷰티풀한 접근 방식에 큰 감명을 받았습니다.
Softmax 안에 갇혀있는 변수들을 독립적으로 꺼내어 행렬의 결합 법칙을 활용한다는 큰 그림은 아주 직관적으로 와닿았습니다.
어텐션을 통째로 구하지 않고, Key와 Value를 먼저 버무려 놓는다는 발상의 전환이 핵심이었습니다.
오차를 줄이기 위해 사용했다는 '긍정 직교 무작위 특성(Positive Orthogonal Random Features)' 의 구체적인 수학적 증명 과정은 수식이 너무 빽빽해서 아직 100% 소화하지는 못했습니다. 왜 하필 무작위 벡터들을 서로 '수직(직교)'으로 만들어야 에러율의 분산(Variance)이 최소화되는지에 대해서는 커널 이론을 좀 더 파봐야 할 것 같습니다.
요즘 뜨고 있는 긴 문서 요약(Long-document QA) 서비스나, 수만 시간 분량의 비디오 프레임 단위 분석, 혹은 유전자 염기서열 분석 같은 Bio-Informatics 분야에 이 구조를 도입하면 기존의 한계를 가볍게 뛰어넘는 혁신적인 모델이 나올 수 있겠다고 생각했습니다.
| 항목 | 내용 |
|---|---|
| 핵심 문제 | 트랜스포머의 어텐션은 문맥이 길어질수록 메모리와 계산량이 으로 폭발하여 긴 데이터 처리 불가 |
| 해결 방법 | FAVOR+ 기법을 도입하여 Softmax 수식을 쪼갠 뒤 행렬 곱셈의 순서를 변경 (괄호 옮기기 신공) |
| 핵심 기여 | 정보 손실 전혀 없이 기존 어텐션을 완벽하게 근사하면서 시간/공간 복잡도를 선형 수준으로 압축 |
| 가장 인상 깊었던 점 | 특정 도메인에 얽매이지 않고 수학적 증명을 통해 어떤 데이터든 100% 성능 보장이 가능함을 입증한 우아함 |
| 아쉬운 점 | 문장 길이가 짧을 때는 구조적 복잡성 때문에 오히려 속도 이득을 보기 어렵다는 태생적인 트레이드오프 |
| 확장 방향 | 텍스트를 넘어 극단적으로 긴 DNA/RNA 분석 등 바이오 AI 모델 설계의 새로운 표준 뼈대로 활용 가능 |
🧠 이 논문을 한 문장으로 말하면?
Performer는 Softmax라는 자물쇠를 수학적 복제 키로 열어 행렬 곱셈의 순서를 뒤집음으로써, 정보 손실 없이 트랜스포머의 메모리 폭발 문제를 우아하게 해결한 혁명적인 아키텍처다.