인코더-디코더 모델 — T5, BART, mBART
인코더-디코더(Encoder-Decoder) 모델은 Transformer의 인코더와 디코더를 모두 사용하는 구조입니다. 입력을 인코더로 이해하고, 디코더로 새로운 시퀀스를 생성합니다. 번역, 요약, 질의응답 등 입력과 출력이 다른 형태인 태스크에 특히 적합합니다.핵심 아이디어
인코더 전용(BERT)은 이해에 강하지만 생성이 어렵고, 디코더 전용(GPT)은 생성에 강하지만 입력 이해가 단방향입니다. 인코더-디코더는 양방향 이해 + 자기회귀 생성을 결합합니다.| 구조 | 인코더 | 디코더 | 강점 |
|---|---|---|---|
| BERT (인코더) | 양방향 | 없음 | 이해, 분류, 추출 |
| GPT (디코더) | 없음 | 자기회귀 | 텍스트 생성 |
| T5, BART (인코더-디코더) | 양방향 | 자기회귀 | 이해 + 생성 |
T5 — Text-to-Text Transfer Transformer
핵심 아이디어: 모든 것을 텍스트로
Google이 2019년에 발표한 T5는 모든 NLP 태스크를 텍스트-투-텍스트(text-to-text) 문제로 통일합니다. 분류든, 번역이든, 요약이든 입력과 출력 모두 텍스트입니다.T5 아키텍처 상세
| 항목 | T5-Small | T5-Base | T5-Large | T5-3B | T5-11B |
|---|---|---|---|---|---|
| 인코더 레이어 | 6 | 12 | 24 | 24 | 24 |
| 디코더 레이어 | 6 | 12 | 24 | 24 | 24 |
| Hidden 차원 | 512 | 768 | 1,024 | 1,024 | 1,024 |
| Attention Head | 8 | 12 | 16 | 32 | 128 |
| FFN 차원 | 2,048 | 3,072 | 4,096 | 16,384 | 65,536 |
| 파라미터 | 60M | 220M | 770M | 3B | 11B |
T5 사전학습: Span Corruption
T5는 MLM의 변형인 Span Corruption으로 사전학습합니다. 연속된 토큰 범위(span)를 하나의 센티넬 토큰으로 대체하고, 디코더가 원래 내용을 생성합니다.<X>, <Y>, <Z>는 센티넬(sentinel) 토큰입니다.
| 비교 | BERT MLM | T5 Span Corruption |
|---|---|---|
| 마스킹 단위 | 개별 토큰 | 연속 토큰 범위 (span) |
| 출력 | 마스킹 위치의 토큰 | 센티넬 + 원본 span |
| 효율성 | 15%만 예측 | 더 긴 span 예측 |
| 학습 방식 | 인코더만 | 인코더-디코더 |
T5 태스크 프리픽스 예시
BART — Bidirectional and Auto-Regressive Transformers
핵심 아이디어: 디노이징 오토인코더
Facebook AI(현 Meta)가 2019년에 발표한 BART는 텍스트를 손상(corrupt)시키고 복원하는 디노이징(denoising) 오토인코더입니다.BART의 노이즈 함수들
BART는 다양한 방식으로 입력을 손상시킵니다.| 노이즈 유형 | 설명 | 예시 |
|---|---|---|
| Token Masking | BERT처럼 토큰을 [MASK]로 대체 | A B C → A [M] C |
| Token Deletion | 토큰을 삭제 (위치 정보 손실) | A B C → A C |
| Text Infilling | 연속 범위를 하나의 [MASK]로 대체 | A B C D → A [M] D |
| Sentence Permutation | 문장 순서를 무작위 섞기 | S1. S2. S3. → S3. S1. S2. |
| Document Rotation | 문서의 시작점을 무작위 변경 | A B C D → C D A B |
BART vs T5 비교
| 항목 | BART | T5 |
|---|---|---|
| 사전학습 | 디노이징 오토인코더 (다양한 노이즈) | Span Corruption |
| 태스크 형식 | 태스크별 Fine-tuning | 텍스트-투-텍스트 통일 |
| 강점 | 요약, 생성 | 범용 태스크 |
| 위치 인코딩 | 학습된 절대 위치 | 상대 위치 바이어스 |
| 디코더 어텐션 | 전체 인코더 출력 참조 | 전체 인코더 출력 참조 |
| 노이즈 전략 | 5가지 다양한 노이즈 | Span Corruption만 |
mBART — Multilingual BART
mBART는 BART를 **다국어(multilingual)**로 확장한 모델입니다. 25개 이상의 언어에 대해 동시에 디노이징 사전학습을 수행합니다.| 항목 | mBART | mBART-50 |
|---|---|---|
| 발표 | 2020 | 2020 |
| 지원 언어 | 25개 | 50개 |
| 학습 데이터 | CC25 (다국어 Common Crawl) | CC50 |
| 핵심 용도 | 다국어 번역, 요약 | 더 많은 언어 지원 |
| 한국어 | 포함 | 포함 |
인코더-디코더 vs 디코더 전용: 언제 무엇을 사용할까?
| 태스크 | 추천 구조 | 이유 |
|---|---|---|
| 기계 번역 | 인코더-디코더 | 입력(소스어)과 출력(타겟어)이 다른 형태 |
| 텍스트 요약 | 인코더-디코더 | 입력(긴 문서)을 이해하고 출력(요약)을 생성 |
| 추출형 QA | 인코더-디코더 또는 인코더 | 지문을 이해하고 답을 추출/생성 |
| 자유 대화 | 디코더 전용 | 열린 형태의 긴 텍스트 생성 |
| 텍스트 분류 | 인코더 전용 | 이해만 필요, 생성 불필요 |
| 코드 생성 | 디코더 전용 | 긴 코드를 자기회귀적으로 생성 |
구현 예제
T5로 텍스트 요약
BART로 텍스트 생성
T5 텍스트-투-텍스트 다중 태스크
관련 기술 비교
| 모델 | 발표 | 사전학습 | 주요 태스크 | 파라미터 (Base) |
|---|---|---|---|---|
| T5 | 2019, Google | Span Corruption | 범용 (텍스트-투-텍스트) | 220M |
| BART | 2019, Meta | 디노이징 오토인코더 | 요약, 생성 | 140M |
| mBART | 2020, Meta | 다국어 디노이징 | 다국어 번역, 요약 | 610M |
| Flan-T5 | 2022, Google | Span Corruption + Instruction Tuning | Instruction Following | 250M~11B |
| mT5 | 2021, Google | 다국어 Span Corruption | 다국어 범용 | 300M~13B |
T5의 텍스트-투-텍스트 접근법은 분류 태스크에서 비효율적이지 않나요?
T5의 텍스트-투-텍스트 접근법은 분류 태스크에서 비효율적이지 않나요?
분류의 경우 “positive” 또는 “negative” 같은 짧은 텍스트를 생성하므로, 디코더의 오토리그레시브 생성은 비효율적일 수 있습니다. 하지만 T5의 장점은 통일된 프레임워크입니다. 하나의 모델이 모든 태스크를 처리하며, 새로운 태스크 추가 시 모델 아키텍처 변경이 불필요합니다. 또한 분류 레이블을 자연어로 표현할 수 있어 Zero-shot 가능성이 열립니다.
BART의 디노이징이 T5의 Span Corruption보다 좋은가요?
BART의 디노이징이 T5의 Span Corruption보다 좋은가요?
일대일 비교에서 큰 차이는 없지만, 태스크에 따라 다릅니다. BART의 다양한 노이즈 함수(삭제, 순서 변경 등)는 요약과 같은 생성 태스크에서 약간 우수한 경향을 보입니다. T5는 Span Corruption 하나만 사용하지만, 텍스트-투-텍스트 프레임워크의 통일성과 대규모 실험을 통한 최적 설정 탐색이 강점입니다.
2024년 이후에도 인코더-디코더 모델이 사용되나요?
2024년 이후에도 인코더-디코더 모델이 사용되나요?
2024년 현재 디코더 전용 모델(GPT-4, LLaMA 3 등)이 대부분의 태스크에서 주류가 되었습니다. 하지만 인코더-디코더 모델은 특정 분야에서 여전히 사용됩니다. 1) 번역 전문 시스템, 2) 요약 특화 모델, 3) 음성 인식(Whisper는 인코더-디코더), 4) 멀티모달 모델의 일부 구조에서 인코더-디코더 패턴이 활용됩니다. Flan-T5는 Instruction Following에서도 준수한 성능을 보입니다.
참고 논문
| 논문 | 저자 | 연도 | 핵심 기여 |
|---|---|---|---|
| Exploring the Limits of Transfer Learning with a Unified Text-to-Text Transformer (T5) | Raffel et al. | 2019 | 텍스트-투-텍스트 프레임워크, 대규모 실험 |
| BART: Denoising Sequence-to-Sequence Pre-training | Lewis et al. | 2019 | 디노이징 오토인코더 사전학습 |
| Multilingual Denoising Pre-training for Neural Machine Translation (mBART) | Liu et al. | 2020 | 다국어 BART |
| Scaling Instruction-Finetuned Language Models (Flan-T5) | Chung et al. | 2022 | Instruction Tuning + T5 |

