⚡ 3줄 요약
- Transformer의 출발점은 “더 똑똑한 모델”이 아니라 긴 입력에서 정보가 덮어써지는 문제였다.
- attention은 정보 접근을, 순환 연결 제거는 병렬 계산을 해결한다 — 둘은 별개의 문제다.
- 제목의 ‘2GB’는 특정 예시에서 투영 차원을 1000→200으로 줄였을 때의 캐시 크기다. 모든 모델의 숫자가 아니다.
Transformer는 똑똑해지려고 나온 게 아니라, RNN이 긴 문장에서 계속 걸리던 구체적 병목을 하나씩 우회한 결과물이다. Transformer를 설명하는 글은 대부분 query·key·value부터 들이민다. 순서가 거꾸로다. 이 구조는 어느 날 갑자기 발명된 게 아니라, RNN이 긴 문장에서 계속 실패하던 구체적인 병목을 하나씩 우회하다 나온 결과물이다. 그래서 구조를 외우는 것보다, 각 부품이 “무슨 문제를 피하려고” 생겼는지 보는 편이 훨씬 오래 남는다.
문제는 두 개였다 — 정보 접근과 계산 순서
긴 입력을 다루는 모델이 넘어야 할 벽은 사실 두 개다. 하나는 과거 정보에 어떻게 접근하느냐, 다른 하나는 위치들을 어떤 순서로 계산하느냐다. 이 둘을 뭉뚱그리면 Transformer가 왜 지금 모양인지 영영 이해되지 않는다. attention은 앞의 문제를, 순환 연결 제거는 뒤의 문제를 해결한다. 각각 따로 봐야 한다.
| 구조 | 정보 접근 | 계산 순서 |
|---|---|---|
| RNN / LSTM | 고정 기억에 압축 (덮어쓰기) | 위치별 순차 (N단계) |
| RNN + attention | 전체 기록 직접 참고 | 여전히 순차 (순환 잔존) |
| Transformer | 전체 기록 직접 참고 | 층 단위 병렬 |
RNN은 긴 기록을 작은 기억에 욱여넣는다
RNN은 이전 계산 결과를 다음 계산으로 넘기며 입력을 하나씩 처리한다. 현재 입력과 직전 상태를 합쳐 다음 상태를 만드는 식이다. 문제는 그 상태의 크기가 고정이라는 점이다. 원문의 표현을 빌리면 RNN은 과거 입력들을 하나의 기억으로 “짓눌러(squish)” 넣는다.
입력이 짧으면 이 방식으로 충분하다. 그런데 기록이 길어지면 정보들이 같은 기억 공간을 두고 경쟁한다. “I have five dollars”를 넣은 뒤 “and forty cents in my pocket”을 이어 붙이면, 작은 공간에 내용이 몰리면서 앞부분의 세부 정보가 덮어써질 확률이 커진다. LSTM은 이 흐름을 게이트로 조절해 학습을 안정시켰지만, 고정 기억이라는 근본 제약 자체는 남겨 뒀다.

attention은 접근을 풀지만, 순서까지 풀지는 못한다
attention은 과거 상태를 압축하지 않고 통째로 남겨 둔 뒤, 현재 계산이 필요한 위치를 직접 골라 참고하게 한다. 여기서 흔한 오해가 하나 있다. attention이 Transformer에서 처음 나왔다는 것. 아니다. 2014년 Bahdanau와 동료들이 이미 RNN 안에서 attention을 대중화했다. 논문 「Neural Machine Translation by Jointly Learning to Align and Translate」가 그 출발점이다.
다만 attention은 공짜가 아니다 — 문맥이 길어지면 이 연산이 추론 시간의 대부분을 잡아먹는다. 그런데 RNN에 attention을 붙여도 순환 연결이 남아 있으면 출력은 여전히 하나씩 순서대로 나온다. 마지막 N번째 출력을 만들려면 순환 의존성 때문에 N번의 순차 계산을 거쳐야 한다. 입력이 길어질수록 계산 단계가 그만큼 늘고, GPU가 여러 위치를 동시에 처리하기 어려워진다.
⚠️ 여기서 갈린다
“정보에 접근하는 문제”와 “계산 순서를 줄이는 문제”는 서로 다른 문제다. attention은 앞을 해결하지만 뒤는 손대지 않는다. 병렬 계산까지 가려면 순환 연결 자체를 제거해야 한다 — 이게 Transformer가 실제로 건드린 지점이다.
Transformer는 순환을 걷어내 층을 통째로 병렬화한다
Transformer는 왼쪽에서 오른쪽으로 이어지던 순환 연결을 없앤 구조다. 순환이 사라지면, 이전 층 계산이 끝나는 순간 같은 층의 모든 입력 위치를 동시에 계산할 수 있다. 각 위치가 과거 위치에 직접 접근하므로, 앞 위치가 끝나기를 기다릴 이유가 사라진다.
원문이 든 비교가 직관적이다. 순환 모델이라면 입력 길이만큼 순차 단계가 필요하지만, 순환이 없는 모델은 “이전 층만 끝나면 각 층을 통째로 병렬 계산”하므로 예시에서 단 2단계면 됐다. 계산 단계가 입력 길이를 따라 늘어나지 않는다는 것 — 이게 병렬화의 핵심이다.
대신 순서 정보를 잃으므로, 각 위치가 몇 번째인지 알려 주는 위치 정보가 따로 필요해진다. 입력 길이는 2일 수도 2000일 수도 있기 때문이다.

query·key·value는 ‘사람의 질문’이 아니라 계산 역할이다
이름 때문에 사람이 질문하고 답하는 장면을 떠올리기 쉽지만, 셋은 그냥 숫자 벡터가 관련성을 계산할 때 맡는 역할의 이름이다.
- query — 현재 위치가 무엇을 참고할지 정하는 기준
- key — 각 입력이 그 기준과 얼마나 맞는지 비교하는 표시
- value — 관련성이 높다고 판정된 위치가 실제로 넘기는 내용
현재 위치의 query를 여러 위치의 key와 견줘 어디를 볼지 정하고, 뽑힌 위치의 value를 섞어 현재 위치에 필요한 정보를 만든다. 여러 attention head는 이 관계를 서로 다른 관점으로 나눠 살피는 장치다. 하나의 잣대로 모든 관계를 처리하지 않는다.
skip connection과 MLP가 변환 부담을 나눈다
skip connection은 입력을 중간 계산을 건너뛰어 다음 단계에 그대로 더하는 경로다. 덕분에 중간 변환은 원래 입력을 보존하는 일에서 해방되고, “입력을 조금 조정하는” 훨씬 쉬운 일에만 집중한다. 원문 표현대로, 이 건너뛰기가 중간 변환을 원본 보존의 짐에서 풀어 준다.
MLP는 각 위치의 표현을 층마다 추가로 변형하는 부분이다. attention이 위치 사이에서 정보를 주고받는다면, MLP는 각 위치 안에서 표현을 다듬는다. MLP를 일종의 정보 저장소로 보는 해석도 있지만, 그 해석이 내부 작동을 완전히 설명한다고 검증된 것은 아니다.
제목의 ‘2GB’는 조건이 붙은 숫자다
이 글의 제목에 등장하는 2GB는 특정 캐시 구성에서 투영 차원을 줄였을 때의 예시 값이다. 원문의 계산을 그대로 옮기면 이렇다.
| 조건 | 결과 |
|---|---|
| 투영 차원(r) | 1000 → 200 |
| 예시 캐시 크기 | 10GB → 2GB |
| 변화 폭 | 5배 감소 |
투영 차원을 1000에서 200으로 낮추면 이 예시의 캐시 크기가 10GB에서 2GB로, 5배 줄어든다. 다만 이건 해당 예시 한 케이스의 숫자다. 모든 Transformer 구현이 이만큼 쓴다거나 이만큼 줄어든다는 뜻이 결코 아니다. 구조의 이점을 말할 때는 입력 길이와 캐시 구성 같은 조건을 반드시 함께 확인해야 한다. 이 캐시가 실제 추론에서 어떤 병목을 만드는지는 프리필과 디코드로 나눠 보면 더 분명해진다.
🎯 FEEDON의 선택 — 우리라면 이렇게 읽는다
Transformer를 “RNN보다 무조건 빠르고 정확한 것”으로 요약하면 절반은 틀린다. 병렬 계산이 가능해져도 전체 처리 비용이나 메모리 사용량이 항상 줄지는 않고, attention이 모든 정보를 완벽히 보존하지도 않는다. 이 구조가 준 것은 “정답”이 아니라 정보 보존과 계산 속도 사이의 더 나은 절충안이다.
그러니 새 모델을 읽을 땐 화려한 이름 대신 세 가지만 먼저 짚자 — 고정 기억의 한계를 어떻게 우회했나, 계산 순서를 어디까지 병렬화했나, 원래 정보를 보존하는 경로가 있나. 이 셋이 Transformer 계열을 관통하는 실제 설계 압력이다.
새 모델을 읽을 때 확인할 3가지
- 정보 접근 — 과거를 하나의 상태에 압축하나, 아니면 여러 위치를 직접 참고하나
- 계산 순서 — 순환 의존성이 남아 순차인가, 이전 층 이후 병렬인가
- 정보 보존 — skip connection처럼 원본을 흘려보내는 경로가 있는가
출처: 「Before Q, K, and V: Reconstructing the Transformer」(Towards Data Science) · attention 대중화는 Bahdanau et al. 2014, 순환 제거는 Vaswani et al. 2017 기준 · 캐시 수치는 원문 예시 조건에 한함
이 글은 FEEDON이 공개 1차 자료를 바탕으로 작성·검증했습니다.



