Transfer Learning

نقل التعلم

التعريف

إعادة استخدام معرفة نموذج تدرّب على مهمة أو بيانات كبيرة لتسريع التعلم وتحسينه في مهمة أخرى ذات صلة.

بدلاً من تدريب نموذج من الصفر، نبدأ من نموذج مدرَّب مسبقاً (Pre-trained) على بيانات ضخمة مثل ImageNet أو نصوص الويب، ثم نكيّفه مع مهمتنا. الأسلوبان الشائعان: استخراج الخصائص (تجميد الطبقات المدربة وتدريب رأس تصنيف جديد فقط) والضبط الدقيق (Fine-Tuning) لبعض الطبقات أو كلها بمعدل تعلم صغير.
يفيد نقل التعلم خصوصاً عندما تكون بيانات المهمة الجديدة قليلة، كما في الصور الطبية.

Definition

Transfer learning is a machine learning approach in which knowledge gained while solving a source task is reused to improve learning on a different but related target task.

شرح مبسّط للمبتدئين

من يجيد قيادة السيارة يتعلم قيادة الشاحنة أسرع ممن لم يقد أبداً؛ فهو ينقل ما تعلمه سابقاً إلى مهمة جديدة.

شرح أكاديمي متخصص

يعرّف Pan وYang نقل التعلم بوجود مجال مصدر ومهمة مصدر ومجال هدف ومهمة هدف، ويهدف إلى تحسين دالة التنبؤ في الهدف باستخدام المعرفة من المصدر حين يختلف المجالان أو المهمتان. وقد بيّن Yosinski وزملاؤه أن الطبقات الأولى في الشبكات الالتفافية تتعلم خصائص عامة قابلة للنقل أكثر من الطبقات الأخيرة.

أمثلة عملية

  • استخدام ResNet المدربة على ImageNet لتصنيف صور أشعة الصدر.
  • استخدام BERT المدرب مسبقاً لتصنيف مشاعر التغريدات العربية.
تجميد نموذج مدرَّب وتبديل طبقة التصنيف Python
import torch.nn as nn
from torchvision import models

model = models.resnet18(weights="IMAGENET1K_V1")  # يحمّل أوزاناً مدربة مسبقاً
for p in model.parameters():
    p.requires_grad = False          # تجميد الطبقات
model.fc = nn.Linear(model.fc.in_features, 3)  # رأس جديد لثلاث فئات

trainable = sum(p.numel() for p in model.parameters() if p.requires_grad)
print(trainable)

شرح الكود

تبقى أوزان الشبكة كما هي ويُدرَّب الرأس الجديد فقط: 512×3 وزناً + 3 انحيازات.

النتيجة المتوقعة

1539

التطبيقات والاستخدامات

  • الصور الطبية والزراعية حيث البيانات الموسومة قليلة.
  • معالجة اللغات منخفضة الموارد.
  • التعرف على الكلام بلهجات محلية.

المزايا

  • يقلل كمية البيانات ووقت الحوسبة المطلوبين.
  • غالباً يحسن الدقة مقارنة بالتدريب من الصفر.

القيود والعيوب

  • النقل السلبي (Negative Transfer) إذا كان المجالان مختلفين جداً.
  • يرث النموذج انحيازات بيانات المصدر.

المصادر العلمية

مراجع ومصادر علمية

  • بحث علمي
    A Survey on Transfer Learning Sinno Jialin Pan, Qiang Yang · 2010 · IEEE Transactions on Knowledge and Data Engineering 22(10) مسح مرجعي لنقل التعلم وأنواعه.
  • بحث علمي
    How transferable are features in deep neural networks? Jason Yosinski, Jeff Clune, Yoshua Bengio, Hod Lipson · 2014 · NeurIPS 2014 دراسة قابلية نقل الخصائص بين الطبقات.

تعلّم وراجع

مصطلحات مقترحة للتعلّم بعده