| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | 2 | |||||
| 3 | 4 | 5 | 6 | 7 | 8 | 9 |
| 10 | 11 | 12 | 13 | 14 | 15 | 16 |
| 17 | 18 | 19 | 20 | 21 | 22 | 23 |
| 24 | 25 | 26 | 27 | 28 | 29 | 30 |
| 31 |
- 디지털노마드장비
- 높이조절책상
- 디지털노마드필요서류
- UpstageAILab
- 재택근무
- 부업수입
- 패크스캠퍼스ai부트캠프
- 인체공학적의자
- 추천정착지
- 수입분석
- 재택근무준비물
- 패스트컴퍼스업스테이지부트캠프
- 패스트캠퍼스
- 프리랜서수입
- 패스트캠퍼스업스테이지부트캠프
- 패트스캠퍼스ai부트캠프
- 협업소프트웨어
- 수입증대
- 패스트캠퍼스AI부트캠프
- 업스테이지패스트캠퍼스
- 패스트캠퍼스업스테이지에이아이랩
- 초기정착비용
- 화상회의필수품
- AI부트캠프
- 프리랜서계약서
- 패스트팸퍼스ai부트캠프
- 패스트캠퍼스업스테에지에이아이랩
- 원격근무
- 디지털노마드
- 국비지원
- Today
- Total
프리랜서로 살아남기
[AI 부트캠프] 자연어 처리 딥러닝의 진화: RNN에서 Transformer까지 핵심 정리 본문
자연어 처리 딥러닝의 진화: RNN에서 Transformer까지 핵심 정리
자연어 처리(NLP) 분야의 딥러닝 모델들은 텍스트 데이터를 효과적으로 다루기 위해 발전해왔습니다. 특히, 시퀀스(Sequence) 데이터를 처리하는 데 강점을 보이는 모델들이 중요한 역할을 해왔는데, 그 핵심적인 모델들을 중심으로 아키텍처의 특징과 발전 과정을 자세히 정리해보겠습니다.
1. RNN (Recurrent Neural Network): 순차 데이터 처리의 시작
1.1 RNN의 기본 개념
RNN은 순차적 데이터를 처리하기 위해 설계된 신경망입니다. 가장 큰 특징은 이전 시점의 정보를 현재 시점으로 전달하는 순환 구조를 가진다는 점이에요.
h(t) = tanh(W_h * h(t-1) + W_x * x(t) + b)RNN의 순환 구조 시각화:
x₁ ─→ [RNN] ─→ h₁ ─→ y₁
↓ ↑
h₀ │
│
x₂ ─→ [RNN] ─→ h₂ ─→ y₂
↓ ↑
h₁ │
│
x₃ ─→ [RNN] ─→ h₃ ─→ y₃여기서 h(t)는 현재 시점의 은닉 상태, h(t-1)은 이전 시점의 은닉 상태입니다.
1.2 RNN의 주요 특징
| 특징 | 설명 |
|---|---|
| 가변 길이 처리 | 입력 시퀀스의 길이에 관계없이 처리 가능 |
| 매개변수 공유 | 모든 시점에서 동일한 가중치 사용으로 효율적 |
| 메모리 기능 | 은닉 상태를 통해 이전 정보 기억 |
1.3 RNN의 한계점
하지만 RNN에는 치명적인 문제들이 있었습니다:
- 기울기 소실(Vanishing Gradient): 긴 시퀀스에서 초기 정보가 점점 약해져서 사라지는 문제
- 기울기 폭발(Exploding Gradient): 반대로 기울기가 지나치게 커지는 현상
- 순차 처리: 병렬 처리가 불가능해서 학습 속도가 느림
1.4 RNN의 발전형: LSTM과 GRU
이런 문제들을 해결하기 위해 LSTM(Long Short-Term Memory)과 GRU(Gated Recurrent Unit)가 등장했습니다.
LSTM 게이트 구조:
┌─── Forget Gate ───┐
│ │
C(t-1) ──┬─→ [×] ──┬─→ [+] ──→ C(t)
│ │ ↑
h(t-1) ──┼─→ Input ─┼─→ [×]
│ Gate │
x(t) ────┼─────────┬┘
│ │
└─ Output Gate ─→ h(t)- Forget Gate: 불필요한 정보 제거
- Input Gate: 새로운 정보 선택적 저장
- Output Gate: 출력할 정보 결정
GRU의 특징:
- LSTM보다 단순한 구조
- Reset Gate와 Update Gate만 사용
- 계산 효율성이 높음
2. Attention Mechanism: 선택적 집중의 혁신
2.1 Attention의 등장 배경
RNN 기반 인코더-디코더 모델의 한계를 극복하기 위해 등장한 것이 바로 Attention 메커니즘입니다. 번역 작업에서 긴 문장을 처리할 때, 디코더가 인코더의 마지막 은닉 상태만 참조하는 것은 정보 손실이 컸거든요.
2.2 Attention의 작동 원리
Attention은 다음 3단계로 작동합니다:
Attention 메커니즘 작동 과정:
[Query] ──┐
├─→ [Attention Score 계산] ─→ [Softmax 정규화] ─→ [가중합] ─→ [Output]
[Key] ────┘ ↑
│
[Value] ──────────────────────────────────────────────────────────┘Query와 Key의 유사도 계산
score(q, k) = q^T * kAttention Weight 계산
α = softmax(score)Value의 가중합
output = Σ(α_i * v_i)
2.3 Attention의 장점
- 장거리 의존성 해결: 모든 입력 위치에 직접 접근 가능
- 병렬 처리: RNN과 달리 동시에 계산 가능
- 해석 가능성: 어떤 부분에 집중했는지 시각화 가능
2.4 Self-Attention vs Cross-Attention
| 구분 | Self-Attention | Cross-Attention |
|---|---|---|
| 정의 | 동일 시퀀스 내에서 attention | 서로 다른 시퀀스 간 attention |
| 용도 | 문맥 이해, 관계 파악 | 번역, 요약 등 |
| 예시 | "그는 공을 찼다"에서 "그는"과 "찼다"의 관계 | 영어 문장과 한국어 번역의 대응 관계 |
3. Transformer: Attention Is All You Need
3.1 Transformer의 혁신
2017년 구글에서 발표한 "Attention Is All You Need" 논문에서 제안된 Transformer는 RNN을 완전히 제거하고 순수하게 Attention 메커니즘만으로 구성된 혁신적인 아키텍처입니다.
3.2 Transformer의 핵심 구성 요소
3.2.1 Multi-Head Attention
하나의 Attention 대신 여러 개의 Attention Head를 병렬로 사용합니다:
MultiHead(Q,K,V) = Concat(head_1, ..., head_h)W^O
head_i = Attention(QW_i^Q, KW_i^K, VW_i^V)Multi-Head Attention의 장점:
- 다양한 관점에서 정보 추출
- 서로 다른 위치 관계 학습
- 표현력 향상
3.2.2 Positional Encoding
RNN 없이는 순서 정보가 없어지므로, 위치 정보를 임베딩에 추가합니다:
PE(pos, 2i) = sin(pos/10000^(2i/d_model))
PE(pos, 2i+1) = cos(pos/10000^(2i/d_model))3.2.3 Feed-Forward Network
각 위치에 독립적으로 적용되는 완전연결층입니다:
FFN(x) = max(0, xW_1 + b_1)W_2 + b_23.3 Transformer 아키텍처
Transformer 전체 아키텍처:
Input Embeddings + Positional Encoding
│
┌──────────────┐
│ Encoder │ ┌──────────────┐
│ │────▶│ Decoder │
│ • Multi-Head │ │ │
│ Attention │ │ • Masked │
│ • Add & Norm │ │ Multi-Head │
│ • Feed │ │ Attention │
│ Forward │ │ • Add & Norm │
│ • Add & Norm │ │ • Cross │
│ │ │ Attention │
│ (× N layers) │ │ • Add & Norm │
└──────────────┘ │ • Feed │
│ Forward │
│ • Add & Norm │
│ │
│ (× N layers) │
└──────────────┘
│
Linear + Softmax
│
Output Probabilities인코더 레이어 구조:
Input
│
Multi-Head Attention
│
Add & Norm (Residual Connection)
│
Feed Forward Network
│
Add & Norm (Residual Connection)
│
Output디코더 레이어 구조:
Input
│
Masked Multi-Head Attention (Self-Attention)
│
Add & Norm
│
Multi-Head Attention (Cross-Attention with Encoder)
│
Add & Norm
│
Feed Forward Network
│
Add & Norm
│
Output3.4 Transformer의 핵심 특징
| 특징 | 설명 | 장점 |
|---|---|---|
| 완전 병렬 처리 | 모든 위치를 동시에 계산 | 학습 속도 대폭 향상 |
| 장거리 의존성 | 모든 위치 간 직접 연결 | 긴 문맥 이해 능력 |
| 확장성 | 레이어 수와 파라미터 증가 가능 | 대규모 모델 구축 |
| 전이 학습 | 사전 훈련된 모델 활용 | 다양한 태스크 적용 |
4. 아키텍처별 성능 비교
4.1 계산 복잡도 비교
| 모델 | 시간 복잡도 | 공간 복잡도 | 병렬화 |
|---|---|---|---|
| RNN | O(n) | O(n) | 순차적 |
| CNN | O(1) | O(n) | 완전 병렬 |
| Attention | O(1) | O(n²) | 완전 병렬 |
4.2 실제 성능 향상
Transformer 도입 후 NLP 태스크에서의 성능 향상:
- 기계 번역: BLEU 점수 28.4 → 41.8
- 언어 모델링: 복잡도(Perplexity) 대폭 감소
- 문서 분류: F1 점수 지속적 향상
5. 현실 적용과 발전
5.1 Transformer 기반 모델들
Transformer의 등장으로 다음과 같은 혁신적인 모델들이 탄생했습니다:
BERT (2018)
- 양방향 인코더 표현
- 마스크 언어 모델링
- 문맥 이해 능력 향상
GPT 시리즈 (2018~)
- 생성형 사전 훈련 모델
- 디코더 전용 구조
- 창의적 텍스트 생성
T5 (2019)
- Text-to-Text Transfer Transformer
- 모든 태스크를 텍스트 생성으로 통일
5.2 최신 동향
최근에는 더욱 효율적인 Attention 메커니즘들이 연구되고 있습니다:
- Linear Attention: O(n²) → O(n) 복잡도 개선
- Sparse Attention: 선택적 위치만 계산
- Local Attention: 지역적 범위 내에서만 계산
결론
RNN에서 시작된 순차 데이터 처리는 Attention 메커니즘을 거쳐 Transformer라는 혁신적인 아키텍처로 발전했습니다. 이 여정을 요약하면:
- RNN 시대: 순차적 처리의 시작, 하지만 장거리 의존성과 병렬 처리의 한계
- Attention 등장: 선택적 집중으로 장거리 의존성 해결, 해석 가능성 향상
- Transformer 혁신: 완전한 병렬 처리와 확장성으로 현재 NLP의 표준
특히 Transformer는 단순히 성능 향상을 넘어서 대규모 언어 모델의 시대를 열었습니다. GPT, BERT 등 우리가 일상에서 사용하는 AI 서비스들의 기반이 되었죠.
앞으로도 Transformer를 기반으로 한 더욱 효율적이고 강력한 모델들이 계속 등장할 것으로 예상됩니다. 이 발전 과정을 이해하는 것은 현재와 미래의 NLP 기술을 이해하는 핵심이라고 할 수 있어요.
자연어 처리 딥러닝의 각 아키텍처가 이전 모델의 한계를 극복하면서 발전해온 과정을 보면서, 기술 발전의 놀라운 속도를 다시 한번 실감하게 됩니다.