ความแม่นยำ FP8 มีบทบาทสำคัญในกระบวนการฝึกอบรมของ DeepSeek-V3 การเพิ่มประสิทธิภาพอย่างมีนัยสำคัญและลดต้นทุนการคำนวณ นี่คือคำอธิบายโดยละเอียดเกี่ยวกับบทบาทของมัน:
บทนำสู่ความแม่นยำ FP8
FP8 เป็นรูปแบบจุดลอยตัว 8 บิตที่ให้การเป็นตัวแทนขนาดกะทัดรัดมากขึ้นเมื่อเทียบกับรูปแบบ 16 บิตหรือ 32 บิตแบบดั้งเดิม ความกะทัดรัดนี้ส่งผลให้การใช้หน่วยความจำลดลงและการคำนวณที่เร็วขึ้นทำให้เหมาะสำหรับการฝึกอบรมแบบจำลอง AI ขนาดใหญ่เช่น Deepseek-V3 [3] [5]
กรอบความแม่นยำผสม
Deepseek-V3 ใช้กรอบความแม่นยำผสมซึ่งส่วนต่าง ๆ ของแบบจำลองใช้ระดับความแม่นยำที่แตกต่างกัน การดำเนินการคำนวณมากที่สุดเช่นการคูณเมทริกซ์ทั่วไป (GEMM) ดำเนินการใน FP8 เพื่อเพิ่มประสิทธิภาพความเร็วและการใช้หน่วยความจำ อย่างไรก็ตามการดำเนินการบางอย่างที่ต้องการความแม่นยำสูงกว่าเช่นโมดูลฝังหัวเอาท์พุทโมดูล Gating MOE ตัวดำเนินการปกติและตัวดำเนินการที่ได้รับความสนใจจะถูกเก็บไว้ในรูปแบบที่มีความแม่นยำสูงกว่า (FP16 หรือ FP32) เพื่อรักษาความแม่นยำ [1] [5]
quantization เนื้อละเอียด
เพื่อจัดการกับความท้าทายของช่วงไดนามิกที่ จำกัด ของ FP8 Deepseek-V3 ได้แนะนำกลยุทธ์การหาปริมาณที่ละเอียด สิ่งนี้เกี่ยวข้องกับการจัดกลุ่มการเปิดใช้งานเป็น 1x128 กระเบื้องและน้ำหนักเป็น 128x128 บล็อกแต่ละตัวปรับขนาดอย่างอิสระ วิธีการนี้ป้องกันไม่ให้ค่าสุดขีดบิดเบือนเทนเซอร์ทั้งหมดลดข้อผิดพลาดเชิงปริมาณและรักษาความแม่นยำของแบบจำลอง [1] [5]
quantization ออนไลน์
Deepseek-V3 ใช้การหาปริมาณออนไลน์โดยที่ปัจจัยการปรับสเกลจะถูกคำนวณแบบไดนามิกสำหรับแต่ละกระเบื้องเปิดใช้งานหรือบล็อกน้ำหนักในระหว่างการฝึกอบรม สิ่งนี้ไม่จำเป็นต้องใช้วิธีการหาปริมาณที่ล่าช้าซึ่งขึ้นอยู่กับค่าสูงสุดในอดีตทำให้กรอบการทำงานง่ายขึ้นและปรับปรุงความแม่นยำ [1] [5]
เพิ่มความแม่นยำในการสะสม
เพื่อลดข้อผิดพลาดที่เกิดจากความแม่นยำในการสะสมที่ จำกัด ของ FP8 ในแกนเทนเซอร์ Deepseek-V3 จะส่งเสริมผลลัพธ์บางส่วนไปยังการลงทะเบียน FP32 ในช่วงเวลาเฉพาะระหว่างการดำเนินการ GEMM สิ่งนี้ทำให้มั่นใจได้ว่าการสะสมของข้อผิดพลาดเล็กน้อยจะลดลงโดยรักษาความแม่นยำโดยรวมของโมเดล [1] [5]
รูปแบบ E4M3 Unified
ซึ่งแตกต่างจากเฟรมเวิร์กก่อนหน้านี้ที่ใช้รูปแบบไฮบริด FP8 (เช่น E4M3 สำหรับการส่งต่อและ E5M2 สำหรับผ่านไปข้างหลัง), Deepseek-V3 ในระดับสากลใช้รูปแบบ E4M3 ในระดับสากล สิ่งนี้เกิดขึ้นได้โดยกลยุทธ์การหาปริมาณที่ละเอียดซึ่งแบ่งปันบิตเลขชี้กำลังอย่างมีประสิทธิภาพระหว่างองค์ประกอบที่จัดกลุ่มรักษาความแม่นยำในการคำนวณทั้งหมด [1] [5]
ผลกระทบต่อประสิทธิภาพการฝึกอบรม
การใช้ความแม่นยำ FP8 ช่วยเร่งกระบวนการฝึกอบรมของ DeepSeek-V3 อย่างมีนัยสำคัญ แบบจำลองได้รับการฝึกฝนโดยใช้ศูนย์ข้อมูลของปี 2048 GPU ในเวลาเพียงสองเดือนโดยใช้เวลาเพียง 2.664 ล้าน H800 GPU ชั่วโมงสำหรับการฝึกอบรมก่อนและอีก 0.1 ล้าน GPU ชั่วโมงสำหรับขั้นตอนต่อไป ประสิทธิภาพนี้เกิดจากการใช้หน่วยความจำที่ลดลงและความเร็วในการคำนวณที่เพิ่มขึ้นโดย FP8 [3] [6]
โดยสรุปความแม่นยำ FP8 ใน Deepseek-V3 เป็นสิ่งสำคัญสำหรับการบรรลุประสิทธิภาพการฝึกอบรมที่สูงในขณะที่รักษาความแม่นยำของแบบจำลอง มันถูกรวมเข้ากับกรอบความแม่นยำผสมอย่างระมัดระวังใช้ประโยชน์จากปริมาณที่ละเอียดและการหาปริมาณออนไลน์เพื่อลดข้อ จำกัด ของ FP8
การอ้างอิง:
[1] https://community.aws/content/2rjj1wkztsfywvfsiibhwxeqmf1/four-unique-takeaways-from-deepseek-v3?lang=en
[2] https://arxiv.org/pdf/2412.19437.pdf
[3] https://dirox.com/post/deepseek-v3-the-open-source-ai-revolution
[4] https://www.nextplatform.com/2025/01/27/how-did-deepseek-train-its-ai-model-on-a-lot-less-and-pled-hardware/
[5] https://www.linkedin.com/pulse/deepseek-v3s-key-innovations-8-bit-bit-floating-point-fp8-qi-he-e3dgf
[6] https://huggingface.co/deepseek-ai/deepseek-v3
[7] https://martinfowler.com/articles/deepseek-papers.html
[8] https://research.colfax-intl.com/deepseek-r1-fp8-mixed-precision-training/