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

Batch Size

حجم الدفعة هو عدد أمثلة التدريب التي يعالجها النموذج في كل تحديث للأوزان. ويحدد استهلاك ذاكرة GPU وسرعة التدريب وضجيج التدرج.

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

تأثير حجم الدفعة في التدريب#

تمنح كل دفعة خوارزمية التحسين تقديرًا للتدرج على مجموعة البيانات كاملة، ويزداد هذا التقدير دقةً كلما كبرت الدفعة. ويقيس مقتطف PyTorch أدناه هذه الدقة مباشرةً عبر حساب متوسط التدرجات لكل عينة على دفعات عشوائية عديدة بأحجام مختلفة:

import torch

torch.manual_seed(0)

# Per-sample gradients of a squared-error loss for 10,000 samples
x = torch.randn(10_000)
y = 2 * x + torch.randn(10_000)
w = torch.tensor(0.0)
per_sample_grads = 2 * (w * x - y) * x

# Estimate the gradient from 1,000 random batches at each batch size
for batch_size in (8, 64, 512):
    idx = torch.randint(0, len(x), (1000, batch_size))
    batch_grads = per_sample_grads[idx].mean(dim=1)
    print(f"batch {batch_size:3d}: gradient std {batch_grads.std():.3f}")

ينخفض تشتت تقدير التدرج من 2.248 عند حجم دفعة 8 إلى 0.771 عند 64 و0.267 عند 512. ويخفض كل ازدياد في حجم الدفعة بمقدار 8 أضعاف الضوضاء بنحو 2.9 ضعف، وهو قريب من الجذر التربيعي لـ8، كما يحدث عند حساب متوسط عينات مستقلة.

تشكل هذه الضوضاء الموازنة بين الدفعات الصغيرة والكبيرة:

  • الدفعات الصغيرة (مثلًا من 8 إلى 32): تحديثات مشوشة وخطوات كثيرة في كل حقبة. تعمل الضوضاء بمثابة منظّم خفيف يساعد غالبًا الانحدار المتدرج العشوائي (SGD) على التعميم، وتناسب الدفعات الصغيرة الأجهزة محدودة الإمكانات، لكن كل حقبة تستغرق وقتًا أطول لأن GPU لا يعمل بكامل طاقته.
  • الدفعات الكبيرة (مثلًا 256 فأكثر): تدرجات سلسة، وخطوات أقل في كل حقبة، واستفادة عالية من العتاد. تميل الدفعات الكبيرة جدًا إلى التقارب عند نقاط دنيا حادة تُعمّم بصورة أسوأ، كما وجد Keskar وآخرون، ولأنها تتطلب خطوات أقل في كل حقبة، تحتاج إلى معدل تعلم أكبر بصورة متناسبة مع فترة إحماء. وباستخدام قاعدة التحجيم الخطي هذه، درّب Goyal وآخرون ResNet-50 على ImageNet بحجم دفعة 8,192 موزع على 256 وحدة GPU خلال ساعة واحدة، مع مطابقة دقة التدريب بالدفعات الصغيرة.

حدود الذاكرة وتراكم التدرجات#

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

يتضمن التدريب باستخدام Ultralytics YOLO هذه الآلية: إذ يراكم التدرجات حتى يعالج نحو 64 صورة، وهو حجم الدفعة الاسمي nbs، لذا يُجري batch=16 الافتراضي تحديثًا واحدًا للأوزان كل أربع دفعات بعد الإحماء. ويؤدي ضبط batch=-1 إلى تشغيل AutoBatch، الذي يختار أكبر دفعة تتسع لنحو 60% من ذاكرة CUDA الحرة، ويستخدم حجم دفعة 16 احتياطيًا على أجهزة CPU وApple MPS.

from ultralytics import YOLO

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

# ⁨batch=-1 يتيح لـAutoBatch اختيار حجم الدفعة استنادًا إلى ذاكرة GPU المتاحة⁩
# ⁨استخدم عددًا صحيحًا (batch=16) لتحديد حجم ثابت أو عددًا عشريًا (batch=0.70) لتحديد نسبة من الذاكرة⁩
results = model.train(data="coco8.yaml", epochs=5, batch=-1)

قبل بدء التدريب، يشغّل AutoBatch نموذج YOLO26 بأحجام دفعات تتراوح من 1 إلى 16 (وحتى 64 على وحدات GPU ذات ذاكرة 16 GB أو أكثر)، ويلائم خطًا مستقيمًا مع استخدام الذاكرة المقاس، ثم يحل المعادلة لإيجاد حجم الدفعة الذي يحقق النسبة المستهدفة.

  • الحقبة والتكرار: الحقبة مرور واحد على مجموعة البيانات كاملة، والتكرار تحديث واحد للأوزان. يساوي عدد التكرارات في الحقبة حجم مجموعة البيانات مقسومًا على حجم الدفعة، مع التقريب للأعلى؛ لذا تستغرق معالجة 1,000 صورة بحجم دفعة 100 عشرة تكرارات.
  • الدفعة المصغرة: مرادف للدفعة في معظم الكتابات عن التعلم العميق. وبالمعنى الدقيق، يستخدم الانحدار المتدرج بالدفعة مجموعة البيانات كاملةً في كل تحديث، ويستخدم الانحدار المتدرج العشوائي مثالًا واحدًا، بينما يقع انحدار الدفعات المصغرة بينهما، وهو أسلوب تدريب جميع الشبكات الحديثة تقريبًا.
  • تطبيع الدفعات: طبقة تطبّع التنشيطات باستخدام متوسط الدفعة الحالية وتباينها، لذا تصبح إحصاءاتها غير موثوقة جدًا عند أحجام الدفعات الصغيرة للغاية. ويتجنب تطبيع المجموعات هذا الاعتماد، وقد سجل خطأ أقل بنسبة 10.6% من تطبيع الدفعات في ResNet-50 على ImageNet عند حجم دفعة 2.
  • حجم دفعة الاستدلال: أثناء النشر، توازن معالجة الدفعات بين زمن استجابة الاستدلال ومعدل الإنتاجية. إذ يؤدي تجميع إطارات من عدة كاميرات إلى زيادة عدد الصور المعالجة في الثانية، بينما ينتظر كل إطار اكتمال دفعته.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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