Model Merging
اكتشف كيف يدمج دمج النماذج عدة نماذج مدرّبة مسبقًا في نموذج واحد. تعلّم كيفية دمج أوزان Ultralytics YOLO26 لتعزيز الأداء دون زمن استجابة إضافي.
دمج النماذج هو تقنية مبتكرة في تعلّم الآلة (ML) تجمع المعلمات المتعلَّمة (الأوزان) لعدة نماذج مُدرَّبة مسبقًا في نموذج واحد موحَّد. وعلى خلاف إعدادات النماذج المتعددة التقليدية، يدمج الدمج مباشرةً أوزان النموذج في فضاء المعلمات. ويتيح ذلك للممارسين جمع المعرفة المتخصصة لعدة نماذج ضُبطت بدقة لمهام أو مجموعات بيانات مختلفة، من دون تحمّل تكاليف الذاكرة والحوسبة اللازمة لتشغيل نماذج متعددة في الوقت نفسه.
من خلال تطبيق العمليات مباشرةً على الأوزان، يحافظ دمج النماذج على البصمة المعمارية لشبكة واحدة. وتكتسب هذه الميزة قيمة خاصة عند نشر مسارات الرؤية الحاسوبية (CV) المتقدمة على الأجهزة الطرفية، حيث يُعد تقليل زمن استدلال وتوفير الذاكرة أمرين بالغي الأهمية.
تمييز دمج النماذج#
من المفيد التمييز بين دمج النماذج والمفاهيم ذات الصلة مثل تجميع النماذج والتعلّم بالنقل.
- دمج النماذج مقابل تجميع النماذج: يحافظ تجميع النماذج على فصل الشبكات الفردية، ويشغّل كل شبكة منها أثناء الاستدلال ثم يحسب متوسط مخرجاتها. ويؤدي ذلك إلى زيادة الدقة، لكنه يضاعف العبء الحاسوبي. أما دمج النماذج فيجمع الأوزان الفعلية قبل الاستدلال، ما ينتج نموذجًا واحدًا لا يتطلب أي حوسبة إضافية أثناء التشغيل.
- دمج النماذج مقابل التعلّم بالنقل: ينطوي التعلّم بالنقل على أخذ نموذج أساسي ومواصلة تدريبه على مجموعة بيانات جديدة. ولا يتطلب دمج النماذج أي ضبط دقيق إضافي؛ إذ يستخدم عمليات رياضية لدمج نماذج مدرَّبة مسبقًا.
التقنيات الشائعة#
طوّر الباحثون عدة أساليب لدمج الأوزان بفاعلية من دون تدمير القدرات الأساسية للشبكة، كما تناولت ذلك الأبحاث الأكاديمية الحديثة على arXiv.
- متوسط الأوزان: أبسط الأساليب، ويتمثل في حساب متوسط أوزان نماذج متعددة تشترك في المعمارية نفسها.
- حساب المهام: تقنية تُضاف فيها «متجهات المهام» (الفرق بين نموذج ضُبط دقيقًا ونموذجه الأساسي) أو تُطرح لدمج سلوكيات محددة أو إزالتها.
- دمج TIES: نهج متقدم يعالج تداخل المعلمات من خلال اقتطاع القيم الزائدة واختيار إشارات متسقة عبر النماذج، مع الحفاظ على الأداء في المهام المتنوعة.
التطبيقات الواقعية#
يُعد دمج النماذج فعالًا للغاية في بناء أنظمة معمَّمة من دون إعادة التدريب من الصفر.
- المركبات ذاتية القيادة: قد تستخدم سيارة ذاتية القيادة نموذجًا أساسيًا من Ultralytics YOLO26. ويمكن للمهندسين تدريب إصدار من النموذج بشكل مستقل لاكتشاف حركات المشاة الدقيقة، وإصدار آخر لقراءة إشارات الطرق المعقدة. ويؤدي دمج هذين النموذجين إلى إنشاء كاشف واحد عالي القدرة يتعامل مع المهمتين في الوقت نفسه من دون مضاعفة زمن الاستدلال.
- الذكاء الاصطناعي في الرعاية الصحية: في مجال التصوير الطبي، قد تضبط مستشفيات بحثية مختلفة النماذج بدقة على مجموعات بيانات محلية متخصصة (مثل نموذج لفحوصات MRI وآخر لفحوصات CT) بسبب قوانين الخصوصية الصارمة للبيانات. ومن خلال دمج النماذج بأمان، يمكن للباحثين إنشاء أداة تشخيص شاملة تستفيد من توزيعات البيانات المتنوعة.
مثال: حساب متوسط الأوزان بطريقة بسيطة#
يمكنك تنفيذ دمج أساسي للنماذج بسهولة باستخدام PyTorch. يوضّح المثال التالي كيفية حساب متوسط قواميس الحالة لنموذجين متماثلين في البنية.
import torch
# Load the weights (state dicts) from two identical architectures
weights_a = torch.load("yolo26_task1.pt")["model"].state_dict()
weights_b = torch.load("yolo26_task2.pt")["model"].state_dict()
# Perform simple weight averaging
merged_weights = {k: (weights_a[k] + weights_b[k]) / 2.0 for k in weights_a.keys()}
# Save the newly merged model weights
torch.save({"model": merged_weights}, "yolo26_merged.pt")بالنسبة إلى الفرق التي تتطلع إلى تبسيط مسارات العمل المعقدة لتعليق مجموعات البيانات والتدريب والنشر، توفر منصة Ultralytics واجهة سهلة الاستخدام لإدارة مشاريع الذكاء الاصطناعي للرؤية الشاملة من البداية إلى النهاية بكفاءة.









