Home Arrow Icon Knowledge base Arrow Icon Global Arrow Icon Bạn có thể giải thích vai trò của độ chính xác FP8 trong quá trình đào tạo của DeepSeek-V3


Bạn có thể giải thích vai trò của độ chính xác FP8 trong quá trình đào tạo của DeepSeek-V3


Chính xác FP8 đóng một vai trò quan trọng trong quá trình đào tạo của DeepSeek-V3, tăng cường đáng kể hiệu quả và giảm chi phí tính toán. Đây là một lời giải thích chi tiết về vai trò của nó:

Giới thiệu về độ chính xác của FP8

FP8 là định dạng điểm nổi 8 bit cung cấp biểu diễn nhỏ gọn hơn so với các định dạng 16 bit hoặc 32 bit truyền thống. Sự nhỏ gọn này dẫn đến việc giảm sử dụng bộ nhớ và tính toán nhanh hơn, làm cho nó trở nên lý tưởng cho đào tạo mô hình AI quy mô lớn như DeepSeek-V3 [3] [5].

Khung độ chính xác hỗn hợp

Deepseek-V3 sử dụng khung chính xác hỗn hợp, trong đó các phần khác nhau của mô hình sử dụng các mức độ chính xác khác nhau. Hầu hết các hoạt động chuyên sâu tính toán, chẳng hạn như phép nhân ma trận chung (GEMM), được thực hiện trong FP8 để tối ưu hóa việc sử dụng tốc độ và bộ nhớ. Tuy nhiên, một số hoạt động nhất định đòi hỏi độ chính xác cao hơn, như mô -đun nhúng, đầu đầu ra, mô -đun Gating MoE, toán tử chuẩn hóa và toán tử chú ý, được giữ ở các định dạng chính xác cao hơn (FP16 hoặc FP32) để duy trì độ chính xác [1] [5].

Định lượng hạt mịn

Để giải quyết các thách thức của phạm vi động hạn chế của FP8, DeepSeek-V3 giới thiệu một chiến lược lượng tử hóa hạt mịn. Điều này liên quan đến việc nhóm kích hoạt thành 1x128 gạch và trọng lượng thành các khối 128x128, mỗi khối được chia tỷ lệ một cách độc lập. Cách tiếp cận này ngăn chặn các giá trị cực đoan làm biến dạng toàn bộ tenxơ, giảm các lỗi lượng tử hóa và duy trì độ chính xác của mô hình [1] [5].

Định lượng trực tuyến

Deepseek-V3 sử dụng lượng tử hóa trực tuyến, trong đó các yếu tố tỷ lệ được tính toán động cho mỗi ô kích hoạt hoặc khối cân nặng trong quá trình đào tạo. Điều này giúp loại bỏ sự cần thiết của các phương pháp lượng tử hóa bị trì hoãn dựa vào các giá trị tối đa lịch sử, đơn giản hóa khung và cải thiện độ chính xác [1] [5].

Tăng độ chính xác tích lũy

Để giảm thiểu các lỗi gây ra bởi độ chính xác tích lũy hạn chế của FP8 trong các lõi tenxơ, DeepSeek-V3 sẽ thúc đẩy các kết quả một phần lên các thanh ghi FP32 theo các khoảng thời gian cụ thể trong các hoạt động GEMM. Điều này đảm bảo rằng sự tích lũy của các lỗi nhỏ được giảm thiểu, duy trì độ chính xác tổng thể của mô hình [1] [5].

Định dạng E4M3 hợp nhất

Không giống như các khung trước đó sử dụng các định dạng FP8 lai (ví dụ: E4M3 cho Pass Pass và E5M2 cho đường chuyền ngược), DeepSeek-V3 áp dụng định dạng E4M3. Điều này được thực hiện bằng chiến lược lượng tử hóa hạt mịn của nó, chia sẻ hiệu quả các bit số mũ giữa các yếu tố được nhóm, duy trì độ chính xác trên tất cả các tính toán [1] [5].

Tác động đến hiệu quả đào tạo

Việc sử dụng độ chính xác của FP8 tăng tốc đáng kể quá trình đào tạo của DeepSeek-V3. Mô hình đã được đào tạo bằng cách sử dụng trung tâm dữ liệu 2048 GPU chỉ trong khoảng hai tháng, chỉ cần 2,664 triệu giờ H800 GPU để đào tạo trước và thêm 0,1 triệu giờ GPU cho các giai đoạn tiếp theo. Hiệu quả này được quy cho mức tiêu thụ bộ nhớ giảm và tăng tốc độ tính toán được cung cấp bởi FP8 [3] [6].

Tóm lại, độ chính xác của FP8 trong Deepseek-V3 là rất quan trọng để đạt được hiệu quả đào tạo cao trong khi vẫn duy trì độ chính xác của mô hình. Nó được tích hợp cẩn thận vào một khung chính xác hỗn hợp, tận dụng lượng tử hóa hạt mịn và định lượng trực tuyến để giảm thiểu các hạn chế của FP8.

Trích dẫn:
[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
.
[5] https://www.linkedin.com/pulse/deepseek-v3s-key-innovations-8-bit-floating-point-fp8-qi-he-e3dgf
[6] https://huggingface.co/deepseek-ai/deepseek-v3
[7] https://martinfowler.com/articles/deepseek-papers.html
.