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

Callback

الاستدعاء الراجع دالة تستدعيها حلقة التدريب عند أحداث محددة، مثل نهاية كل حقبة، لإضافة الإيقاف المبكر أو نقاط الحفظ أو التسجيل.

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

كيفية ارتباط الاستدعاءات الراجعة بالتدريب#

يحتفظ إطار العمل بقائمة من الاستدعاءات الراجعة لكل حدث مسمى، ويستدعيها جميعًا عند وصول الحلقة إلى ذلك الحدث، مع تمرير كائن المدرّب أو النموذج كي يتمكن الاستدعاء الراجع من قراءة المقاييس وتغيير الإعدادات. تجمع Keras الاستدعاءات في وحدتها keras.callbacks، ويجمعها PyTorch Lightning في أصناف فرعية من Callback، بينما يجمعها Hugging Face Transformers في TrainerCallback. تختلف أسماء الأساليب بين المكتبات، لكن الأحداث تتبع الحلقة نفسها:

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

استدعاءات التدريب الراجعة الشائعة#

  • الإيقاف المبكر: يوقف التدريب عندما لا يتحسن مقياس التحقق لعدد محدد من الحقب، يُسمى الصبر، ما يحد من فرط التوافق ويوفر موارد الحوسبة. ويمكن للاستدعاء EarlyStopping في Keras أيضًا استعادة أفضل أوزان رصدها قبل الإيقاف.
  • حفظ نقاط التحقق: يحفظ النموذج في كل حقبة أو كلما تحسن مقياس مراقب، لضمان بقاء أفضل الأوزان وإمكانية استئناف التشغيل بعد تعطل. ويستخدم الاستدعاء BackupAndRestore في Keras الحالة المحفوظة لاستئناف التشغيل المتوقف تلقائيًا.
  • جدولة معدل التعلم: تخفض معدل التعلم عندما يستقر مقياس ما، كما يفعل ReduceLROnPlateau في Keras، أو تتبع جدولًا ثابتًا مثل الاضمحلال الجيبي.
  • تتبع التجارب: يرسل الخسائر والمقاييس والصور النموذجية إلى أدوات مثل TensorBoard أو MLflow أو Weights & Biases بعد كل حقبة.
  • ضبط المعلمات الفائقة: يرسل نتيجة كل حقبة إلى أداة ضبط مثل Ray Tune، التي توقف مجدولاتها التجارب غير الواعدة مبكرًا.

كتابة استدعاء راجع مخصص#

يطلق Ultralytics YOLO أحداثًا مسماة أثناء التدريب والتحقق والتنبؤ والتصدير، مثل on_train_epoch_end وon_fit_epoch_end، كما تسجّل عمليات التكامل الخاصة به مع MLflow وComet وClearML وTensorBoard وUltralytics Platform بوصفها استدعاءات راجعة لهذه الأحداث. يقرأ هذا الاستدعاء الراجع mAP50-95 الخاص بالتحقق بعد كل حقبة، ويوقف تشغيل YOLO26 فور بلوغه قيمة مستهدفة:

from ultralytics import YOLO


def stop_at_target(trainer):
    """Stop training once validation mAP50-95 reaches 0.6."""
    score = trainer.metrics["metrics/mAP50-95(B)"]
    print(f"Epoch {trainer.epoch + 1}: mAP50-95 {score:.3f}")
    if score >= 0.6:
        trainer.stop = True  # the trainer ends the run after this epoch


model = YOLO("yolo26n.pt")
model.add_callback("on_fit_epoch_end", stop_at_target)  # runs after each epoch's validation
model.train(data="coco8.yaml", epochs=20)

يُطلق الحدث on_fit_epoch_end بعد التدريب والتحقق للحقبة، لذا يحتوي trainer.metrics بالفعل على نتائج تلك الحقبة. ويؤدي ضبط trainer.stop إلى خروج المدرّب من حلقة الحقب، وإجراء التحقق النهائي المعتاد على أفضل الأوزان، وحفظ النتائج، تمامًا كما يحدث عند بلوغ حد patience المضمن.

وظائف رد الاتصال مقابل الخطافات#

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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