주제: 4-4 Scaling Laws / Chinchilla (Compute-Optimal Scaling)
초기에는 파라미터 수를 키우는 것이 가장 중요해 보였지만, 이후 연구는 데이터 양과 compute 예산도 똑같이 중요하다는 점을 보여줬다. 특히 Chinchilla 결과는 "너무 큰 모델을 적은 데이터로 학습하면 비효율적일 수 있다"는 점을 강하게 드러냈다.
그래서 scaling law는 단순한 연구 결과가 아니라, 실제 대규모 학습 예산을 설계할 때 매우 중요한 지침이 된다. 같은 비용으로 더 좋은 모델을 만들 수 있느냐의 문제이기 때문이다.
문제 설정
대형 언어 모델은 다음 세 가지 요소로 성능이 결정됩니다.
- 모델 크기 (parameters)
- 데이터 크기 (training tokens)
- 연산량 (compute)
Scaling Laws 연구의 질문은 다음입니다.
"같은 compute 예산에서 모델 크기와 데이터 크기를 어떻게 배분해야 성능이 가장 좋은가?"
이 질문은 곧 "파라미터를 더 늘릴지, 데이터를 더 모을지, 같은 예산으로 어느 쪽이 더 효율적인지"를 묻는 것이다. 실제 산업 환경에서는 이 차이가 매우 크다.
초기에는 파라미터 수를 키우는 것이 가장 중요해 보였지만, 이후 연구는 데이터 양과 compute 예산도 똑같이 중요하다는 점을 보여줬다. 특히 Chinchilla 결과는 "너무 큰 모델을 적은 데이터로 학습하면 비효율적일 수 있다"는 점을 강하게 드러냈다.
직관 비유
- 큰 모델 + 적은 데이터 -> 과적합
- 작은 모델 + 많은 데이터 -> 표현력 부족
- 적절한 균형 -> 최적 성능
1. Language Model Loss
언어 모델은 다음 loss를 최소화합니다.
기호 의미
- x_t : target token
- P(x_t | context) : 다음 토큰 확률
- L : cross-entropy loss
왜 중요한가
모델 성능은 일반적으로 이 loss 값으로 측정됩니다.
주의점
loss 감소는 모델 크기와 데이터 양에 따라 달라집니다.
2. Scaling Law
OpenAI 연구에서는 다음 관계를 발견했습니다.
기호 의미
- N : 모델 파라미터 수
- α : scaling exponent
- L : loss
직관 설명
모델이 커질수록 loss는 감소하지만 감소율은 점점 줄어듭니다.
즉 scaling law는 "계속 키우면 계속 좋아진다"가 아니라, "좋아지긴 하지만 한계효용은 점점 줄어든다"는 관찰이다. 그래서 실제 시스템 설계에서는 모델 크기만 볼 것이 아니라 데이터와 compute 배분을 함께 봐야 한다.
주의점
무한히 모델을 키워도 성능 향상은 점점 작아집니다.
3. Compute Budget
훈련 compute는 다음 요소에 비례합니다.
기호 의미
- C : training compute
- N : model parameters
- D : dataset tokens
왜 중요한가
compute가 고정된 상황에서 N과 D를 어떻게 선택할지가 핵심입니다.
4. GPT-3 Scaling 전략
GPT-3는 다음 전략을 사용했습니다.
- 매우 큰 모델
- 상대적으로 적은 데이터
예:
| 모델 | 파라미터 | 데이터 |
|---|---|---|
| GPT-3 | 175B | ~300B tokens |
하지만 연구 결과 이 전략은 compute-optimal이 아니었습니다.
5. Chinchilla Scaling
DeepMind의 Chinchilla 연구는 다음 결론을 제시했습니다.
모델 크기와 데이터 크기는 거의 같은 비율로 증가해야 한다.
즉:
기호 의미
- D : training tokens
- N : model parameters
직관 설명
큰 모델은 더 많은 데이터를 필요로 합니다.
주의점
데이터 부족은 모델 성능을 제한합니다.
6. GPT-3 vs Chinchilla
| 모델 | 전략 | 특징 |
|---|---|---|
| GPT-3 | 큰 모델 | 데이터 부족 |
| Chinchilla | 균형 scaling | compute optimal |
Chinchilla 모델:
- 70B parameters
- 1.4T tokens
-> GPT-3보다 성능이 좋았습니다.
7. Compute-Optimal Scaling
compute budget C가 고정일 때:
기호 의미
- N : 모델 크기
- D : 데이터 크기
- C : compute
왜 중요한가
효율적인 모델 학습 전략을 제공합니다.
8. Scaling Law 의미
- LLM 성능 예측 가능
- 훈련 전략 설계 가능
- compute 효율 향상
코드-수식 연결
| 개념 | 코드 | 설명 |
|---|---|---|
| Cross entropy | torch.nn.CrossEntropyLoss() |
LM training loss |
| training tokens | dataset_size |
데이터 크기 |
| parameters | model.num_parameters() |
모델 크기 |
자주 하는 오해 5개
- 모델이 클수록 항상 좋은 성능을 낸다고 생각한다
- 데이터 크기는 모델 성능에 큰 영향을 주지 않는다고 생각한다
- Scaling law는 모든 모델에 동일하게 적용된다고 생각한다
- compute budget은 무한하다고 생각한다
- LLM 성능은 단순히 파라미터 수로 결정된다고 생각한다
체크리스트 (스스로 설명 가능해야 하는 질문)
- Scaling law는 무엇을 설명하는가?
- compute budget C는 어떤 요소로 구성되는가?
- GPT-3 scaling 전략의 한계는 무엇인가?
- Chinchilla scaling 법칙은 무엇인가?
- 왜 모델 크기와 데이터 크기의 균형이 중요한가?