คู่มือทางเทคนิค

สแต็คการฝึก DeepSpeed และ Megatron

DeepSpeed (Microsoft) และ Megatron-LM (NVIDIA) คือชุดซอฟต์แวร์ที่ทำให้โมเดลการฝึกที่มีพารามิเตอร์นับพันล้านตัวใน GPU นับพันมีความเป็นไปได้จริง

ภาพรวม

DeepSpeed (Microsoft) และ Megatron-LM (NVIDIA) คือชุดซอฟต์แวร์ที่ทำให้โมเดลการฝึกที่มีพารามิเตอร์นับพันล้านตัวใน GPU นับพันมีความเป็นไปได้จริง หากไม่มีสิ่งเหล่านี้ โมเดลชายแดนในปัจจุบันก็ไม่สามารถบรรจุลงในหน่วยความจำหรือเสร็จสิ้นการฝึกอบรมในเวลาอันสมควรได้

DeepSpeed ​​และ Megatron Training Stacks เป็นองค์ประกอบทางเทคนิคที่ส่งผลต่อคุณภาพของโมเดล ต้นทุนโครงสร้างพื้นฐาน เวลาแฝง และความน่าเชื่อถือในวงกว้าง

เจาะลึก

การฝึกโมเดลขนาดใหญ่บน GPU ตัวเดียวเป็นไปไม่ได้ เนื่องจากน้ำหนัก การไล่ระดับสี และสถานะของเครื่องมือเพิ่มประสิทธิภาพไม่พอดี สแต็กเหล่านี้แบ่งงานออกเป็น GPU จำนวนมาก Megatron-LM เป็นผู้บุกเบิกเทนเซอร์ขนาน โดยแบ่งการคูณเมทริกซ์แต่ละตัวภายในแต่ละเลเยอร์ทั่วทั้ง GPU บวกกับไปป์ไลน์ขนาน ซึ่งวางเลเยอร์ที่แตกต่างกันบน GPU ที่แตกต่างกัน ผลงานอันเป็นเอกลักษณ์ของ DeepSpeed ​​คือ ZeRO (Zero Redundancy Optimizer) ซึ่งจะแบ่งสถานะการเพิ่มประสิทธิภาพ การไล่ระดับสี และพารามิเตอร์ต่างๆ ทั่วทั้ง GPU แทนที่จะจำลองข้อมูลเหล่านั้น โดยตัดหน่วยความจำต่อ GPU อย่างมาก ทั้งสองมักจะรวมกัน (Megatron-DeepSpeed) เพื่อฝึกโมเดลเช่น BLOOM-176B และ Megatron-Turing NLG พวกเขายังเพิ่มความแม่นยำแบบผสม จุดตรวจสอบการเปิดใช้งาน และการออฟโหลดไปยัง CPU หรือ NVMe เพื่อให้โมเดลขนาดใหญ่ฝึกฝนบนฮาร์ดแวร์ที่มีจำกัด

ข้อมูลเชิงลึกทางเทคนิค

ZeRO มีการเพิ่มการประหยัดหน่วยความจำสามขั้นตอน: ขั้นที่ 1 สถานะเครื่องมือเพิ่มประสิทธิภาพชาร์ด ขั้นที่ 2 ยังไล่ระดับชาร์ด และขั้นที่ 3 รวบรวมพารามิเตอร์ด้วยตนเอง โดยรวบรวมพารามิเตอร์ต่างๆ ตามความต้องการระหว่างการส่งต่อและย้อนกลับ เมื่อรวมกับความเท่าเทียมของเทนเซอร์ (ภายในเลเยอร์) และความขนานของไปป์ไลน์ (ระหว่างเลเยอร์) สิ่งนี้จะทำให้เกิด 'ความขนานสามมิติ' ความตึงเครียดที่สำคัญคือค่าใช้จ่ายในการสื่อสาร: ทุกการแบ่งส่วนจะเพิ่มการรับส่งข้อมูลระหว่าง GPU กับ GPU ดังนั้นวิศวกรจึงปรับแต่งการแยกเพื่อให้ลิงก์ NVLink และ InfiniBand รวดเร็วมีความสมบูรณ์

การเรียนรู้สแต็คการฝึกฝน DeepSpeed และ Megatron

DeepSpeed ​​(Microsoft) และ Megatron-LM (NVIDIA) คือชุดซอฟต์แวร์ที่ทำให้โมเดลการฝึกที่มีพารามิเตอร์นับพันล้านตัวใน GPU นับพันมีความเป็นไปได้จริง หากไม่มีสิ่งเหล่านี้ โมเดลชายแดนในปัจจุบันก็ไม่สามารถบรรจุลงในหน่วยความจำหรือเสร็จสิ้นการฝึกอบรมในเวลาอันสมควรได้ DeepSpeed ​​และ Megatron Training Stacks เป็นองค์ประกอบทางเทคนิคที่ส่งผลต่อคุณภาพของโมเดล ต้นทุนโครงสร้างพื้นฐาน เวลาแฝง และความน่าเชื่อถือในวงกว้าง เพื่อสร้างความเข้าใจอย่างลึกซึ้ง ให้ถือว่า DeepSpeed ​​และ Megatron Training Stacks เป็นเพียงโมเดลการดำเนินงาน ไม่ใช่คุณลักษณะเดียว: กำหนดผลลัพธ์ที่ต้องการ ชี้แจงสมมติฐาน และแยกสิ่งที่ระบบสามารถทำได้อย่างน่าเชื่อถือจากสิ่งที่ยังต้องใช้วิจารณญาณจากผู้เชี่ยวชาญ

ในทางปฏิบัติ ทีมที่แข็งแกร่งที่ใช้ DeepSpeed ​​และ Megatron Training Stacks จะปรับสถาปัตยกรรม ข้อมูล และตัวเลือกโครงสร้างพื้นฐานให้เหมาะสมโดยเทียบกับความน่าเชื่อถือและต้นทุน โดยจะบันทึกเกณฑ์ความสำเร็จที่ชัดเจน ทดสอบกับข้อมูลและขั้นตอนการทำงานที่สมจริง และทำซ้ำตามรูปแบบความล้มเหลวที่สังเกตได้ แทนที่จะชนะการวัดประสิทธิภาพเพียงครั้งเดียว นี่คือจุดที่ความเข้าใจทางทฤษฎีกลายเป็นความสามารถที่คงทนของผลิตภัณฑ์ นโยบาย และการดำเนินงาน

การตัดสินใจด้านสถาปัตยกรรมขับเคลื่อนประสิทธิภาพและต้นทุนการดำเนินงานเป็นเวลาหลายปี ในเวลาเดียวกัน การเพิ่มประสิทธิภาพเกณฑ์มาตรฐานหนึ่งรายการสามารถซ่อนจุดอ่อนของระบบในวงกว้างได้ แนวทางที่ยืดหยุ่นที่สุดคือการรวมความเร็วของการทดลองเข้ากับวินัยในการกำกับดูแล: ดำเนินการนำร่อง จับหลักฐาน เผยแพร่บันทึกการตัดสินใจ และอัปเดตการป้องกันอย่างต่อเนื่องเมื่อพฤติกรรมของโมเดล ความคาดหวังของผู้ใช้ และข้อกำหนดด้านกฎระเบียบมีการเปลี่ยนแปลง

ผลกระทบเชิงกลยุทธ์

การตัดสินใจด้านสถาปัตยกรรมขับเคลื่อนประสิทธิภาพและต้นทุนการดำเนินงานเป็นเวลาหลายปี

การตัดสินใจด้านสถาปัตยกรรมขับเคลื่อนประสิทธิภาพและต้นทุนการดำเนินงานเป็นเวลาหลายปี ในการปรับใช้คุณภาพสูง สิ่งนี้จะถูกแปลเป็นกฎการปฏิบัติงานที่วัดผลได้ ขอบเขตความเป็นเจ้าของ และขั้นตอนการตรวจสอบที่เกิดซ้ำ เพื่อให้ทีมสามารถปรับขนาดความมั่นใจแทนที่จะปรับขนาดความคลุมเครือ

การศึกษาด้านเทคนิคช่วยให้ทีมเลือกกลุ่มที่เหมาะสม ไม่ใช่แค่กลุ่มใหม่ล่าสุด

การศึกษาด้านเทคนิคช่วยให้ทีมเลือกกลุ่มที่เหมาะสม ไม่ใช่แค่กลุ่มใหม่ล่าสุด ในการปรับใช้คุณภาพสูง สิ่งนี้จะถูกแปลเป็นกฎการปฏิบัติงานที่วัดผลได้ ขอบเขตความเป็นเจ้าของ และขั้นตอนการตรวจสอบที่เกิดซ้ำ เพื่อให้ทีมสามารถปรับขนาดความมั่นใจแทนที่จะปรับขนาดความคลุมเครือ

ตัวเลือกทางวิศวกรรมที่ดีกว่าจะช่วยลดเหตุการณ์ด้านความน่าเชื่อถือในการผลิต

ตัวเลือกทางวิศวกรรมที่ดีกว่าจะช่วยลดเหตุการณ์ด้านความน่าเชื่อถือในการผลิต ในการปรับใช้คุณภาพสูง สิ่งนี้จะถูกแปลเป็นกฎการปฏิบัติงานที่วัดผลได้ ขอบเขตความเป็นเจ้าของ และขั้นตอนการตรวจสอบที่เกิดซ้ำ เพื่อให้ทีมสามารถปรับขนาดความมั่นใจแทนที่จะปรับขนาดความคลุมเครือ

อนาคตของ DeepSpeed และกองการฝึกซ้อม Megatron

คาดหวังการผสานรวมที่เข้มงวดยิ่งขึ้นกับ FSDP ดั้งเดิมของ PyTorch (Fully Sharded Data Parallel) ซึ่งดูดซับแนวคิด ZeRO มากมาย ซึ่งทำให้เส้นแบ่งระหว่างกลุ่มการวิจัยและเฟรมเวิร์กหลักไม่ชัดเจน แนวทางที่ขับเคลื่อนด้วยคอมไพเลอร์และเครื่องมือวางแผนการทำงานแบบขนานอัตโนมัติมีจุดมุ่งหมายเพื่อลบการปรับแต่งแบบแมนนวล ในขณะที่คลัสเตอร์การฝึกฝนเติบโตไปสู่ตัวเร่งความเร็วหลายแสนตัว ความทนทานต่อข้อผิดพลาด การปรับขนาดที่ยืดหยุ่น และการสื่อสารที่ทับซ้อนกันด้วยการคำนวณกลายเป็นขอบเขตทางวิศวกรรมที่โดดเด่น ควบคู่ไปกับการรองรับฮาร์ดแวร์ใหม่ เช่น NVIDIA Blackwell และชิปการฝึกฝนแบบกำหนดเอง

การใช้งานจริงในโลกแห่งความเป็นจริง

การฝึกอบรมโมเดล BLOOM-176B หลายภาษาแบบเปิดโดยใช้ Megatron-DeepSpeed ​​Stack ที่รวมกันใน GPU หลายร้อยตัว

Microsoft และ NVIDIA ฝึกอบรมโมเดล NLG เมกะทรอน-ทัวริงพารามิเตอร์ 530 พันล้านพารามิเตอร์พร้อมระบบขนาน 3 มิติ

ZeRO-Offload ช่วยให้นักวิจัยปรับแต่งโมเดลหลายพันล้านพารามิเตอร์บน GPU เวิร์กสเตชันเดียวโดยกระจายสถานะเครื่องมือเพิ่มประสิทธิภาพไปที่ CPU RAM

การใช้จุดตรวจสอบการเปิดใช้งานในสแต็กเหล่านี้เพื่อให้พอดีกับหน้าต่างบริบทที่ยาวขึ้นโดยการคำนวณการเปิดใช้งานใหม่แทนที่จะจัดเก็บทั้งหมด

รูปแบบการดำเนินงาน

DeepSpeed ​​และ Megatron Training Stacks ในทางปฏิบัติ

การฝึกอบรมโมเดล BLOOM-176B หลายภาษาแบบเปิดโดยใช้ Megatron-DeepSpeed ​​Stack ที่รวมกันใน GPU หลายร้อยตัว

การฝึกอบรมโมเดล BLOOM-176B หลายภาษาแบบเปิดโดยใช้ Megatron-DeepSpeed ​​Stack ที่รวมกันใน GPU หลายร้อยทีม มักจะได้รับผลลัพธ์ที่ดีกว่าเมื่อพวกเขากำหนดเกณฑ์คุณภาพล่วงหน้า รักษาเส้นทางการยกระดับโดยมนุษย์สำหรับกรณี Edge และติดตามทั้งประสิทธิภาพการทำงานที่เพิ่มขึ้นและต้นทุนข้อผิดพลาดเมื่อเวลาผ่านไป

DeepSpeed ​​และ Megatron Training Stacks ในทางปฏิบัติ

Microsoft และ NVIDIA ฝึกอบรมโมเดล NLG เมกะทรอน-ทัวริงพารามิเตอร์ 530 พันล้านพารามิเตอร์พร้อมระบบขนาน 3 มิติ

Microsoft และ NVIDIA ฝึกอบรมโมเดล NLG เมกะทรอน-ทัวริงพารามิเตอร์ 530 พันล้านพารามิเตอร์พร้อมการทำงานแบบขนาน 3 มิติ ทีมมักจะได้รับผลลัพธ์ที่ดีกว่าเมื่อพวกเขากำหนดเกณฑ์คุณภาพล่วงหน้า รักษาเส้นทางการยกระดับโดยมนุษย์สำหรับกรณี Edge และติดตามทั้งประสิทธิภาพการทำงานที่เพิ่มขึ้นและต้นทุนข้อผิดพลาดเมื่อเวลาผ่านไป

DeepSpeed ​​และ Megatron Training Stacks ในทางปฏิบัติ

ZeRO-Offload ช่วยให้นักวิจัยปรับแต่งโมเดลหลายพันล้านพารามิเตอร์บน GPU เวิร์กสเตชันเดียวโดยกระจายสถานะเครื่องมือเพิ่มประสิทธิภาพไปที่ CPU RAM

ZeRO-Offload ช่วยให้นักวิจัยปรับแต่งโมเดลหลายพันล้านพารามิเตอร์บน GPU เวิร์กสเตชันเครื่องเดียวโดยการกระจายสถานะเครื่องมือเพิ่มประสิทธิภาพไปยัง CPU RAM ทีมมักจะได้รับผลลัพธ์ที่ดีกว่าเมื่อพวกเขากำหนดเกณฑ์คุณภาพไว้ล่วงหน้า รักษาเส้นทางการยกระดับโดยมนุษย์สำหรับ Edge Cases และติดตามทั้งประสิทธิภาพการทำงานที่เพิ่มขึ้นและต้นทุนข้อผิดพลาดเมื่อเวลาผ่านไป

DeepSpeed ​​และ Megatron Training Stacks ในทางปฏิบัติ

การใช้จุดตรวจสอบการเปิดใช้งานในสแต็กเหล่านี้เพื่อให้พอดีกับหน้าต่างบริบทที่ยาวขึ้นโดยการคำนวณการเปิดใช้งานใหม่แทนที่จะจัดเก็บทั้งหมด

การใช้จุดตรวจสอบการเปิดใช้งานในสแต็กเหล่านี้เพื่อให้พอดีกับหน้าต่างบริบทที่ยาวขึ้นโดยการคำนวณการเปิดใช้งานใหม่แทนที่จะจัดเก็บไว้ทั้งหมด ทีมมักจะได้รับผลลัพธ์ที่ดีกว่าเมื่อพวกเขากำหนดเกณฑ์คุณภาพล่วงหน้า รักษาเส้นทางการยกระดับโดยมนุษย์สำหรับกรณี Edge และติดตามทั้งประสิทธิภาพการทำงานที่เพิ่มขึ้นและต้นทุนข้อผิดพลาดเมื่อเวลาผ่านไป

ความเสี่ยงและรั้ว

!

การเพิ่มประสิทธิภาพเกณฑ์มาตรฐานหนึ่งรายการสามารถซ่อนจุดอ่อนของระบบในวงกว้างได้

!

ต้นทุนโครงสร้างพื้นฐานและการบำรุงรักษามักถูกประเมินต่ำไป

!

ช่องว่างด้านความปลอดภัยและความสามารถในการสังเกตสามารถเพิ่มขึ้นได้เมื่อระบบมีความซับซ้อนมากขึ้น

แผนงานการดำเนินงาน

1

กำหนดเป้าหมายเวลาแฝง คุณภาพ และต้นทุนก่อนนำไปใช้งาน

กำหนดเป้าหมายเวลาแฝง คุณภาพ และต้นทุนก่อนนำไปใช้งาน ถือว่าแต่ละขั้นตอนเป็นเหมือนประตูหลักฐาน: หากไม่ตรงตามเกณฑ์ ให้หยุดการเปิดตัวชั่วคราว ปิดช่องว่าง จากนั้นจึงขยายการใช้งานเท่านั้น

2

เกณฑ์มาตรฐานภายใต้สภาวะโหลดและข้อมูลจริง

เกณฑ์มาตรฐานภายใต้สภาวะโหลดและข้อมูลจริง ถือว่าแต่ละขั้นตอนเป็นเหมือนประตูหลักฐาน: หากไม่ตรงตามเกณฑ์ ให้หยุดการเปิดตัวชั่วคราว ปิดช่องว่าง จากนั้นจึงขยายการใช้งานเท่านั้น

3

การตรวจสอบเครื่องมือเพื่อหาข้อผิดพลาด การเบี่ยงเบน และผลกระทบต่อผู้ใช้

การตรวจสอบเครื่องมือเพื่อหาข้อผิดพลาด การเบี่ยงเบน และผลกระทบต่อผู้ใช้ ถือว่าแต่ละขั้นตอนเป็นเหมือนประตูหลักฐาน: หากไม่ตรงตามเกณฑ์ ให้หยุดการเปิดตัวชั่วคราว ปิดช่องว่าง จากนั้นจึงขยายการใช้งานเท่านั้น

4

เตรียมเส้นทางการย้อนกลับและการตอบสนองต่อเหตุการณ์ก่อนปรับขนาด

เตรียมเส้นทางการย้อนกลับและการตอบสนองต่อเหตุการณ์ก่อนปรับขนาด ถือว่าแต่ละขั้นตอนเป็นเหมือนประตูหลักฐาน: หากไม่ตรงตามเกณฑ์ ให้หยุดการเปิดตัวชั่วคราว ปิดช่องว่าง จากนั้นจึงขยายการใช้งานเท่านั้น

สำรวจต่อไป