Ultralytics YOLO27: انضم إلى قائمة الانتظار.
ابدأ

إتقان نشر YOLOv5 على آلة Google Cloud Platform (GCP) الافتراضية للتعلم العميق#

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

يمكن لمستخدمي GCP الجدد أيضًا الاستفادة من عرض رصيد مجاني بقيمة 300 دولار للبدء.

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

الخطوة 1: إنشاء الآلة الافتراضية للتعلم العميق وتهيئتها#

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

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

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

رسم توضيحي من سوق GCP لإعداد آلة افتراضية للتعلم العميق

الخطوة 2: تجهيز الآلة الافتراضية لـ YOLOv5#

بعد ذلك، ثبّت YOLOv5 وتبعياته:

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

# Install dependencies
pip install -r requirements.txt

يتطلب YOLOv5 إصدار 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 على آلة 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

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

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

لإدارة البيانات بكفاءة، خصوصًا عند التعامل مع مجموعات بيانات كبيرة أو تجارب عديدة، ادمج سير عمل 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 لتدريب نماذجك وإدارتها دون كتابة التعليمات البرمجية.

للأسئلة والتعاون، انضم إلى نقاشات GitHub.

الأسئلة الشائعة#

  • تكفي آلة n1-standard-8 مزودة بوحدة GPU واحدة من طراز T4 لمعظم عمليات تدريب YOLOv5 والاستدلال. انتقل إلى L4 أو A100 عند استخدام مجموعات بيانات كبيرة أو نماذج أكبر، واحرص دائمًا على تحديد خيار تثبيت برنامج تشغيل NVIDIA تلقائيًا عند بدء التشغيل لأول مرة.

  • أوقف تشغيل الآلة الافتراضية من وحدة تحكم Compute Engine عندما تكون خاملة. ستظل تُحاسب على القرص المتصل، لذا احذف الآلة الافتراضية والقرص بعد انتهاء المشروع ونسخ الأوزان بأمان إلى Cloud Storage.

  • استخدم gcloud compute scp لمجموعات البيانات الصغيرة. أما المجموعات الأكبر، فارفعها إلى حاوية Cloud Storage واسحبها باستخدام gsutil cp -r gs://your-bucket/dataset ./datasets/، إذ تكون هذه الطريقة أسرع بكثير داخل شبكة Google.

  • نعم. تحتوي آلة Deep Learning VM الافتراضية على PyTorch مسبقًا، لذا يضيف pip install ultralytics إمكانات تدريب YOLO26 وتصديره باستخدام CLI yolo.

التعليقات

اطرح سؤالًا، وشارك نتائجك، أو ساعد شخصًا آخر.