تخطي إلى المحتوى

إتقان نشر YOLOv5 على Google Cloud Platform (GCP) Deep Learning VM

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

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

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

الخطوة 1: إنشاء وتكوين جهاز التعلم العميق الظاهري الخاص بك

لنبدأ بإنشاء آلة افتراضية مُحسَّنة لـ التعلم العميق:

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

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

رسم توضيحي من GCP Marketplace لإعداد جهاز افتراضي للتعلم العميق

الخطوة 2: تجهيز الجهاز الظاهري لـ YOLOv5

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

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

# Navigate into the cloned repository directory
cd yolov5

# Install the required Python packages listed in requirements.txt
pip install -r requirements.txt

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

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

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

# 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 من تدريب نماذج الكشف عن الكائنات المخصصة والمصممة خصيصًا لتلبية احتياجاتك الخاصة أو استخدام الأوزان المدربة مسبقًا للحصول على نتائج سريعة عبر مهام مختلفة. استكشف خيارات نشر النماذج المختلفة بعد التصدير.

صورة لأمر طرفي توضح تدريب النموذج على جهاز GCP Deep Learning VM

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

إذا كنت تعمل مع مجموعات بيانات كبيرة بشكل خاص قد تتجاوز ذاكرة الوصول العشوائي (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 VM باستخدام 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. يوفر هذا الإعداد قابلية التوسع والكفاءة والمرونة لمشاريع الكشف عن الأجسام الخاصة بك. سواء كان ذلك للاستكشاف الشخصي أو البحث الأكاديمي أو بناء حلول صناعية، فقد اتخذت خطوة مهمة في عالم الذكاء الاصطناعي وتعلم الآلة على السحابة.

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

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

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



📅 تم إنشاؤه منذ سنة واحدة ✏️ تم التحديث منذ شهر واحد

تعليقات