https://arxiv.org/abs/2001.08361
Abstract.
이 논문에서는 Language Model의 성능에 대한 경험적인 scaling law를 cross-entropy loss를 통해 알아보는 논문입니다. 이때의 loss는 model size, dataset size and the amount of compute라는 세 개의 측면에서 power-law로 scaling합니다. 이 논문을 통해 알아낸 간단한 관계식은 model과 dataset의 크기에 대한 과적합의 의존도나 model크기에 따른 학습의 속도의 의존도등을 알려줍니다.
이러한 관계들은 적절한 컴퓨터 자원의 할당등 LM의 최적화에 도움을 줄 수 있습니다. 큰 모델에는 그에 맞는 양의 데이터와 모델의 수렴(* overfitting) 전에 언제 학습을 멈춰야 하는지 등의 sample-efficient가 중요한데, 이에 도움을 줄 수 있습니다.
Introduction.
LM은 다양한 벤치마크에서 좋은 성능을 보여줘왔고, 몇몇 부분에서는 인간의 수준까지 도달했습니다.
LM은 아마 model architecture나 LM의 크기, computing power, 학습 단계에서의 사용가능한 data등 여러가지에 영향을 받는 것으로 보입니다. 해당 논문에서는 이러한 요소들과 LM의 loss와의 관계를 경험적으로 확인해봅니다.
이는 Transformer architecture를 바탕으로 이루어지며, 성능의 천장과 바닥을 확인하는 것은 연구자들에게 규모면에서의 scale에 대한 경향을 알 수 있게 해주고, 이러한 연구를 통해서 성능과 학습 시간, context length, dataset size, model size, and compute budget에 대한 정확한 제곱-법칙을 확인할 수 있습니다.
Summary.
해당 연구를 통해 발견한 주요한 점들은 아래와 같습니다:
- Performance depends strongly on scale, weakly on model shape:
모델의 성능은 scale에 매우 영향을 많이 받습니다. 이때의 scale은 model의 매개변수의 수(N, excluding embeddings), dataset의 크기(D), 훈련에 사용된 computing의 양(C)를 말합니다. 반면에 깊이나 폭과 같은 hyperparameters들에는 매우 약한 상관관계를 갖습니다 (section 3).
- Smooth power laws:
N,D,C 이 세 가지 요소들 중 다른 두 가지 요소들에 병목이 나타나지 않는 한, 이 요소들과 성능은 power-law를 갖습니다. * N,D,C 각각의 요소는 가른 2개의 요소가 제한되지 않는다면 six orders이상의 power law를 따릅니다 (지수 축으로 표현했을 때 linear 한 형태).
- Universality of overfitting:
N과 D가 동시에 증가한다면 성능이 증가하는 것은 예측가능하지만, N이나 D중 하나만 증가하고 하나는 고정한다면 성능이 감소하는 단계로 들어갑니다. 성능에 대한 penalty는 N^0.74/D 의 비율을 따라 결정됩니다. 즉 model의 크기가 8배 증가한다면, data의 크기는 5배가 증가해야 penalty를 피할 수 있다는 의미입니다 (section 4). *perfomance가 penalty없이 증가하려면 N과 더불어 D도 같이 scale up해야합니다.
- Universality of training:
model의 크기와 상관없이 학습 곡선은 예측가능한 power-law를 따릅니다. 즉, 초기 학습 곡선을 예측하는 것을 통해 우리는 학습을 더 한다면 어느 loss값을 기록할지 대략적으로 예측할 수 있습니다.
- Sample efficiency:
큰 모델은 작은 모델에 비해 sample-efficient합니다. 이는 적은 양의 data와 적은 양의 최적화 단계를 통해서도 큰 모델은 작은 모델과 비슷한 성능을 낼 수 있습니다.
- Convergence is inefficient:
컴퓨터 자원 C의 사용이 고정되었지만 모델의 크기 N과 사용가능한 data D에는 다른 제약이 없는 경우, 매우 큰 모델을 사용하며 수렴에 미치지 않을 정도로 학습하는 것이 최적의 성능을 보임을 알 수 있습니다 (see Figure 3). 따라서 자원에 대한 최대 효율인 학습은 작은 모델을 수렴에 가깝게 학습하는 것이 아닙니다. *자원이 한정되어있는 한 D에 대한 최대 효율을 나타내는 것은 무조건 큰 모델을 사용하는 것입니다.
- Optimal batch size:
모델을 훈련시키기 위한 최적의 배치사이즈는 대략 손실의 거듭제곱입니다. 이는 [MKAT18] gradient noise scale을 통해 측정될 수 있습니다.
이 모든것을 종합해보면, 이러한 결과들은 model의 크기나 데이터의 양, 계산량을 증가시킴으로써 성능을 높일 수 있다는 것을 보여줍니다. 또한 큰 LM모델이 작은 LM모델에 비해 샘플에 대해 더욱 효율적인 모습을 보여줍니다. *이 논문이 LLM이라는 트렌드를 만들었다는 점에서 해당 결과는 앞으로 나올 LM모델들의 크기를 키우는데에 근거가 됩니다.
Summary of Scaling Laws.
(앞서 설명한 내용들을 다양한 수학적인 표현들로 나타냄.)
Background and Methods.
(해당 연구의 배경 지식 및 방법론을 나타냄.)
Empirical Results and Basic Power Laws.
Approximate Transformer Shape and Hyperparameter Independence.
Trasformer의 성능은 embedding parameter가 아닌 parameter의 개수인 N이 고정되는 한, layer나 attn head, ff의 차원과는 별 상관이 없는 것으로 보입니다. *FF Ratio의 경우는 Loss Increase가 dff의 크기가 늘어날 때, 급격히 증가하는 모습을 보이는데 이도 성능에는 별 상관없는 것으로 볼 수 있는건가?
Performance with Non-Embedding Parameter Count N.
Transformer의 성능은 non-embedding parameter의 개수와 강한 상관관계를 보이지만, 이런 경향성은 embedding matrix를 포함하는 경우에는 잘 적용되지 않는 모습을 보입니다. *embedding matrix를 포함하면 왜 layer의 개수에도 더 큰 영향을 받는지 ..? 오히려 embedding matrix의 크기와 layer의 크기가 어떤 연관성이 있는 것일까? embedding의 크기가 늘어났는데 이를 받춰줄만한 layer의 수가 적으면 오히려 역효과? embedding param과 non-embedding param과 어떤 차이가 있을까?
Comparing to LSTMs and Universal Transformers.
같은 양의 pram수를 사용하는 LSTM과 비교했을 때, context의 앞 부분은 LSTM과 Transformer가 token당 loss가 비슷하지만 뒤로 갈수록 LSTM의 token당 loss가 Transformer에 비해 떨어지는 모습을 보입니다. *LSTM의 장기 의존성
따라서 LSTM은 Transformer의 성능과 power-law를 따라올 수 없습니다.
Genaralization Among Data Distributions.
WebText2가 아닌 다양한 벤치마크에서도 power-law가 통하는지를 알아보는 실험으로, 다양한 task에도 통함을 보여주고 있습니다.
Performance with Dataset Size and Compute.
(Data와 Compute에 대한 수식으로 표현.)
Charting the Infinite Data Limit and Overfitting.
model parameter N과 dataset size D는 함께 상승시키면 예측가능한 범위 내에서의 성능이 상승하지만, 하나를 고정하고 나머지 하나만 증가시키면 일정 지점에서 성능 하락이 발생합니다. 모델의 크기와 데이터셋의 비율을 앞에서 말했듯 N^0.74/D이며, 이는 대략 모델 크기가 8배 증가하면 데이터셋의 크기는 5배가 증가해야 overfitting이 없다는 의미입니다.
Scaling Laws with Model Size and Training Time.
Adjustment for Training at Batch.
최적의 배치 크기는 loss의 power law를 따릅니다. 최적 배치 사이즈 Bcrit이하는 성능 하락에 크게 영향을 미치지 않지만, 배치 사이즈가 Bcrit보다 크면 성능 하락이 크기 나타납니다.
따라서 loss에 따라 최적의 batch size를 조절해야하는데, empirical result에 따르면 loss가 13%가 줄어들 때 batch size는 2배로 증가해야 합니다. *loss에 따라 batch size를 동적으로 바꿔야한다는 점이 신기하다.
Results for L(N,Smin) and Performace with Model Size and Compute.
model size와는 별개로 training curve는 power-law를 따르는데, 학습이 더 길어질 때의 loss를 예측할 수 있습니다. computing budget을 고정하거나 (left), traing step을 고정할 때 (right), 성능이 power-law를 따르는 것을 확인할 수 있습니다. 이를 이용한다면, computing budget을 절약하기 위해 한정된 data size하에서 적절한 step에서 early stopping이 가능합니다. 또한 figure 11 left를 보면 parameter마다 가장 적절한 step이 존재함을 알 수 있습니다.
Lower Bound on Early Stopping Step.
computing budget C가 고정되어 있고, model size N과 data size D에 별다른 제한이 없다면, 거대 모델을 사용하여 수렴이 이루어지기 전까지 훈련하는 것이 작은 모델을 사용하여 수렴이 이뤄질때까지 훈련하는 것보다 효과적이며, 데이터 크기 D와 computing budget C의 관계는 D ~ C^0.27과 같습니다 (computing budget 10배 증가시 data size는 1.8배만 증가하면 됩니다).
optimal model size 주변을 보았을 때, optimal size부터 일부 구간 (0.6x ~ 2.2x) 까지는 computing budget의 증가가 크게 두드러지지 않지만, 해당 구간을 벗어나면 굉장히 큰 C를 필요로 합니다. 또한 모델 크기에 제한이 없다면 더 큰 모델에 대해 fewer step으로 학습하는 것이 빠르며 작은 모델로 더 많이 학습하는 것보다 효율적임을 figure를 통해서 알 수 있습니다.
Optimal Allocation of the Compute Budget.
figure left를 보면, 최적의 computing budget이 10배 증가할 때, model parameter는 5배, dataset은 2배 증가하면 최적의 computing budget allocation을 달성할 수 있음을 알 수 있습니다. 반면에 right을 보면, computing budget을 증가시킬 때, batch size를 고정한다면, 굉장히 많은 optimization step이 필요합니다. 따라서 앞서 봤듯이 loss나 computing size에 따른 적절한 optimal batch size가 필요합니다.
반론.
https://medium.com/@raniahossam/chinchilla-scaling-laws-for-large-language-models-llms-40c434e4e1c1