العودة إلى المدونة
NLP 28 مارس 2025 9 min للقراءة

ضبط BERT للإنتاج في NLP: دليل مجرب

كل ما تعلمته من ضبط BERT عبر أكثر من 10 مشاريع NLP — التحليل، جداول معدل التعلم، تجميد الطبقات.

وصفة الضبط الدقيق

from transformers import BertForSequenceClassification, AdamW

model = BertForSequenceClassification.from_pretrained(
    'bert-base-multilingual-cased',  # for AR/FR/EN
    num_labels=3
)

# Discriminative learning rates
optimizer = AdamW([
    {'params': model.bert.embeddings.parameters(), 'lr': 1e-5},
    {'params': model.bert.encoder.layer[:6].parameters(), 'lr': 2e-5},
    {'params': model.bert.encoder.layer[6:].parameters(), 'lr': 3e-5},
    {'params': model.classifier.parameters(), 'lr': 5e-5},
])

دروس رئيسية

  1. ابدأ بـ LR=2e-5 وbatch=16 وepochs=3-5
  2. الإحماء على 10% من الخطوات يمنع النسيان الكارثي
  3. للعربية: استخدم CAMeL-BERT أو AraBERT وليس mBERT
  4. تصدير ONNX: استدلال أسرع بثلاث مرات دون الحاجة إلى PyTorch
BERTFine-TuningHuggingFaceTransformersProduction
O

Ossama Elhakki

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