انتقل إلى المحتوى

تعزيز YOLOv8 تتبع التجربة والتصور مع Weights & Biases

نماذج الكشف عن الكائنات مثل Ultralytics YOLOv8 أصبحت جزءا لا يتجزأ من العديد من تطبيقات رؤية الكمبيوتر. ومع ذلك ، فإن تدريب وتقييم ونشر هذه النماذج المعقدة يطرح العديد من التحديات. يتطلب تتبع مقاييس التدريب الرئيسية ومقارنة متغيرات النموذج وتحليل سلوك النموذج واكتشاف المشكلات إدارة كبيرة للأجهزة والتجارب.

This guide showcases Ultralytics YOLOv8 integration with Weights & Biases' for enhanced experiment tracking, model-checkpointing, and visualization of model performance. It also includes instructions for setting up the integration, training, fine-tuning, and visualizing results using Weights & Biases' interactive features.

Weights & Biases

Weights & Biases نظره عامه

Weights & Biases هي منصة MLOps متطورة مصممة لتتبع تجارب التعلم الآلي وتصورها وإدارتها. يتميز بالتسجيل التلقائي لمقاييس التدريب من أجل التكرار الكامل للتجربة ، وواجهة مستخدم تفاعلية لتحليل البيانات المبسط ، وأدوات إدارة النموذج الفعالة للنشر عبر بيئات مختلفة.

YOLOv8 التدريب مع Weights & Biases

يمكنك استخدام Weights & Biases لتحقيق الكفاءة والأتمتة ل YOLOv8 عملية التدريب.

تركيب

لتثبيت الحزم المطلوبة ، قم بتشغيل:

تركيب

# Install the required packages for YOLOv8 and Weights & Biases
pip install --upgrade ultralytics==8.0.186 wandb

للحصول على إرشادات مفصلة وأفضل الممارسات المتعلقة بعملية التثبيت ، تأكد من مراجعة YOLOv8 دليل التثبيت. أثناء تثبيت الحزم المطلوبة ل YOLOv8، إذا واجهت أي صعوبات، فاستشر دليل المشكلات الشائعة للحصول على حلول ونصائح.

تكوين Weights & Biases

بعد تثبيت الحزم الضرورية ، فإن الخطوة التالية هي إعداد ملف Weights & Biases وسط. يتضمن ذلك إنشاء ملف Weights & Biases والحصول على مفتاح API الضروري للاتصال السلس بين بيئة التطوير الخاصة بك ومنصة W&B.

ابدأ بتهيئة ملف Weights & Biases البيئة في مساحة العمل الخاصة بك. يمكنك القيام بذلك عن طريق تشغيل الأمر التالي واتباع الإرشادات المطلوبة.

إعداد SDK الأولي

# Initialize your Weights & Biases environment
import wandb
wandb.login()

انتقل إلى Weights & Biases صفحة التفويض لإنشاء مفتاح API واسترداده. استخدم هذا المفتاح لمصادقة بيئتك باستخدام W&B.

إستعمال: تدريب YOLOv8 مع Weights & Biases

قبل الغوص في تعليمات الاستخدام ل YOLOv8 تدريب نموذجي مع Weights & Biases، تأكد من إطلاعك على نطاق YOLOv8 النماذج التي تقدمها Ultralytics. سيساعدك هذا في اختيار النموذج الأنسب لمتطلبات مشروعك.

إستعمال: تدريب YOLOv8 مع Weights & Biases

import wandb
from wandb.integration.ultralytics import add_wandb_callback

from ultralytics import YOLO

# Step 1: Initialize a Weights & Biases run
wandb.init(project="ultralytics", job_type="training")

# Step 2: Define the YOLOv8 Model and Dataset
model_name = "yolov8n"
dataset_name = "coco8.yaml"
model = YOLO(f"{model_name}.pt")

# Step 3: Add W&B Callback for Ultralytics
add_wandb_callback(model, enable_model_checkpointing=True)

# Step 4: Train and Fine-Tune the Model
model.train(project="ultralytics", data=dataset_name, epochs=5, imgsz=640)

# Step 5: Validate the Model
model.val()

# Step 6: Perform Inference and Log Results
model(["path/to/image1", "path/to/image2"])

# Step 7: Finalize the W&B Run
wandb.finish()

فهم الكود

Let's understand the steps showcased in the usage code snippet above.

  • الخطوة 1: تهيئة ملف Weights & Biases تشغيل: ابدأ بتهيئة ملف Weights & Biases تشغيل، مع تحديد اسم المشروع ونوع الوظيفة. سيؤدي هذا التشغيل إلى تتبع وإدارة عمليات التدريب والتحقق من صحة النموذج الخاص بك.

  • الخطوة 2: تحديد YOLOv8 النموذج ومجموعة البيانات: حدد متغير النموذج ومجموعة البيانات التي ترغب في استخدامها. ال YOLO ثم تتم تهيئة النموذج باستخدام ملف النموذج المحدد.

  • الخطوة 3: إضافة Weights & Biases معاودة الاتصال ل Ultralyticsهذه الخطوة حاسمة لأنها تمكن التسجيل التلقائي لمقاييس التدريب ونتائج التحقق من الصحة: Weights & Biases، مما يوفر عرضا تفصيليا لأداء النموذج.

  • الخطوة 4: تدريب النموذج وضبطه: ابدأ تدريب النموذج باستخدام مجموعة البيانات المحددة وعدد العصور وحجم الصورة. تتضمن عملية التدريب تسجيل المقاييس والتنبؤات في نهاية كل حقبة ، مما يوفر رؤية شاملة لتقدم تعلم النموذج.

  • الخطوة 5: التحقق من صحة النموذج: بعد التدريب ، يتم التحقق من صحة النموذج. هذه الخطوة ضرورية لتقييم أداء النموذج على البيانات غير المرئية وضمان قابليتها للتعميم.

  • الخطوة 6: إجراء الاستدلال وتسجيل النتائج: يقوم النموذج بإجراء تنبؤات على صور محددة. يتم تسجيل هذه التنبؤات ، جنبا إلى جنب مع التراكبات والرؤى المرئية ، تلقائيا في جدول W&B للاستكشاف التفاعلي.

  • الخطوة 7: إنهاء تشغيل W&B: تمثل هذه الخطوة نهاية تسجيل البيانات وتحفظ الحالة النهائية لعملية تدريب النموذج والتحقق من صحته في لوحة معلومات W&B.

فهم المخرجات

عند تشغيل مقتطف شفرة الاستخدام أعلاه ، يمكنك توقع المخرجات الرئيسية التالية:

  • إعداد تشغيل جديد بمعرفه الفريد ، مما يشير إلى بدء عملية التدريب.
  • A concise summary of the model's structure, including the number of layers and parameters.
  • تحديثات منتظمة للمقاييس المهمة مثل فقدان الصندوق وفقدان cls وفقدان dfl والدقة والاستدعاء ودرجات mAP خلال كل حقبة تدريب.
  • في نهاية التدريب ، يتم عرض مقاييس مفصلة بما في ذلك سرعة الاستدلال للنموذج ومقاييس الدقة الإجمالية.
  • روابط إلى Weights & Biases لوحة معلومات للتحليل المتعمق وتصور عملية التدريب ، إلى جانب معلومات حول مواقع ملفات السجل المحلية.

عرض Weights & Biases لوحه القياده

بعد تشغيل مقتطف شفرة الاستخدام، يمكنك الوصول إلى Weights & Biases لوحة القيادة (W &B) من خلال الرابط الموجود في الإخراج. توفر لوحة المعلومات هذه عرضا شاملا لعملية تدريب نموذجك باستخدام YOLOv8.

الميزات الرئيسية ل Weights & Biases لوحه القياده

  • Real-Time Metrics Tracking: Observe metrics like loss, accuracy, and validation scores as they evolve during the training, offering immediate insights for model tuning. See how experiments are tracked using Weights & Biases.

  • تحسين المعلمات الفائقة: Weights & Biases يساعد في ضبط المعلمات الهامة مثل معدل التعلم وحجم الدفعة والمزيد ، مما يعزز أداء YOLOv8.

  • التحليل المقارن: تسمح المنصة بإجراء مقارنات جنبا إلى جنب بين عمليات التدريب المختلفة ، وهو أمر ضروري لتقييم تأثير تكوينات النماذج المختلفة.

  • Visualization of Training Progress: Graphical representations of key metrics provide an intuitive understanding of the model's performance across epochs. See how Weights & Biases helps you visualize validation results.

  • مراقبة الموارد: تتبع استخدام وحدة المعالجة المركزية ووحدة معالجة الرسومات والذاكرة لتحسين كفاءة عملية التدريب.

  • إدارة العناصر النموذجية: الوصول إلى نقاط التفتيش النموذجية ومشاركتها، مما يسهل النشر والتعاون بسهولة.

  • Viewing Inference Results with Image Overlay: Visualize the prediction results on images using interactive overlays in Weights & Biases, providing a clear and detailed view of model performance on real-world data. For more detailed information on Weights & Biases' image overlay capabilities, check out this link. See how Weights & Biases' image overlays helps visualize model inferences.

باستخدام هذه الميزات ، يمكنك تتبع وتحليل وتحسين YOLOv8 تدريب النموذج ، وضمان أفضل أداء وكفاءة ممكنة.

ملخص

This guide helped you explore Ultralytics' YOLOv8 integration with Weights & Biases. It illustrates the ability of this integration to efficiently track and visualize model training and prediction results.

لمزيد من التفاصيل حول الاستخدام ، قم بزيارة Weights & Biasesالوثائق الرسمية.

تأكد أيضا من إطلاعك على ملف Ultralytics صفحة دليل التكامل ، لمعرفة المزيد حول عمليات الدمج المثيرة المختلفة.



Created 2023-12-28, Updated 2024-06-20
Authors: ambitious-octopus (1), glenn-jocher (8), IvorZhu331 (1), abirami-vina (1)

التعليقات