Direct Preference Optimization (DPO)
تعرف على كيفية تبسيط تحسين التفضيل المباشر (DPO) لمواءمة الذكاء الاصطناعي. اكتشف كيف تحل هذه الطريقة الفعالة محل RLHF لتحسين سلامة النموذج وأدائه.
تحسين التفضيل المباشر (DPO) هو تقنية خوارزمية مستقرة وفعالة تُستخدم لضبط نماذج الذكاء الاصطناعي، مما يضمن توافقها مع رغبات الإنسان ومعايير السلامة والمبادئ التوجيهية الأخلاقية. وعلى عكس الطرق التقليدية التي تتطلب خطوط معالجة معقدة ومتعددة المراحل لالتقاط تعليقات الإنسان، يبسط DPO رياضياً عملية المواءمة من خلال التعامل مع تعلم التفضيل مباشرةً كـ مهمة تصنيف في تعلم الآلة. من خلال تحسين النموذج مباشرةً بناءً على مجموعة بيانات من تفضيلات الإنسان—حيث يختار المقيمون استجابة "فائزة" على أخرى "خاسرة"—يمكن للمطورين تحسين مستوى المساعدة والصدق والسلامة لـ النماذج الأساسية واسعة النطاق وأنظمة الذكاء الاصطناعي التوليدي الحديثة بشكل ملحوظ.
Link to this sectionكيف يبسط DPO مواءمة النموذج#
يكمن الابتكار الأساسي لتحسين التفضيل المباشر في إزالة "الوسيط" المعماري. تاريخياً، كانت مواءمة نموذج لغوي كبير (LLM) أو نموذج رؤية لغوي تتضمن عملية معقدة تُعرف باسم التعلم التعزيزي من تعليقات الإنسان (RLHF). يتطلب RLHF تدريب نموذج مكافأة منفصل لتقريب تقييم الإنسان، متبوعاً باستخدام خوارزمية تعلم تعزيزي عرضة لعدم الاستقرار مثل تحسين السياسة القريبة (PPO) لتحديث النموذج الرئيسي.
يقضي DPO رياضياً على الحاجة إلى نموذج المكافأة المنفصل هذا. بدلاً من ذلك، يعتمد على دالة خسارة مشتقة تزيد من احتمالية توليد مخرجات "مفضلة" بينما تقلل في الوقت نفسه من احتمالية المخرجات "المرفوضة". يستخدم نموذجاً مرجعياً للحد من تباعد كولباك-ليبلر، مما يضمن عدم انحراف النموذج المحدث بعيداً جداً عن توزيع بيانات التدريب الأصلية. هذا التبسيط الرياضي يجعل العملية تتصرف بشكل أقرب بكثير إلى التعلم الخاضع للإشراف القياسي، مما يؤدي إلى تقارب أسرع واستخدام أقل للذاكرة على أجهزة GPU. وهذا يقلل بطبيعته من مخاطر انهيار النموذج ويلغي ضبط المعاملات الفائقة المكثف.
Link to this sectionالتطبيقات الواقعية#
يُعيد تحسين التفضيل المباشر صياغة كيفية بناء ونشر أنظمة الذكاء الاصطناعي التفاعلية عبر العديد من الصناعات عالية المخاطر سعياً وراء سلامة الذكاء الاصطناعي القوية.
- تحسين الوكلاء التحادثيين: في مجال روبوتات الدردشة والمساعدين الافتراضيين، يُستخدم DPO لتقليل السمية ومواءمة الردود مع أفضل ممارسات السلامة لـ OpenAI وأبحاث Anthropic حول مواءمة الذكاء الاصطناعي. يقوم المقيمون البشريون بمراجعة إجابتين على استعلام، مع تحديد الإجابة المهذبة والواقعية كـ "مختارة". ثم يقوم DPO بتحديث أوزان النموذج لتفضيل أسلوب المحادثة هذا مع معاقبة الهلوسة.
- تنقيح نماذج الرؤية واللغة: مع تطور التعرف على الصور، يزداد الطلب على النماذج لتفسير ما تراه للمشغلين البشريين. بالنسبة لتطبيقات مثل الإجابة على الأسئلة المرئية، يسمح DPO للباحثين بمواءمة مخرجات النموذج النصية مع تفضيلات البشر التفصيلية. على سبيل المثال، إذا طلب مستخدم من نظام روبوتات مدعوم بـ Ultralytics YOLO26 وصف كائن ما، فإن DPO يدرب النموذج على إعطاء الأولوية للأوصاف الواقعية والموجزة على التفسيرات الغامضة، مع الالتزام الصارم بمبادئ أخلاقيات الذكاء الاصطناعي.
Link to this sectionDPO في الممارسة العملية#
يتطلب تنفيذ DPO بيانات زوجية عالية الجودة. تستخدم سير العمل الحديثة أدوات شاملة مثل منصة Ultralytics لإدارة مجموعات البيانات هذه بسلاسة، مما يضمن أن عملية توسيم البيانات تنتج أمثلة واضحة لـ "الفائز" و"الخاسر". يمكنك استكشاف الأبحاث التأسيسية وراء ذلك في ورقة تحسين التفضيل المباشر: نموذجك اللغوي هو سراً نموذج مكافأة أو القراءة عن المواءمة وتفضيلات الإنسان من Stanford HAI.
يوضح مقتطف Python التالي هيكل البيانات التأسيسي المطلوب لحساب الخسارة بأسلوب DPO باستخدام الوظائف الموجودة في مرجع PyTorch API.
import torch
import torch.nn.functional as F
def dpo_loss(chosen_logps, rejected_logps, beta=0.1):
# DPO maximizes the margin between chosen and rejected log probabilities
logits = beta * (chosen_logps - rejected_logps)
# The loss minimizes the negative log sigmoid of this margin
return -F.logsigmoid(logits).mean()
print(f"DPO Loss: {dpo_loss(torch.tensor([-0.5]), torch.tensor([-2.5])):.4f}")





