การควอนไทซ์ (Quantization)

การควอนไทซ์ (Quantization)

เทคนิคการปรับแต่งที่ลดความแม่นยำของพารามิเตอร์โมเดลจาก 16 บิต ลงเหลือ 4 บิต เป็นต้น เพื่อบีบอัดขนาดและเปิดใช้งานการ inference ภายใต้ทรัพยากรการประมวลผลที่จำกัด

Quantization คืออะไร

Quantization (การ Quantize) คือเทคนิคการปรับแต่งที่ลดความแม่นยำของค่าตัวเลขในพารามิเตอร์น้ำหนักของโมเดล (เช่น จาก floating point 32 บิต → integer 4 บิต) เพื่อบีบอัดขนาดโมเดลและการใช้หน่วยความจำ

ความเข้าใจเชิงสัญชาตญาณ

คล้ายกับการลดคุณภาพของภาพถ่ายแล้วทำให้ขนาดไฟล์เล็กลง แม้ว่าปริมาณข้อมูลต่อพารามิเตอร์หนึ่งตัวจะลดลง แต่ประสิทธิภาพโดยรวมของโมเดลกลับคงอยู่ได้อย่างน่าแปลกใจ หากนำโมเดลขนาด 70B พารามิเตอร์มาทำ Quantization แบบ 4 บิต การใช้งาน VRAM จะลดลงจากประมาณ 140GB เหลือประมาณ 35GB ทำให้สามารถ Inference ได้โดยไม่ต้องใช้ GPU cluster ราคาแพง

ประเภทของ Quantization

วิธีการลักษณะเฉพาะ
Post-Training Quantization (PTQ)Quantize โมเดลที่เทรนแล้วโดยตรง ทำได้ง่ายแต่อาจมีความแม่นยำลดลงมาก
Quantization-Aware Training (QAT)เทรนโดยคำนึงถึงการ Quantize ให้ความแม่นยำสูงกว่า PTQ แต่ต้องใช้ต้นทุนในการเทรน
GPTQ / AWQ / GGUFรูปแบบ Quantization ที่ปรับแต่งมาสำหรับ LLM โดยเฉพาะ และแพร่หลายในฐานะรูปแบบการแจกจ่าย Local LLM

QLoRA คือเทคนิคที่ผสมผสาน Quantization นี้เข้ากับ LoRA ซึ่งช่วยให้สามารถทำ Fine-tuning ในสถานะที่ถูก Quantize เป็น 4 บิตได้

เกณฑ์การตัดสินใจในการใช้งานจริง

มีผลการวิจัยหลายชิ้นรายงานว่า "การนำโมเดลขนาดใหญ่มา Quantize" ให้ประสิทธิภาพสูงกว่า "การใช้โมเดลขนาดเล็กที่มีความแม่นยำสูง" เมื่อต้องเลือกโมเดลในสภาพแวดล้อม Edge AI การค้นหาคำตอบที่เหมาะสมที่สุดจะขึ้นอยู่กับการผสมผสานระหว่างขนาดโมเดลและจำนวนบิตที่ใช้ใน Quantization

บทความที่กล่าวถึงคำศัพท์นี้