เปรียบเทียบประสิทธิภาพของโมเดลที่ผ่านการ Quantize
การทำความเข้าใจการปรับปรุงประสิทธิภาพไม่ได้จำกัดอยู่แค่เรื่องความแม่นยำ โมเดลที่ผ่านการ Quantize มักมีเวลา Inference ที่เร็วกว่า ซึ่งเป็นข้อได้เปรียบสำคัญในสถานการณ์การ Deploy ในแบบฝึกหัดนี้จะวัดว่าโมเดลต้นฉบับและโมเดลที่ผ่านการ Quantize ใช้เวลานานเท่าใดในการประมวลผลชุดข้อมูลทดสอบ
ฟังก์ชัน measure_time() ถูกกำหนดไว้ล่วงหน้าแล้ว โดยจะตั้งโมเดลให้อยู่ในโหมดประเมินผล รันการส่งผ่านข้อมูลแบบ Forward Pass บน Batch ทั้งหมดใน Dataloader และคืนค่าเวลาที่ใช้ไป
ทั้ง model (โมเดลต้นฉบับ) และ model_quantized (เวอร์ชันที่ผ่านการ Quantize) พร้อมกับ test_loader ถูกโหลดไว้ล่วงหน้าแล้ว
แบบฝึกหัดนี้เป็นส่วนหนึ่งของหลักสูตร
AI Models แบบ Scalable ด้วย PyTorch Lightning
คำแนะนำการฝึกหัด
- คำนวณเวลา Inference สำหรับโมเดลต้นฉบับและโมเดลที่ผ่านการ Quantize
- แสดงเวลาทั้งสองโดยปัดเศษให้เหลือทศนิยม 2 ตำแหน่ง
แบบฝึกหัดเชิงโต้ตอบแบบลงมือทำ
ลองทำแบบฝึกหัดนี้โดยเติมโค้ดตัวอย่างนี้ให้สมบูรณ์
# Measure inference time of the original model
original_time = measure_time(____)
# Measure inference time of the quantized model
quant_time = measure_time(____)
# Print results
print(f"Original Model Time: {____}s")
print(f"Quantized Model Time: {____}s")