Transformer트랜스포머
쉽게 이해하기
트랜스포머는 AI가 문장 속 단어들을 순서대로 하나씩만 보지 않고, 모든 단어가 서로를 참고하도록 만든 구조다. “나는 은행에 갔다”에서 은행이 금융기관인지 강가인지 판단하려면 주변 단어를 함께 봐야 한다. self-attention은 각 토큰이 다른 토큰을 얼마나 봐야 하는지 점수화한다. 이 방식 덕분에 긴 문맥, 번역, 요약, 코드 생성 같은 작업에서 큰 모델을 병렬로 학습시키기 쉬워졌다.
비유와 예시
- 회의 테이블: 각 참석자가 모든 발언을 듣고 중요한 사람에게 더 집중한다.
- 문장 해석: “그것”이 무엇을 가리키는지 앞뒤 단어를 참고해 결정한다.
- 이미지 모델: 이미지를 패치로 나누고, 각 패치가 다른 패치와 어떤 관계인지 본다.
한눈에 비교
| 구조 | 정보 처리 방식 | 강점 | 한계 |
|---|---|---|---|
| RNN | 순서대로 처리 | 짧은 sequence에 직관적 | 병렬화 어려움 |
| CNN | 주변 window를 합성 | 이미지·지역 패턴 | 긴 의존성에 추가 구조 필요 |
| Transformer | attention으로 전체 관계 계산 | 병렬 학습, 긴 의존성 | context 길이에 따라 비용 증가 |
어디서 왜 중요한가
트랜스포머는 GPT, BERT, T5, Vision Transformer 같은 모델 계열의 공통 기반이다. LLM이 긴 문맥을 보고 다음 토큰을 예측하거나, RAG에서 가져온 문서를 답변에 반영하거나, 멀티모달 모델이 텍스트와 이미지를 연결하는 데 attention 구조가 핵심 역할을 한다. 다만 attention 비용은 sequence length가 길어질수록 커지므로 KV Cache, sparse attention, efficient inference 같은 최적화가 함께 등장한다.
자주 하는 오해
- “트랜스포머는 attention만 있다” → feed-forward network, residual connection, normalization도 핵심이다.
- “순서를 모른다” → positional encoding이나 position embedding으로 순서 정보를 넣는다.
- “LLM과 같은 말이다” → LLM은 트랜스포머를 많이 쓰는 모델 계열이지만 완전히 같은 개념은 아니다.
- “항상 긴 문맥을 잘 처리한다” → 학습 길이, attention 방식, inference memory가 함께 제한을 만든다.
대화에서는 이렇게
- “이 문제는 self-attention이 긴 의존성을 잡아야 해서 transformer 계열이 적합합니다.”
- “context length를 늘리면 attention cost와 KV cache memory를 같이 봐야 합니다.”
- “attention만 보지 말고 FFN block이 실제 파라미터와 연산량을 많이 차지한다는 점도 봅시다.”
- “positional encoding 방식이 길이 일반화에 영향을 줄 수 있습니다.”
함께 읽으면 좋은 용어
참고 자료
- Attention Is All You Need
Transformer 아키텍처를 제안한 원 논문.
- Transformers
Transformer 계열 모델을 실무에서 사용하는 대표 라이브러리 문서.
- MultiheadAttention
multi-head attention 구현 관점의 공식 API 문서.
- Transformer model for language understanding
Transformer가 RNN/CNN 대신 attention 중심 구조를 쓰는 배경 설명.
- The Illustrated Transformer
encoder/decoder, self-attention, positional encoding을 시각적으로 설명하는 참고 자료.