نقل التعلم
Transfer Learning
إعادة استخدام نموذج مدرب مسبقاً على بيانات ضخمة لمهمة جديدة ببيانات قليلة.
لماذا ينجح؟
السمات التي تتعلمها الطبقات الأولى (حواف، أنسجة) عامة وتفيد مهام كثيرة، بينما الطبقات الأخيرة أكثر تخصصاً في المهمة الأصلية (Yosinski et al., 2014).
الأسلوبان
| استخراج السمات | الضبط الدقيق | |
|---|---|---|
| الطبقات المدربة | مجمدة | تُحدَّث كلها أو بعضها |
| البيانات المطلوبة | قليلة | متوسطة |
| الكلفة | منخفضة | أعلى |
| خطر فرط التخصيص | أقل | أعلى مع البيانات القليلة |
مثال في PyTorch
import torch, torch.nn as nn
from torchvision import models
weights = models.ResNet18_Weights.DEFAULT
model = models.resnet18(weights=weights) # تُنزّل الأوزان عند أول استخدام
preprocess = weights.transforms() # التطبيع الصحيح لهذه الأوزان
for p in model.parameters(): # 1) استخراج السمات: تجميد
p.requires_grad = False
model.fc = nn.Linear(model.fc.in_features, 3) # رأس جديد لثلاث فئات
opt = torch.optim.AdamW(model.fc.parameters(), lr=1e-3)
# ... درّب الرأس بضع حقب ...
for p in model.layer4.parameters(): # 2) ضبط دقيق لآخر كتلة
p.requires_grad = True
opt = torch.optim.AdamW([
{"params": model.layer4.parameters(), "lr": 1e-5},
{"params": model.fc.parameters(), "lr": 1e-4},
])إرشادات
- استخدم معالجة المدخلات نفسها التي استُخدمت مع الأوزان الأصلية.
- ابدأ بتجميد الشبكة وتدريب الرأس، ثم حرر الطبقات العليا تدريجياً.
- معدل تعلم صغير للطبقات المدربة مسبقاً.
- راقب بيانات التحقق للتوقف المبكر.
تنبيه للمجالات المتخصصة
في الصور الطبية مثلاً يختلف التوزيع كثيراً عن ImageNet؛ نقل التعلم مفيد غالباً لكنه ليس مضموناً، ويجب التحقق التجريبي ومقارنته بنماذج مدربة مسبقاً على بيانات من المجال نفسه عند توفرها.
مصطلحات الدرس
- الضبط الدقيق Fine-tuning
- مواصلة تدريب نموذج مدرب مسبقاً على بيانات المهمة الجديدة، عادة بمعدل تعلم صغير.
- تجميد الطبقات Layer Freezing
- منع تحديث أوزان طبقات معينة أثناء التدريب للحفاظ على ما تعلمته.
- نقل التعلم Transfer Learning
- استخدام المعرفة التي تعلمها نموذج في مهمة أو مجال مصدر لتحسين التعلم في مهمة أو مجال هدف.
الملخص
نقل التعلم يستفيد من نموذج مدرب مسبقاً على مجموعة بيانات كبيرة (مثل ImageNet أو نصوص ضخمة) كنقطة بداية لمهمة جديدة. له أسلوبان رئيسان: استخراج السمات بتجميد الطبقات المدربة وتدريب رأس جديد فقط، والضبط الدقيق (fine-tuning) بتحديث بعض الطبقات أو كلها بمعدل تعلم صغير. يقلل الحاجة إلى البيانات والحوسبة، وهو الممارسة الافتراضية في الرؤية الحاسوبية ومعالجة اللغات، مع ضرورة الانتباه لاختلاف التوزيع بين المصدر والهدف.
أسئلة مراجعة
-
متى تفضل استخراج السمات على الضبط الدقيق الكامل؟
عندما تكون بيانات الهدف قليلة جداً ومشابهة لبيانات المصدر، لتقليل خطر فرط التخصيص.
-
لماذا يجب استخدام التطبيع نفسه الذي دُرب به النموذج الأصلي؟
لأن الأوزان تعلمت على مدخلات بتوزيع معين، وتغيير المعالجة يضعف الأداء.
المصادر والمراجع
إكمال الدرس
أكملت كل دروس المسار! يمكنك الآن طلب شهادة إكمال المسار.
اطلب الشهادة