งานวิจัย · arXiv 2001.08361
Scaling Laws for Neural Language Models
สรุปสามบรรทัด
- 🎯 กำหนดแนวทางการสเกลประสิทธิภาพของโมเดลภาษาแบบ autoregressive Transformer ร่วมกับพารามิเตอร์ของโมเดล ขนาดชุดข้อมูล และงบประมาณการคำนวณ
- 🔧 เทรนโมเดล decoder-only Transformers ครอบคลุมหลายอันดับขนาดทั้งด้านพารามิเตอร์ ข้อมูล และการคำนวณ เพื่อฟิตกฎกำลังเชิงประจักษ์และพลวัตของ critical batch size
- 📈 ประสิทธิภาพเป็นไปตามกฎกำลังที่ราบรื่นครอบคลุมการคำนวณมากกว่า 7 อันดับขนาด โดยการเทรนที่ประหยัดการคำนวณที่สุดจะเน้นจัดสรรทรัพยากรไปที่ขนาดโมเดล () มากกว่าขนาดชุดข้อมูล ()
บทคัดย่อ
เราศึกษากฎการสเกลเชิงประจักษ์ (empirical scaling laws) สำหรับประสิทธิภาพของโมเดลภาษาโดยวัดจาก cross-entropy loss ค่า loss จะสเกลตามกฎกำลัง (power-law) สัมพันธ์กับขนาดของโมเดล ขนาดของชุดข้อมูล และปริมาณการคำนวณ (compute) ที่ใช้ในการเทรน โดยแนวโน้มบางส่วนครอบคลุมกว้างกว่า 7 อันดับขนาด (orders of magnitude) รายละเอียดทางสถาปัตยกรรมอื่น ๆ เช่น ความกว้างหรือความลึกของเครือข่ายส่งผลกระทบน้อยมากภายในช่วงที่กว้าง สมการอย่างง่ายสามารถอธิบายความสัมพันธ์ของการเกิด overfitting ต่อขนาดโมเดล/ชุดข้อมูล รวมถึงความสัมพันธ์ระหว่างความเร็วในการเทรนกับขนาดของโมเดล ความสัมพันธ์เหล่านี้ช่วยให้เราสามารถกำหนดการจัดสรรงบประมาณการคำนวณที่คงที่ได้อย่างเหมาะสมที่สุด โมเดลขนาดใหญ่มีประสิทธิภาพการใช้ตัวอย่าง (sample-efficient) สูงกว่าอย่างมีนัยสำคัญ ดังนั้นการเทรนที่มีประสิทธิภาพการคำนวณสูงสุดจึงควรเป็นการเทรนโมเดลขนาดใหญ่มากบนชุดข้อมูลขนาดปานกลาง และหยุดการเทรนก่อนที่จะลู่เข้าอย่างมีนัยสำคัญ
บทคัดย่อต้นฉบับ (ภาษาอังกฤษ)
We study empirical scaling laws for language model performance on the cross-entropy loss. The loss scales as a power-law with model size, dataset size, and the amount of compute used for training, with some trends spanning more than seven orders of magnitude. Other architectural details such as network width or depth have minimal effects within a wide range. Simple equations govern the dependence of overfitting on model/dataset size and the dependence of training speed on model size. These relationships allow us to determine the optimal allocation of a fixed compute budget. Larger models are significantly more sample-efficient, such that optimally compute-efficient training involves training very large models on a relatively modest amount of data and stopping significantly before convergence.
คู่มือการอ่าน
ปัญหาและแรงจูงใจ
การสร้างโมเดลภาษาพัฒนาไปอย่างรวดเร็วด้วยสถาปัตยกรรม Transformer แต่การเทรนโมเดลขนาดใหญ่จำเป็นต้องใช้การคำนวณและข้อมูลมหาศาล ก่อนหน้างานวิจัยนี้ ยังไม่มีความชัดเจนว่าประสิทธิภาพ (วัดโดย cross-entropy loss) ขึ้นอยู่กับรูปทรงของสถาปัตยกรรม (ความลึกเทียบกับความกว้าง), จำนวนพารามิเตอร์, ขนาดชุดข้อมูล และการคำนวณที่ใช้เทรนอย่างไร การขาดความสัมพันธ์การสเกลเชิงปริมาณทำให้นักวิจัยมักเทรนโมเดลขนาดเล็กให้ใกล้จุดลู่เข้า แทนที่จะเข้าใจวิธีจัดสรรงบประมาณการคำนวณที่มีอยู่อย่างจำกัดให้เกิดประโยชน์สูงสุด
แนวคิดสำคัญ
- ขนาดมีความสำคัญเหนือสถาปัตยกรรม: ภายในขอบเขตที่กว้าง ประสิทธิภาพของ Transformer ขึ้นอยู่กับจำนวนพารามิเตอร์ที่ไม่รวม embedding (), ขนาดชุดข้อมูล () และการคำนวณ () เป็นหลัก ขณะที่ไฮเปอร์พารามิเตอร์ด้านสถาปัตยกรรม เช่น ความลึก ความกว้าง และจำนวน attention heads มีผลกระทบน้อยมากเมื่อ คงที่
- การสเกลตามกฎกำลังอย่างราบรื่น: Cross-entropy test loss สเกลตามกฎกำลังร่วมกับ , และการคำนวณ ตลอดช่วงที่กว้างกว่า 6 ถึง 8 อันดับขนาด
- การเติบโตของข้อมูลแบบ sublinear เพื่อเลี่ยง overfitting: การป้องกัน overfitting กำหนดให้ขนาดชุดข้อมูลต้องสเกลแบบ sublinear สัมพันธ์กับพารามิเตอร์:
- ประสิทธิภาพการคำนวณหมายถึงการใช้โมเดลใหญ่แล้วหยุดเร็วขึ้น: เพื่อให้ได้ประสิทธิภาพสูงสุดภายใต้งบประมาณการคำนวณที่จำกัด ควรเทรนโมเดลขนาดใหญ่มากแล้วหยุดก่อนลู่เข้าอย่างมีนัยสำคัญ โดยจัดสรรการคำนวณเป็น , batch size และจำนวนก้าว
ระเบียบวิธีวิจัย (พร้อมสมการสำคัญ)
ผู้วิจัยประเมินโมเดล Transformer แบบ decoder-only บน WebText2 (ใช้ BPE tokenization, context ) โดยขนาดโมเดล ไม่รวมพารามิเตอร์ embedding:
ประมาณการคำนวณที่ไม่รวม embedding ต่อรอบ forward-backward pass ได้เป็น
กฎกำลังแบบเดี่ยว (Individual Power Laws):
- ถูกจำกัดด้วยพารามิเตอร์ (Parameter-limited):
- ถูกจำกัดด้วยข้อมูล (Data-limited):
- ถูกจำกัดด้วยการคำนวณ (Compute-limited ที่ batch size ):
การสเกลพารามิเตอร์และข้อมูลพร้อมกัน:
พลวัตการเทรนและ Critical Batch Size: learning curve จะฟิตกับจำนวนก้าว (จำนวนก้าวเมื่อ ):
การจัดสรรที่เหมาะสมที่สุด (Optimal Allocations): การเทรนที่มีประสิทธิภาพจะมุ่งเป้าให้ loss สูงกว่าจุดลู่เข้าประมาณ ()
ผลลัพธ์ (พร้อมตัวเลขที่สำคัญที่สุด)
- แนวโน้มยังคงเป็นจริงตลอด 8 อันดับขนาดของการคำนวณ, 6 อันดับขนาดของพารามิเตอร์ และ 2 อันดับขนาดของข้อมูล
- การเพิ่ม เป็นสองเท่าจะลด loss ลงด้วยแฟกเตอร์
- เกณฑ์ป้องกัน overfitting: การเพิ่มขนาดโมเดล ต้องการข้อมูลเพิ่มขึ้นเพียงประมาณ
- เมื่องบประมาณการคำนวณ เพิ่มขึ้น การเทรนที่ประหยัดการคำนวณจะเพิ่มขนาดโมเดล ประมาณ (), เพิ่ม batch size ประมาณ () และเพิ่มก้าวการเทรนเพียง ()
- เมื่อเทียบกับการเทรนจนใกล้ลู่เข้า (เบี่ยงเบน ) การเทรนที่เหมาะสมด้านการคำนวณจะใช้การคำนวณน้อยลง , ใช้พารามิเตอร์เพิ่มขึ้น และใช้ก้าวการอัปเดตพารามิเตอร์น้อยลง
- Transfer loss ไปยังคลังข้อมูลนอกการแจกแจง (Books Corpus, Common Crawl, English Wikipedia) ปรับตัวดีขึ้นอย่างราบรื่นตามขนาดโมเดล โดยมีค่า penalty offset ที่เกือบคงที่เมื่อเทียบกับ validation loss ของ WebText2
ข้อจำกัดและคำถามปลายเปิด
- บทความนี้ยังขาดการพิสูจน์เชิงทฤษฎีที่รัดกุม (เช่น พื้นฐานทางฟิสิกส์เชิงสถิติ) เพื่ออธิบายค่าเลขชี้กำลังที่แน่ชัด
- การสเกลการคำนวณ ละเว้นต้นทุนเฉพาะของ attention ที่แปรผันตาม หรือการคำนวณที่ขึ้นกับ context เมื่อ
- ไฮเปอร์พารามิเตอร์ เช่น regularization, การปรับ dropout และ learning rate schedule ในระดับสเกลสูงสุด ส่วนใหญ่ถูกกำหนดไว้คงที่หรือไม่ได้ปรับจูนตามขนาดของชุดข้อมูล
- การคาดการณ์แนวโน้ม compute-optimal นอกช่วงนำไปสู่ข้อขัดแย้งที่ ตัดกับ ที่ , พารามิเตอร์ และ ซึ่งบ่งชี้ว่าแนวโน้มเชิงประจักษ์จะต้องหยุดลงหรือคงที่เมื่อเข้าใกล้ขีดจำกัดล่างของเอนโทรปีในภาษาธรรมชาติ
คำศัพท์สำคัญ
- Non-embedding parameters ($N$)
- จำนวนพารามิเตอร์ของ Transformer ซึ่งไม่นับรวมเมทริกซ์คำศัพท์และ positional embedding คำนวณได้จาก
- PF-day
- หน่วยวัดปริมาณการคำนวณเทียบเท่ากับ floating point operations ต่อวินาทีที่ทำงานต่อเนื่องเป็นเวลาหนึ่งวัน ซึ่งเท่ากับ FLOPs
- Critical batch size ($B_{\text{crit}}$)
- ขนาด batch size ในการเทรนที่ให้จุดสมดุลที่ดีที่สุดระหว่างประสิทธิภาพการคำนวณและเวลาการเทรนแบบลำดับ โดยสเกลผกผันกับเลขกำลังของ loss
- Compute-efficient frontier
- การจัดโครงสร้างขนาดโมเดล, batch size และจำนวนก้าวอัปเดตที่เหมาะสมที่สุด เพื่อลด validation loss ให้ได้มากที่สุดภายใต้งบประมาณการคำนวณที่กำหนด
- Sample efficiency
- อัตราการเรียนรู้ของโมเดลต่อหนึ่งโทเคนข้อมูลที่ประมวลผล โมเดลขนาดใหญ่จะบรรลุเป้าหมาย loss เดียวกันได้โดยใช้จำนวนโทเคนน้อยกว่าโมเดลขนาดเล็กอย่างมาก
- WebText2
- ชุดข้อมูลข้อความสำหรับ pre-training ส่วนขยายที่รวบรวมลิงก์ขาออกจาก Reddit จนถึงเดือนตุลาคม 2018 ซึ่งใช้ฟิตกฎการสเกลเชิงประจักษ์หลัก
- Early stopping step ($S_{\text{stop}}$)
- จำนวนก้าวที่ test loss หยุดปรับปรุงบนชุดข้อมูลจำกัดเนื่องจากเกิด overfitting ซึ่งผู้วิจัยได้หาขอบเขตล่างเชิงประจักษ์ไว้
คำถามที่พบบ่อย
ทำไมจึงต้องตัดพารามิเตอร์ embedding ออกเมื่อคำนวณขนาดโมเดล $N$?
การไม่รวม vocabulary และ positional embeddings ทำให้ได้แนวโน้มกฎกำลังที่ชัดเจนและเป็นสากลมากกว่าเมื่อปรับเปลี่ยนความลึกและจำนวนพารามิเตอร์ แสดงให้เห็นว่าพารามิเตอร์ embedding สามารถเปลี่ยนแปลงได้โดยไม่กระทบต่อขีดความสามารถหลักของ Transformer อย่างมีนัยสำคัญ
หากมีงบประมาณการคำนวณจำกัด ควรใช้ไปกับการเทรนให้นานขึ้นหรือการเทรนโมเดลที่ใหญ่ขึ้น?
ควรเน้นจัดสรรไปที่การเทรนโมเดลขนาดใหญ่ขึ้นเป็นหลัก การเทรนที่ประหยัดการคำนวณที่สุดจะสเกลพารามิเตอร์เป็น และจำนวนก้าวเป็น โดยหยุดการเทรนก่อนที่จะลู่เข้าเป็นเวลานาน
สัดส่วนของ Transformer (ความลึกเทียบกับความกว้าง) ส่งผลต่อ loss อย่างไร?
ประสิทธิภาพแทบไม่ขึ้นกับอัตราส่วนระหว่างความลึกต่อความกว้าง หรือจำนวน attention heads เมื่อควบคุมพารามิเตอร์ที่ไม่รวม embedding () ให้คงที่ โดยอัตราส่วนนี้สามารถต่างกันได้ถึง 40 เท่าโดยที่ค่า loss เปลี่ยนแปลงไปเพียงเล็กน้อยเท่านั้น
Cross-entropy loss ถ่ายทอดไปยังข้อความนอกชุดข้อมูลที่ใช้เทรน (out-of-distribution) อย่างไร?
Transfer loss ไปยังคลังข้อมูลอื่นจะสเกลตามขนาดโมเดลด้วยอัตรากฎกำลังที่ใกล้เคียงกับการแจกแจงที่ใช้เทรน โดยมีความแตกต่างหลักเพียงค่า penalty เชิงบวกที่ค่อนข้างคงที่
คำอธิบายในหน้านี้เขียนโดย AI จากงานวิจัยและอาจมีข้อผิดพลาด โปรดอ่านต้นฉบับเพื่อดูรายละเอียด