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

متقدم YOLOv8 تتبع التجربة باستخدام DVCLive

يعد تتبع التجربة في التعلم الآلي أمرا بالغ الأهمية لتطوير النموذج وتقييمه. يتضمن تسجيل وتحليل مختلف المعلمات والمقاييس والنتائج من العديد من عمليات التدريب. هذه العملية ضرورية لفهم أداء النموذج واتخاذ قرارات تعتمد على البيانات لتحسين النماذج وتحسينها.

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

دي في كليفي

نظرة عامة على DVCLive

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

YOLOv8 التدريب مع DVCLive

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

تركيب

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

تركيب

# Install the required packages for YOLOv8 and DVCLive
pip install ultralytics dvclive

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

تكوين DVCLive

بمجرد تثبيت الحزم الضرورية ، فإن الخطوة التالية هي إعداد بيئتك وتكوينها باستخدام بيانات الاعتماد اللازمة. يضمن هذا الإعداد التكامل السلس ل DVCLive في سير عملك الحالي.

ابدأ بتهيئة مستودع Git ، حيث يلعب Git دورا مهما في التحكم في الإصدار لكل من التعليمات البرمجية وتكوينات DVCLive.

إعداد البيئة الأولية

# Initialize a Git repository
git init -q

# Configure Git with your details
git config --local user.email "you@example.com"
git config --local user.name "Your Name"

# Initialize DVCLive in your project
dvc init -q

# Commit the DVCLive setup to your Git repository
git commit -m "DVC init"

في هذه الأوامر ، تأكد من استبدال "you@example.com" بعنوان البريد الإلكتروني المرتبط بحساب Git الخاص بك ، و "اسمك" باسم مستخدم حساب Git الخاص بك.

استخدام

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

تدريب YOLOv8 نماذج مع DVCLive

ابدأ بتشغيل YOLOv8 دورات تدريبية. يمكنك استخدام تكوينات نموذج مختلفة ومعلمات تدريب لتناسب احتياجات مشروعك. على سبيل المثال:

# Example training commands for YOLOv8 with varying configurations
yolo train model=yolov8n.pt data=coco8.yaml epochs=5 imgsz=512
yolo train model=yolov8n.pt data=coco8.yaml epochs=5 imgsz=640

اضبط النموذج والبيانات والعهود ومعلمات imgsz وفقا لمتطلباتك الخاصة. للحصول على فهم مفصل لعملية التدريب النموذجية وأفضل الممارسات ، راجع YOLOv8 دليل التدريب النموذجي.

مراقبة التجارب مع DVCLive

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

تحليل النتائج

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

لبدء التحليل ، يمكنك استخراج بيانات التجربة باستخدام واجهة برمجة تطبيقات DVC ومعالجتها باستخدام Pandas لتسهيل التعامل والتصور:

import dvc.api
import pandas as pd

# Define the columns of interest
columns = ["Experiment", "epochs", "imgsz", "model", "metrics.mAP50-95(B)"]

# Retrieve experiment data
df = pd.DataFrame(dvc.api.exp_show(), columns=columns)

# Clean the data
df.dropna(inplace=True)
df.reset_index(drop=True, inplace=True)

# Display the DataFrame
print(df)

يوفر إخراج مقتطف الشفرة أعلاه عرضا جدوليا واضحا للتجارب المختلفة التي أجريت باستخدام YOLOv8 نماذج. يمثل كل صف دورة تدريب مختلفة ، مع تفصيل اسم التجربة ، وعدد الحقب ، وحجم الصورة (imgsz) ، والنموذج المحدد المستخدم ، ومقياس mAP50-95 (B). هذا المقياس ضروري لتقييم دقة النموذج ، حيث تشير القيم الأعلى إلى أداء أفضل.

تصور النتائج باستخدام Plotly

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

from plotly.express import parallel_coordinates

# Create a parallel coordinates plot
fig = parallel_coordinates(df, columns, color="metrics.mAP50-95(B)")

# Display the plot
fig.show()

يؤدي إخراج مقتطف الشفرة أعلاه إلى إنشاء مخطط يمثل بصريا العلاقات بين الحقب وحجم الصورة ونوع النموذج ودرجات mAP50-95 (B) المقابلة لها، مما يتيح لك تحديد المؤشرات والأنماط في بيانات تجربتك.

توليد تصورات مقارنة باستخدام DVC

يوفر DVC أمرا مفيدا لإنشاء مخططات مقارنة لتجاربك. يمكن أن يكون هذا مفيدا بشكل خاص لمقارنة أداء النماذج المختلفة خلال جولات التدريب المختلفة.

# Generate DVC comparative plots
dvc plots diff $(dvc exp list --names-only)

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

دفكليف المؤامرات

عرض مؤامرات DVC

إذا كنت تستخدم دفتر ملاحظات Jupyter وتريد عرض مخططات DVC التي تم إنشاؤها ، فيمكنك استخدام وظيفة عرض IPython.

from IPython.display import HTML

# Display the DVC plots as HTML
HTML(filename="./dvc_plots/index.html")

ستعرض هذه التعليمة البرمجية ملف HTML الذي يحتوي على مخططات DVC مباشرة في دفتر Jupyter الخاص بك ، مما يوفر طريقة سهلة ومريحة لتحليل بيانات التجربة المرئية.

اتخاذ قرارات تعتمد على البيانات

استخدم الرؤى المكتسبة من هذه المرئيات لاتخاذ قرارات مستنيرة حول تحسينات النموذج وضبط المعلمات الفائقة والتعديلات الأخرى لتحسين أداء نموذجك.

التكرار على التجارب

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

ملخص

قادك هذا الدليل خلال عملية دمج DVCLive مع Ultralytics' YOLOv8. لقد تعلمت كيفية تسخير قوة DVCLive لمراقبة التجربة التفصيلية والتصور الفعال والتحليل الثاقب في مساعي التعلم الآلي الخاصة بك.

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

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

الأسئلة المتداولة

كيف يمكنني دمج DVCLive مع Ultralytics YOLOv8 لتتبع التجارب؟

إن دمج DVCLive مع Ultralytics YOLOv8 بسيط ومباشر. ابدأ بتثبيت الحزم اللازمة:

تركيب

pip install ultralytics dvclive

بعد ذلك، قم بتهيئة مستودع Git وتهيئة DVCLive في مشروعك:

إعداد البيئة الأولية

git init -q
git config --local user.email "you@example.com"
git config --local user.name "Your Name"
dvc init -q
git commit -m "DVC init"

اتبع دليل التثبيتYOLOv8 الخاص بنا للحصول على إرشادات الإعداد التفصيلية.

لماذا يجب أن أستخدم DVCLive لتتبع تجارب YOLOv8 ؟

يوفر استخدام DVCLive مع YOLOv8 العديد من المزايا، مثل:

  • تسجيل آلي: يسجل DVCLive تلقائيًا تفاصيل التجربة الرئيسية مثل معلمات النموذج والمقاييس.
  • سهولة المقارنة: يسهل مقارنة النتائج عبر عمليات التشغيل المختلفة.
  • أدوات التصور: يستفيد من قدرات التصور المرئي القوي للبيانات في DVCLive لإجراء تحليل متعمق.

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

كيف يمكن لـ DVCLive تحسين تحليل النتائج الخاصة بي في جلسات التدريب YOLOv8 ؟

بعد الانتهاء من جلساتك التدريبية YOLOv8 ، يساعدك DVCLive في تصور النتائج وتحليلها بفعالية. مثال على كود لتحميل وعرض بيانات التجربة:

import dvc.api
import pandas as pd

# Define columns of interest
columns = ["Experiment", "epochs", "imgsz", "model", "metrics.mAP50-95(B)"]

# Retrieve experiment data
df = pd.DataFrame(dvc.api.exp_show(), columns=columns)

# Clean data
df.dropna(inplace=True)
df.reset_index(drop=True, inplace=True)

# Display DataFrame
print(df)

لتصور النتائج بشكل تفاعلي، استخدم مخطط الإحداثيات المتوازية في Plotly:

from plotly.express import parallel_coordinates

fig = parallel_coordinates(df, columns, color="metrics.mAP50-95(B)")
fig.show()

ارجع إلى دليلنا على YOLOv8 التدريب باستخدام DVCLive لمزيد من الأمثلة وأفضل الممارسات.

ما هي خطوات تهيئة بيئتي لتكامل DVCLive و YOLOv8 ؟

لتهيئة بيئتك لتحقيق تكامل سلس بين DVCLive و YOLOv8 ، اتبع الخطوات التالية:

  1. تثبيت الحزم المطلوبة: الاستخدام pip install ultralytics dvclive.
  2. تهيئة مستودع Git: تشغيل git init -q.
  3. إعداد DVCLive: تنفيذ dvc init -q.
  4. الالتزام بـ Git: الاستخدام git commit -m "DVC init".

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

كيف يمكنني تصور نتائج تجربة YOLOv8 باستخدام DVCLive؟

يوفر DVCLive أدوات قوية لتصور نتائج تجارب YOLOv8 . إليك كيفية إنشاء مخططات مقارنة:

إنشاء مخططات مقارنة

dvc plots diff $(dvc exp list --names-only)

لعرض هذه المخططات في دفتر ملاحظات Jupyter، استخدم:

from IPython.display import HTML

# Display plots as HTML
HTML(filename="./dvc_plots/index.html")

تساعد هذه التصورات في تحديد الاتجاهات وتحسين أداء النموذج. راجع دليلنا التفصيلي على YOLOv8 تحليل التجربة للحصول على خطوات وأمثلة شاملة.



تم الإنشاء 2023-11-30، تم التحديث 2024-07-05
المؤلفون: جلين-جوتشر (5)، أبيرامي فينا (1)

التعليقات