트랜스포머는 문장 속 각 부분이 다른 부분과 어떤 관계인지 계산해 문맥을 반영하는 AI 모델 구조예요. 핵심은 어떤 정보를 얼마나 참고할지 정하는 ‘어텐션’이에요. 이 계산을 바탕으로 입력을 분석하거나 다음에 올 내용을 생성해요. 단어 사이의 관계부터 살펴보면 RNN과 무엇이 다르고 LLM에 어떻게 이어지는지 이해할 수 있어요.
트랜스포머란 무엇인가요?
트랜스포머는 특정 앱의 이름이 아니라, AI 내부의 계산을 구성하는 설계 방식이에요. 2017년 공개된 논문에서 번역을 위한 구조로 제안됐어요. 원 논문 「Attention Is All You Need」에서 출발점을 확인할 수 있어요.
대규모 텍스트를 학습해 언어를 처리하는 모델을 대규모 언어 모델, LLM이라고 해요. 트랜스포머는 이런 모델을 만드는 데 쓰이는 대표적인 구조예요. ‘LLM’이 모델의 규모와 언어 처리 성격을 가리킨다면, ‘트랜스포머’는 내부 설계에 관한 말이에요. 언어 모델 자체가 낯설다면 LLM의 뜻과 작동 원리를 함께 읽어보세요.
셀프 어텐션은 문맥을 어떻게 반영하나요?
같은 입력 안의 여러 부분을 서로 비교해 참고할 정보의 비중을 계산해요. 이렇게 정보마다 반영 비중을 달리하는 계산이 어텐션이고, 같은 입력 내부에서 관계를 계산하는 방식이 셀프 어텐션이에요.
설명용으로 ‘은행에서 대출 상담을 받았어요’와 ‘은행 열매가 떨어졌어요’를 비교해볼게요. ‘은행’만 보면 뜻이 모호하지만, 주변의 ‘대출’이나 ‘열매’를 함께 보면 의미를 구별할 수 있어요. 셀프 어텐션은 이런 문맥 정보를 각 부분의 표현에 섞어 넣어요. 이 예시는 이해를 돕는 비유이며, 특정 모델의 실제 계산을 측정한 결과는 아니에요.
글을 계산할 수 있는 형태로 어떻게 바꾸나요?
먼저 글을 작은 처리 단위로 나누는데, 이 조각을 토큰이라고 해요. 토큰은 단어 하나일 수도 있고 단어의 일부일 수도 있어요. 이어서 각 토큰을 숫자들의 묶음으로 바꾸는 임베딩을 거쳐요. 여기에 순서를 구별할 위치 정보도 반영해요.
그다음 셀프 어텐션으로 주변 정보를 모으고, 모은 정보를 추가로 가공하는 계산을 반복해요. 트랜스포머를 어텐션 계산 하나로만 생각하면 구조의 일부를 놓치게 돼요. TensorFlow 공식 튜토리얼은 토큰 처리부터 이러한 구성 요소까지 실제 구현으로 보여줘요.

Q·K·V는 어떤 역할인가요?
무엇을 참고할지 정하는 비교 기준을 쿼리(Q), 비교할 상대의 특징을 키(K), 실제로 가져와 섞을 정보를 값(V)이라고 생각하면 돼요. 셀프 어텐션에서는 같은 입력의 숫자 표현을 서로 다른 방식으로 변환해 이 셋을 만들어요.
Q와 K를 비교해 반영 비중을 구하고, 그 비중에 따라 V를 섞어요. 이런 계산을 여러 갈래로 수행한 뒤 합치는 방식이 멀티헤드 어텐션이에요. 여러 관계를 함께 다룰 수 있지만, 각 갈래가 반드시 ‘문법 담당’이나 ‘의미 담당’으로 나뉘는 것은 아니에요. 계산 방식은 원 논문의 어텐션 설명에 제시돼 있어요.
RNN과 무엇이 다른가요?
앞 단계의 처리 결과를 다음 단계로 넘기는 순환 신경망, RNN과 달리, 트랜스포머는 어텐션으로 떨어진 위치의 정보를 직접 연결해요. 입력의 여러 위치를 동시에 계산하기에도 유리해요.
RNN에서는 앞부분의 정보가 여러 처리 단계를 거쳐 뒷부분에 전달돼요. 트랜스포머의 기본적인 셀프 어텐션은 서로 떨어진 위치도 직접 참고할 수 있어요. 다만 이것이 긴 글을 언제나 정확하게 이해한다는 뜻은 아니에요. 두 구조의 정보 전달과 병렬 계산 차이는 TensorFlow 공식 설명에서도 확인할 수 있어요.
순서를 다루는 방식도 달라요. RNN은 순차적인 처리 구조를 활용하고, 트랜스포머는 위치 정보를 별도로 반영해요. 관련 구조를 더 살펴보고 싶다면 CNN과 RNN의 차이로 이어서 읽어보세요.
병렬 계산을 한다면 답변도 한꺼번에 만드나요?
학습할 때의 계산과 답변을 생성할 때의 계산을 구분해야 해요. 정답 문장이 주어진 학습에서는 여러 위치의 예측을 동시에 계산할 수 있어요. 이때 뒤에 나올 정답을 미리 보지 못하도록 접근을 막는 처리를 마스킹이라고 해요.
앞서 만든 내용을 바탕으로 다음 토큰을 생성하는 방식에서는 출력이 순차적으로 이어져요. 병렬 학습이 가능하다는 말이 답변 전체를 한 번에 완성한다는 뜻은 아니에요. Hugging Face 공식 강좌에서도 이 차이를 설명해요.
인코더와 디코더는 무엇을 하나요?
입력을 문맥이 반영된 숫자 표현으로 바꾸는 부분이 인코더, 주어진 정보를 바탕으로 출력 내용을 생성하는 부분이 디코더예요. 원래 번역용 구조에는 둘 다 있지만, 목적에 따라 한쪽만 쓰기도 해요.
| 구조 | 주요 역할 | 대표 예 |
|---|---|---|
| 인코더 중심 | 입력의 문맥을 표현해 분류 등에 활용해요 | BERT |
| 디코더 중심 | 앞선 내용을 바탕으로 다음 토큰을 생성해요 | GPT 계열 |
| 인코더·디코더 | 입력을 읽고 이를 참고해 출력을 만들어요 | 원래의 번역용 트랜스포머 |
이 구분은 대표적인 설계 차이를 보여줘요. 특정 작업을 한 구조만 할 수 있다는 뜻은 아니에요. 구조별 활용은 Hugging Face의 구조 설명을 참고했어요.
BERT는 입력의 왼쪽과 오른쪽 문맥을 함께 반영하도록 학습한 모델이에요. 문장을 분류하거나 질문의 답이 있는 구간을 찾는 등 여러 작업에 활용할 수 있어요. BERT 원 논문은 이러한 학습 방식과 적용을 설명해요.
트랜스포머는 어디에 쓰이고, 어떤 한계가 있나요?
언어 처리뿐 아니라 이미지 처리에도 쓰여요. 다만 입력 사이의 관계를 계산하는 구조라는 사실만으로 정확성이나 무제한의 처리 능력이 보장되지는 않아요.
이미지도 작은 조각으로 나누면 처리할 수 있어요
이미지를 작은 구역으로 나눈 패치를 입력 조각처럼 다루는 방식이 있어요. 이미지 분류에 트랜스포머를 적용한 비전 트랜스포머, ViT가 대표적이에요. ViT 원 논문은 이미지 패치의 나열을 모델에 넣는 접근을 제시했어요. 트랜스포머를 글 전용 기술로 이해할 필요는 없어요.
긴 입력을 처리하는 데도 비용이 들어요
모든 토큰 쌍을 비교하는 기본 셀프 어텐션은 입력이 길어질수록 계산 부담이 빠르게 커져요. 다른 조건이 같을 때 길이가 두 배면 비교할 쌍은 네 배가 돼요. 이는 전체 서비스의 비용이나 응답 시간이 반드시 네 배가 된다는 뜻은 아니에요. 원 논문의 계산량 비교도 기본 구조를 기준으로 읽어야 해요.
구조를 이해할 때는 ‘어떤 정보를 참고하는가’, ‘순서를 어떻게 반영하는가’, ‘입력을 분석하는가 출력을 생성하는가’를 나눠 생각해보세요. 모델 이름이 달라져도 각 설계의 역할을 따라가기 쉬워져요.
자주 묻는 질문
트랜스포머를 이해하려면 수학부터 공부해야 하나요?
개념을 이해하는 단계에서는 필수는 아니에요. 입력을 숫자로 바꾸고, 관계에 따라 정보를 섞는 흐름부터 잡으면 돼요. 직접 구현하려면 숫자 묶음과 표 형태의 계산인 벡터·행렬 연산, 확률, 미분을 차례로 익히면 도움이 돼요.
어텐션은 트랜스포머가 처음 만든 기술인가요?
아니에요. 어텐션은 이전의 RNN 기반 번역 모델 등에서도 쓰였어요. 트랜스포머의 특징은 순환 구조 없이 어텐션을 중심으로 입력과 출력의 관계를 처리하도록 구성했다는 점이에요.
트랜스포머와 파인튜닝은 같은 종류의 기술인가요?
가리키는 대상이 달라요. 트랜스포머는 모델의 구조이고, 파인튜닝은 이미 학습한 모델을 특정 데이터로 추가 학습하는 과정이에요. 트랜스포머 구조로 만든 모델에도 파인튜닝을 적용할 수 있어요.
BERT도 글을 이어 쓰는 모델처럼 다음 단어만 예측하나요?
원래 BERT의 주요 학습 과제는 가려진 토큰을 주변 문맥으로 예측하는 것이에요. 왼쪽과 오른쪽 정보를 함께 활용하므로, 앞의 내용만 보고 다음 토큰을 이어 만드는 방식과 구분해야 해요.
참고 자료
- Attention Is All You Need — Vaswani 외 · arXiv
- Neural machine translation with a Transformer and Keras — TensorFlow
- How do Transformers work? — Hugging Face
- BERT: Pre-training of Deep Bidirectional Transformers for Language Understanding — Devlin 외 · arXiv
- An Image is Worth 16×16 Words: Transformers for Image Recognition at Scale — Dosovitskiy 외 · arXiv