AWS Derin Öğrenme Örneğinde Ultralytics YOLOv5 🚀: Eksiksiz Kılavuzun#
Yüksek performanslı bir derin öğrenme ortamı kurmak, özellikle yeni başlayanlar için göz korkutucu olabilir. Ama endişelenme! 🛠️ Bu kılavuz, Ultralytics YOLOv5'i bir AWS Derin Öğrenme örneğinde çalışır duruma getirmek için adım adım yol gösterir. Amazon Web Services (AWS) gücünden yararlanarak makine öğrenimine (ML) yeni başlayanlar bile hızlı ve uygun maliyetle işe koyulabilir. AWS platformunun ölçeklenebilirliği, platformu hem denemeler hem de üretim ortamına dağıtım için ideal kılar.
YOLOv5 için diğer hızlı başlangıç seçenekleri arasında Google Colab Not Defterimiz , Kaggle ortamları
, GCP Derin Öğrenme Sanal Makinesi ve Docker Hub üzerinden sunulan, önceden oluşturulmuş Docker imajımız
bulunur.
Adım 1: AWS Konsolunda Oturum Açma#
AWS Yönetim Konsolu üzerinden hesap oluşturarak veya oturum açarak başla. Oturum açtıktan sonra sanal sunucularını (örneklerini) yönetebileceğin EC2 hizmet panosuna git.

Adım 2: Bulut Sunucunu Başlat#
EC2 panosunda Örneği Başlat düğmesine tıkla. Bu işlem, ihtiyaçlarına uygun yeni bir sanal sunucu oluşturma sürecini başlatır.

Doğru Amazon Makine Görüntüsünü (AMI) Seçme#
Doğru AMI'yi seçmek çok önemlidir. Seçimin, örneğinin işletim sistemini ve önceden yüklenmiş yazılımlarını belirler. Arama çubuğuna 'Derin Öğrenme' yaz ve en yeni Ubuntu tabanlı Derin Öğrenme AMI'sini seç (farklı bir işletim sistemi için özel gereksinimlerin yoksa). Amazon'un Derin Öğrenme AMI'leri, popüler derin öğrenme çerçeveleri (YOLOv5'in kullandığı PyTorch gibi) ve gerekli GPU sürücüleri önceden yapılandırılmış olarak gelir ve kurulum sürecini önemli ölçüde kolaylaştırır.

Örnek Türünü Seçme#
Derin öğrenme modellerini eğitmek gibi yoğun işler için GPU hızlandırmalı bir örnek türü seçmen önemle tavsiye edilir. GPU'lar, CPU'lara kıyasla model eğitimi için gereken süreyi önemli ölçüde azaltabilir. Örnek boyutunu seçerken bellek kapasitesinin (RAM) modelin ve veri kümen için yeterli olduğundan emin ol.
Not: Modelinin ve veri kümenin boyutu kritik etkenlerdir. ML görevin seçtiğin örneğin sunduğundan daha fazla bellek gerektiriyorsa performans sorunlarını veya hataları önlemek için daha büyük bir örnek türü seçmen gerekir.
Mevcut GPU örnek türlerini EC2 Örnek Türleri sayfasında, özellikle Hızlandırılmış Hesaplama kategorisinde incele.

GPU kullanımını izleme ve optimize etme hakkında ayrıntılı bilgi için AWS'nin GPU İzleme ve Optimizasyon kılavuzuna bak. Maliyetleri İsteğe Bağlı Fiyatlandırma ile karşılaştır ve Spot Örnek Fiyatlandırması ile olası tasarrufları incele.
Örneğini Yapılandırma#
Daha uygun maliyetli bir yaklaşım için Amazon EC2 Spot Örneklerini kullanmayı düşünebilirsin. Spot Örnekleri, kullanılmayan EC2 kapasitesini kullanmana olanak tanır ve genellikle İsteğe Bağlı fiyatlara kıyasla önemli ölçüde indirim sunar. Kesintiye dayanması gereken eğitim işleri için kalıcı bir istek seç ve kesinti davranışını sonlandırma yerine durdur olarak ayarla; böylece EBS birimi ve eğitim çıktıları korunur, kapasite yeniden kullanılabilir olduğunda örnek tekrar başlatılır.

Depolamayı yapılandırmak, etiket eklemek ve güvenlik gruplarını ayarlamak (SSH 22 numaralı bağlantı noktasının IP adresinden erişime açık olduğundan emin ol) için kalan başlatma ayarlarını tamamla; ardından Başlat düğmesine tıklamadan önce ayarlarını gözden geçir. Güvenli SSH erişimi için yeni bir anahtar çifti oluşturman veya mevcut bir anahtar çiftini seçmen de gerekir.
Adım 3: Bulut Sunucuna Bağlan#
Örneğinin durumu 'çalışıyor' olarak göründüğünde EC2 panosundan örneği seç. Bağlantı seçeneklerini görüntülemek için Bağlan düğmesine tıkla. Güvenli bir bağlantı kurmak için yerel terminalinde (macOS/Linux'ta Terminal veya Windows'ta PuTTY/WSL gibi) verilen SSH komutu örneğini kullan. Başlatma sırasında oluşturduğun veya seçtiğin özel anahtar dosyasına (.pem) ihtiyacın olacak.

Adım 4: Ultralytics YOLOv5'i Çalıştırma#
Artık SSH üzerinden bağlandığına göre YOLOv5'i kurup çalıştırabilirsin. Önce resmi YOLOv5 deposunu GitHub'dan klonla ve dizine geç. Ardından gerekli bağımlılıkları pip kullanarak yükle. Python 3.8 veya daha yeni bir Python sürümünü kullanman önerilir. Eğitim veya algılama gibi komutları çalıştırdığında gerekli modeller ve veri kümeleri en son YOLOv5 sürümünden otomatik olarak indirilir.
# Clone the YOLOv5 repository
git clone https://github.com/ultralytics/yolov5
cd yolov5
# Install required packages
pip install -r requirements.txtOrtam hazır olduğunda YOLOv5'i çeşitli görevlerde kullanmaya başlayabilirsin:
# Train a YOLOv5 model on a custom dataset (e.g., coco128.yaml)
python train.py --data coco128.yaml --weights yolov5s.pt --img 640
# Validate the performance (Precision, Recall, mAP) of a trained model (e.g., yolov5s.pt)
python val.py --weights yolov5s.pt --data coco128.yaml --img 640
# Run inference (object detection) on images or videos using a trained model
python detect.py --weights yolov5s.pt --source path/to/your/images_or_videos/ --img 640
# Export the trained model to various formats like ONNX, CoreML, TFLite for deployment
python export.py --weights yolov5s.pt --include onnx coreml tflite --img 640Ayrıntılı kılavuzlar için Özel Verilerle Eğitim ve Modeli Dışa Aktarma öğreticilerine bak.
İsteğe Bağlı Ek İşlem: Takas Belleğini Artırma#
Çok büyük veri kümeleriyle çalışıyorsan veya eğitim sırasında bellek kısıtlamalarıyla karşılaşıyorsan örneğindeki takas belleğini artırmak bazen yardımcı olabilir. Takas alanı, sistemin disk alanını sanal RAM olarak kullanmasını sağlar.
# Allocate a 64GB swap file (adjust size as needed)
sudo fallocate -l 64G /swapfile
# Set correct permissions
sudo chmod 600 /swapfile
# Set up the file as a Linux swap area
sudo mkswap /swapfile
# Enable the swap file
sudo swapon /swapfile
# Verify the swap memory is active
free -hTebrikler! 🎉 AWS Derin Öğrenme örneğini başarıyla kurdun, Ultralytics YOLOv5'i yükledin ve artık nesne algılama görevlerini gerçekleştirmeye hazırsın. İster önceden eğitilmiş modelleri dene ister kendi verilerinle eğitim yap, bu güçlü kurulum bilgisayarlı görü projelerin için ölçeklenebilir bir temel sunar. Herhangi bir sorunla karşılaşırsan kapsamlı AWS belgelerine ve SSS gibi yararlı Ultralytics topluluk kaynaklarına başvur. İyi algılamalar!
Sık Sorulan Sorular#
En yeni Ubuntu tabanlı AWS Derin Öğrenme AMI'sini seç. NVIDIA sürücüleri, CUDA ve PyTorch önceden yüklenmiş olarak gelir; böylece geriye yalnızca depoyu klonlayıp
requirements.txtyüklemek kalır.Hızlandırılmış Hesaplama ailesindeki herhangi bir GPU örneği işini görür; örneğin
g4dn,g5veyap3örnekleri. Yığın boyutun ve görüntü boyutun için yeterli GPU belleği seç ve YOLOv5'in sığabilecek en büyük yığını seçmesini sağlamak için--batch-size -1kullan.Küçük aktarımlar için
scpile.pemanahtarını kullan veya verileri Amazon S3'e yükleyipaws s3 syncile kopyala. Eğitim çıktılarıruns/train/konumuna, ağırlıklar iseruns/train/exp/weights/konumuna kaydedilir.EBS biriminin korunması için kesinti davranışı durdur olarak ayarlanmış kalıcı bir Spot isteği kullan; örnek yeniden başladığında
python train.py --resumeile son kontrol noktasından çalışmaya devam et. İlerlemeni kaybetmeyi göze alamıyorsanlast.ptvebest.ptdosyalarını düzenli olarak S3'e kopyala.