العودة إلى المدونة
MLOps 20 شتنبر 2024 9 min للقراءة

جعل النماذج أصغر بـ 10 أضعاف: التكميم والتقليم وتقطير المعرفة

التكميم INT8 والتقليم المنظم وتقطير المعرفة — تقليص حجم النموذج بنسبة 90% مع الحفاظ على 95% من الدقة.

مقارنة التقنيات

الطريقةتقليص الحجمانخفاض الدقةالجهد
التكميم INT84x~1%منخفض
FP162x<0.1%منخفض جداً
التقليم (30%)1.4x~2%متوسط
التقطير5-10x3-5%مرتفع

التكميم بعد التدريب (الأسهل)

import torch

# Dynamic quantization (CPU inference)
model_int8 = torch.quantization.quantize_dynamic(
    model,
    {nn.Linear, nn.LSTM},
    dtype=torch.qint8
)
# Result: 2-4x smaller, 2x faster on CPU

تقطير المعرفة

# Student learns from teacher's soft probabilities
teacher_logits = teacher(x).detach()
student_logits = student(x)

kd_loss = nn.KLDivLoss()(
    F.log_softmax(student_logits/T, dim=-1),
    F.softmax(teacher_logits/T, dim=-1)
) * T**2
Model CompressionQuantizationPruningKnowledge DistillationEdge
O

Ossama Elhakki

مهندس ذكاء اصطناعي وأنظمة ML — المغرب