Model Merging
اكتشف كيف يجمع دمج النماذج بين نماذج متعددة مدربة مسبقًا في نموذج واحد. تعلم كيفية دمج أوزان Ultralytics YOLO26 لتعزيز الأداء دون تأخير إضافي.
دمج النماذج هو تقنية مبتكرة في machine learning (ML) تدمج المعلمات المتعلمة (الأوزان) لعدة نماذج مدربة مسبقاً في نموذج واحد موحد. على عكس إعدادات النماذج المتعددة التقليدية، يدمج الدمج مباشرة model weights في مساحة المعلمات. يتيح ذلك للممارسين دمج المعرفة المتخصصة للعديد من النماذج الم ضبطة بدقة على مهام أو مجموعات بيانات مختلفة دون تحمل تكاليف الذاكرة والحوسبة لتشغيل نماذج متعددة في نفس الوقت.
من خلال تطبيق العمليات مباشرة على الأوزان، يحافظ دمج النماذج على البصمة المعمارية لشبكة واحدة. هذا مفيد بشكل خاص عند نشر خطوط أنابيب computer vision (CV) المتقدمة على الأجهزة الطرفية، حيث يكون تقليل inference latency وتوفير الذاكرة أمراً بالغ الأهمية.
التمييز بين دمج النماذج#
من المفيد التمييز بين دمج النماذج والمفاهيم ذات الصلة مثل Model Ensemble و Transfer Learning.
- دمج النماذج مقابل تجميع النماذج: يحافظ تجميع النماذج على الشبكات الفردية منفصلة، حيث يتم تشغيل كل منها أثناء الاستدلال ومتوسط مخرجاتها. هذا يزيد من الدقة ولكنه يضاعف العبء الحسابي. بينما يجمع دمج النماذج الأوزان الفعلية قبل الاستدلال، مما ينتج عنه نموذج واحد لا يتطلب أي موارد حسابية إضافية أثناء وقت التشغيل.
- Model Merging vs. Transfer Learning: يتضمن التعلم النقلي أخذ نموذج أساسي وتدريبه بشكل إضافي على مجموعة بيانات جديدة. لا يتطلب دمج النماذج أي fine-tuning إضافي؛ فهو يستخدم عمليات رياضية لدمج نماذج مدربة بالفعل.
التقنيات الشائعة#
طوّر الباحثون عدة طرق لدمج الأوزان بفعالية دون تدمير القدرات الكامنة للشبكة، كما تم استكشافه في academic research on arXiv الحديثة.
- Weight Averaging: أبسط طريقة، حيث يتم أخذ المتوسط للأوزان من نماذج متعددة تشترك في نفس البنية.
- حساب المهام (Task Arithmetic): تقنية يتم فيها إضافة أو طرح "متجهات المهام" (الفرق بين النموذج المضبوط بدقة ونموذجه الأساسي) لدمج أو إزالة سلوكيات معينة.
- دمج TIES (TIES-Merging): نهج متقدم يحل تداخل المعلمات عن طريق تقليم القيم الزائدة واختيار العلامات المتسقة عبر النماذج، مما يحافظ على الأداء عبر مهام متنوعة.
تطبيقات العالم الحقيقي#
يعتبر دمج النماذج فعالاً للغاية لبناء أنظمة معممة دون الحاجة إلى إعادة التدريب من الصفر.
- Autonomous Vehicles: A self-driving car might use an Ultralytics YOLO26 base model. Engineers can independently train one model version to detect subtle pedestrian movements and another to read complex road signs. Merging these two models creates a single, highly capable detector that handles both tasks simultaneously without doubling the inference time.
- AI in Healthcare: في التصوير الطبي، قد تقوم مستشفيات بحثية مختلفة بضبط النماذج بدقة على مجموعات بيانات محلية تخصيصية (على سبيل المثال، واحدة لفحوصات التصوير بالرنين المغناطيسي والأخرى لفحوصات التصوير المقطعي المحوسب) بسبب قوانين خصوصية البيانات الصارمة. من خلال دمج النماذج بأمان، يمكن للباحثين إنشاء أداة تشخيصية شاملة تستفيد من توزيعات البيانات المتنوعة.
مثال: متوسط الأوزان البسيط#
You can easily perform basic model merging using PyTorch. The following example demonstrates how to average the state dictionaries of two identically structured models.
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")For teams looking to simplify the complex workflows of dataset annotation, training, and deployment, the Ultralytics Platform provides an intuitive interface to manage end-to-end vision AI projects effortlessly.






