YOLO Vision 2026:

Ultralytics YOLOv5 🚀 على AzureML: دليل البدء السريع#

مرحبًا بك في دليل البدء السريع لـ YOLOv5 من Ultralytics الخاص بـ Microsoft Azure Machine Learning (AzureML)! سيرشدك هذا الدليل خلال إعداد YOLOv5 على مثيل حوسبة AzureML، بدءًا من إنشاء بيئة افتراضية وصولًا إلى تدريب النموذج وتشغيل الاستدلال به.

ما هي Azure؟#

Azure هي منصة Microsoft الشاملة لـ الحوسبة السحابية. وهي توفر مجموعة واسعة من الخدمات، بما في ذلك القدرة الحاسوبية وقواعد البيانات وأدوات التحليلات وإمكانات التعلّم الآلي وحلول الشبكات. تتيح Azure للمؤسسات إنشاء التطبيقات والخدمات ونشرها وإدارتها من خلال مراكز بيانات تديرها Microsoft، مما يسهّل نقل أعباء العمل من البنية التحتية المحلية إلى السحابة.

ما هو تعلّم الآلة من Azure (AzureML)؟#

Azure Machine Learning (AzureML) هي خدمة سحابية متخصصة مصممة لتطوير نماذج التعلّم الآلي وتدريبها ونشرها. وهي توفر بيئة تعاونية تضم أدوات مناسبة لعلماء البيانات والمطوّرين من جميع مستويات المهارة. تشمل الميزات الرئيسية التعلّم الآلي المؤتمت (AutoML)، وواجهة السحب والإفلات لإنشاء النماذج، وSDK قويًا لـ Python يتيح تحكمًا أكثر دقة في دورة حياة ML. وتبسّط AzureML عملية دمج النمذجة التنبؤية في التطبيقات.

المتطلبات الأساسية#

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

إنشاء مثيل حوسبة#

يوفر مثيل الحوسبة في AzureML محطة عمل مُدارة قائمة على السحابة لعلماء البيانات.

  1. انتقل إلى مساحة عمل AzureML الخاصة بك.
  2. من الجزء الأيمن، حدّد Compute.
  3. انتقل إلى علامة التبويب Compute instances وانقر على New.
  4. اضبط المثيل بتحديد موارد CPU أو GPU المناسبة وفقًا لاحتياجاتك من التدريب أو الاستدلال.
Azure ML create compute instance interface

فتح الوحدة الطرفية#

بمجرد تشغيل مثيل الحوسبة، يمكنك الوصول إلى وحدته الطرفية مباشرةً من استوديو AzureML.

  1. انتقل إلى قسم Notebooks في الجزء الأيسر.
  2. ابحث عن مثيل الحوسبة الخاص بك في القائمة المنسدلة العلوية.
  3. انقر على خيار Terminal أسفل مستعرض الملفات لفتح واجهة سطر أوامر لمثيلك.

موضع زر فتح الوحدة الطرفية في Azure ML

إعداد YOLOv5 وتشغيله#

لنُعِد الآن البيئة ونشغّل Ultralytics YOLOv5.

1. إنشاء بيئة افتراضية#

من أفضل الممارسات استخدام بيئة افتراضية لإدارة التبعيات. سنستخدم Conda، المثبّتة مسبقًا على مثيلات حوسبة AzureML. للحصول على دليل مفصل لإعداد Conda، راجع دليل البدء السريع لـ Conda من Ultralytics.

أنشئ بيئة Conda (مثل yolov5env) باستخدام إصدار محدد من Python، ثم فعّلها:

conda create --name yolov5env -y python=3.10 # Create a new Conda environment
conda activate yolov5env                     # Activate the environment
conda install pip -y                         # Ensure pip is installed

2. استنساخ مستودع YOLOv5#

استنسخ مستودع Ultralytics YOLOv5 الرسمي من GitHub باستخدام Git:

git clone https://github.com/ultralytics/yolov5 # Clone the repository
cd yolov5                                       # Navigate into the directory
# Initialize submodules (if any, though YOLOv5 typically doesn't require this step)
# git submodule update --init --recursive

3. تثبيت التبعيات#

ثبّت حزم Python اللازمة المدرجة في الملف requirements.txt. كما نثبّت ONNX لإتاحة إمكانات تصدير النموذج.

pip install -r requirements.txt # Install core dependencies
pip install "onnx>=1.12.0"      # Install ONNX for exporting

4. تنفيذ مهام YOLOv5#

بعد اكتمال الإعداد، يمكنك الآن تدريب نموذج YOLOv5 والتحقق منه وإجراء الاستدلال به وتصديره.

  • درّب النموذج على مجموعة بيانات مثل COCO128. راجع وثائق وضع التدريب لمزيد من التفاصيل.

    # Start training using yolov5s pretrained weights on the COCO128 dataset
    python train.py --data coco128.yaml --weights yolov5s.pt --img 640 --epochs 10 --batch 16
  • تحقّق من أداء النموذج المدرَّب باستخدام مقاييس مثل Precision وRecall وmAP. راجع دليل وضع التحقق للاطلاع على الخيارات.

    # Validate the yolov5s model on the COCO128 validation set
    python val.py --weights yolov5s.pt --data coco128.yaml --img 640
  • شغّل الاستدلال على صور أو مقاطع فيديو جديدة. استكشف وثائق وضع التنبؤ للاطلاع على مصادر الاستدلال المختلفة.

    # Run inference with yolov5s on sample images
    python detect.py --weights yolov5s.pt --source data/images --img 640
  • صدّر النموذج إلى تنسيقات مختلفة مثل ONNX وTensorRT أو CoreML لنشره. راجع دليل وضع التصدير وصفحة تكامل ONNX.

    # Export yolov5s to ONNX format
    python export.py --weights yolov5s.pt --include onnx --img 640

استخدام دفتر ملاحظات#

إذا كنت تفضّل تجربة تفاعلية، فيمكنك تشغيل هذه الأوامر داخل دفتر ملاحظات AzureML. ستحتاج إلى إنشاء نواة IPython مخصصة مرتبطة ببيئة Conda الخاصة بك.

إنشاء نواة IPython جديدة#

شغّل الأوامر التالية في الوحدة الطرفية لمثيل الحوسبة الخاص بك:

# Ensure your Conda environment is active
# conda activate yolov5env

# Install ipykernel if not already present
conda install ipykernel -y

# Create a new kernel linked to your environment
python -m ipykernel install --user --name yolov5env --display-name "Python (yolov5env)"

بعد إنشاء النواة، حدّث متصفحك. عند فتح ملف دفتر ملاحظات .ipynb أو إنشائه، حدّد نواتك الجديدة ("Python (yolov5env)") من القائمة المنسدلة للنواة في الجزء العلوي الأيمن.

تشغيل الأوامر في خلايا دفتر الملاحظات#

  • خلايا Python: ستُنفَّذ التعليمات البرمجية في خلايا Python تلقائيًا باستخدام نواة yolov5env المحددة.

  • خلايا Bash: لتشغيل أوامر الصَدَفة، استخدم الأمر السحري %%bash في بداية الخلية. تذكّر تفعيل بيئة Conda داخل كل خلية bash، إذ لا ترث هذه الخلايا تلقائيًا سياق بيئة نواة دفتر الملاحظات.

    %%bash
    source activate yolov5env # Activate environment within the cell
    
    # Example: Run validation using the activated environment
    python val.py --weights yolov5s.pt --data coco128.yaml --img 640

تهانينا! لقد أعددت وشغّلت Ultralytics YOLOv5 بنجاح على AzureML. ولمزيد من الاستكشاف، يمكنك الاطلاع على تكاملات Ultralytics الأخرى أو وثائق YOLOv5 التفصيلية. وقد تجد أيضًا وثائق AzureML مفيدة للسيناريوهات المتقدمة، مثل التدريب الموزّع أو نشر النموذج كنقطة نهاية.

التعليقات