Apa itu scaling laws dalam machine learning?
Scaling laws adalah rumus empiris yang memprediksi loss model dari ukurannya, data training-nya, dan komputasi yang dihabiskan. Pada model bahasa, loss turun mengikuti power law terhadap masing-masing faktor itu, jadi grafik di sumbu log-log nyaris berupa garis lurus sepanjang banyak orde magnitudo. Hukum yang di-fit pada run kecil dan murah lalu bisa memperkirakan loss run yang 1.000 kali lebih besar.
Lab memakai scaling laws untuk merencanakan training run sebelum menghabiskan komputasi. Mereka menentukan berapa parameter yang pantas untuk anggaran GPU tertentu, berapa token yang perlu dikumpulkan, dan apakah arsitektur atau campuran data baru layak diperbesar. Paper Chinchilla tahun 2022 memakainya untuk menunjukkan bahwa sebagian besar model besar saat itu terlalu besar untuk datanya, dan temuan ini mengubah cara model terbuka seperti Llama dilatih.
Ide utama
- Loss model bahasa turun mengikuti power law terhadap parameter, data, dan komputasi, yang tampak sebagai garis lurus di sumbu log-log.
- Training transformer padat menghabiskan sekitar 6 FLOPs per parameter per token, jadi C ≈ 6ND.
- Fit Chinchilla membagi loss menjadi bagian irreducible, suku untuk ukuran model, dan suku untuk data.
- Untuk anggaran komputasi tetap, model terbaik tumbuh kira-kira sebesar akar kuadrat komputasi, dekat 20 token per parameter.
- Model untuk serving berat dilatih jauh melewati titik itu, karena model yang lebih kecil lebih murah di setiap token yang dihasilkan.
- Scaling laws memprediksi loss, bukan kemampuan tertentu, dan mengasumsikan data baru dengan kualitas tetap.
Pertanyaan umum
Apa itu aturan Chinchilla 20 token per parameter?
Hoffmann et al. (2022) menemukan bahwa untuk anggaran training tetap, loss paling rendah saat model melihat sekitar 20 token per parameter. Chinchilla mengikutinya dengan 70B parameter dan 1,4T token, sekitar 5,9 × 10²³ FLOPs menurut C ≈ 6ND, dan mengungguli Gopher 280B, yang memakai komputasi serupa dengan 300B token. Aturan ini hanya soal komputasi training; Llama 2 7B melihat 2T token, sekitar 300 per parameter, karena model yang lebih kecil lebih murah saat serving.
Bagaimana scaling laws dipakai untuk merencanakan training run?
Tim melatih serangkaian model kecil dengan resep yang sama, mencocokkan power law ke loss akhirnya, lalu mengekstrapolasi ke anggaran yang direncanakan. Laporan teknis GPT-4 menjelaskan prediksi loss akhir dari model yang dilatih dengan komputasi 1.000 sampai 10.000 kali lebih sedikit. Fit yang sama membantu memilih ukuran model, jumlah token, dan learning rate sebelum run mahal dimulai.
Apa itu irreducible loss?
Bagian loss yang tidak hilang oleh ukuran model atau jumlah data berapa pun, yaitu suku E dalam rumus Chinchilla. Bagian ini mencerminkan keacakan teks itu sendiri: banyak token berikutnya tidak bisa diprediksi dari konteks. Nilainya bergantung pada dataset dan tokenizer, jadi E sebesar 1,69 nats per token hanya berlaku untuk data tempat nilai itu dicocokkan.
Apakah scaling laws berlaku di luar model bahasa?
Ya. Power law serupa sudah diukur untuk model gambar, video, suara, dan multimodal, juga untuk reinforcement learning. Eksponen dan konstantanya berbeda menurut domain dan arsitektur, jadi hukumnya harus dicocokkan ulang untuk tiap kasus, bukan disalin dari model bahasa.
Apakah scaling laws mencakup komputasi inference?
Hukum klasik hanya mencakup komputasi training. Riset yang lebih baru mempelajari dua pertukaran lain: melatih model lebih kecil lebih lama untuk menghemat biaya inference, dan menghabiskan lebih banyak komputasi saat menjawab, lewat penalaran lebih panjang atau banyak sampel jawaban, untuk menaikkan akurasi pada model yang tetap. Keduanya mengikuti kurva empirisnya sendiri.
Penjelasan terkait
- Learning Curve · Mendiagnosis underfitting dan overfitting dari ukuran training set
- Language Modeling · Memprediksi token berikutnya, tujuan yang menggerakkan GPT, BERT, dan NLP modern
- Mixture of Experts · Mengirim tiap token ke beberapa expert dalam model yang jauh lebih besar
- Quantization · Mengecilkan weight model menjadi 8 dan 4 bit
- KV Cache · Kenapa LLM menyimpan key dan value di cache, dan berapa biayanya
- Sampling: Temperature, Top-k, dan Top-p · Cara model bahasa memilih token berikutnya
- Distributed Training · Membagi training ke banyak GPU
Referensi
- Kaplan et al. (2020), "Scaling Laws for Neural Language Models"
- Hoffmann et al. (2022), "Training Compute-Optimal Large Language Models"
- Besiroglu et al. (2024), "Chinchilla Scaling: A replication attempt"
- Muennighoff et al. (2023), "Scaling Data-Constrained Language Models"
- Schaeffer et al. (2023), "Are Emergent Abilities of Large Language Models a Mirage?"
Terakhir diperbarui