Định nghĩa
Mô hình lượng tử hóa là một phiên bản của mô hình học máy đã được huấn luyện, trong đó độ chính xác số học của các trọng số và kích hoạt đã được giảm xuống. Thông thường, các mô hình được huấn luyện bằng số dấu phẩy động 32-bit (FP32). Lượng tử hóa chuyển đổi các giá trị có độ chính xác cao này thành các biểu diễn bit thấp hơn, chẳng hạn như số dấu phẩy động 16-bit (FP16), số nguyên 8-bit (INT8), hoặc thậm chí thấp hơn.
Tại sao nó quan trọng
Kích thước mô hình và yêu cầu tính toán là những nút thắt cổ chai lớn trong việc triển khai các mô hình AI lớn, đặc biệt là trên các thiết bị biên (edge devices) hoặc môi trường đám mây bị hạn chế tài nguyên. Lượng tử hóa giải quyết trực tiếp vấn đề này bằng cách giảm đáng kể dấu chân bộ nhớ và số lượng phép tính cần thiết (FLOPs) trong quá trình suy luận.
Sự gia tăng hiệu suất này chuyển đổi trực tiếp thành thời gian suy luận nhanh hơn, độ trễ thấp hơn và giảm chi phí vận hành cho các doanh nghiệp chạy khối lượng công việc AI trên quy mô lớn.
Cách thức hoạt động
Ý tưởng cốt lõi là ánh xạ một phạm vi giá trị dấu phẩy động liên tục sang một tập hợp các giá trị có độ chính xác thấp rời rạc. Quá trình này bao gồm việc xác định một hệ số tỷ lệ và một điểm không (zero-point) cho mỗi tensor. Giá trị FP32 ban đầu được ánh xạ thành một giá trị số nguyên trong phạm vi độ rộng bit đã chọn. Có nhiều kỹ thuật, bao gồm Lượng tử hóa sau huấn luyện (PTQ), nơi việc lượng tử hóa diễn ra sau khi huấn luyện, và Huấn luyện nhận biết lượng tử hóa (QAT), nơi mô hình được huấn luyện với nhiễu lượng tử hóa mô phỏng để giảm thiểu mất độ chính xác.
Các trường hợp sử dụng phổ biến
Các mô hình lượng tử hóa rất quan trọng đối với một số ứng dụng AI hiện đại:
- Triển khai AI biên: Chạy các mô hình thị giác hoặc NLP phức tạp trực tiếp trên điện thoại di động, cảm biến IoT hoặc hệ thống nhúng nơi bộ nhớ và năng lượng bị hạn chế nghiêm trọng.
- Suy luận thông lượng cao: Cung cấp các mô hình ngôn ngữ lớn (LLM) hoặc các công cụ đề xuất phức tạp trong môi trường đám mây, nơi việc tối đa hóa yêu cầu mỗi giây (RPS) là tối quan trọng.
- Ứng dụng di động: Tích hợp các tính năng AI tinh vi vào các ứng dụng hướng tới người tiêu dùng mà không yêu cầu kết nối đám mây liên tục.
Lợi ích chính
- Giảm kích thước mô hình: Kích thước tệp nhỏ hơn cho phép tải xuống và triển khai nhanh hơn.
- Suy luận nhanh hơn: Số học số nguyên nhanh hơn và tiết kiệm năng lượng hơn đáng kể trên phần cứng chuyên dụng (như NPU hoặc CPU được tối ưu hóa) so với số học dấu phẩy động.
- Sử dụng bộ nhớ thấp hơn: Cần ít băng thông bộ nhớ hơn để tải và xử lý các trọng số mô hình.
Thách thức
- Suy giảm độ chính xác: Thách thức chính là khả năng mất độ chính xác của mô hình do thông tin bị mất trong quá trình giảm độ chính xác. Cần hiệu chuẩn cẩn thận và lựa chọn phương pháp lượng tử hóa để giảm thiểu điều này.
- Hỗ trợ phần cứng: Mặc dù INT8 được hỗ trợ rộng rãi, việc sử dụng các độ rộng bit rất thấp đòi hỏi khả năng tăng tốc phần cứng cụ thể để đạt được lợi ích hiệu suất đầy đủ.
Các khái niệm liên quan
- Cắt tỉa (Pruning): Loại bỏ các trọng số dư thừa khỏi mô hình.
- Chưng cất tri thức (Knowledge Distillation): Huấn luyện một mô hình 'học sinh' nhỏ, hiệu quả để bắt chước một mô hình 'giáo viên' lớn, phức tạp.
- Huấn luyện độ chính xác hỗn hợp (Mixed-Precision Training): Sử dụng các độ chính xác khác nhau (ví dụ: FP16 và FP32) một cách chiến lược trong kiến trúc mô hình.