Ultralytics YOLO27: انضم إلى قائمة الانتظار.
ترخيص YOLO
العودة إلى مسرد Ultralytics

Adam Optimizer

يجمع Adam بين الزخم وأحجام خطوات لكل معلمة، تُضبط وفق أحجام التدرجات الحديثة. قاعدة التحديث والقيم الافتراضية وAdamW ومقارنة Adam بـ SGD.

محسّن Adam، وهو اختصار لـAdaptive Moment Estimation، خوارزمية تحسين لتدريب الشبكات العصبية، تمنح كل مُعامل حجم خطوة تكيفياً خاصاً به. وقدّمه Kingma وBa في بحث Adam: طريقة للتحسين العشوائي، وهو يطوّر الانحدار المتدرج العشوائي (SGD) باستخدام متوسطات متحركة للتدرجات السابقة ومربعاتها. وجعل التقدم السريع في المراحل الأولى والإعدادات الافتراضية المتساهلة من Adam نقطة البداية الأكثر شيوعاً للتحسين في التعلّم العميق، كما يُعد متغيره AdamW الخيار القياسي لتدريب المحولات ونماذج اللغة الكبيرة.

آلية عمل Adam#

يقلّل التدريب دالة الخسارة بتحديث كل وزن مراراً في الاتجاه المعاكس لـتدرّجه. ويضرب SGD العادي كل تدرج في معدل التعلّم نفسه. أما Adam فيحتفظ بقيمتين إضافيتين لكل مُعامل ويحدّثهما في كل خطوة t استناداً إلى التدرج الحالي g:

  1. العزم الأول (الزخم): m = β1·m + (1 − β1)·g، وهو متوسط متناقص أُسّياً للتدرجات يُبقي التحديث متجهاً في اتجاه ثابت.
  2. العزم الثاني: v = β2·v + (1 − β2)·g²، وهو متوسط متناقص لمربعات التدرجات يتتبع الحجم المعتاد لتدرجات كل مُعامل.
  3. تصحيح الانحياز: m̂ = m / (1 − β1^t) وv̂ = v / (1 − β2^t)، ويعوضان عن بدء كلا المتوسطين من الصفر.
  4. التحديث: θ = θ − lr · m̂ / (√v̂ + ε).

القيم الافتراضية في البحث، التي تستخدمها أيضاً torch.optim.Adam في PyTorch، هي lr = 0.001 وβ1 = 0.9 وβ2 = 0.999 وε = 1e-8. وتؤدي القسمة على √v̂ إلى تطبيع كل خطوة بحسب الحجم المعتاد لتدرج المُعامل، فتظل الخطوات قريبة من معدل التعلّم سواء كانت التدرجات صغيرة جداً أم كبيرة، كما تتقلص في الاتجاهات المشوشة التي تلغي فيها التدرجات الموجبة والسالبة بعضها داخل m̂. ويقارن المقتطف أدناه الخطوة الأولى لـSGD وAdam على مُعاملين يختلف حجما تدرجيهما بمقدار 1,000 ضعف:

import torch

# Two parameters whose gradients differ in scale by 1,000x
scale = torch.tensor([1000.0, 1.0])

for name, optimizer_cls in [("SGD", torch.optim.SGD), ("Adam", torch.optim.Adam)]:
    w = torch.zeros(2, requires_grad=True)
    optimizer = optimizer_cls([w], lr=0.001)

    loss = (scale * w).sum()  # gradient is [1000, 1]
    loss.backward()
    optimizer.step()
    print(f"{name} first step: {[round(v, 4) for v in w.tolist()]}")

يحرّك SGD المُعامل الأول إلى -1.0 والثاني إلى -0.001، أي بفارق 1,000 ضعف يتبع التدرجات. أما Adam فيحرّك كليهما بمقدار معدل التعلّم نفسه تماماً، -0.001، لأن خطوته المطبّعة تعتمد على اتجاه التدرج واتساقه، لا على حجمه الخام.

Adam مقارنةً بـAdamW#

يطبّق Adam وفقاً للتنفيذ الشائع اضمحلال الأوزان، وهو شكل من أشكال التنظيم، على هيئة عقوبة L2 تُضاف إلى التدرج؛ ثم تُقسّم هذه العقوبة، شأنها شأن سائر القيم، على √v̂، لذا لا تخضع الأوزان ذات التدرجات الكبيرة إلا لتنظيم ضئيل. ويعالج اضمحلال الأوزان المنفصل الذي قدّمه Loshchilov وHutter ذلك بتقليص الأوزان مباشرةً في كل خطوة، بصورة مستقلة عن التحديث التكيفي. وقد حسّن AdamW الناتج قدرة Adam على التعميم في تصنيف الصور ضمن تجارب البحث، وهو متاح باسم torch.optim.AdamW.

Adam مقابل SGD#

يستخدم SGD مع الزخم معدل تعلّم عامًّا واحدًا، ويخزّن مخزنًا مؤقتًا واحدًا لكل مُعامِل، بينما يخزّن Adam مخزنين، أي 8 بايتات لكل مُعامِل بدقة 32 بت، ما يعادل 56 GB من حالة المحسّن لنموذج يضم 7 مليارات مُعامِل. يحقق Adam عادةً تقدمًا أسرع في المراحل المبكرة، ويكون أقل حساسية لمعدل التعلّم، ويدرّب المحوّلات بموثوقية أعلى بكثير من SGD. وغالبًا ما يحقق SGD المضبوط جيدًا دقة نهائية مساوية أو أفضل في نماذج الصور الالتفافية، كما وجد ويلسون وآخرون أن الأساليب التكيفية غالبًا ما حققت تعميمًا أسوأ من SGD في مهام تصنيف الصور ومهام اللغة التي اختبروها.

يعكس تدريب Ultralytics YOLO هذه المفاضلة: إذ يختار الإعداد الافتراضي optimizer="auto" AdamW، مع معدل تعلّم أولي محسوب وفق عدد الفئات، للتشغيلات التي تصل إلى 10,000 تكرار، ثم ينتقل إلى MuSGD، وهو مزيج من SGD وMuon، في جداول التدريب الأطول. كما يتطلب تعيين المحسّن صراحةً تعيين معدل التعلّم، لأن القيمة الافتراضية lr0=0.01 ملائمة لـSGD وتبلغ عشرة أضعاف معدل Adam المعتاد.

from ultralytics import YOLO

# ⁨حمّل نموذج YOLO26n مدرّبًا مسبقًا⁩
model = YOLO("yolo26n.pt")

# ⁨درّب باستخدام AdamW ومعدل تعلّم أولي مناسب لـAdam⁩
results = model.train(data="coco8.yaml", epochs=5, optimizer="AdamW", lr0=0.001)

عندما يدرّب YOLO26 باستخدام محسّن من عائلة Adam، تضبط الوسيطة momentum (الافتراضية 0.937) القيمة β1، بينما تبقى β2 ثابتة عند 0.999.

  • AdaGrad: يقسم كل خطوة على جذر مجموع مربعات جميع التدرجات السابقة، لذا لا تنخفض أحجام الخطوات إلا بمرور الوقت؛ وهذا يناسب السمات المتناثرة ويبطئ جولات التدريب الطويلة.
  • RMSProp: يستبدل المجموع المتراكم في AdaGrad بمتوسط متناقص أُسّياً لمربعات التدرجات. وAdam هو أساساً RMSProp مضافاً إليه الزخم وتصحيح الانحياز.
  • Muon: محسّن لمصفوفات الأوزان ثنائية الأبعاد في الطبقات المخفية، يجعل كل تحديث للزخم متعامداً باستخدام تكرارات Newton–Schulz، ويحتفظ بمخزن حالة واحد لكل مُعامل، أي نصف حالة المحسّن في Adam.

استكشف الحلول

الرؤية الحاسوبية في الرياضة

الرؤية الحاسوبية في الرياضة

اكتشف كيف يعزّز Ultralytics YOLO الرؤية الحاسوبية الرياضية عبر تتبّع اللاعبين والكرة، وتحليلات الأداء، ورؤى التدريب، وإعادة تأهيل الرياضيين.
معرفة المزيد
الرؤية الحاسوبية للصور الجوية

الرؤية الحاسوبية للصور الجوية

حوّل صور الطائرات المسيّرة والصور الجوية إلى رؤى آنية للزراعة وتربية الأحياء المائية والحفاظ على البيئة والتحليل الجغرافي المكاني باستخدام Ultralytics YOLO.
معرفة المزيد
الرؤية الحاسوبية في قطاع الطيران والفضاء

الرؤية الحاسوبية في قطاع الطيران والفضاء

طبّق الرؤية الحاسوبية في مجال الطيران والفضاء باستخدام Ultralytics YOLO لفحص الطائرات، واكتشاف الأجسام الغريبة على المدارج (FOD)، والعمليات الأرضية في المطارات، واكتشاف عيوب المواد المركّبة.
معرفة المزيد
الرؤية الحاسوبية في مجال الأمن

الرؤية الحاسوبية في مجال الأمن

احمِ كل موقع باستخدام نماذج Ultralytics YOLO. يدعم الذكاء الاصطناعي البصري مراقبة المحيط، واكتشاف التهديدات، والتعرف على لوحات المركبات، والسلامة في مكان العمل.
معرفة المزيد
الرؤية الحاسوبية في الروبوتات

الرؤية الحاسوبية في الروبوتات

عزّز أداء الآلات الذكية باستخدام نماذج Ultralytics YOLO. يدعم الذكاء الاصطناعي البصري في الروبوتات الملاحة الذاتية والإدراك وتعقب الأجسام والتحكم الآني.
معرفة المزيد
الرؤية الحاسوبية في الخدمات اللوجستية

الرؤية الحاسوبية في الخدمات اللوجستية

بسّط العمليات اللوجستية باستخدام نماذج Ultralytics YOLO. يتيح الذكاء الاصطناعي البصري فحص الطرود وفرزها وتتبع المركبات ومراقبة سلامة المستودعات في الوقت الفعلي.
معرفة المزيد
الرؤية الحاسوبية في تجارة التجزئة

الرؤية الحاسوبية في تجارة التجزئة

أعِد تصور تجارة التجزئة باستخدام نماذج Ultralytics YOLO. يتيح الذكاء الاصطناعي البصري تتبع المخزون ومراقبة الرفوف وإدارة الطوابير واستخلاص رؤى أذكى عن العملاء.
معرفة المزيد
الرؤية الحاسوبية في الرعاية الصحية

الرؤية الحاسوبية في الرعاية الصحية

أنشئ حلولًا للرعاية الصحية باستخدام نماذج Ultralytics YOLO. يعزز الذكاء الاصطناعي البصري في الرعاية الصحية سرعة التصوير الطبي، وكفاءة التشخيص، ومراقبة المرضى.
معرفة المزيد
الرؤية الحاسوبية في التصنيع

الرؤية الحاسوبية في التصنيع

حسّن التصنيع باستخدام نماذج Ultralytics YOLO. يعزز الذكاء الاصطناعي للرؤية مراقبة الجودة واكتشاف العيوب والالتزام بمعدات الوقاية الشخصية وأتمتة خطوط التجميع.
معرفة المزيد
الرؤية الحاسوبية في قطاع السيارات

الرؤية الحاسوبية في قطاع السيارات

طبّق الرؤية الحاسوبية في قطاع السيارات باستخدام نماذج Ultralytics YOLO. يعزز الذكاء الاصطناعي للرؤية سلامة الطرق ومساعدة السائق وأتمتة المركبات لإنشاء طرق أكثر ذكاءً.
معرفة المزيد
الرؤية الحاسوبية في الزراعة

الرؤية الحاسوبية في الزراعة

أدخل الذكاء الاصطناعي البصري إلى الزراعة الذكية باستخدام نماذج Ultralytics YOLO. عزّز مراقبة المحاصيل وتتبع الماشية والزراعة الدقيقة لزيادة الإنتاجية وتحسينها.
معرفة المزيد

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

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