뉴럴 네트워크를 위한 스케일링 법칙 (Scaling Laws for Neural Language Models)
이 논문은 cross-entropy loss를 기준으로 한 언어 모델의 성능에 대한 경험적 스케일링 법칙을 연구합니다. 모델 크기(N), 데이터셋 크기(D), 학습에 사용된 컴퓨팅(C)에 따라 손실이 power-law 관계로 스케일링되며, 이러한 경향은 7차수 이상의 규모에 걸쳐 나타납니다. 모델의 너비나 깊이 같은 아키텍처 세부 사항은 넓은 범위 내에서 미미한 영향을 미칩니다. 이 관계를 통해 고정된 컴퓨팅 예산 내에서 최적의 자원 할당 방법을 결정할 수 있으며, 더 큰 모델이 샘플 효율성이 훨씬 뛰어나다는 결론을 내립니다. 따라서 최적의 컴퓨팅 효율적 학습은 매우 큰 모델을 상대적으로 적은 양의 데이터로 학습시키고, 수렴에 도달하기 전에 학습을 중단하는 것을 포함합니다. 논문 제목: Scaling Laws for Neural Language Models
논문 요약: Scaling Laws for Neural Language Models
- 논문 링크: https://arxiv.org/abs/2001.08361
- 저자: Jared Kaplan, Sam McCandlish, Tom Henighan, Scott Gray, Tom B. Brown, Alec Radford, Benjamin Chess, Jeffrey Wu, Rewon Child, Dario Amodei (OpenAI, Johns Hopkins University)
- 발표 시기: 2020년 (arXiv preprint)
- 주요 키워드: Scaling Laws, Language Models, LLM, Neural Networks, Compute, Data, Model Size
1. 연구 배경 및 문제 정의
- 문제 정의: 언어 모델의 성능(cross-entropy loss 기준)이 모델 크기(N), 데이터셋 크기(D), 학습에 사용된 컴퓨팅 자원(C)에 따라 어떻게 경험적으로 스케일링되는지, 그리고 이러한 요소들이 모델 성능에 미치는 영향을 정량적으로 이해하는 것이 필요했다. 특히, 대규모 딥러닝 모델의 효율적인 학습 전략을 수립하기 위한 지침이 부족했다.
- 기존 접근 방식: 딥러닝은 언어 모델링 분야에서 급속한 발전을 이루었지만, 모델 아키텍처, 크기, 컴퓨팅 파워, 데이터셋 크기 등 다양한 요소가 성능에 미치는 영향을 체계적으로 분석하고 정량화한 연구는 부족했다. 특히, 이러한 요소들이 광범위한 규모에서 어떻게 상호작용하며 성능에 영향을 미치는지에 대한 경험적 법칙은 명확히 밝혀지지 않았다.
2. 주요 기여 및 제안 방법
- 논문의 주요 기여:
- 언어 모델의 cross-entropy loss가 모델 크기(N), 데이터셋 크기(D), 학습에 사용된 컴퓨팅(C)에 따라 power-law 형태로 스케일링된다는 경험적 법칙을 7차수 이상의 규모에 걸쳐 발견하고 정량화했다.
- 모델의 너비나 깊이와 같은 아키텍처 세부 사항은 넓은 범위 내에서 성능에 미미한 영향을 미친다는 것을 입증했다.
- 고정된 컴퓨팅 예산 내에서 최적의 자원 할당 방법을 결정할 수 있는 관계를 제시했으며, 더 큰 모델이 훨씬 더 샘플 효율적임을 밝혔다.
- 최적의 컴퓨팅 효율적 학습은 매우 큰 모델을 상대적으로 적은 양의 데이터로 학습시키고, 수렴에 도달하기 전에 학습을 중단하는 것을 포함한다는 결론을 도출했다.
- 제안 방법: Transformer 아키텍처를 기반으로, 7억 6천 8백만 개에서 15억 개에 이르는 다양한 크기의 모델을 WebText2 데이터셋의 다양한 서브셋(2천 2백만 개에서 230억 개 토큰)으로 학습시켰다. 학습 과정에서 사용된 컴퓨팅 자원, 배치 크기, 학습 스텝 수 등을 체계적으로 변화시키며 cross-entropy loss를 측정하고, 이들 간의 경험적 관계를 power-law 형태로 모델링하여 스케일링 법칙을 도출했다.
3. 실험 결과
- 데이터셋: WebText2 (WebText의 확장 버전, 2.29 x 10^10 토큰, 50257 어휘 크기), 테스트 세트(6.6 x 10^8 토큰) 및 Books Corpus, Common Crawl, English Wikipedia, 공개 인터넷 도서 모음 등 추가 텍스트 분포.
- 주요 결과:
- 성능의 규모 의존성: 모델 성능은 모델 파라미터 수(), 데이터셋 크기(), 학습 컴퓨팅 양()에 가장 강하게 의존하며, 깊이/너비와 같은 아키텍처 하이퍼파라미터에는 매우 약하게 의존한다.
- 멱법칙(Power-law) 관계: 성능은 각각에 대해 매끄러운 멱법칙 관계를 가지며, 6자리 이상의 크기 범위에서 일관된 경향을 보인다.
- (최적 컴퓨팅 할당 시)
- 과적합의 보편성: 과 를 동시에 확장하는 한 성능은 예측 가능하게 향상되지만, 또는 중 하나가 고정되고 다른 하나가 증가하면 수확 체감 영역으로 진입한다. 과적합을 피하기 위해 데이터셋 크기는 모델 크기에 대해 sub-linear하게 증가해야 한다 ().
- 학습의 보편성: 학습 곡선은 예측 가능한 멱법칙을 따르며, 그 파라미터는 모델 크기와 거의 독립적이다.
- 샘플 효율성: 대형 모델은 소형 모델보다 훨씬 더 샘플 효율적이며, 더 적은 최적화 단계와 더 적은 데이터 포인트로 동일한 수준의 성능에 도달한다.
- 수렴의 비효율성: 고정된 컴퓨팅 예산 내에서 최적의 성능을 달성하려면 매우 큰 모델을 학습시키고 수렴에 훨씬 못 미쳐 중단하는 것이 효율적이다.
- 최적 컴퓨팅 할당: 컴퓨팅 예산이 증가함에 따라, 대부분의 증가는 모델 크기 증가()에 할당되어야 하며, 학습 시간()이나 데이터셋 크기()의 극적인 증가는 동반하지 않아야 한다.
4. 개인적인 생각 및 응용 가능성
- 장점:
- 대규모 언어 모델의 성능 예측 및 효율적인 학습 전략 수립에 대한 명확하고 정량적인 가이드라인을 제공한다.
- 모델 크기, 데이터, 컴퓨팅 자원 간의 복잡한 관계를 단순한 멱법칙으로 설명하여 직관적인 이해를 돕는다.
- 모델 아키텍처의 세부 사항보다 전체적인 규모가 성능에 더 중요함을 강조하여, 연구 방향 설정에 중요한 시사점을 준다.
- "빅 모델이 빅 데이터보다 더 중요할 수 있다"는 통찰을 제공하며, 대규모 모델의 샘플 효율성을 부각한다.
- 단점/한계:
- 제안된 스케일링 법칙에 대한 확고한 이론적 근거가 부족하여, 특정 상황에서의 신뢰성 판단이 어렵다.
- 매우 작은 데이터셋 영역이나 특정 하이퍼파라미터(예: 초기화 스케일, 모멘텀) 튜닝에 대한 심층적인 분석이 부족하다.
- 추정된 컴퓨팅 연산량()이 매우 긴 컨텍스트 길이에서는 실제와 다를 수 있다.
- 현재의 스케일링 법칙이 예측하는 성능이 특정 지점(약 10^4 PF-Days, 10^12 파라미터)에서 모순을 보이며, 이는 법칙의 한계를 시사한다.
- 응용 가능성:
- 향후 대규모 언어 모델(LLM) 개발 및 훈련 로드맵을 수립하는 데 핵심적인 지침으로 활용될 수 있다.
- 새로운 모델 아키텍처 설계 시, 규모 확장에 대한 고려를 최우선으로 두는 방향을 제시한다.
- AI 하드웨어 개발자들이 컴퓨팅 자원 할당 및 병렬화 전략을 최적화하는 데 기여할 수 있다.
- 자연어 처리 외 이미지, 오디오, 비디오 등 다른 생성 모델링 태스크에서도 유사한 스케일링 법칙이 적용될 가능성을 탐색하는 데 영감을 준다.
- "더 많은 것은 다르다(more is different)"는 개념처럼, 양적 성능 개선이 질적인 능력 변화를 가져올 수 있음을 시사하며, 단순한 손실 감소를 넘어선 모델의 잠재적 능력 확장을 기대하게 한다.
Kaplan, Jared, et al. "Scaling laws for neural language models." arXiv preprint arXiv:2001.08361 (2020).
Scaling Laws for Neural Language Models
Jared Kaplan <br>Johns Hopkins University, OpenAI<br>jaredk@jhu.edu<br>Sam McCandlish<br>OpenAI<br>sam@openai.com<br>Tom Henighan<br>OpenAI<br>henighan@openai.com<br>Scott Gray<br>OpenAI<br>scott@openai.com<br>Tom B. Brown<br>OpenAI<br>tom@openai.com<br>Alec Radford<br>OpenAI<br>alec@openai.com<br>Benjamin Chess<br>OpenAI<br>bchess@openai.com<br>Jeffrey Wu<br>OpenAI<br>jeffwu@openai.com<br>Rewon Child<br>OpenAI<br>rewon@openai.com<br>Dario Amodei<br>OpenAI<br>damodei@openai.com
Abstract
우리는 cross-entropy loss에 대한 language model 성능의 empirical scaling law를 연구한다. loss는 모델 크기, 데이터셋 크기, 학습에 사용된 compute 양에 따라 power-law 형태로 확장되며, 일부 경향은 7자리 이상의 magnitude에 걸쳐 나타난다. 네트워크 너비나 깊이와 같은 다른 아키텍처 세부 사항은 넓은 범위 내에서 최소한의 영향만을 미친다. overfitting이 모델/데이터셋 크기에 의존하는 방식과 학습 속도가 모델 크기에 의존하는 방식은 간단한 방정식으로 설명된다. 이러한 관계를 통해 고정된 compute 예산의 최적 할당을 결정할 수 있다. 더 큰 모델은 sample-efficiency가 훨씬 뛰어나므로, 최적의 compute-efficient 학습은 매우 큰 모델을 상대적으로 적은 양의 데이터로 학습시키고, 수렴하기 훨씬 전에 학습을 중단하는 것을 포함한다.
Contents
1 서론 ..... 2 2 배경 및 방법론 ..... 6 3 실험 결과 및 기본 Power Law ..... 7 4 무한 데이터 한계 및 Overfitting 분석 ..... 10 5 모델 크기 및 학습 시간에 따른 Scaling Law ..... 12 6 Compute Budget의 최적 할당 ..... 14 7 관련 연구 ..... 18 8 논의 ..... 18 부록 (Appendices) ..... 20 A Power Law 요약 ..... 20 B Compute-Efficient Frontier의 경험적 모델 ..... 20 C 주의사항 ..... 22 D 보충 그림 ..... 23
1 Introduction
언어는 인공지능 연구를 위한 자연스러운 영역을 제공한다. 이는 대부분의 추론 task가 언어로 효율적으로 표현되고 평가될 수 있으며, 전 세계의 텍스트가 생성 모델링을 통한 비지도 학습을 위한 풍부한 데이터를 제공하기 때문이다. 딥러닝은 최근 language modeling 분야에서 급속한 발전을 이루었으며, state-of-the-art 모델들 [RNSS18, DCLT18, YDY19, LOG19, RSR19]은 일관성 있는 여러 단락의 prompted text sample 구성 [RWC19]을 포함하여 많은 특정 task에서 인간 수준의 성능에 근접하고 있다 [WPN19].
language modeling 성능은 모델 아키텍처, 신경망 모델의 크기, 학습에 사용된 컴퓨팅 파워, 그리고 학습에 사용 가능한 데이터에 따라 달라질 것으로 예상할 수 있다. 본 연구에서는 Transformer 아키텍처 [VSP17, LSP18]에 초점을 맞춰, language modeling loss가 이러한 모든 요소에 어떻게 의존하는지를 경험적으로 조사할 것이다. 언어 task의 성능은 높은 상한선과 낮은 하한선을 가지므로, 우리는 7단계 이상의 규모 변화에 걸친 경향을 연구할 수 있다.
본 연구 전반에 걸쳐 우리는 학습 시간, context 길이, 데이터셋 크기, 모델 크기, 그리고 compute budget의 함수로서 성능이 정확한 power-law scaling을 따른다는 것을 관찰할 것이다.
1.1 Summary
Transformer language model에 대한 우리의 주요 발견은 다음과 같다:
Figure 1 모델 크기, 데이터셋 크기, 학습에 사용된 compute 양을 늘릴수록 language modeling 성능이 원활하게 향상된다. 최적의 성능을 위해서는 이 세 가지 요소를 동시에 확장해야 한다. 다른 두 요소에 의해 병목 현상이 발생하지 않을 때, 경험적 성능은 각 개별 요소와 멱법칙(power-law) 관계를 가진다.
성능은 규모에 강하게 의존하고, 모델 형태에는 약하게 의존한다: 모델 성능은 **규모(scale)**에 가장 강하게 의존하며, 규모는 세 가지 요소로 구성된다:
- 모델 파라미터 수 (embedding 제외),
- 데이터셋 크기 ,
- 학습에 사용된 compute 양 .
합리적인 범위 내에서 성능은 깊이(depth) 대 너비(width)와 같은 다른 아키텍처 하이퍼파라미터에는 매우 약하게 의존한다. (Section (3))
원활한 멱법칙(Smooth power laws): 성능은 다른 두 요소에 의해 병목 현상이 발생하지 않을 때, 세 가지 규모 요소 각각과 멱법칙 관계를 가지며, 6자리 이상의 크기 범위를 아우르는 경향을 보인다 (Figure 1 참조). 성능이 결국 손실 0에 도달하기 전에 평탄해져야 하지만, 상위 끝에서는 이러한 경향에서 벗어나는 징후를 관찰하지 못했다. (Section 3)
과적합의 보편성(Universality of overfitting): 과 를 동시에 확장하는 한 성능은 예측 가능하게 향상되지만, 또는 중 하나가 고정되고 다른 하나가 증가하면 수확 체감(diminishing returns) 영역으로 진입한다. 성능 저하(penalty)는 비율 에 예측 가능하게 의존한다. 이는 모델 크기를 8배 늘릴 때마다, 성능 저하를 피하기 위해 데이터를 약 5배만 늘리면 된다는 것을 의미한다. (Section 4)
학습의 보편성(Universality of training): 학습 곡선은 예측 가능한 멱법칙을 따르며, 그 파라미터는 모델 크기와 거의 독립적이다. 학습 곡선의 초기 부분을 외삽(extrapolate)함으로써, 훨씬 더 오래 학습했을 때 달성될 손실을 대략적으로 예측할 수 있다. (Section 5)
전이(Transfer)는 테스트 성능과 함께 향상된다: 모델을 학습된 분포와 다른 분포의 텍스트로 평가할 때, 결과는 학습 검증 세트의 결과와 강하게 상관관계가 있으며, 손실에서 거의 일정한 오프셋(offset)을 보인다. 즉, 다른 분포로의 전이는 일정한 페널티를 발생시키지만, 그 외에는 학습 세트의 성능과 거의 일치하게 향상된다. (Section 3.2.2)
샘플 효율성(Sample efficiency): 대형 모델은 소형 모델보다 더 샘플 효율적이며, 더 적은 최적화 단계(Figure 2)와 더 적은 데이터 포인트(Figure 4)로 동일한 수준의 성능에 도달한다.
수렴은 비효율적이다(Convergence is inefficient): 고정된 compute budget 내에서 작업하지만, 모델 크기 또는 사용 가능한 데이터 에 대한 다른 제한이 없을 때, 우리는 매우 큰 모델을 학습시키고 수렴에 훨씬 못 미쳐 중단함으로써 최적의 성능을 달성한다 (Figure 3 참조). 따라서 최대 compute 효율적인 학습은 소형 모델을 수렴까지 학습시키는 것보다 훨씬 더 샘플 효율적이며, 학습 compute에 따라 데이터 요구 사항이 로 매우 느리게 증가한다. (Section 6)
최적 배치 크기(Optimal batch size): 이러한 모델을 학습하기 위한 이상적인 배치 크기는 대략 손실의 멱함수(power)에 불과하며, gradient noise scale [MKAT18]을 측정하여 계속해서 결정할 수 있다. 우리가 학습할 수 있는 가장 큰 모델의 경우, 수렴 시 약 100만~200만 토큰이다. (Section 5.1)
종합적으로, 이러한 결과는 모델 크기, 데이터, compute를 적절히 확장함에 따라 language modeling 성능이 원활하고 예측 가능하게 향상됨을 보여준다. 우리는 더 큰 language model이 현재 모델보다 더 나은 성능을 보이고 더 샘플 효율적일 것으로 기대한다.
Figure 2 우리는 에서 파라미터(embedding 제외)에 이르는 다양한 크기의 language model 학습 실행을 보여준다.
Figure 3 더 많은 compute를 사용할 수 있게 되면, 더 큰 모델을 학습시키고, 더 큰 배치(batch)를 사용하며, 더 많은 단계(step) 동안 학습하는 데 얼마나 할당할지 선택할 수 있다. 우리는 compute가 10억 배 증가하는 경우를 예시로 보여준다. compute 효율적인 최적의 학습을 위해서는 증가분의 대부분이 모델 크기 증가에 할당되어야 한다. 데이터 재사용을 피하기 위해 상대적으로 적은 데이터 증가가 필요하다. 데이터 증가분 중 대부분은 더 큰 배치 크기를 통해 병렬성을 높이는 데 사용될 수 있으며, 직렬 학습 시간은 매우 적게 증가하면 된다.
1.2 Summary of Scaling Laws
autoregressive 방식으로 언어를 모델링하도록 학습된 Transformer의 test loss는 성능이 비임베딩 파라미터 수 , 데이터셋 크기 , 또는 최적으로 할당된 compute budget 중 하나에 의해서만 제한될 때 멱법칙(power-law)을 사용하여 예측할 수 있다 (Figure 1 참조):
-
제한된 수의 파라미터를 가진 모델이 충분히 큰 데이터셋으로 수렴할 때까지 학습된 경우:
-
제한된 데이터셋으로 early stopping을 통해 학습된 대형 모델의 경우:
-
제한된 compute 양, 충분히 큰 데이터셋, 최적 크기의 모델, 그리고 충분히 작은 batch size로 학습할 때 (compute를 최적으로 활용하는 경우):
Figure 4 왼쪽: early-stopped test loss 는 Equation (1.5)에 따라 데이터셋 크기 와 모델 크기 에 따라 예측 가능하게 변화한다.
오른쪽: 초기 과도기(transient period) 이후, 모든 모델 크기 에 대한 학습 곡선은 Equation (1.6)으로 정확하게 fitting될 수 있으며, 이는 큰 batch size로 학습할 때의 step 수 으로 parameterize된다 (자세한 내용은 Section 5.1 참조).
이러한 관계는 에서 8자릿수, 에서 6자릿수, 에서 2자릿수 이상의 범위에 걸쳐 유효하다. 이들은 모델 형태 및 다른 Transformer 하이퍼파라미터(깊이, 너비, self-attention head 수)에는 매우 약하게 의존하며, 특정 수치 값은 **Webtext2 학습 데이터셋 [RWC19]**과 관련이 있다. 멱법칙 은 또는 을 확장할 때 예상되는 성능 향상 정도를 나타낸다. 예를 들어, 파라미터 수를 두 배로 늘리면 손실은 배 더 작아진다. 의 정확한 수치 값은 어휘 크기(vocabulary size)와 토큰화(tokenization)에 따라 달라지므로 근본적인 의미를 가지지는 않는다.
데이터 병렬화(data parallelism)의 속도/효율성 trade-off를 결정하는 critical batch size [MKAT18] 또한 대략적으로 에 대한 멱법칙을 따른다:
Equation (1.1)과 (1.2)는 함께 모델 크기를 늘릴 때 데이터셋 크기를 에 따라 sublinearly하게 늘려야 함을 시사한다. 실제로 우리는 과 에 대한 동시 의존성 및 overfitting 정도를 제어하는 단일 방정식이 (1.1)과 (1.2)를 결합하여 존재함을 발견했다:
fitting 결과는 Figure 4의 왼쪽에 나타나 있다. 우리는 이 함수 형태가 다른 생성 모델링 task의 학습된 log-likelihood도 parameterize할 수 있다고 추측한다.
무한 데이터 한계(infinite data limit)에서 주어진 모델을 유한한 수의 파라미터 업데이트 단계 동안 학습할 때, 초기 과도기(transient period) 이후 학습 곡선은 (Figure 4의 오른쪽 참조) 다음 방정식으로 정확하게 fitting될 수 있다:
여기서 이고 이며, 는 Equation (5.4)를 사용하여 추정된 최소 가능한 최적화 단계(파라미터 업데이트) 수이다.
고정된 compute budget 내에서 학습하지만 다른 제약이 없을 때, Equation (1.6)은 최적 모델 크기 , 최적 batch size , 최적 step 수 , 그리고 데이터셋 크기 가 다음과 같이 증가해야 한다고 예측한다:
여기서
이는 경험적으로 얻은 최적 결과인 와 매우 유사하다. 계산 예산 가 증가함에 따라, 이는 주로 더 큰 모델에 사용되어야 하며, 학습 시간이나 데이터셋 크기의 극적인 증가는 동반하지 않아야 한다 (Figure 3 참조). 이는 또한 모델이 커질수록 sample efficiency가 점점 더 높아짐을 의미한다. 실제로는 연구자들이 하드웨어 제약 때문에 최대 compute 효율성보다 더 오랫동안 작은 모델을 학습시키는 경향이 있다. 최적 성능은 총 compute에 대한 멱법칙으로 결정된다 (Equation (1.3) 참조).
우리는 Equation (1.5)에 대한 몇 가지 기본적인 이론적 동기, 학습 곡선 fitting 분석 및 학습 시간에 대한 함의, 그리고 토큰당 결과 분석을 제공한다. 또한 LSTM 및 recurrent Transformer [DGV18]와 간략하게 비교한다.
1.3 Notation
우리는 다음 표기법을 사용한다:
- - nats 단위의 cross entropy loss. 일반적으로 context 내의 token들에 대해 평균화되지만, 특정 경우에는 context 내의 특정 token에 대한 loss를 보고한다.
- - 모든 vocabulary 및 positional embedding을 제외한 모델 파라미터의 수.
- - 총 non-embedding 학습 연산량 추정치. 여기서 는 batch size, 는 학습 step 수(즉, 파라미터 업데이트 횟수)이다. 우리는 수치 값을 PF-days로 표기하며, 1 PF-day 부동 소수점 연산에 해당한다.
- - token 단위의 데이터셋 크기.
- - critical batch size [MKAT18]. Section 5.1에서 정의 및 논의된다. critical batch size로 학습하는 것은 시간 및 연산 효율성 사이에서 대략적으로 최적의 절충점을 제공한다.
- - 주어진 loss 값에 도달하기 위한 최소 non-embedding 연산량 추정치. 이는 모델이 critical batch size보다 훨씬 작은 batch size로 학습되었을 때 사용될 학습 연산량이다.
- - 주어진 loss 값에 도달하기 위한 최소 학습 step 수 추정치. 이는 모델이 critical batch size보다 훨씬 큰 batch size로 학습되었을 때 사용될 학습 step 수이기도 하다.
- - loss의 스케일링에 대한 power-law exponent. 형태로 표현되며, 여기서 는 중 하나가 될 수 있다.
2 Background and Methods
우리는 WebText [RWC 19] 데이터셋의 확장 버전인 WebText2로 language model을 학습시켰으며, 이 데이터셋은 byte-pair encoding [SHB15]을 사용하여 의 어휘 크기로 토큰화되었다. 우리는 1024-token context에 대해 평균화된 autoregressive log-likelihood (즉, cross-entropy loss)를 최적화했으며, 이는 우리의 주요 성능 지표이기도 하다. 우리는 WebText2 테스트 분포 및 기타 텍스트 분포 선택에 대한 loss를 기록했다. 주로 decoder-only [LSP 18, RNSS18] Transformer [VSP 17] 모델을 학습시켰지만, 비교를 위해 LSTM 모델과 Universal Transformers [DGV 18]도 학습시켰다.
2.1 Parameter and Compute Scaling of Transformers
우리는 Transformer 아키텍처를 **하이퍼파라미터 (layer 수), (residual stream의 차원), (중간 feed-forward layer의 차원), (attention 출력의 차원), (각 layer당 attention head 수)**를 사용하여 파라미터화한다. 입력 context에는 개의 token을 포함하며, 별도로 언급되지 않는 한 이다.
우리는 모델 크기를 비임베딩(non-embedding) 파라미터의 수로 정의하며, 이를 으로 표기한다.
여기서 bias 및 기타 하위 항들은 제외하였다. 우리 모델은 또한 임베딩 행렬에 개의 파라미터를 가지며, positional embedding에 개의 파라미터를 사용하지만, '모델 크기' 을 논의할 때는 이들을 포함하지 않는다. 이렇게 정의할 때 확장 법칙(scaling laws)이 훨씬 더 명확해지는 것을 확인할 수 있다.
Transformer의 forward pass를 평가하는 데는 대략 다음과 같은 연산이 필요하다:
여기서 add-multiply 연산이 수행되며, 계수 2는 행렬 곱셈에 사용되는 multiply-accumulate 연산에서 비롯된다. 각 연산별 파라미터 및 연산량에 대한 더 자세한 내용은 Table 1에 포함되어 있다.
Operation | Parameters | FLOPs per Token |
---|---|---|
Embed | ||
Attention: QKV | ||
Attention: Mask | - | |
Attention: Project | ||
Feedforward | ||
De-embed | - | |
Total (Non-Embedding) |
Table 1 Transformer 모델의 파라미터 수 및 연산량(forward pass) 추정치. 비선형성, bias, layer normalization과 같은 하위 항들은 생략되었다.
인 context 및 모델의 경우, context에 의존하는 토큰당 연산 비용은 전체 연산량의 상대적으로 작은 부분을 차지한다. 우리는 주로 인 모델을 연구하므로, 학습 연산량 추정치에 context 의존적인 항을 포함하지 않는다. backward pass(forward pass의 약 두 배 연산량)를 고려하면, 추정된 비임베딩 연산량은 학습 토큰당 floating point operation으로 정의된다.
2.2 Training Procedures
별도로 명시되지 않는 한, 우리는 Adam optimizer [KB14]를 사용하여 고정된 스텝 동안 1024 토큰 시퀀스 512개로 구성된 배치 크기로 모델을 학습시켰다. 메모리 제약으로 인해, **가장 큰 모델(10억 개 이상의 파라미터)**은 Adafactor [SS18]로 학습되었다. 우리는 Appendix D.6에서 논의된 바와 같이 다양한 learning rate와 스케줄을 실험했다. 수렴 시의 결과는 learning rate 스케줄에 크게 의존하지 않는다는 것을 발견했다. 별도로 명시되지 않는 한, 우리 데이터에 포함된 모든 학습 실행은 3000 스텝의 선형 warmup 후 0으로 코사인 감쇠하는 learning rate 스케줄을 사용했다.
2.3 Datasets
우리는 RWC 19에서 설명된 WebText 데이터셋의 확장 버전으로 모델을 학습시킨다. 원래 WebText 데이터셋은 2017년 12월까지 Reddit에서 3 karma 이상을 받은 아웃바운드 링크를 웹 스크랩한 것이었다. 두 번째 버전인 WebText2에서는 2018년 1월부터 10월까지의 Reddit 아웃바운드 링크를 추가했으며, 이 역시 최소 3 karma 이상을 받은 링크들이다. karma 임계값은 사람들이 해당 링크를 흥미롭거나 유용하다고 판단했는지에 대한 휴리스틱으로 사용되었다. 새로운 링크의 텍스트는 Newspaper3k 파이썬 라이브러리를 사용하여 추출되었다. 총 2,030만 개의 문서를 포함하며, 96GB의 텍스트와 1.62 x 10^10 단어(wc 기준으로 정의됨)로 구성된다. 이후 [RWC 19]에서 설명된 가역 토크나이저(reversible tokenizer)를 적용하여 2.29 x 10^10개의 토큰을 얻는다. 이 중 6.6 x 10^8개의 토큰은 테스트 세트로 사용하기 위해 따로 보관하며, Books Corpus [ZKZ 15], Common Crawl [Fou], English Wikipedia, 그리고 공개적으로 사용 가능한 인터넷 도서 모음에서 유사하게 준비된 샘플로도 테스트를 수행한다.
3 Empirical Results and Basic Power Laws
Language Model의 스케일링 특성을 파악하기 위해, 우리는 다음을 포함한 여러 요소를 다양하게 변화시키며 광범위한 모델들을 학습시켰다:
- 모델 크기: 7억 6천 8백만 개에서 15억 개에 이르는 비-임베딩 파라미터(non-embedding parameters) 수
- 데이터셋 크기: 2천 2백만 개에서 230억 개에 이르는 토큰 수
- 형태(Shape): 깊이(depth), 너비(width), attention head 수, feed-forward dimension 포함
- Context 길이: 대부분의 실험에서 1024를 사용했으나, 더 짧은 context로도 실험
- Batch 크기: 대부분의 실험에서 를 사용했으나, critical batch size를 측정하기 위해 다양하게 변화
Figure 5: 비-임베딩 파라미터의 총 개수 이 고정될 때, 성능은 모델 형태에 매우 미미하게 의존한다. 손실(loss)은 넓은 범위의 형태에 걸쳐 단 몇 퍼센트만 변화한다. 파라미터 개수의 작은 차이는 에 대한 fit을 baseline으로 사용하여 보정된다. 특히 종횡비(aspect ratio)는 40배까지 달라질 수 있지만 성능에는 거의 영향을 미치지 않는다. 예를 들어, 모델은 [RWC19]에서 사용된 모델의 손실과 3% 이내의 차이를 보인다.
Figure 6: 왼쪽: 임베딩 파라미터를 포함할 경우, 성능은 파라미터 수 외에 layer 수에도 강하게 의존하는 것으로 보인다. 오른쪽: 임베딩 파라미터를 제외할 경우, 서로 다른 깊이를 가진 모델들의 성능이 단일한 경향으로 수렴한다. 단 2개 미만의 layer를 가진 모델이나 극단적인 깊이-대-너비 비율을 가진 모델만이 이 경향에서 크게 벗어난다.
이 섹션에서는 경험적으로 도출된 fit과 함께 데이터를 제시하며, 이론적 분석은 이후 섹션으로 미룬다.
3.1 Approximate Transformer Shape and Hyperparameter Independence
Transformer의 성능은 전체 비임베딩 파라미터 수 을 고정했을 때, 형태 파라미터 , , 에 매우 약하게 의존한다. 이러한 결과를 입증하기 위해 우리는 모델 크기를 고정한 채 단일 하이퍼파라미터만 변경하며 모델을 학습시켰다. 이는 의 경우 가장 간단했다.
를 변경할 때는 를 고정하면서 도 동시에 변경했다. 마찬가지로, 고정된 모델 크기에서 를 변경하기 위해 Table 1의 파라미터 수 계산에 따라 파라미터도 동시에 변경했다.
에 대한 독립성은 ResNet [VWB16]에서 제안되었듯이, 더 깊은 Transformer가 얕은 모델들의 앙상블처럼 효과적으로 동작한다면 성립될 수 있다. 결과는 Figure 5에 나타나 있다.
3.2 Performance with Non-Embedding Parameter Count
Figure 6에서 우리는 다양한 모델들의 성능을 보여준다. 이 모델들은 형태의 작은 모델(예: )부터 수십억 개의 파라미터를 가진 모델(예: 부터 까지) 다양하다. 여기서 우리는 전체 WebText2 데이터셋에 대해 거의 수렴할 때까지 학습시켰으며, 오버피팅은 관찰되지 않았다 (가장 큰 모델들에서는 가능성 있음).
Figure 1에서 보여주듯이, 우리는 non-embedding 파라미터 수 에 따라 일정한 경향을 발견했으며, 이는 Equation (1.5)의 첫 번째 항에 맞춰질 수 있다:
Figure 7
이러한 경향을 관찰하기 위해서는 의 함수로서 성능을 연구하는 것이 중요하다. 만약 우리가 대신 전체 파라미터 수(embedding 파라미터 포함)를 사용한다면, 경향이 다소 모호해진다 (Figure 6 참조). 이는 embedding matrix를 더 작게 만들어도 성능에 영향을 미치지 않을 수 있음을 시사하며, 이는 최근 연구 [LCG19]에서도 확인된 바 있다.
이 모델들은 WebText2 데이터셋으로 학습되었지만, Figure 8에서 보여주듯이 다양한 다른 데이터셋에서의 test loss 또한 에 대한 power-law 관계를 보이며, 거의 동일한 power를 가진다.
3.2.1 Comparing to LSTMs and Universal Transformers
Figure 7에서 우리는 non-embedding 파라미터 수 의 함수로서 LSTM과 Transformer의 성능을 비교한다. LSTM은 동일한 데이터셋과 context length로 학습되었다. 이 그림들에서 우리는 LSTM이 context 초반에 나타나는 token에 대해서는 Transformer만큼 잘 수행하지만, 후반 token에 대해서는 Transformer의 성능을 따라잡지 못함을 확인할 수 있다. 우리는 성능과 context 위치 간의 멱법칙(power-law) 관계를 Appendix D.5에 제시하며, 모델이 커질수록 멱수가 증가하는 것은 패턴을 빠르게 인식하는 능력이 향상됨을 시사한다.
또한 우리는 Appendix의 Figure 17에서 표준 Transformer와 recurrent Transformer [DGV 18]의 성능을 비교한다. 이 모델들은 파라미터를 재사용하므로, 파라미터당 추가적인 연산 비용이 드는 대신 의 함수로서 약간 더 나은 성능을 보인다.
3.2.2 Generalization Among Data Distributions
우리는 또한 추가적인 텍스트 데이터 분포에 대해서도 모델을 테스트했다. **모델 크기에 따른 이 데이터셋들의 테스트 손실(test loss)**은 Figure 8에 나타나 있으며, 모든 경우에 모델은 WebText2 데이터셋으로만 학습되었다. 우리는 이 다른 데이터 분포에서의 손실이 모델 크기에 따라 WebText2에서의 개선과 직접적으로 평행하게 부드럽게 향상됨을 확인했다. 우리는 일반화(generalization)가 거의 전적으로 in-distribution validation loss에 의존하며, 학습 기간이나 수렴 근접성에는 의존하지 않음을 발견했다. 또한 모델 깊이(model depth)에는 의존성이 없음을 관찰했다 (Appendix D.8 참조).
3.3 Performance with Dataset Size and Compute
우리는 Figure 1에서 데이터셋 크기 (토큰 단위)와 학습 연산량 의 함수로서 test loss의 경험적 경향을 보여준다. 에 대한 경향을 파악하기 위해, 우리는 WebText2 데이터셋의 고정된 subset에 대해 모델을 학습시켰다. test loss가 더 이상 감소하지 않을 때 학습을 중단하였다. 그 결과, **test loss는 데이터셋 크기에 대해 간단한 멱법칙(power-law)**으로 근사될 수 있음을 확인했다:
데이터와 피팅 결과는 Figure 1에 나타나 있다. 학습 중 사용된 **비-임베딩(non-embedding) 연산량 **는 로 추정할 수 있다. 여기서 는 batch size, 는 파라미터 업데이트 횟수이며, 계수 6은 forward 및 backward pass를 고려한 것이다. 따라서 주어진 값에 대해, 우리는 다양한 을 가진 모든 모델을 스캔하여 단계 에서 가장 좋은 성능을 보이는 모델을 찾을 수 있다. 이 결과에서 batch size 는 모든 모델에 대해 고정되어 있으므로, 이 경험적 결과는 진정으로 최적화된 것은 아니다. 우리는 나중에 조정된 을 사용하여 더 명확한 경향을 도출할 것이다.
Figure 8 Left: 다른 데이터 분포에 대한 일반화 성능은 모델 크기에 따라 부드럽게 향상되며, WebText2 학습 분포와의 작은 오프셋은 매우 느리게 증가한다. Right: 일반화 성능은 학습 분포 성능에만 의존하며, 학습 단계에는 의존하지 않는다. 수렴된 모델(점)의 일반화 성능을 단일 대형 모델(점선)이 학습하는 동안의 일반화 성능과 비교한다.
그 결과는 Figure 1의 왼쪽 그래프에서 굵은 검은색 선으로 나타난다. 이는 다음 식으로 근사될 수 있다:
이 그림은 또한 개별 모델이 언제 최적인지 명확히 보여주기 위해 개별 학습 곡선 이미지를 포함한다. 우리는 나중에 연산량의 최적 할당에 대해 더 자세히 연구할 것이다. 데이터는 sample efficiency가 모델 크기에 따라 향상됨을 강력히 시사하며, 우리는 이를 Appendix의 Figure 19에서도 직접적으로 보여준다.
4 Charting the Infinite Data Limit and Overfitting
Section 3에서는 언어 모델링 성능에 대한 여러 기본적인 scaling law를 발견했다. 여기서는 모델 크기 과 데이터셋의 토큰 수 를 동시에 변화시키면서, 크기 의 모델이 토큰으로 구성된 데이터셋으로 학습되었을 때의 성능을 연구할 것이다. 우리는 최적으로 학습된 test loss가 Equation (1.5)의 scaling law와 일치함을 경험적으로 입증할 것이다. 이는 과적합(overfitting)을 제어하면서 모델 크기를 늘려갈 때 필요한 데이터의 양에 대한 지침을 제공한다.
4.1 Proposed Equation
우리는 다음 세 가지 원칙을 사용하여 파라미터화 1.5)를 선택했다 (편의를 위해 여기에 다시 제시한다):
- 어휘 크기 또는 토큰화의 변화는 전체적인 요인에 의해 손실을 재조정할 것으로 예상된다. 의 파라미터화(및 모든 손실 모델)는 이러한 재조정을 자연스럽게 허용해야 한다.
- 를 고정하고 로 보내면, 전체 손실은 에 접근해야 한다. 반대로, 을 고정하고 로 보내면 손실은 에 접근해야 한다.
- 는 에서 해석적이어야 하며, 따라서 에 대한 정수 거듭제곱의 급수 전개를 가져야 한다. 이 원칙에 대한 이론적 근거는 처음 두 원칙보다 상당히 약하다.
우리가 선택한 는 어휘 변화에 따라 를 재조정할 수 있기 때문에 첫 번째 요구 사항을 충족한다. 이는 또한 의 값이 근본적인 의미를 갖지 않는다는 것을 의미한다.
Figure 9: 조기 중단된 테스트 손실 는 Equation (1.5)에 따라 데이터셋 크기 와 모델 크기 에 예측 가능하게 의존한다.
왼쪽: 큰 의 경우, 성능은 에 대한 직선적인 멱법칙(power law)을 따른다. 고정된 더 작은 의 경우, 이 증가함에 따라 성능 향상이 멈추고 모델이 **과적합(overfit)**되기 시작한다. (반대의 경우도 마찬가지이다. Figure 4 참조)
오른쪽: 과적합의 정도는 Equation (4.3)에서 예측된 바와 같이 주로 비율에 따라 달라진다. 선은 해당 방정식에 대한 우리의 적합(fit)이다.
테스트 손실이 더 이상 개선되지 않을 때 학습을 조기 중단하고 모든 모델을 동일한 방식으로 최적화하기 때문에, 더 큰 모델이 항상 더 작은 모델보다 더 나은 성능을 보여야 한다고 예상한다. 그러나 고정된 유한한 에서는 어떤 모델도 최상의 손실(즉, 텍스트의 엔트로피)에 접근할 수 있을 것이라고 기대하지 않는다. 마찬가지로, 고정된 크기의 모델은 용량 제한(capacity-limited)을 가질 것이다. 이러한 고려 사항들이 우리의 두 번째 원칙을 동기 부여한다. 무한 에서의 과 무한 에서의 에 대한 지식이 의 모든 파라미터를 완전히 결정한다는 점에 주목하라.
세 번째 원칙은 더 추측적이다. 매우 큰 에서 과적합이 로 스케일링될 것이라고 예상할 수 있는 간단하고 일반적인 이유가 있다. 과적합은 데이터셋의 분산 또는 신호 대 잡음비와 관련이 있어야 하며 [AS17], 이는 로 스케일링된다. 이 예상은 어떤 매끄러운 손실 함수에 대해서도 유효해야 하는데, 이는 우리가 극한에 대해 손실을 전개할 수 있을 것으로 예상하기 때문이다. 그러나 이 주장은 보정이 유한한 배치 크기 및 최적화 효율성의 다른 한계와 같은 다른 분산 원인보다 우세하다고 가정한다. 경험적 확인 없이는 그 적용 가능성에 대해 확신하기 어려울 것이다. 우리의 세 번째 원칙은 Equation (1.5)에서 과 의 역할 사이의 비대칭성을 설명한다. 매우 유사한 대칭 표현 도 가능하지만, 이들은 정수 거듭제곱을 가진 전개를 갖지 않으며, 추가 파라미터의 도입을 필요로 할 것이다. 어쨌든, 에 대한 우리의 방정식이 데이터를 잘 설명한다는 것을 알게 될 것이며, 이는 우리의 ansatz에 대한 가장 중요한 정당화이다.
4.2 Results
우리는 모든 모델에 10%의 dropout을 적용하여 정규화하고, test loss를 추적하여 더 이상 감소하지 않을 때 학습을 중단한다. 결과는 Figure 9에 표시되어 있으며, Equation (1.5)의 네 가지 파라미터 에 대한 fitting 결과도 포함되어 있다:
Parameter | ||||
---|---|---|---|---|
Value | 0.076 | 0.103 |
Table 2: 에 대한 Fitting 결과
데이터셋이 1024배 감소하여 약 토큰이 된 경우를 제외하고는 매우 우수한 fitting 결과를 얻었다. 이렇게 작은 데이터셋의 경우, 한 epoch는 단 40번의 파라미터 업데이트로 구성된다. 아마도 이러한 작은 데이터셋은 언어 모델링에 있어 다른 regime을 나타내는 것으로 보인다. 왜냐하면 overfitting이 학습 초기에 매우 빠르게 발생하기 때문이다 (Figure 16 참조). 또한, 여기서 우리는 또는 가 아닌 전체 를 fitting하고 있기 때문에, Section 3에서 얻은 파라미터들과는 약간의 차이가 있음에 유의해야 한다.
무한 데이터 한계의 경계를 파악하기 위해, 우리는 overfitting의 정도를 직접적으로 연구할 수 있다. 가장 큰 모델을 제외한 모든 모델에서, 전체 22B 토큰 WebText2 데이터셋으로 학습할 때 overfitting의 징후를 발견하지 못했다. 따라서 이 데이터셋을 를 대표하는 것으로 간주할 수 있다. 이러한 방식으로, 유한한 를 무한 데이터 한계와 비교하기 위해 다음과 같이 정의한다:
그리고 이를 의 함수로 연구한다. 실제로, Figure 16에서 보듯이 은 과 의 특정 조합에만 의존한다는 것을 경험적으로 확인했다. 이는 Equation 1.5의 scaling law로부터 유도되며, 다음을 의미한다:
큰 값에서 이 공식은 의 거듭제곱으로도 series expansion이 가능하다는 점에 유의해야 한다. 우리는 서로 다른 random seed에 따른 loss의 변동이 대략 0.02임을 추정한다. 이는 해당 수렴 임계값 내에서 overfitting을 피하기 위해 다음을 만족해야 함을 의미한다:
이 관계에 따르면, 파라미터보다 작은 모델은 22B 토큰 WebText2 데이터셋으로 최소한의 overfitting으로 학습될 수 있지만, 가장 큰 모델들은 약간의 overfitting을 겪을 것이다. 더 일반적으로, 이 관계는 데이터셋 크기가 모델 크기에 대해 sub-linearly하게 증가하더라도 overfitting을 피할 수 있음을 보여준다. 그러나 이는 일반적으로 최대 compute-efficient 학습을 의미하지는 않는다. 또한, 데이터셋 및 모델 크기를 변경하면서 정규화(예: dropout 확률)를 최적화하지 않았음을 강조해야 한다.
Figure 10: **Critical batch size **는 성능 향상에 따라 loss의 power law를 따르며, 모델 크기에 직접적으로 의존하지 않는다. 우리는 loss가 13% 감소할 때마다 critical batch size가 약 두 배로 증가한다는 것을 발견했다. 는 Figure 18에 표시된 데이터로부터 경험적으로 측정되었지만, MKAT18에서처럼 gradient noise scale에 의해서도 대략적으로 예측된다.
5 Scaling Laws with Model Size and Training Time
이 섹션에서는 모델 크기 과 학습 시간의 함수로서 loss를 잘 설명하는 간단한 scaling law를 제시할 것이다. 먼저, 대부분의 모델이 최적의 batch size로 학습되지 않았다는 사실을 고려하여, [MKAT18]의 결과를 사용하여 universal training step 을 정의하는 방법을 설명할 것이다. 그 다음, Equation (1.6)을 사용하여 loss의 모델 크기 및 학습 시간 의존성을 fitting할 수 있음을 보여줄 것이다. 나중에 이 결과를 사용하여 모델 크기와 학습 시간 간의 최적 학습 연산 할당을 예측하고, 그 예측을 확인할 것이다.
5.1 Adjustment for Training at
학습의 batch size 의존성에 대한 간단한 경험적 이론은 [MKAT18]에서 개발되었다 ([SLA18, ZLN19]도 참조). 이 이론에서는 학습에 있어 **임계 batch size **가 존재한다고 주장한다. 가 까지 증가할 때는 연산 효율성(compute-efficiency) 저하가 거의 없이 batch size를 늘릴 수 있지만, 일 때는 를 증가시켜도 **수확 체감(diminishing returns)**이 발생한다. 또한, gradient noise scale이 에 대한 간단한 예측을 제공하며, 이 둘 모두 달성된 loss 값 외에는 모델 크기에 직접적으로 의존하지 않는다고 주장되었다. 이러한 결과는 학습 시간과 연산량이 batch size에 따라 어떻게 달라지는지 예측하는 데 사용될 수 있다. 학습 시간과 연산량을 모두 최대한 효과적으로 활용하려면, batch size 로 학습하는 것이 가장 좋다. 로 학습하면 학습 단계(training steps)의 수를 최소화할 수 있고, 로 학습하면 연산량 사용을 최소화할 수 있다.
더 구체적으로, 다양한 신경망 task에서 **학습 단계 수 **와 **처리된 데이터 예시 수 **가 어떤 고정된 loss 값 에 도달할 때 다음의 간단한 관계를 만족함이 입증되었다:
여기서 은 에 도달하는 데 필요한 최소 단계 수이고, 은 처리되어야 하는 최소 데이터 예시 수이다. 우리는 부록의 Figure 18에서 **Transformer에 대한 관계식 (5.1)**을 입증한다. 이 관계식은 임계 batch size를 다음과 같이 정의한다:
이는 목표 loss 값의 함수이다. 임계 batch size로 학습하면 대략적으로 최적의 시간/연산량 trade-off를 달성하며, 의 학습 단계와 의 데이터 예시 처리를 요구한다.
Figure 10에서는 두 가지 다른 모델에 대해 학습 loss의 함수로서 임계 batch size와 gradient noise scale을 플로팅하였다. 우리는 이 모델 크기와 무관하며, 오직 loss 에만 의존함을 확인했다. 따라서 [MKAT18]의 예측은 Transformer language model에서도 계속 유효하다. 임계 batch size는 loss에 대한 **멱법칙(power-law)**으로 근사할 수 있다:
여기서 이고 이다. 우리가 에 대해 이러한 매개변수화를 선택한 이유는, loss가 최소값 에 가까워질수록 gradient noise scale이 발산할 것으로 예상되며, 가 이 noise scale을 추적할 것으로 기대하기 때문이다. 우리는 을 알지 못한다. 우리의 모델이 에 가까워지고 있다는 징후를 보이지 않기 때문이다. 하지만 자연어의 엔트로피가 0이 아니므로 이다. 이 우리가 달성한 값보다 훨씬 작기 때문에, 우리는 일 때 가 발산하는 매개변수화를 사용했다. 우리는 을 사용하여 batch size 토큰으로 학습할 때의 학습 단계 수 와 로 학습할 때의 학습 단계 수 간의 관계를 추정할 것이다. 이는 단순히 다음과 같다:
주어진 loss의 목표 값 에 대해. 이는 또한 로 학습할 경우, 크기 의 모델로 에 도달하는 데 필요한 **최소 연산량(compute)**을 정의한다. 이는 다음과 같다:
여기서 는 batch size 에서 사용된 (embedding을 제외한) 연산량을 추정한다.
5.2 Results for and Performance with Model Size and Compute
이제 우리는 Equation (5.4)에 정의된 을 사용하여 모델 크기와 학습 시간에 따른 손실의 의존성에 대한 **간단하고 보편적인 적합(fit)**을 무한 데이터 한계에서 얻을 것이다. 우리는 안정적이고 Adam-optimized된 학습 실행에 대해 **Equation (1.6)**을 사용하여 적합을 수행할 것이다. 편의를 위해 다시 제시하면 다음과 같다:
이는 손실에 대한 식이다. 우리는 learning rate schedule의 warmup 기간 이후의 모든 학습 단계를 포함하며, 다음 파라미터들로 데이터에 대한 적합을 찾았다:
Figure 11 총 연산량(total compute) 또는 학습 단계 수(number of training steps)를 고정할 때, 성능은 Equation (5.6)의 를 따른다. 각 연산 예산(compute budget) 값에는 성능을 최대화하는 최적의 모델 크기가 연관되어 있다. 작은 값에서 적합이 좋지 않은 것은 놀라운 일이 아니다. 이는 학습 초기에 learning curve의 power-law 방정식이 더 이상 유효하지 않기 때문이다.
Parameter | ||||
---|---|---|---|---|
Value | 0.077 | 0.76 |
Table 3 에 대한 적합 결과
이러한 파라미터들을 사용하여 Figure 4에서 learning curve 적합을 얻었다. 적합이 완벽하지는 않지만, Equation (5.6)의 단순성을 고려할 때 매우 설득력 있다고 생각한다.
데이터와 적합 결과는 Figure 11에서처럼 다르고 더 흥미로운 방식으로 시각화될 수 있다. Figure 11에서는 학습에 사용된 총 비-임베딩 연산량 또는 단계 수 를 고정했을 때, 모델 크기의 함수로서 test loss를 연구한다. 적합을 위해 우리는 Equation (5.5)와 (5.4)를 위의 파라미터들과 Equation (5.6)과 함께 사용한다.
손실이 에 대해 power-law 의존성을 보이는 것은 optimizer dynamics와 loss landscape의 상호작용을 반영한다. 적합이 학습 후반부에 가장 잘 이루어지며, 이때 손실이 대략적으로 이차 함수 형태를 띠므로, power-law는 손실의 Hessian 스펙트럼에 대한 정보를 제공해야 한다. 그 보편성은 Hessian 고유값 밀도가 모델 크기와 거의 독립적임을 시사한다.
5.3 Lower Bound on Early Stopping Step
결과는 학습이 데이터에 의해 제한될 때 조기 종료(early stopping)가 발생해야 하는 step의 하한(lower-bound) 및 대략적인 추정치를 도출하는 데 사용될 수 있다. 이는 주어진 모델에 대한 유한한 와 무한한 의 학습 곡선이 에 도달할 때까지 매우 유사할 것이라는 아이디어에서 출발한다. 따라서 과적합(overfitting)은 단순히 에서 학습을 종료함으로써 얻는 보정(correction)에 비례할 것이다. 이는 를 과소평가하게 되는데, 실제로는 유한한 를 가질 때 test loss가 더 느리게 감소하므로, 유한한 에서 최적의 test loss에 도달하기 위해 더 많은 학습 step이 필요하기 때문이다. 이러한 추론은 다음 부등식으로 이어진다:
여기서 는 무한한 데이터가 사용 가능할 때 수렴된 loss이다. 이 부등식과 실제 데이터와의 비교는 Appendix의 Figure 16에 나타나 있다. 해당 그림에서 와 값은 경험적(empirical) 데이터이며 (단, 는 에서 학습을 모방하도록 조정됨), 는 에서 평가된 에 대한 fit으로부터 계산된다.
6 Optimal Allocation of the Compute Budget
우리는 Figure 1의 오른쪽 상단에서 학습 중 사용된 연산량에 따른 성능의 경험적 경향을 보여주었다. 그러나 이 결과는 고정된 batch size 로 학습한 것이며, 실제로는 Section 5.1에서 논의된 critical batch size 로 학습하는 것이 더 효율적이라는 것을 알고 있다.
Figure 12: 왼쪽: 고정된 연산 예산(compute budget)이 주어졌을 때, 특정 모델 크기가 최적이지만, 이보다 약간 크거나 작은 모델도 최소한의 추가 연산으로 학습될 수 있다.
오른쪽: 연산 효율적인 크기보다 큰 모델은 학습에 더 적은 step을 필요로 하므로, 충분한 추가 병렬 처리가 가능하다면 잠재적으로 더 빠른 학습이 가능하다.
이 방정식은 학습 곡선의 power-law 영역, 즉 초기 과도기적 효과 이후에만 유효하므로, 매우 큰 모델에는 신뢰할 수 없다는 점에 유의해야 한다.
Figure 13: critical batch size보다 훨씬 낮은 batch size로 학습을 시뮬레이션하기 위해 성능을 조정했을 때, 완전히 경험적인 결과와 비교하여 에 대한 power law가 다소 변경됨을 발견했다.
PF-days 지점의 눈에 띄는 덩어리(lump)는 1-layer 네트워크에서 2-layer 네트워크로의 전환을 나타낸다. 우리는 power-law fitting에서 1-layer 네트워크를 제외했다.
경향은 더 큰 연산량에 대해 신뢰할 수 있는 외삽(extrapolation)을 제공할 것으로 예상된다.
손실의 크고 작은 값은 각각 더 적은 샘플 또는 더 적은 step으로 달성될 수 있었으며, 이러한 비효율성을 critical batch size로 표준화하여 보정하면 더 깔끔하고 예측 가능한 경향을 얻을 수 있다. 이 섹션에서는 이러한 간과된 부분을 조정할 것이다. 더 중요하게는, Section 5의 결과를 사용하여 모델 크기 과 학습 중 처리된 데이터 양(즉, ) 사이의 최적 연산 할당을 결정할 것이다. 우리는 에 대한 방정식을 사용하여 이 할당을 경험적으로 그리고 이론적으로 결정할 것이며, 이러한 방법들이 일치함을 입증할 것이다.
6.1 Optimal Performance and Allocations
먼저 Equation 5.5에서 최적으로 할당된 compute의 함수로서 loss를 살펴보자. 그 결과는 Figure 13에 power-law fit과 함께 플로팅되어 있다. Figure 1의 compute 플롯과 비교했을 때, 을 사용한 새로운 fit이 다소 개선되었음을 알 수 있다.
이 주어졌을 때, **주어진 훈련 compute 양으로 최소 loss를 제공하는 최적 모델 크기 **를 묻는 것은 자연스러운 질문이다. 최적 모델 크기는 Figure 14에 나타나 있다. 우리는 이
Figure 14 왼쪽: compute budget 의 각 값은 최적 모델 크기 과 연관된다. 최적 모델 크기는 에 따라 매우 빠르게 증가하며, compute가 10배 증가할 때마다 5배씩 증가한다. 처리되는 데이터 예시의 수는 나머지 증가분을 구성하며, 상대적으로 완만하게 2배만 증가한다. 오른쪽: batch-adjusted 최적화 단계 수도 매우 느리게 증가하거나 거의 증가하지 않는다. 이는 처리되는 데이터 예시 수의 대부분의 증가가 batch size 증가에 사용될 수 있음을 의미한다.
power-law로 매우 잘 fit될 수 있음을 관찰한다.
Figure 12에서는 sub-optimal 크기의 모델을 훈련하는 효과를 보여준다 (Appendix B.4 참조).
정의에 따라 이므로, 우리는 을 사용하여 추가 결과를 도출할 수 있다. 특히, 이전 fit에서 및 를 보여주므로, 우리는 라고 결론 내릴 수 있다. 이는 최적 단계 수가 compute에 따라 매우 느리게만 증가할 것이라는 결론으로 이어진다.
이는 Figure 14의 경험적 결과와 일치한다. 사실 측정된 지수는 충분히 작아서 우리의 결과는 지수가 0인 경우와도 일치할 수 있다. 따라서 우리는 계산의 최적 할당으로 language modeling을 확장할 때, 주로 모델 크기 을 증가시켜야 하며, 동시에 직렬 단계 수의 무시할 만한 증가와 함께 를 통해 batch size를 확장해야 한다고 결론 내린다. compute-efficient 훈련은 상대적으로 적은 최적화 단계를 사용하므로, 초기 훈련 역학을 가속화하는 추가 작업이 필요할 수 있다.
6.2 Predictions from
의 결과와 할당은 Section 5에서 얻은 방정식을 통해 예측할 수 있다. 방정식이 주어졌을 때, 를 대입한 후, 학습 연산량(training compute)을 고정한 상태에서 의 함수로 손실(loss)의 최솟값을 찾을 수 있다. 이 절차는 Appendix B에서 자세히 설명되어 있으며, 추가적인 예측도 제공된다.
학습 연산량의 함수로서 손실에 대해 우리는 다음과 같이 예측한다:
여기서
이는 Figure 13의 지수와 매우 잘 일치한다. 또한 우리는 다음과 같이 예측한다:
이 또한 Figure 14의 스케일링과 몇 퍼센트 이내로 일치한다. 우리의 스케일링 법칙은 language modeling 성능에 대한 예측 프레임워크를 제공한다.
Figure 15: 우리가 경험적으로 연구한 모델 크기를 훨씬 넘어서는 지점에서, 우리는 compute-efficient training에 필요한 데이터의 느린 증가로 인해 과 방정식 사이에 모순을 발견한다. 교차점은 우리의 예측이 깨지기 시작하는 지점을 나타낸다. 이 지점의 위치는 power-law fit에서 얻은 정확한 지수에 매우 민감하다.
6.3 Contradictions and a Conjecture
우리는 compute, data, model size의 큰 값에서 straight power-law trend로부터의 이탈 징후를 관찰하지 못했다. 그러나 자연어는 0이 아닌 엔트로피를 가지므로, 우리의 trend는 결국 수평을 이룰 것이다. 실제로 이 섹션에서 설명된 compute-efficient training의 trend는 이미 명백한 모순을 포함하고 있다. 여기에 기록된 규모보다 몇 자릿수 높은 규모에서는, 스케일링 법칙이 예측하는 성능이 compute에 따른 학습 데이터의 느린 증가를 고려할 때 가능해야 하는 수준보다 낮아진다. 이는 우리의 스케일링 법칙이 이 지점 이전에 무너져야 함을 의미하지만, 우리는 교차점(intersection point)이 더 깊은 의미를 가진다고 추측한다: 즉, Transformer language model이 최대 성능에 도달하는 지점을 추정해 준다는 것이다.
compute-efficient training에 사용되는 데이터 양이 compute budget에 따라 느리게 증가하기 때문에, 이 예측하는 성능은 결국 power law에 의해 설정된 하한선에 도달한다 (Figure 15 참조). 이를 더 자세히 살펴보자.
overfitting을 제어하기 위해, Section 4의 결과는 데이터셋 크기를 다음과 같이 스케일링해야 함을 시사한다:
여기서 우리는 Figure 14의 compute-efficient 을 사용했다. 이를 compute-efficient training의 데이터 요구 사항과 비교해 보자. 만약 우리가 critical batch size (즉, )로 학습하고 학습 중에 데이터를 재사용하지 않는다면, 데이터 사용량은 compute에 따라 다음과 같이 증가한다:
이는 데이터셋 크기가 compute에 따라 생산적으로 증가할 수 있는 최대 비율이다. 왜냐하면 이는 우리가 단일 epoch만 학습하고 있음을 의미하기 때문이다. 그러나 이 방식은 Equation 66.6보다 데이터셋을 훨씬 느리게 증가시킨다. 이는 학습 과정에서 데이터를 전혀 재사용하지 않더라도 compute-efficient training이 결국 overfitting 문제에 부딪힐 것임을 암시하는 것으로 보인다! Figure 1에 따르면, 데이터셋 크기에 의해 병목 현상이 발생할 때(즉, overfitting으로 인해), loss는 로 스케일링될 것으로 예상된다. 이는 데이터 제한에 도달하면 loss가 로 compute에 따라 스케일링될 것임을 의미한다. 다시 한번, 이는 Figure 13에서 스케일링을 발견한 우리의 예측과 결국 교차할 것이므로 모순이 발생한다.
와 의 교차점은 다음과 같다:
비록 수치 값은 매우 불확실하며, power-law fit에서 얻은 지수의 정확한 값에 따라 양방향으로 한 자릿수 정도 변동할 수 있다. 가장 명백한 해석은 우리의 스케일링 법칙이 이 지점에 도달하기 전 또는 이 지점에서 무너진다는 것이며, 이 지점은 compute와 model size 모두에서 여전히 여러 자릿수 멀리 떨어져 있다.
이 교차점이 더 깊은 의미를 가질 수 있다고 추측할 수도 있다. 만약 질적으로 다른 데이터 요구 사항 없이 를 넘어 모델 크기를 늘릴 수 없다면, 이는 아마도 우리가 와 에 도달했을 때 자연어 데이터에서 사용 가능한 모든 신뢰할 수 있는 정보를 추출했음을 의미할 수 있다. 이러한 해석에서 는 자연어의 토큰당 엔트로피에 대한 대략적인 추정치를 제공할 것이다. 이 시나리오에서는 loss trend가 에서 또는 그 이전에 수평을 이룰 것으로 예상할 수 있다. 우리는 노이즈가 추가된 학습 데이터셋 버전을 고려하여 이 수평을 이룰 때의 함수 형태를 추측할 수 있다. 예를 들어, 모델에 보여지는 각 context에 무작위 토큰 문자열을 추가하여 loss를 상수 가산 인자만큼 인위적으로 높일 수 있다. 그러면 노이즈 플로어 로부터의 거리가 더 의미 있는 성능 지표가 될 것이며, 이 거리의 작은 감소조차도 질적인 성능에서 상당한 향상을 나타낼 수 있다. 인위적인 노이즈는 우리의 모든 trend에 동일하게 영향을 미치므로, 6.8의 critical point는 변하지 않을 것이며 ( 의 절대값 제외), 수평을 이룬 후에 발생하더라도 의미가 있을 수 있다.
7 Related Work
Power law는 다양한 원인에서 발생할 수 있다 [THK18]. 밀도 추정 [Was06] 및 random forest 모델 [Bia12]에서 모델 및 데이터셋 크기에 따른 power-law scaling은 우리의 결과와 관련이 있을 수 있다. 이러한 모델들은 power-law exponent가 데이터 내 관련 feature 수의 역수로서 매우 대략적인 해석을 가질 수 있음을 시사한다.
일부 초기 연구 [BB01, Goo01]에서는 성능과 데이터셋 크기 사이에 power-law scaling을 발견했다. 최근 연구 [HNA+17, HAD19] 또한 모델 크기와 데이터 크기 사이의 scaling을 조사했으며, 이들의 연구는 문헌상 우리의 연구와 가장 가깝다고 할 수 있다. 그러나 [HNA+17]는 데이터셋 크기가 모델 크기에 대해 super-linear scaling을 보인 반면, 우리는 sub-linear scaling을 발견했다는 점에 유의해야 한다. 최적의 연산 할당에 대한 우리의 발견과 [Kom19]의 연구 사이에는 power-law learning curve를 포함하여 몇 가지 유사점이 있다. EfficientNets [TL19] 또한 정확도와 모델 크기 사이에 대략적인 power-law 관계를 따르는 것으로 보인다. 최근 연구 [RRBS19b]는 다양한 데이터셋에 대해 데이터셋 크기와 모델 크기 모두에 따른 scaling을 연구하고, 우리의 것과 유사한 ansatz를 적용한다.
EfficientNet [TL19]은 이미지 모델의 최적 성능을 위해 깊이(depth)와 너비(width)를 지수적으로(서로 다른 계수로) scaling할 것을 제안하며, 이는 깊이의 함수로서 너비의 power-law scaling을 초래한다. 우리는 language model의 경우 이러한 power가 scaling up 시 대략 1이어야 한다고 생각한다(너비/깊이 비율이 고정되어야 하므로). 그러나 더 중요한 것은, 우리는 정확한 아키텍처 하이퍼파라미터가 language model의 전체 규모에 비해 중요하지 않다는 것을 발견했다. [VWB16]에서는 깊은 모델이 얕은 모델들의 앙상블로 기능할 수 있다고 주장했는데, 이는 이러한 발견을 잠재적으로 설명할 수 있다. 이전 연구 [ZK16]는 너비와 깊이를 비교하여, 넓은 ResNet이 이미지 분류에서 깊은 ResNet보다 뛰어난 성능을 보일 수 있음을 발견했다. 일부 연구는 데이터 예시당 연산량을 고정하는데, 이는 모델 파라미터 수에 비례하여 scaling되는 경향이 있는 반면, 우리는 모델 크기와 훈련 연산량 모두에 따른 scaling을 조사한다.
다양한 연구 [AS17, BHMM18]는 **과도하게 파라미터화된(overparameterized) 모델의 일반화(generalization)**를 조사했으며, 모델 크기가 데이터셋 크기에 도달할 때 "jamming transition" [GJS+19]이 발생함을 발견했다(이는 일반적인 관행보다 훨씬 많은 훈련을 요구할 수 있으며, 특히 early stopping을 사용하지 않는다). 우리는 그러한 transition을 관찰하지 않았으며, 필요한 훈련 데이터가 모델 크기에 대해 sublinear하게 scaling됨을 발견했다. 모델 크기의 확장, 특히 넓은 너비에서의 확장 [JGH18, LXS+19]은 우리의 scaling 관계 중 일부를 이해하는 데 유용한 프레임워크를 제공할 수 있다. 학습 곡선의 형태와 같은 최적화에 대한 우리의 결과는 noisy quadratic model을 사용하여 설명될 수 있으며, 이는 현실적인 설정에서 매우 정확한 예측을 제공할 수 있다 [ZLN+19]. 이러한 연결을 정량화하려면 Hessian spectrum의 특성화가 필요할 것이다 [Pap18, GKX19, GARD18].
8 Discussion
우리는 비임베딩 파라미터 수 , 데이터셋 크기 , 최적화된 학습 연산량 에 따라 language model의 log-likelihood loss가 일관되게 스케일링되는 것을 Equation (1.5) 및 (1.6)에서 확인하였다. 반대로, 대부분의 아키텍처 및 최적화 하이퍼파라미터에 대해서는 매우 약한 의존성을 발견했다. 에 대한 스케일링은 **멱법칙(power-laws)**을 따르므로, 규모가 증가할수록 수확 체감(diminishing returns)이 발생한다.
우리는 과 를 동시에 변화시켰을 때, 또는 과 를 동시에 변화시켰을 때 loss의 의존성을 정확하게 모델링할 수 있었다. 이러한 관계를 사용하여 대규모 language model을 학습할 때의 연산 스케일링, overfitting의 정도, early stopping 시점, 그리고 데이터 요구 사항을 도출하였다. 따라서 우리의 스케일링 관계는 단순한 관찰을 넘어 예측 프레임워크를 제공한다. 이러한 관계는 이상 기체 법칙(ideal gas law)의 유사체로 해석될 수 있다. 이상 기체 법칙은 기체의 미시적 구성 요소의 대부분의 세부 사항과 무관하게 기체의 거시적 특성을 보편적인 방식으로 연결한다.
이러한 스케일링 관계가 최대 우도 손실(maximum likelihood loss)을 사용하는 다른 생성 모델링 task에도, 그리고 다른 설정에도 적용될 것이라고 추측하는 것은 자연스러운 일이다. 이를 위해 이미지, 오디오, 비디오 모델과 같은 다른 도메인에서, 그리고 무작위 네트워크 증류(random network distillation)에서도 이러한 관계를 테스트하는 것은 흥미로울 것이다. 현재로서는 우리의 결과 중 어떤 것이 자연어 데이터의 구조에 의존하는지, 어떤 것이 보편적인지는 알 수 없다. 또한, 스케일링 관계를 도출할 수 있는 이론적 프레임워크, 즉 우리가 관찰한 '열역학'의 기저에 있는 '통계 역학'을 찾는 것도 흥미로운 일일 것이다. 그러한 이론은 더욱 정밀한 다른 예측을 도출하고, 스케일링 법칙의 한계를 체계적으로 이해하는 데 기여할 수 있을 것이다.
자연어 도메인에서는 loss의 지속적인 개선이 관련 언어 task의 개선으로 이어지는지 여부를 조사하는 것이 중요할 것이다. 매끄러운 양적 변화는 주요한 질적 개선을 가릴 수 있다: "더 많은 것은 다르다(more is different)". 예를 들어, 경제의 매끄러운 총체적 성장은 그 밑바탕에 있는 특정 기술 발전을 나타내지 않는다. 마찬가지로, language model loss의 매끄러운 개선은 겉보기에 질적인 능력 변화를 숨길 수 있다.
우리의 결과는 더 큰 모델이 계속해서 더 나은 성능을 보일 것이며, 이전에 인식했던 것보다 훨씬 더 sample efficient할 것임을 강력하게 시사한다. 빅 모델이 빅 데이터보다 더 중요할 수 있다. 이러한 맥락에서 모델 병렬화(model parallelism)에 대한 추가 조사가 필요하다. Deep model은 파이프라이닝 [HCC18]을 사용하여 학습될 수 있으며, 이는 파라미터를 장치 간에 깊이 방향으로 분할하지만, 더 많은 장치가 사용될수록 결국 batch size 증가를 요구한다. 반면에 Wide network는 병렬화에 더 적합하다 [SCP18]. 이는 큰 layer를 직렬 종속성(serial dependency)이 적은 여러 worker 간에 분할할 수 있기 때문이다. Sparsity [CGRS19, GRK17] 또는 branching (예: [KSH12])은 모델 병렬화를 증가시켜 대규모 네트워크의 학습을 더욱 빠르게 할 수 있다. 그리고 학습하면서 네트워크를 성장시키는 [WRH17, WYL19]와 같은 방법을 사용하면, 전체 학습 과정 동안 compute-efficient frontier를 유지할 수 있을 것이다.
Acknowledgements
우리는 Shan Carter, Paul Christiano, Jack Clark, Ajeya Cotra, Ethan Dyer, Jason Eisner, Danny Hernandez, Jacob Hilton, Brice Menard, Chris Olah, Ilya Sutskever에게 본 연구 초안에 대한 논의와 피드백에 깊이 감사드린다.
Appendices
A Summary of Power Laws
참고를 돕기 위해, 본 논문 전반에 걸쳐 설명된 주요 경향들을 아래에 요약하였다.
Parameters | Data | Compute | Batch Size | Equation |
---|---|---|---|---|
Fixed | ||||
Early Stop | Fixed | |||
Optimal | Fixed | (naive) | ||
Early Stop | Fixed | |||
steps | B |
Table 4
이러한 경향에 대한 **경험적 적합 값(empirical fitted values)**은 다음과 같다:
Power Law | Scale (tokenization-dependent) |
---|---|
params (non-embed) | |
tokens | |
PF-days | |
PF-days | |
tokens | |
steps |
Table 5
연산 효율적인 학습을 위한 최적 파라미터는 다음과 같다:
Compute-Efficient Value | Power Law | Scale |
---|---|---|
params | ||
tokens | ||
(lower bound) | steps | |
(1 epoch) | tokens |
Table 6
B Empirical Model of Compute-Efficient Frontier
이 Appendix 전체에서 의 모든 값은 critical batch size 에서의 학습에 맞춰 조정되었다. 표기법의 복잡성을 피하기 위해 'adj' 레이블은 생략하였다.
B. 1 Defining Equations
학습 곡선에 대한 power-law fit은 연산 효율적인 학습을 위한 간단한 처방을 제시한다. 이 Appendix에서는 연산 예산(compute budget)의 함수로서 최적의 성능, 모델 크기, 그리고 학습 단계 수를 도출할 것이다.
먼저 편의를 위해 Equation (1.6)을 다시 제시한다:
여기서 는 critical batch size [MKAT18]로 학습할 때의 파라미터 업데이트 횟수를 나타내며, 이는 Equation 5.2.9에서 다음과 같이 정의되었다:
우리는 고정된 연산 예산에 대한 최적의 학습 파라미터를 결정하고자 하므로, 로 대체한다. 여기서 는 학습 실행에 사용된 FLOPs의 총량이다:
이제 최적 조건을 찾기 위해 으로 설정한다:
Equation (B.3)과 (B.4)는 함께 연산 효율적인 frontier를 결정한다.
B. 2 Efficient Training
이제 (B.3)과 (B.4)의 함의를 종합해 보자. 먼저, (B.4)를 (B.3)에 대입하면 다음을 얻는다:
이는 연산 효율적인 학습을 위해 수렴된 loss보다 약 높은 고정된 비율까지 학습해야 함을 의미한다. 다음으로, 최적의 loss가 연산 예산에 어떻게 의존하는지 결정해 보자. 을 소거하면 성능이 연산에 대해 멱법칙(power-law) 의존성을 가짐을 알 수 있다:
여기서 우리는 다음을 정의했다:
유사하게, 을 소거하여 를 찾을 수 있다:
그리고
B. 3 Comparison to Inefficient
일반적으로 연구자들은 모델이 수렴에 가까워질 때까지 학습을 진행한다. 이 섹션에서는 위에서 설명한 compute-efficient training 절차를 이러한 일반적인 설정과 비교한다. 우리는 **수렴 계수(convergence factor) **를 수렴된 loss로부터의 백분율 편차로 정의한다:
compute-efficient training의 경우, 이전 섹션에서 였지만, 연구자들은 일반적으로 훨씬 더 작은 값을 사용한다. 여기서는 를 추정치로 선택한다. 고정된 loss 값에 대해, 우리는 다음과 같이 예측한다:
따라서 동일한 loss에 도달하기 위해 compute-efficient training은 7.7배 적은 parameter update, 2.7배 많은 parameter, 그리고 65% 적은 compute를 사용한다.
B. 4 Suboptimal Model Sizes
우리는 A.1을 사용하여 주어진 손실 에 도달하는 데 필요한 연산량 를 모델 크기 의 함수로 표현할 수 있다:
A.6과 A.9를 사용하여 을 (손실 에 가장 효율적으로 도달하는 모델 크기)로 대체할 수 있다. 이를 통해 최적 모델 크기를 사용하지 않음으로써 발생하는 추가 연산량에 대한 표현을 찾을 수 있다:
결과는 Figure X에 나타나 있다. 최적 크기의 0.6배에서 2.2배 사이의 모델은 단 20%의 연산 예산 증가만으로도 사용할 수 있다. 더 작은 모델을 사용하는 것은 추론(inference) 비용을 고려할 때 유용하다. 더 큰 모델은 더 적은 단계(step)로 동일한 성능 수준까지 학습될 수 있으며, 이는 충분한 하드웨어가 있다면 더 많은 병렬 처리와 더 빠른 학습을 가능하게 한다 (Figure Y 참조):
2.2배 더 큰 모델은 20% 더 많은 학습 연산 비용으로 45% 더 적은 단계를 필요로 한다. 이 방정식은 초기 transient 효과 이후의 학습 곡선(learning curve)의 power-law 영역에서만 유효하므로, 매우 큰 모델에는 신뢰할 수 없다는 점에 유의해야 한다.
C Caveats
이 섹션에서는 우리의 분석에 대한 몇 가지 잠재적인 주의사항을 나열한다.
- 현재 우리는 제안된 scaling law에 대한 확고한 이론적 이해가 부족하다. 특히 모델 크기 및 연산량과의 scaling 관계는 여전히 미스터리하다. 매우 큰 값에서 모델 크기를 고정했을 때의 scaling [AS17]과, 학습 후반부의 학습 곡선 형태는 손실 함수를 noisy quadratic으로 모델링하여 이해할 수 있을지도 모른다. 그러나 매우 큰 모델 크기에서의 값에 따른 scaling은 여전히 미스터리로 남아있다. 이론이나 scaling law에 대한 수정 사항에 대한 체계적인 이해 없이는, 어떤 상황에서 이 scaling law를 신뢰할 수 있는지 판단하기 어렵다.
Figure 16 왼쪽: early stopping이 발생하는 step을 과적합(overfitting) 정도의 함수로 특성화한다. 빨간색 선은 Section 5.3에서 도출된 early stopping의 하한선을 나타낸다. 오른쪽: 다양한 크기의 데이터셋 subsample로 학습된 300M 파라미터 모델 시리즈에 대한 학습(train) 손실과 테스트(test) 손실을 보여준다. 테스트 손실은 일반적으로 무제한 데이터로 수행된 학습의 손실을 따르다가 발산한다. **과적합 정도(무한 데이터 한계와 비교하여)**는 에 의해 상당히 과대평가된다 (각 실행에 대해 검은색 막대로 표시).
- 우리는 탐색한 범위를 훨씬 벗어나는 손실 값에 대한 예측에 대해 특별히 확신하지 않는다. 의 변화는 데이터 병렬화와 필요한 직렬 학습 단계 수 간의 trade-off에 상당한 영향을 미칠 수 있으며, 이는 학습 시간에 큰 영향을 미칠 것이다.
- 우리는 소규모 데이터(small data) 영역을 철저히 조사하지 않았으며, 에 대한 우리의 fitting은 가장 작은 값(여기서 한 epoch은 40단계에 불과했음)에서 좋지 않았다. 또한, 정규화(regularization) 및 데이터 증강(data augmentation)에 대한 실험을 수행하지 않았다. 이러한 개선 사항은 우리의 결과를 양적 또는 질적으로 변경할 수 있다.
- 우리는 추정된 학습 연산량 를 사용했으며, 이는 에 비례하는 기여를 포함하지 않았다 (Section 2.1 참조). 따라서 우리의 연산량 scaling은 매우 큰 영역, 특히 인 경우에 실제로는 혼란스러울 수 있다.
- 우리는 learning rate를 튜닝하고, learning rate schedule을 실험했다. 그러나 scaling에 중요한 영향을 미치는 일부 하이퍼파라미터(예: 초기화 스케일 또는 momentum)를 튜닝하는 것을 소홀히 했을 수 있다.
- learning rate의 최적 선택은 목표 손실에 민감하다. 수렴에 가까워질수록 발산을 피하기 위해 더 작은 learning rate를 사용해야 할 수도 있다. 그러나 짧은 학습 실행(예: 연산량 제한으로 인해)을 수행할 때는 더 큰 learning rate를 사용할 수 있다. 우리는 수렴까지 진행되지 않은 학습 실행에 대해 더 높은 learning rate를 실험하지 않았다.
D Supplemental Figures
D. 1 Early Stopping and Test vs Train
Section 5.3에서는 Figure 16에 제시된 결과를 설명했는데, 이는 early stopping step의 하한선에 대한 예측을 제공한다. 또한, 다양한 크기의 데이터셋으로 학습할 때 주어진 모델 크기에 대한 train loss와 test loss를 보여준다.
D. 2 Universal Transformers
우리는 Figure 17에서 표준 Transformer와 recurrent Transformer [DGV 18]의 성능을 비교한다. 이 모델들은 파라미터를 재사용하므로, 의 함수로서는 약간 더 나은 성능을 보이지만, compute 의 함수로서는 약간 더 나쁜 성능을 보인다. 우리는 파라미터 재사용에 대한 몇 가지 다른 가능성을 포함한다.
D. 3 Batch Size
우리는 Figure 18에 표시된 데이터를 사용하여 critical batch size를 측정했다. 이를 통해 Figure 10에서 를 추정할 수 있었다.
Figure 17 파라미터를 재사용하는 recurrent Transformer [DGV18]와 표준 Transformer를 비교한다. recurrent Transformer는 동일한 파라미터 수를 가진 모델들을 비교할 때 약간 더 나은 성능을 보이지만, 재사용을 고려하여 FLOP당 비교할 때는 약간 더 나쁜 성능을 보인다.
Figure 18 이 그림들은 손실 의 다양한 값과 두 가지 다른 Transformer 모델 크기에 대해 Equation (5.1)에 대한 적합(fit) 결과를 보여준다. 이 적합 결과는 Figure 10의 를 측정하는 데 사용되었다.
D. 4 Sample Efficiency vs Model Size
Figure 2에서 볼 수 있듯이, 모델이 클수록 학습 속도가 더 빠르며, 따라서 sample efficiency도 더 높다. 우리는 이러한 현상을 Figure 19에서 다른 방식으로 보여준다. 이 그림은 다양한 모델들이 특정 고정된 loss 값에 도달하는 시점을 나타낸다.
Figure 19: 모델 크기가 커질수록 특정 고정된 test loss 값에 도달하는 데 필요한 최소 직렬 단계(serial steps) 수가 급격히 감소한다. Sample efficiency (여기서는 critical batch size보다 훨씬 낮은 학습 조건에서 보여짐) 또한 크게 향상되며, 가장 작은 모델과 매우 큰 모델을 비교했을 때 거의 100배 가까이 향상된다.
Figure 20: 이 그림은 모델 크기와 학습 시간에 따른 토큰당 성능에 대한 정보를 제공한다.
왼쪽: 1024-token context 내에서 토큰의 위치 에 따른 토큰당 loss. Loss는 에 대해 power-law 형태로 예측 가능하게 스케일링된다.
오른쪽: 학습 단계(training step)에 따른 토큰당 test loss.
Figure 21: 평균 loss 외에도, 1024-token context 내의 개별 토큰들도 모델 크기가 증가함에 따라 꾸준히 개선된다. 더 짧은 context 로 학습한 경우(점선), 모델이 모든 용량을 초기 토큰에 할당할 수 있기 때문에 초기 토큰에서 더 나은 성능을 보인다.
D. 5 Context Dependence
Figure 21은 모델 크기에 따른 loss의 변화 추이를 context 내의 다른 token들에 대해 보여준다. 우리는 로 학습된 모델들이 첫 번째 token을 제외한 모든 token에서 모델 크기가 커질수록 꾸준히 성능이 향상됨을 확인할 수 있다.
모델 크기를 고정했을 때, loss는 Figure 20에서 볼 수 있듯이 context 내 위치 의 함수로서 power-law 형태로 스케일링되는 것으로 보인다. 이는 언어의 근본적인 power-law 상관관계 [EP94, ACDE12, LT16]의 결과일 수도 있고, 모델 아키텍처 및 최적화의 더 일반적인 특징일 수도 있다. 이는 **더 큰 context로 학습하는 것의 잠재적 이점(또는 부족함)**에 대한 시사점을 제공한다. 더 큰 모델은 에서 더 나은 성능으로 수렴할 뿐만 아니라, 초기 token에서도 더 빠르게 개선되어, 더 큰 모델이 더 적은 context 정보로도 패턴을 더 효율적으로 감지한다는 것을 시사한다. 오른쪽 그래프에서는 고정된 모델에 대해 training step에 따른 per-token 성능 변화를 보여준다. 모델은 초기에는 단거리 정보(short-range information)를 학습하고, 학습 후반에 가서야 장거리 상관관계(longer-range correlations)를 학습한다.
우리는 또한 더 긴 context 모델들과 비교하기 위해 의 작은 context로 학습된 모델들도 포함시켰다. 로 학습된 적당한 크기의 모델조차도 매우 초기 token에서는 우리의 가장 큰 모델들을 능가할 수 있다. 이는 더 큰 context로 학습된 훨씬 더 큰 모델들로 추가적인 개선이 가능할 수 있음을 시사한다.
D. 6 Learning Rate Schedules and Error Analysis
우리는 다양한 learning rate와 schedule을 실험하였다. 작은 language model에 대한 여러 schedule과 그에 따른 test 성능은 Figure 22에 플롯되어 있다. 우리는 learning rate schedule의 선택이 대부분 중요하지 않다는 결론을 내렸다. 단, 총합 learning rate가 충분히 크고, schedule에 warmup 기간과 거의 0에 가까운 learning rate로의 최종 decay가 포함되어야 한다.
Figure 22 우리는 cosine decay, linear decay, 그리고 더 빠르거나 느린 decay schedule을 포함한 다양한 learning rate schedule을 3백만 파라미터 모델에 대해 테스트했으며, 그 결과는 왼쪽에 나타나 있다. 이 실험들에서는 learning rate를 0으로 decay시키지 않았는데, 이는 학습 막바지에 고정된 성능 향상을 가져오는 경향이 있기 때문이다. 우리는 learning rate가 너무 작지 않고 너무 빠르게 decay되지 않는 한, 성능이 learning rate에 크게 의존하지 않는다는 것을 발견했다. 실행 간의 편차는 loss에서 0.05 수준이므로, 이 수준보다 작은 성능 변화를 검증하기 위해서는 여러 번의 실행을 평균내는 것이 필요하다.
Figure 23 **파라미터 수에 따른 성능 추세 **는 정성적인 수준에서 로그 함수와 같은 다른 함수보다 power law에 더 잘 부합한다.
schedule 간의 차이는 통계적 노이즈로 보이며, 서로 다른 학습 실행 간의 편차 규모에 대한 대략적인 지표를 제공한다. 더 큰 모델에 대한 실험에서는 서로 다른 random seed 간의 최종 test loss 편차가 모델 크기에 따라 대략적으로 일정한 크기를 유지한다는 것을 시사한다.
우리는 더 큰 모델이 발산을 방지하기 위해 더 작은 learning rate를 필요로 하는 반면, 더 작은 모델은 더 큰 learning rate를 허용한다는 것을 발견했다. 이를 구현하기 위해 대부분의 실행에서 다음 **경험 법칙(rule of thumb)**이 사용되었다:
이 공식은 개선될 수 있을 것으로 예상된다. 네트워크 너비에 대한 의존성이 있을 수 있으며, 이는 초기화 스케일에 의해 결정될 가능성이 높다. 또한 이 공식은 파라미터에서는 적용되지 않는다. 그럼에도 불구하고, 우리가 고려한 모델들에서는 충분히 잘 작동한다는 것을 확인했다.
D. 7 Fit Details and Power Law Quality
우리는 , , 에 대한 적합(fit)을 위해 여러 함수 형태를 실험했으며, power-law fit이 로그 함수와 같은 다른 함수들보다 질적으로 훨씬 더 정확했다 (Figure 23 참조).
의 경우, 1개 layer만 가진 작은 모델들은 fit에 포함하지 않았다. 이는 1개 layer에서 2개 layer로의 전환이 데이터에서 눈에 띄는 덩어리(lump)를 유발하기 때문이다. 의 경우에도 1개 layer만 가진 매우 작은 모델들은 fit에 포함하지 않았으며, 수렴까지 완전히 학습되지 않은 가장 큰 모델들도 제외했다. 이들을 포함하더라도 fit 파라미터는 미미하게 변하며, 어느 방향으로든 추세가 잘 외삽(extrapolate)된다.
D. 8 Generalization and Architecture
Figure 24에서 우리는 총 파라미터 수를 고정했을 때, 다른 데이터 분포로의 일반화(generalization)가 네트워크 깊이에 의존하지 않음을 보여준다. 이는 오직 학습 분포에서의 성능에만 의존하는 것으로 보인다.
Figure 24: 약 15억 개의 파라미터를 가진 모델들에 대해 일련의 데이터셋으로 평가한 결과를 보여준다. 깊이가 일반화에 미치는 영향은 관찰되지 않았으며, 일반화 성능은 주로 학습 분포에서의 성능에 의존한다. 12-layer 모델은 Internet Books 데이터셋에 대해 overfit되었으며, 우리는 early-stopped 성능을 보여준다. 이러한 놀라운 결과는 다른 실험에서는 관찰되지 않았다.
List of Figures
1 간단한 power law 요약 ..... 3 2 Sample efficiency 및 compute efficiency의 예시 ..... 4 3 모델 크기, batch size, serial step을 확장하는 방법 ..... 4 4 모델 및 데이터 크기, 또는 모델 및 학습 step을 동시에 변경할 때의 성능 ..... 5 5 하이퍼파라미터 튜닝에 대한 성능의 약한 의존성 ..... 8 6 Embedding 포함 또는 제외 시 성능 추세 비교 ..... 8 7 LSTM과 Transformer 성능 비교 ..... 9 8 다른 테스트 데이터셋으로의 일반화 ..... 10 9 Overfitting의 보편성 ..... 11 10 Critical batch size ..... 12 11 Compute budget 또는 파라미터 업데이트 횟수 대비 성능 ..... 14 12 Suboptimal 모델 학습 ..... 15 13 경험적 compute 추세와 조정된 compute 추세 비교 ..... 15 14 Compute budget 대비 최적 모델 크기 및 serial step 수 ..... 16 15 Compute 및 데이터 추세 간의 모순 ..... 17 16 Early stopping 하한 및 overfit 모델의 학습 곡선 ..... 23 17 Universal Transformer ..... 24 18 Batch size 스캔 ..... 24 19 Sample efficiency에 대한 또 다른 관점 ..... 24 20 Context 내 위치에 따른 성능의 power-law 의존성 ..... 25 21 다른 context 위치에서의 성능 대 모델 크기 ..... 25 22 Learning rate 스케줄 스캔 ..... 26 23 Power-Law 및 Logarithmic Fit 비교 ..... 26 24 Depth 대비 일반화 성능 ..... 27
List of Tables
1 Transformer의 파라미터 및 연산량 ..... 7 2 에 대한 적합도 ..... 11 3 에 대한 적합도 ..... 14 4 주요 경향 방정식 ..... 20 5 경향 적합의 주요 파라미터 ..... 20 6 연산 효율적인 학습을 위한 경향 ..... 20