Yolo فيجن شنتشن
شنتشن
انضم الآن
مسرد المصطلحات

دمج النماذج

اكتشف كيف يعمل دمج النماذج على دمج عدة نماذج مدربة مسبقًا في نموذج واحد. تعرف على كيفية دمج أوزان Ultralytics لتحسين الأداء دون زيادة زمن الاستجابة.

يُعد دمج النماذج تقنية مبتكرة في التعلم الآلي (ML) تجمع بين المعلمات (الأوزان) المُكتسبة من عدة نماذج تم تدريبها مسبقًا في نموذج واحد موحد. على عكس الإعدادات التقليدية متعددة النماذج ، يدمج الدمج أوزان النماذج مباشرةً في مساحة المعلمات. وهذا يسمح للممارسين بدمج المعرفة المتخصصة لعدة نماذج تم ضبطها بدقة على مهام أو مجموعات بيانات مختلفة دون تكبد تكاليف الذاكرة والحوسبة المترتبة على تشغيل نماذج متعددة في وقت واحد.

من خلال تطبيق العمليات مباشرةً على الأوزان، يحافظ دمج النماذج على البصمة المعمارية لشبكة واحدة. ويعد هذا الأمر ذا أهمية خاصة عند نشر مسارات معالجة متقدمة للرؤية الحاسوبية (CV) على الأجهزة الطرفية، حيث يُعد تقليل زمن الاستجابة في الاستدلال وتوفير الذاكرة أمرين بالغين الأهمية.

دمج النماذج التمييزية

من المفيد التمييز بين دمج النماذج والمفاهيم ذات الصلة مثل مجموعة النماذج و التعلم الترحيلي.

  • دمج النماذج مقابل مجموعة النماذج: تحافظ مجموعة النماذج على فصل الشبكات الفردية عن بعضها، حيث يتم تشغيل كل منها أثناء عملية الاستدلال وحساب متوسط مخرجاتها. وهذا يزيد من الدقة ولكنه يضاعف العبء الحسابي. أما دمج النماذج فيجمع بين الأوزان الفعلية قبل عملية الاستدلال، مما ينتج عنه نموذج واحد لا يتطلب أي حساب إضافي أثناء التشغيل.
  • دمج النماذج مقابل التعلم بالنقل: يتضمن التعلم بالنقل أخذ نموذج أساسي وتدريبه بشكل إضافي على مجموعة بيانات جديدة. أما دمج النماذج فلا يتطلب أي ضبط إضافي؛ فهو يستخدم عمليات حسابية لدمج النماذج التي تم تدريبها مسبقًا.

التقنيات الشائعة

طور الباحثون عدة طرق للدمج الفعال بين الأوزان دون المساس بالقدرات الأساسية للشبكة، كما يتضح من الأبحاث الأكاديمية الحديثة المنشورة على موقع arXiv.

  • متوسط الأوزان: الطريقة الأبسط، وهي حساب متوسط الأوزان من نماذج متعددة تشترك في نفس البنية.
  • حساب المهام: تقنية يتم فيها جمع أو طرح «متجهات المهام» (الفرق بين النموذج المُحسَّن ونموذجه الأساسي) لدمج سلوكيات معينة أو إزالتها.
  • TIES-Merging: نهج متطور يعمل على حل مشكلة تداخل المعلمات عن طريق استبعاد القيم الزائدة واختيار الإشارات المتسقة عبر النماذج، مع الحفاظ على الأداء في المهام المتنوعة.

تطبيقات واقعية

يُعد دمج النماذج وسيلة فعالة للغاية لبناء أنظمة عامة دون الحاجة إلى إعادة التدريب من الصفر.

  • المركبات ذاتية القيادة: قد تستخدم السيارة ذاتية القيادة نموذجًا أساسيًا Ultralytics . يمكن للمهندسين تدريب نسخة واحدة من النموذج بشكل مستقل على detect الحركات detect للمشاة، ونسخة أخرى على قراءة إشارات الطرق المعقدة. ويؤدي دمج هذين النموذجين إلى إنشاء كاشف واحد عالي الكفاءة يتولى المهمتين في وقت واحد دون مضاعفة وقت الاستدلال.
  • الذكاء الاصطناعي في مجال الرعاية الصحية: في مجال التصوير الطبي، قد تقوم مستشفيات بحثية مختلفة بضبط النماذج بناءً على مجموعات بيانات محلية متخصصة (على سبيل المثال، واحدة للتصوير بالرنين المغناطيسي وأخرى للتصوير المقطعي المحوسب) بسبب قوانين خصوصية البيانات الصارمة. ومن خلال دمج النماذج بشكل آمن، يمكن للباحثين إنشاء أداة تشخيصية شاملة تستفيد من توزيعات البيانات المتنوعة.

مثال: متوسط الترجيح البسيط

يمكنك بسهولة إجراء عملية دمج النماذج الأساسية باستخدام 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 واجهة سهلة الاستخدام لإدارة مشاريع الذكاء الاصطناعي الخاصة بالرؤية من البداية إلى النهاية دون عناء.

لنبني مستقبل الذكاء الاصطناعي معًا!

ابدأ رحلتك مع مستقبل تعلم الآلة