Google Cloud Platform (GCP) Deep Learning VM üzerinde YOLOv5 Dağıtımında Uzmanlaşma
Yapay zeka (AI) ve makine öğrenimi (ML) yolculuğuna çıkmak, özellikle bir bulut bilişim platformunun gücünden ve esnekliğinden yararlandığınızda heyecan verici olabilir. Google Cloud Platform (GCP), makine öğrenimi meraklıları ve profesyoneller için özel olarak tasarlanmış güçlü araçlar sunar. Bu araçlardan biri, veri bilimi ve ML görevleri için önceden yapılandırılmış olan Deep Learning VM'dir. Bu eğitimde, bir GCP Deep Learning VM üzerinde Ultralytics YOLOv5 kurulum sürecinde yol alacağız. İster ML'de ilk adımlarınızı atıyor olun, ister deneyimli bir uygulayıcı olun, bu kılavuz YOLOv5 tarafından desteklenen nesne algılama modellerini uygulamak için net bir yol sağlar.
🆓 Ayrıca, yeni bir GCP kullanıcısıysanız, projelerinize başlamanız için 300 ABD Doları tutarında ücretsiz kredi teklifiyle şanslısınız.
GCP'ye ek olarak, YOLOv5 için erişilebilir diğer hızlı başlangıç seçeneklerini keşfedin, örneğin Google Colab Not Defteri tarayıcı tabanlı bir deneyim için veya ölçeklenebilirliği için Amazon AWS. Ayrıca, konteyner meraklıları, adresinde bulunan resmi Docker imajımızı kullanabilirler. Docker Hub
kapsüllenmiş bir ortam için, şunları izleyerek: Docker Hızlı Başlangıç Kılavuzu.
Adım 1: Derin Öğrenme VM'nizi Oluşturun ve Yapılandırın
Derin öğrenme için optimize edilmiş bir sanal makine oluşturarak başlayalım:
- GCP pazar yerine gidin ve Derin Öğrenme VM'sini seçin.
- Bir n1-standard-8 örneği seçin; birçok ML görevi için uygun olan 8 vCPU ve 30 GB bellek dengesi sunar.
- Bir GPU seçin. Seçiminiz iş yükünüze bağlıdır; temel bir T4 GPU bile model eğitimini önemli ölçüde hızlandıracaktır.
- Sorunsuz bir kurulum için 'NVIDIA GPU sürücüsünü ilk başlangıçta otomatik olarak yükle?' kutusunu işaretleyin.
- Giriş/Çıkış darboğazlarını önlemek için 300 GB SSD Kalıcı Disk tahsis edin.
- 'Dağıt'a tıklayın ve GCP'nin özel Derin Öğrenme VM'nizi sağlamasına izin verin.
Bu VM, YOLOv5 için gerekli birçok bağımlılığı uygun şekilde bir araya getiren Anaconda Python dağıtımı da dahil olmak üzere temel araçlar ve çerçevelerle önceden yüklenmiş olarak gelir.
Adım 2: Sanal Makineyi YOLOv5 için Hazırlayın
Ortamı kurduktan sonra, YOLOv5'i kuralım ve hazırlayalım:
# 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
Bu kurulum süreci, 3.8.0 veya daha yeni bir Python ortamı sürümüne ve PyTorch 1.8 veya daha üstüne sahip olmanızı sağlar. Komut dosyalarımız, model eğitimine başlama sürecini basitleştirerek, en son YOLOv5 sürümünden otomatik olarak modelleri ve veri kümelerini indirir.
Adım 3: YOLOv5 Modellerinizi Eğitin ve Dağıtın
Kurulum tamamlandığında, GCP VM'nizde YOLOv5 ile eğitim, doğrulama, tahmin ve dışa aktarma yapmaya hazırsınız:
# 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
Sadece birkaç komut kullanarak, YOLOv5, özel ihtiyaçlarınıza göre uyarlanmış özel nesne tespiti modellerini eğitmenizi veya çeşitli görevlerde hızlı sonuçlar için önceden eğitilmiş ağırlıkları kullanmanızı sağlar. Dışa aktardıktan sonra farklı model dağıtım seçeneklerini keşfedin.
Takas Alanı Ayırın (İsteğe Bağlı)
VM'nizin RAM'ini aşabilecek kadar büyük veri kümeleriyle çalışıyorsanız, bellek hatalarını önlemek için takas alanı eklemeyi düşünebilirsiniz:
# 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
Özel Veri Kümelerini Eğitme
GCP içinde özel veri kümeniz üzerinde YOLOv5'i eğitmek için şu genel adımları izleyin:
- Veri kümenizi YOLOv5 formatına göre hazırlayın (görüntüler ve ilgili etiket dosyaları). Rehberlik için veri kümelerine genel bakışımıza bakın.
- Veri kümenizi GCP VM'nize kullanarak yükleyin
gcloud compute scp
veya web konsolunun SSH özelliği. - Bir veri kümesi yapılandırma YAML dosyası oluşturun (
custom_dataset.yaml
) eğitim ve doğrulama verilerinizin yollarını, sınıf sayısını ve sınıf adlarını belirten. -
Özel veri kümesi YAML dosyanızı kullanarak ve potansiyel olarak önceden eğitilmiş ağırlıklardan başlayarak eğitim sürecini başlatın:
# 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
Veri hazırlama ve özel veri kümeleriyle eğitim hakkında kapsamlı talimatlar için Ultralytics YOLOv5 Eğitim belgelerine başvurun.
Bulut Depolama Alanından Yararlanma
Verimli veri yönetimi için, özellikle büyük veri kümeleri veya çok sayıda deneyle, YOLOv5 iş akışınızı Google Cloud Storage ile entegre edin:
# 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/
Bu yaklaşım, VM örneğinizdeki depolama gereksinimlerini en aza indirerek büyük veri kümelerini ve eğitilmiş modelleri bulutta güvenli ve uygun maliyetli bir şekilde depolamanıza olanak tanır.
Sonuç Düşünceleri
Tebrikler! Artık Ultralytics YOLOv5'in yeteneklerini Google Cloud Platform'un işlem gücüyle birleştirmeye hazırsınız. Bu kurulum, nesne algılama projeleriniz için ölçeklenebilirlik, verimlilik ve çok yönlülük sağlar. İster kişisel keşif, ister akademik araştırma veya endüstriyel çözümler oluşturmak için olsun, bulutta yapay zeka ve makine öğrenimi dünyasına önemli bir adım attınız.
Modellerinizi eğitmek ve yönetmek için kolaylaştırılmış, kodsuz bir deneyim için Ultralytics HUB'ı kullanmayı düşünebilirsiniz.
İlerlemenizi belgelemeyi, canlı Ultralytics topluluğuyla görüşlerinizi paylaşmayı ve işbirliği ve destek için GitHub tartışmaları gibi kaynakları kullanmayı unutmayın. Şimdi, YOLOv5 ve GCP ile yenilikler yapmaya başlayın!
ML becerilerinizi geliştirmeye devam etmek mi istiyorsunuz? Daha fazla eğitim ve içgörü için belgelerimize göz atın ve Ultralytics Blogunu keşfedin. Yapay zeka maceranız devam etsin!