Link to this sectionالارتقاء بتدريب YOLO26: بسّط عملية التسجيل الخاصة بك باستخدام Comet#
يعد تسجيل تفاصيل التدريب الرئيسية مثل المعلمات، والمقاييس، وتنبؤات الصور، ونقاط حفظ النموذج أمراً جوهرياً في تعلم الآلة—فهو يحافظ على شفافية مشروعك، وقابلية تقدمك للقياس، وقابلية نتائجك للتكرار.
Watch: How to Use Comet for Ultralytics YOLO Model Training Logs and Metrics 🚀
يتكامل Ultralytics YOLO26 بسلاسة مع Comet (المعروف سابقاً بـ Comet ML)، حيث يلتقط ويحسن بفعالية كل جانب من جوانب عملية تدريب نموذج اكتشاف الكائنات في YOLO26. في هذا الدليل، سنغطي عملية التثبيت، وإعداد Comet، والرؤى الفورية، والتسجيل المخصص، والاستخدام دون اتصال بالإنترنت، مما يضمن توثيق تدريب YOLO26 الخاص بك بدقة وتحسينه للحصول على نتائج متميزة.
Link to this sectionComet#
Comet هو منصة لتتبع نماذج وتجارب تعلم الآلة، ومقارنتها، وشرحها، وتحسينها. فهو يسمح لك بتسجيل المقاييس، والمعلمات، والوسائط، والمزيد أثناء تدريب النموذج الخاص بك، ومراقبة تجاربك من خلال واجهة ويب جذابة. يساعد Comet علماء البيانات على التكرار بسرعة أكبر، ويعزز الشفافية وقابلية التكرار، ويساعد في تطوير نماذج الإنتاج.
Link to this sectionتسخير قوة YOLO26 وComet#
من خلال الجمع بين Ultralytics YOLO26 وComet، يمكنك فتح مجموعة من المزايا. وتشمل هذه المزايا إدارة مبسطة للتجارب، ورؤى فورية لإجراء تعديلات سريعة، وخيارات تسجيل مرنة ومخصصة، والقدرة على تسجيل التجارب دون اتصال بالإنترنت عندما يكون الوصول إلى الإنترنت محدوداً. يمكّنك هذا التكامل من اتخاذ قرارات تعتمد على البيانات، وتحليل مقاييس الأداء، وتحقيق نتائج استثنائية.
Link to this sectionالتثبيت#
لتثبيت الحزم المطلوبة، قم بتشغيل:
# Install the required packages for YOLO26 and Comet
pip install ultralytics comet_ml torch torchvisionLink to this sectionإعداد Comet#
بعد تثبيت الحزم المطلوبة، ستحتاج إلى التسجيل، والحصول على مفتاح واجهة برمجة تطبيقات Comet، وإعداده.
# Set your Comet API Key
export COMET_API_KEY=YOUR_API_KEYبعد ذلك، يمكنك تهيئة مشروع Comet الخاص بك. سيكتشف Comet مفتاح واجهة برمجة التطبيقات تلقائياً ويتابع عملية الإعداد.
import comet_ml
comet_ml.login(project_name="comet-example-yolo26-coco128")إذا كنت تستخدم دفتر ملاحظات Google Colab، فسيطلب منك الكود أعلاه إدخال مفتاح واجهة برمجة التطبيقات الخاص بك للتهيئة.
Link to this sectionالاستخدام#
قبل الغوص في تعليمات الاستخدام، تأكد من الاطلاع على مجموعة نماذج YOLO26 التي تقدمها Ultralytics. سيساعدك هذا في اختيار النموذج الأنسب لمتطلبات مشروعك.
from ultralytics import YOLO
# Load a model
model = YOLO("yolo26n.pt")
# Train the model
results = model.train(
data="coco8.yaml",
project="comet-example-yolo26-coco128",
batch=32,
save_period=1,
save_json=True,
epochs=3,
)بعد تشغيل كود التدريب، سيقوم Comet بإنشاء تجربة في مساحة عمل Comet الخاصة بك لتتبع التشغيل تلقائياً. سيتم تزويدك بعد ذلك برابط لعرض التسجيل التفصيلي لعملية تدريب نموذج YOLO26 الخاص بك.
يسجل Comet تلقائياً البيانات التالية دون الحاجة إلى تكوين إضافي: المقاييس مثل mAP والخسارة، والمعلمات الفائقة، ونقاط حفظ النموذج، ومصفوفة الارتباك التفاعلية، وتنبؤات صندوق الإحاطة للصور.
Link to this sectionفهم أداء نموذجك باستخدام تصورات Comet#
دعنا نتعمق في ما ستراه على لوحة تحكم Comet بمجرد أن يبدأ نموذج YOLO26 الخاص بك في التدريب. لوحة التحكم هي المكان الذي يحدث فيه كل شيء، حيث تعرض مجموعة من المعلومات المسجلة تلقائياً من خلال المرئيات والإحصائيات. إليك جولة سريعة:
لوحات التجارب
ينظم قسم لوحات التجارب في لوحة تحكم Comet ويعرض عمليات التشغيل المختلفة ومقاييسها، مثل خسارة قناع القطع، وخسارة الفئة، والدقة، ومتوسط دقة التنبؤ.
المقاييس
في قسم المقاييس، لديك خيار فحص المقاييس بتنسيق جدولي أيضاً، والذي يتم عرضه في جزء مخصص كما هو موضح هنا.
مصفوفة الارتباك التفاعلية
توفر مصفوفة الارتباك، الموجودة في علامة تبويب مصفوفة الارتباك، طريقة تفاعلية لتقييم دقة تصنيف النموذج. وهي توضح التنبؤات الصحيحة وغير الصحيحة، مما يسمح لك بفهم نقاط القوة والضعف في النموذج.
مقاييس النظام
يسجل Comet مقاييس النظام للمساعدة في تحديد أي اختناقات في عملية التدريب. وهي تتضمن مقاييس مثل استخدام GPU، واستخدام ذاكرة GPU، واستخدام CPU، واستخدام RAM. هذه ضرورية لمراقبة كفاءة استخدام الموارد أثناء تدريب النموذج.
Link to this sectionتخصيص تسجيل Comet#
يوفر Comet المرونة لتخصيص سلوك التسجيل الخاص به عن طريق تعيين متغيرات البيئة. تسمح لك هذه التكوينات بتكييف Comet وفقاً لاحتياجاتك وتفضيلاتك المحددة. يقرأ رد الاتصال Ultralytics متغيرات البيئة التالية (قم بتعيينها قبل بدء التدريب):
| متغير البيئة | الافتراضي | الوصف |
|---|---|---|
COMET_START_ONLINE | 1 | تشغيل التجربة في الوضع المتصل (1) أو دون اتصال (0). |
COMET_PROJECT_NAME | args.project | مشروع مساحة عمل Comet. يعود إلى وسيطة تدريب YOLO project عند عدم تعيينه. |
COMET_MODEL_NAME | Ultralytics | الاسم المسجل لأصل النموذج المسجل. |
COMET_MAX_IMAGE_PREDICTIONS | 100 | إجمالي عدد تنبؤات صور التحقق لتسجيلها لكل عملية تشغيل. |
COMET_EVAL_BATCH_LOGGING_INTERVAL | 1 | تسجيل تنبؤات الصور كل N دفعة تحقق. |
COMET_EVAL_LOG_IMAGE_PREDICTIONS | true | تبديل تسجيل تنبؤات الصور قيد التشغيل (true) أو إيقاف (false). |
COMET_EVAL_LOG_CONFUSION_MATRIX | false | تسجيل مصفوفة ارتباك في كل دورة تحقق. يتم دائماً تسجيل مصفوفة نهائية في نهاية التدريب. |
COMET_MAX_CONFIDENCE_SCORE | 100.0 | مضاعف مطبق على درجات ثقة الاكتشاف قبل التسجيل (تتوقع واجهة مستخدم Comet مقياس نسبة مئوية). |
COMET_MODE (مهمل) | online | اسم مستعار قديم لـ COMET_START_ONLINE ("online" ↔ 1, "offline" ↔ 0). يصدر تحذير إهمال. |
Link to this sectionتسجيل تنبؤات الصور#
يمكنك التحكم في عدد تنبؤات الصور التي يسجلها Comet أثناء تجاربك. افتراضياً، يسجل Comet 100 تنبؤ صورة من مجموعة التحقق. ومع ذلك، يمكنك تغيير هذا الرقم ليناسب متطلباتك بشكل أفضل. على سبيل المثال، لتسجيل 200 تنبؤ صورة، استخدم الكود التالي:
import os
os.environ["COMET_MAX_IMAGE_PREDICTIONS"] = "200"لتعطيل تسجيل تنبؤ الصور تماماً (على سبيل المثال، لتقليل حجم التحميل على الاتصالات البطيئة)، قم بتعيين COMET_EVAL_LOG_IMAGE_PREDICTIONS إلى "false":
import os
os.environ["COMET_EVAL_LOG_IMAGE_PREDICTIONS"] = "false"Link to this sectionفترة تسجيل الدفعة#
يسمح لك Comet بتحديد عدد المرات التي يتم فيها تسجيل دفعات تنبؤات الصور. يتحكم متغير البيئة COMET_EVAL_BATCH_LOGGING_INTERVAL في هذا التكرار. الإعداد الافتراضي هو 1، والذي يسجل التنبؤات من كل دفعة تحقق. يمكنك ضبط هذه القيمة لتسجيل التنبؤات بفترة زمنية مختلفة. على سبيل المثال، سيؤدي تعيينه إلى 4 إلى تسجيل التنبؤات من كل دفعة رابعة.
import os
os.environ["COMET_EVAL_BATCH_LOGGING_INTERVAL"] = "4"Link to this sectionتعطيل تسجيل مصفوفة الارتباك#
في بعض الحالات، قد لا ترغب في تسجيل مصفوفة الارتباك من مجموعة التحقق الخاصة بك بعد كل دورة. يمكنك تعطيل هذه الميزة عن طريق تعيين متغير البيئة COMET_EVAL_LOG_CONFUSION_MATRIX إلى "false". سيتم تسجيل مصفوفة الارتباك مرة واحدة فقط، بعد اكتمال التدريب.
import os
os.environ["COMET_EVAL_LOG_CONFUSION_MATRIX"] = "false"Link to this sectionالوضع المتصل وغير المتصل#
بشكل افتراضي، يعمل Comet في الوضع المتصل ويبث بيانات التجربة إلى خوادم Comet. إذا كنت بحاجة إلى التدريب دون الوصول إلى الإنترنت، فقم بتعيين COMET_START_ONLINE=0 قبل بدء التدريب. يتم حفظ بيانات التجربة محلياً ويمكن تحميلها لاحقاً باستخدام واجهة سطر أوامر comet upload.
import os
os.environ["COMET_START_ONLINE"] = "0" # 1 (default) = online, 0 = offlineاستخدمت الإصدارات السابقة COMET_MODE="offline" لهذا الغرض. لا يزال المتغير مقبولاً للتوافق مع الإصدارات السابقة ولكنه يصدر تحذير إهمال. استخدم COMET_START_ONLINE للمضي قدماً.
Link to this sectionاسم المشروع#
بشكل افتراضي، يمرر رد اتصال Comet وسيطة تدريب YOLO project إلى Comet (أو None عند عدم تعيين الوسيطة، وفي هذه الحالة يستخدم Comet الافتراضي لمساحة عملك). تجاوز هذا باستخدام COMET_PROJECT_NAME لإرسال جميع التجارب إلى مشروع مساحة عمل Comet محدد بغض النظر عن وسيطة تدريب YOLO:
import os
os.environ["COMET_PROJECT_NAME"] = "my-yolo26-experiments"Link to this sectionاسم أصل النموذج#
يحدد COMET_MODEL_NAME الاسم الذي يسجله Comet لأصل النموذج المسجل (الافتراضي هو Ultralytics). استخدمه لتمييز متغيرات النموذج في مساحة عمل مشتركة:
import os
os.environ["COMET_MODEL_NAME"] = "yolo26n-coco128"Link to this sectionقياس درجة الثقة#
يتم إصدار درجات ثقة الاكتشاف في نطاق [0, 1]، لكن واجهة مستخدم Comet تعرضها على مقياس نسبة مئوية افتراضياً. يضرب رد الاتصال كل درجة في COMET_MAX_CONFIDENCE_SCORE (الافتراضي 100.0) قبل التسجيل. اضبط هذا إذا كنت تفضل الاحتمالات الأولية أو مقياساً مختلفاً:
import os
os.environ["COMET_MAX_CONFIDENCE_SCORE"] = "1.0" # log raw [0, 1] scoresLink to this sectionملخص#
لقد أرشدك هذا الدليل خلال دمج Comet مع Ultralytics YOLO26. من التثبيت إلى التخصيص، تعلمت كيفية تبسيط إدارة التجارب، واكتساب رؤى فورية، وتكييف التسجيل مع احتياجات مشروعك.
استكشف وثائق تكامل Comet الرسمية مع YOLOv8، والتي تنطبق أيضاً على مشاريع YOLO26.
علاوة على ذلك، إذا كنت تتطلع إلى التعمق في التطبيقات العملية لـ YOLO26، وتحديداً لمهام تجزئة الصور، فإن هذا الدليل المفصل حول ضبط YOLO26 باستخدام Comet يقدم رؤى قيمة وتعليمات خطوة بخطوة لتعزيز أداء نموذجك.
بالإضافة إلى ذلك، لاستكشاف تكاملات مثيرة أخرى مع Ultralytics، تحقق من صفحة دليل التكامل، التي توفر ثروة من الموارد والمعلومات.
Link to this sectionالأسئلة الشائعة#
Link to this sectionكيف يمكنني دمج Comet مع Ultralytics YOLO26 للتدريب؟#
لدمج Comet مع Ultralytics YOLO26، اتبع الخطوات التالية:
-
تثبيت الحزم المطلوبة:
pip install ultralytics comet_ml torch torchvision -
إعداد مفتاح واجهة برمجة تطبيقات Comet الخاص بك:
export COMET_API_KEY=YOUR_API_KEY -
تهيئة مشروع Comet الخاص بك في كود Python:
import comet_ml comet_ml.login(project_name="comet-example-yolo26-coco128") -
تدريب نموذج YOLO26 الخاص بك وتسجيل المقاييس:
from ultralytics import YOLO model = YOLO("yolo26n.pt") results = model.train( data="coco8.yaml", project="comet-example-yolo26-coco128", batch=32, save_period=1, save_json=True, epochs=3, )
لمزيد من التعليمات التفصيلية، راجع قسم تكوين Comet.
Link to this sectionما هي فوائد استخدام Comet مع YOLO26؟#
من خلال دمج Ultralytics YOLO26 مع Comet، يمكنك:
- مراقبة الرؤى الفورية: احصل على تعليقات فورية حول نتائج تدريبك، مما يسمح بإجراء تعديلات سريعة.
- تسجيل مقاييس واسعة النطاق: التقط تلقائياً مقاييس أساسية مثل mAP، والخسارة، والمعلمات الفائقة، ونقاط حفظ النموذج.
- تتبع التجارب دون اتصال بالإنترنت: سجل عمليات التدريب الخاصة بك محلياً عند عدم توفر الوصول إلى الإنترنت.
- مقارنة عمليات التدريب المختلفة: استخدم لوحة تحكم Comet التفاعلية لتحليل ومقارنة تجارب متعددة.
من خلال الاستفادة من هذه الميزات، يمكنك تحسين سير عمل تعلم الآلة الخاص بك لتحقيق أداء وقابلية تكرار أفضل. لمزيد من المعلومات، قم بزيارة دليل تكامل Comet.
Link to this sectionكيف يمكنني تخصيص سلوك تسجيل Comet أثناء تدريب YOLO26؟#
يسمح Comet بتخصيص واسع النطاق لسلوك التسجيل الخاص به باستخدام متغيرات البيئة:
-
تغيير عدد تنبؤات الصور المسجلة:
import os os.environ["COMET_MAX_IMAGE_PREDICTIONS"] = "200" -
ضبط فترة تسجيل الدفعة:
import os os.environ["COMET_EVAL_BATCH_LOGGING_INTERVAL"] = "4" -
تعطيل تسجيل مصفوفة الارتباك:
import os os.environ["COMET_EVAL_LOG_CONFUSION_MATRIX"] = "false" -
تعيين اسم مشروع Comet:
import os os.environ["COMET_PROJECT_NAME"] = "my-yolo26-experiments" -
تعيين اسم عنصر النموذج المسجل:
import os os.environ["COMET_MODEL_NAME"] = "yolo26n-coco128"
راجع قسم تخصيص تسجيل Comet للحصول على القائمة الكاملة، بما في ذلك تبديلات توقع الصور، وتحجيم درجة الثقة، ووضع الاتصال/عدم الاتصال.
Link to this sectionكيف يمكنني عرض المقاييس التفصيلية وتصورات تدريب YOLO26 الخاص بي على Comet؟#
بمجرد بدء تدريب نموذج YOLO26 الخاص بك، يمكنك الوصول إلى مجموعة واسعة من المقاييس والتصورات على لوحة تحكم Comet. تشمل الميزات الرئيسية ما يلي:
- لوحات التجارب: عرض عمليات التشغيل المختلفة ومقاييسها، بما في ذلك خسارة قناع التقسيم (segment mask loss)، وخسارة الفئة (class loss)، ومتوسط الدقة (mAP).
- المقاييس: فحص المقاييس بتنسيق جدولي لإجراء تحليل مفصل.
- مصفوفة الارتباك التفاعلية: تقييم دقة التصنيف باستخدام مصفوفة ارتباك تفاعلية.
- مقاييس النظام: مراقبة استخدام GPU و CPU، واستهلاك الذاكرة، ومقاييس النظام الأخرى.
للحصول على نظرة عامة مفصلة حول هذه الميزات، قم بزيارة قسم فهم أداء نموذجك باستخدام تصورات Comet.
Link to this sectionهل يمكنني استخدام Comet للتسجيل في وضع عدم الاتصال عند تدريب نماذج YOLO26؟#
نعم. قم بتعيين COMET_START_ONLINE=0 قبل بدء التدريب للتسجيل محلياً:
import os
os.environ["COMET_START_ONLINE"] = "0"يتم حفظ بيانات التجربة على القرص ويمكن تحميلها إلى Comet لاحقاً باستخدام واجهة سطر الأوامر comet upload عندما يكون الاتصال متاحاً. لا يزال متغير COMET_MODE="offline" السابق يعمل ولكنه يصدر تحذيراً بشأن الإيقاف. لمزيد من التفاصيل، راجع قسم وضع الاتصال وعدم الاتصال.