تكامل MLflow لـ Ultralytics YOLO
مقدمة
يعد تسجيل التجارب جانبًا مهمًا من جوانب سير عمل التعلم الآلي الذي يتيح تتبع المقاييس والمعلمات والقطع الأثرية المختلفة. وهو يساعد على تعزيز إمكانية تكرار النموذج، وتصحيح المشاكل، وتحسين أداء النموذج. Ultralytics YOLO يوفر الآن برنامج MLflow، المعروف بقدراته على اكتشاف الكائنات في الوقت الحقيقي، التكامل مع MLflow، وهي منصة مفتوحة المصدر لإدارة دورة حياة التعلم الآلي الكاملة.
صفحة التوثيق هذه هي دليل شامل لإعداد واستخدام إمكانيات تسجيل MLflow لمشروعك Ultralytics YOLO .
ما هو MLflow؟
MLflow عبارة عن منصة مفتوحة المصدر تم تطويرها من قبل Databricks لإدارة دورة حياة التعلم الآلي من البداية إلى النهاية. وهي تتضمن أدوات لتتبع التجارب، وتجميع التعليمات البرمجية في عمليات تشغيل قابلة للتكرار، ومشاركة النماذج ونشرها. تم تصميم MLflow للعمل مع أي مكتبة تعلم آلي ولغة برمجة.
الميزات
- تسجيل المقاييس: تسجيل المقاييس في نهاية كل حقبة زمنية وفي نهاية التدريب.
- تسجيل المعلمات: تسجيل جميع المعلمات المستخدمة في التدريب.
- تسجيل القطع الأثرية: تسجيل القطع الأثرية للنموذج، بما في ذلك الأوزان وملفات التكوين، في نهاية التدريب.
الإعداد والمتطلبات الأساسية
تأكد من تثبيت MLflow. إذا لم يكن مثبتًا، فقم بتثبيته باستخدام pip:
تأكد من تمكين تسجيل MLflow في إعدادات Ultralytics . عادةً ما يتم التحكم في ذلك من خلال الإعدادات mflow
المفتاح. انظر إلى الإعدادات للمزيد من المعلومات
تحديث Ultralytics إعدادات MLflow
ضمن بيئة Python ، اتصل ب update
على طريقة settings
كائن لتغيير إعداداتك:
كيفية الاستخدام
الأوامر
-
تعيين اسم المشروع: يمكنك تعيين اسم المشروع عبر متغير بيئة:
أو استخدام
project=<project>
وسيطة عند تدريب نموذج YOLO ، أيyolo train project=my_project
. -
تعيين اسم التشغيل: على غرار تعيين اسم المشروع، يمكنك تعيين اسم التشغيل عبر متغير بيئة:
أو استخدام
name=<name>
وسيطة عند تدريب نموذج YOLO ، أيyolo train project=my_project name=my_name
. -
ابدأ تشغيل خادم MLflow المحلي: لبدء التتبع، استخدم:
سيؤدي ذلك إلى بدء تشغيل خادم محلي على http://127.0.0.1:5000 افتراضيًا وحفظ جميع سجلات mlflow في دليل "run/mlflow". لتحديد URI مختلف، قم بتعيين الدالة
MLFLOW_TRACKING_URI
متغير البيئة. -
إيقاف مثيلات خادم MLflow: لإيقاف جميع مثيلات MLflow قيد التشغيل، قم بتشغيل:
التسجيل
يتم الاهتمام بالتسجيل بواسطة on_pretrain_routine_end
, on_fit_epoch_end
و on_train_end
دوال رد الاتصال. يتم استدعاء هذه الدوال تلقائيًا خلال المراحل المعنية من عملية التدريب، وتتعامل مع تسجيل المعلمات والمقاييس والقطع الأثرية.
أمثلة
-
تسجيل المقاييس المخصصة: يمكنك إضافة مقاييس مخصصة ليتم تسجيلها عن طريق تعديل
trainer.metrics
القاموس قبلon_fit_epoch_end
يسمى. -
عرض التجربة: لعرض السجلات الخاصة بك، انتقل إلى خادم MLflow الخاص بك (عادةً ما يكون http://127.0.0.1:5000) وحدد تجربتك وشغّلها.
-
عرض التشغيل: عمليات التشغيل هي نماذج فردية داخل تجربة. انقر على "تشغيل" لترى تفاصيل التشغيل، بما في ذلك القطع الأثرية المرفوعة وأوزان النماذج.
تعطيل MLflow
لإيقاف تشغيل تسجيل MLflow:
الخاتمة
يوفر تكامل تسجيل MLflow مع Ultralytics YOLO طريقة مبسطة لتتبع تجارب التعلم الآلي الخاصة بك. فهو يمكّنك من مراقبة مقاييس الأداء وإدارة القطع الأثرية بفعالية، وبالتالي المساعدة في تطوير نموذج قوي ونشره. لمزيد من التفاصيل يرجى زيارة الوثائق الرسمية ل MLflow.
الأسئلة الشائعة
كيف يمكنني إعداد تسجيل MLflow مع Ultralytics YOLO ؟
لإعداد تسجيل MLflow باستخدام Ultralytics YOLO ، تحتاج أولاً إلى التأكد من تثبيت MLflow. يمكنك تثبيته باستخدام pip:
بعد ذلك، قم بتمكين تسجيل MLflow في إعدادات Ultralytics . يمكن التحكم في ذلك باستخدام mlflow
المفتاح. لمزيد من المعلومات، راجع دليل الإعدادات.
تحديث Ultralytics إعدادات MLflow
وأخيراً، ابدأ تشغيل خادم MLflow محلي للتتبع:
ما المقاييس والمعلمات التي يمكنني تسجيلها باستخدام MLflow مع Ultralytics YOLO ؟
Ultralytics YOLO مع MLflow يدعم تسجيل المقاييس والمعلمات والقطع الأثرية المختلفة طوال عملية التدريب:
- تسجيل المقاييس: تتبع المقاييس في نهاية كل حقبة وعند اكتمال التدريب.
- تسجيل المعلمات: تسجيل جميع المعلمات المستخدمة في عملية التدريب.
- تسجيل القطع الأثرية: يحفظ القطع الأثرية للنموذج مثل الأوزان وملفات التكوين بعد التدريب.
للحصول على معلومات أكثر تفصيلاً، يرجى زيارة وثائق التتبعUltralytics YOLO .
هل يمكنني تعطيل تسجيل MLflow بمجرد تمكينه؟
نعم، يمكنك تعطيل تسجيل MLflow لـ Ultralytics YOLO عن طريق تحديث الإعدادات. إليك كيفية القيام بذلك باستخدام CLI:
لمزيد من التخصيص وإعادة ضبط الإعدادات، راجع دليل الإعدادات.
كيف يمكنني بدء تشغيل وإيقاف خادم MLflow لتتبع Ultralytics YOLO ؟
لبدء تشغيل خادم MLflow لتتبع تجاربك في Ultralytics YOLO ، استخدم الأمر التالي:
يبدأ هذا الأمر تشغيل خادم محلي على http://127.0.0.1:5000 بشكل افتراضي. إذا كنت بحاجة إلى إيقاف تشغيل مثيلات خادم MLflow، استخدم الأمر التالي bash :
راجع قسم الأوامر لمعرفة المزيد من خيارات الأوامر.
ما هي فوائد دمج MLflow مع Ultralytics YOLO لتتبع التجارب؟
يوفر دمج MLflow مع Ultralytics YOLO العديد من الفوائد لإدارة تجارب التعلم الآلي الخاصة بك:
- تتبع محسّن للتجارب: تتبع ومقارنة التجارب المختلفة ونتائجها بسهولة.
- تحسين قابلية استنساخ النموذج: احرص على أن تكون تجاربك قابلة للتكرار من خلال تسجيل جميع المعلمات والقطع الأثرية.
- مراقبة الأداء: تصور مقاييس الأداء بمرور الوقت لاتخاذ قرارات قائمة على البيانات لتحسين النموذج.
لإلقاء نظرة متعمقة على إعداد MLflow والاستفادة منه مع Ultralytics YOLO ، استكشف وثائق تكامل MLflow لـ Ultralytics YOLO .