إتقان نشر YOLOv5 على جهاز GCP الافتراضي للتعلم العميق

بدء رحلة الذكاء الاصطناعي (AI) وتعلم الآلة (ML) قد يكون أمراً مثيراً، خاصة عند الاستفادة من قوة ومرونة منصة الحوسبة السحابية. توفر منصة Google Cloud Platform (GCP) أدوات قوية مصممة خصيصاً لعشاق ومتخصصي تعلم الآلة. إحدى هذه الأدوات هي Deep Learning VM، المهيأة مسبقاً لمهام علم البيانات وتعلم الآلة. في هذا البرنامج التعليمي، سنتنقل عبر عملية إعداد Ultralytics YOLOv5 على GCP Deep Learning VM. سواء كنت تخطو خطواتك الأولى في تعلم الآلة أو كنت ممارساً متمرساً، يوفر هذا الدليل مساراً واضحاً لتنفيذ نماذج اكتشاف الكائنات المدعومة بواسطة YOLOv5.

🆓 بالإضافة إلى ذلك، إذا كنت مستخدماً جديداً لـ GCP، فأنت محظوظ بعرض رصيد مجاني بقيمة 300 دولار لبدء مشاريعك.

بالإضافة إلى GCP، استكشف خيارات بدء سريعة أخرى متاحة لـ YOLOv5، مثل Google Colab Notebook Open In Colab لتجربة قائمة على المتصفح، أو قابلية التوسع في Amazon AWS. علاوة على ذلك، يمكن لمحبي الحاويات استخدام صورة Docker الرسمية الخاصة بنا والمتاحة على Docker Hub Docker Pulls لبيئة مغلفة، باتباع دليل البدء السريع لـ Docker.

الخطوة 1: إنشاء وتهيئة جهاز Deep Learning VM الخاص بك

لنبدأ بإنشاء جهاز افتراضي محسن لـ التعلم العميق:

  1. انتقل إلى متجر GCP وحدد Deep Learning VM.
  2. اختر نسخة n1-standard-8؛ فهي توفر توازناً بين 8 vCPUs و 30 جيجابايت من الذاكرة، وهو أمر مناسب للعديد من مهام تعلم الآلة.
  3. حدد GPU. يعتمد الاختيار على عبء العمل الخاص بك؛ حتى وحدة معالجة الرسومات T4 الأساسية ستسرع تدريب النموذج بشكل كبير.
  4. حدد المربع الخاص بـ 'تثبيت برنامج تشغيل NVIDIA GPU تلقائياً عند بدء التشغيل لأول مرة؟' للحصول على إعداد سلس.
  5. خصص قرصاً ثابتاً من نوع SSD بسعة 300 جيجابايت لمنع اختناقات الإدخال/الإخراج.
  6. انقر فوق 'نشر' واسمح لـ GCP بتوفير جهاز Deep Learning VM المخصص لك.

يأتي هذا الجهاز الافتراضي محملاً مسبقاً بالأدوات والأطر الأساسية، بما في ذلك توزيعة Anaconda Python، التي تجمع بشكل مريح العديد من التبعيات اللازمة لـ YOLOv5.

رسم توضيحي لمتجر GCP حول إعداد Deep Learning VM

الخطوة 2: إعداد الجهاز الافتراضي لـ YOLOv5

بعد إعداد البيئة، لنقم بتثبيت YOLOv5 وتجهيزه:

# Clone the YOLOv5 repository
git clone https://github.com/ultralytics/yolov5
cd yolov5

# Install dependencies
pip install -r requirements.txt

تضمن عملية الإعداد هذه حصولك على بيئة Python بإصدار 3.8.0 أو أحدث و PyTorch 1.8 أو أحدث. تقوم نصوصنا البرمجية بتنزيل النماذج ومجموعات البيانات تلقائياً من أحدث إصدار لـ YOLOv5، مما يبسط عملية بدء تدريب النموذج.

الخطوة 3: تدريب ونشر نماذج YOLOv5 الخاصة بك

مع اكتمال الإعداد، أنت مستعد لـ التدريب، والتحقق، والتنبؤ، والتصدير باستخدام YOLOv5 على جهاز GCP الافتراضي الخاص بك:

# Train a YOLOv5 model on your dataset (e.g., yolov5s)
python train.py --data coco128.yaml --weights yolov5s.pt --img 640

# Validate the trained model to check Precision, Recall, and mAP
python val.py --weights yolov5s.pt --data coco128.yaml

# Run inference using the trained model on images or videos
python detect.py --weights yolov5s.pt --source path/to/your/images_or_videos

# Export the trained model to various formats like ONNX, CoreML, TFLite for deployment
python export.py --weights yolov5s.pt --include onnx coreml tflite

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

تدريب نموذج YOLOv5 على جهاز GCP الافتراضي

تخصيص مساحة تبديل (اختياري)

إذا كنت تعمل بمجموعات بيانات كبيرة بشكل خاص قد تتجاوز ذاكرة الوصول العشوائي (RAM) الخاصة بجهازك الافتراضي، فكر في إضافة مساحة تبديل لمنع أخطاء الذاكرة:

# Allocate a 64GB swap file
sudo fallocate -l 64G /swapfile

# Set the correct permissions for the swap file
sudo chmod 600 /swapfile

# Set up the Linux swap area
sudo mkswap /swapfile

# Enable the swap file
sudo swapon /swapfile

# Verify the swap space allocation (should show increased swap memory)
free -h

تدريب مجموعات بيانات مخصصة

لتدريب YOLOv5 على مجموعة بياناتك المخصصة داخل GCP، اتبع هذه الخطوات العامة:

  1. قم بإعداد مجموعة بياناتك وفقاً لتنسيق YOLOv5 (الصور وملفات التسميات المقابلة). راجع نظرة عامة على مجموعات البيانات للحصول على إرشادات.

  2. قم بتحميل مجموعة بياناتك إلى جهاز GCP الافتراضي باستخدام gcloud compute scp أو ميزة SSH في وحدة تحكم الويب.

  3. قم بإنشاء ملف YAML لتكوين مجموعة البيانات (custom_dataset.yaml) يحدد مسارات بيانات التدريب والتحقق من الصحة، وعدد الفئات، وأسماء الفئات.

  4. ابدأ عملية التدريب باستخدام YAML الخاص بمجموعة البيانات المخصصة الخاصة بك وربما البدء من أوزان مدربة مسبقاً:

    # Example: Train YOLOv5s on a custom dataset for 100 epochs
    python train.py --img 640 --batch 16 --epochs 100 --data custom_dataset.yaml --weights yolov5s.pt

للحصول على تعليمات شاملة حول إعداد البيانات والتدريب باستخدام مجموعات بيانات مخصصة، راجع وثائق التدريب على Ultralytics YOLOv5.

الاستفادة من التخزين السحابي

لإدارة فعالة للبيانات، خاصة مع مجموعات البيانات الكبيرة أو العديد من التجارب، قم بدمج سير عمل YOLOv5 الخاص بك مع Google Cloud Storage:

# Ensure Google Cloud SDK is installed and initialized
# If not installed: curl https://sdk.cloud.google.com/ | bash
# Then initialize: gcloud init

# Example: Copy your dataset from a GCS bucket to your VM
gsutil cp -r gs://your-data-bucket/my_dataset ./datasets/

# Example: Copy trained model weights from your VM to a GCS bucket
gsutil cp -r ./runs/train/exp/weights gs://your-models-bucket/yolov5_custom_weights/

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

أفكار ختامية

تهانينا! أنت الآن مجهز لتسخير قدرات Ultralytics YOLOv5 جنباً إلى جنب مع القوة الحسابية لمنصة Google Cloud Platform. يوفر هذا الإعداد القابلية للتوسع والكفاءة والتنوع لمشاريع اكتشاف الكائنات الخاصة بك. سواء كان ذلك للاستكشاف الشخصي أو البحث الأكاديمي أو بناء حلول صناعية، فقد اتخذت خطوة مهمة في عالم الذكاء الاصطناعي وتعلم الآلة على السحابة.

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

تذكر توثيق تقدمك، ومشاركة الأفكار مع مجتمع Ultralytics النابض بالحياة، واستخدام موارد مثل مناقشات GitHub للتعاون والدعم. الآن، انطلق وابتكر باستخدام YOLOv5 و GCP!

هل ترغب في مواصلة تعزيز مهاراتك في تعلم الآلة؟ تعمق في وثائقنا واستكشف مدونة Ultralytics لمزيد من البرامج التعليمية والرؤى. دع مغامرة الذكاء الاصطناعي الخاصة بك تستمر!

التعليقات