Quantization (lượng tử hóa) là gì?
Quantization (lượng tử hóa) là khái niệm trong vật lý dùng để chỉ việc một đại lượng vật lý không thể thay đổi liên tục, mà chỉ nhận các giá trị rời rạc, từng “bậc” riêng biệt. Nói cách khác, trong thế giới lượng tử, nhiều đại lượng không “trơn tru” như ta quen nghĩ, mà chỉ được phép tồn tại ở những mức xác định.
Trong đời sống hằng ngày, ta quen với các đại lượng liên tục. Ví dụ, độ cao của một người có thể là 1,60 m, 1,601 m hay 1,6015 m. Nhưng trong thế giới vi mô, năng lượng của electron trong nguyên tử không thể có mọi giá trị, mà chỉ được phép nằm ở những mức năng lượng nhất định. Đây chính là một ví dụ điển hình của lượng tử hóa.
Một cách hình dung đơn giản là so sánh cầu thang và đường dốc. Trên đường dốc, bạn có thể đứng ở bất kỳ độ cao nào – đó là đại lượng liên tục. Còn trên cầu thang, bạn chỉ có thể đứng trên từng bậc, không thể đứng lơ lửng giữa hai bậc. Các mức năng lượng lượng tử giống như những bậc thang, và hiện tượng đó được gọi là quantization.
Khái niệm lượng tử hóa lần đầu được đưa ra khi các nhà khoa học nhận thấy rằng nguyên tử chỉ phát ra hoặc hấp thụ năng lượng theo từng “gói” nhỏ, gọi là lượng tử. Electron chỉ có thể “nhảy” từ mức năng lượng này sang mức khác, chứ không thể chuyển động liên tục giữa các mức. Điều này giải thích được hiện tượng phổ phát xạ của nguyên tử và nhiều hiện tượng mà vật lý cổ điển không thể lý giải.
Ngày nay, quantization là nền tảng của cơ học lượng tử và của rất nhiều công nghệ hiện đại. Laser, chip bán dẫn, cảm biến quang học, và cả máy tính lượng tử đều dựa trên việc các trạng thái năng lượng và tín hiệu được lượng tử hóa. Nhờ hiểu rằng thế giới vi mô vận hành theo những “bậc thang” rời rạc, con người đã có thể thiết kế và kiểm soát các hệ thống công nghệ cực kỳ chính xác.
Trong lĩnh vực trí tuệ nhân tạo và deep learning
Trong lĩnh vực trí tuệ nhân tạo và deep learning, quantization là một kỹ thuật tối ưu hóa mô hình rất quan trọng giúp giảm độ phức tạp tính toán và kích thước mô hình, khiến các mô hình AI chạy nhanh hơn và hiệu quả hơn khi triển khai trên phần cứng hạn chế như điện thoại, thiết bị nhúng hoặc máy nhỏ.
Cụ thể, trong hầu hết các mô hình học sâu, các tham số như trọng số (weights) và giá trị trung gian như activation thường được biểu diễn bằng số dấu chấm động có độ chính xác cao (ví dụ như 32-bit float – FP32). Những con số này mang lại độ chính xác cao nhưng cũng khiến mô hình lớn, chậm và tốn tài nguyên.
Quantization chuyển các giá trị này sang định dạng có độ chính xác thấp hơn (ví dụ từ FP32 sang số nguyên 8-bit INT8 hoặc thậm chí thấp hơn), điều này giúp Giảm đáng kể kích thước mô hình, tiết kiệm bộ nhớ; Tăng tốc xử lý suy luận (inference) vì các phép toán số nguyên thường chạy nhanh hơn; Cho phép mô hình chạy mượt trên thiết bị nhỏ, CPU đơn giản, thay vì chỉ chạy được trên GPU/TPU mạnh.
Quá trình lượng tử hóa thường diễn ra bằng cách xác định phạm vi giá trị lớn nhất và nhỏ nhất cho trọng số và activation, rồi “ánh xạ” chúng sang một tập giá trị rời rạc nhỏ hơn với số bit ít hơn. Mặc dù điều này có thể làm mất đi một chút độ chính xác, nhưng nếu làm đúng, mô hình vẫn giữ được hiệu suất dự đoán gần như tốt như trước.
Có hai cách phổ biến để thực hiện lượng tử hóa:
- Post-Training Quantization (PTQ): lượng tử hóa mô hình sau khi huấn luyện xong mà không cần đào tạo lại.
- Quantization-Aware Training (QAT): áp dụng lượng tử hóa ngay trong quá trình huấn luyện để mô hình “làm quen”, giúp giảm mất độ chính xác hơn.
Trong bối cảnh các mô hình lớn như LLM (Large Language Models) hay Vision Transformer, lượng tử hóa đã trở thành một kỹ thuật thiết yếu để có thể triển khai nhanh và tiết kiệm tài nguyên – điều mà nếu dùng toàn bộ số dấu chấm động 32-bit sẽ khó khăn hoặc không thể làm được
Nguồn tham khảo và đọc thêm
- https://www.ibm.com/think/topics/quantization
- https://www.mathworks.com/discovery/quantization.html
- https://www.geeksforgeeks.org/deep-learning/quantization-in-deep-learning/
- https://www.coditation.com/blog/how-to-optimize-large-deep-learning-models-using-quantization














