AzureML'de Ultralytics YOLOv5 🚀 Hızlı Başlangıç
Microsoft Azure Machine Learning (AzureML) için Ultralytics YOLOv5 hızlı başlangıç kılavuzuna hoş geldin! Bu kılavuz, bir sanal ortam oluşturmaktan modeli eğitmeye ve çıkarım çalıştırmaya kadar her şeyi kapsayarak bir AzureML işlem örneğinde YOLOv5 kurulumu konusunda sana yol gösterecektir.
Azure nedir?
Azure, Microsoft'un kapsamlı bulut bilişim platformudur. İşlem gücü, veritabanları, analiz araçları, makine öğrenimi özellikleri ve ağ çözümleri dahil olmak üzere geniş bir hizmet yelpazesi sunar. Azure, kuruluşların uygulamaları ve hizmetleri Microsoft tarafından yönetilen veri merkezleri aracılığıyla oluşturmasını, dağıtmasını ve yönetmesini sağlayarak iş yüklerinin şirket içi altyapıdan buluta taşınmasını kolaylaştırır.
Azure Machine Learning (AzureML) nedir?
Azure Machine Learning (AzureML), makine öğrenimi modelleri geliştirmek, eğitmek ve dağıtmak için tasarlanmış özel bir bulut hizmetidir. Her seviyeden veri bilimci ve geliştirici için uygun araçlarla iş birliğine dayalı bir ortam sağlar. Temel özellikler arasında otomatik makine öğrenimi (AutoML), model oluşturma için sürükle-bırak arayüzü ve makine öğrenimi yaşam döngüsü üzerinde daha ayrıntılı kontrol için güçlü bir Python SDK yer alır. AzureML, tahminleyici modelleme süreçlerini uygulamalara dahil etme sürecini basitleştirir.
Ön koşullar
Bu kılavuzu takip etmek için aktif bir Azure aboneliğine ve bir AzureML çalışma alanına erişimin olması gerekir. Eğer bir çalışma alanın kurulu değilse, oluşturmak için lütfen resmi Azure belgelerine göz at.
İşlem Örneği Oluştur
AzureML'deki bir işlem örneği, veri bilimciler için yönetilen bulut tabanlı bir iş istasyonu sağlar.
- AzureML çalışma alanına git.
- Sol panelde Compute (İşlem) seçeneğini seç.
- Compute instances (İşlem örnekleri) sekmesine git ve New (Yeni) düğmesine tıkla.
- Eğitim veya çıkarım ihtiyaçlarına göre uygun CPU veya GPU kaynaklarını seçerek örneğini yapılandır.
Terminali Aç
İşlem örneğin çalışmaya başladığında, terminaline doğrudan AzureML stüdyosundan erişebilirsin.
- Sol paneldeki Notebooks bölümüne git.
- Üstteki açılır menüde işlem örneğini bul.
- Örneğine bir komut satırı arayüzü açmak için dosya tarayıcısının altındaki Terminal seçeneğine tıkla.

YOLOv5'i Kur ve Çalıştır
Şimdi ortamı kuralım ve Ultralytics YOLOv5'i çalıştıralım.
Sanal Ortam Oluştur
Bağımlılıkları yönetmek için sanal bir ortam kullanmak en iyi uygulamadır. AzureML işlem örneklerinde önceden yüklü olarak gelen Conda kullanacağız. Ayrıntılı bir Conda kurulum kılavuzu için Ultralytics Conda Hızlı Başlangıç Kılavuzu bölümüne bak.
Belirli bir Python sürümüyle bir Conda ortamı (örneğin yolov5env) oluştur ve etkinleştir:
conda create --name yolov5env -y python=3.10 # Create a new Conda environment
conda activate yolov5env # Activate the environment
conda install pip -y # Ensure pip is installedYOLOv5 Deposunu Klonla
Clone the official Ultralytics YOLOv5 repository from GitHub using Git:
git clone https://github.com/ultralytics/yolov5 # Clone the repository
cd yolov5 # Navigate into the directory
# Initialize submodules (if any, though YOLOv5 typically doesn't require this step)
# git submodule update --init --recursiveBağımlılıkları Yükle
requirements.txt dosyasında listelenen gerekli Python paketlerini yükle. Ayrıca model dışa aktarma özellikleri için ONNX yüklüyoruz.
pip install -r requirements.txt # Install core dependencies
pip install "onnx>=1.12.0" # Install ONNX for exportingYOLOv5 Görevlerini Gerçekleştir
Kurulum tamamlandığında, artık YOLOv5 modelini eğitebilir, doğrulayabilir, çıkarım yapabilir ve dışa aktarabilirsin.
-
COCO128 gibi bir veri kümesi üzerinde modeli eğit. Daha fazla ayrıntı için Eğitim Modu belgelerini kontrol et.
# Start training using yolov5s pretrained weights on the COCO128 dataset python train.py --data coco128.yaml --weights yolov5s.pt --img 640 --epochs 10 --batch 16 -
Precision, Recall ve mAP gibi metrikleri kullanarak eğitilmiş modelin performansını doğrula. Seçenekler için Doğrulama Modu kılavuzuna bak.
# Validate the yolov5s model on the COCO128 validation set python val.py --weights yolov5s.pt --data coco128.yaml --img 640 -
Yeni görüntüler veya videolar üzerinde Çıkarım Çalıştır. Çeşitli çıkarım kaynakları için Tahmin Modu belgelerini keşfet.
# Run inference with yolov5s on sample images python detect.py --weights yolov5s.pt --source data/images --img 640 -
Dağıtım için modeli ONNX, TensorRT veya CoreML gibi farklı formatlara Dışa Aktar. Dışa Aktarma Modu kılavuzuna ve ONNX Entegrasyonu sayfasına başvur.
# Export yolov5s to ONNX format python export.py --weights yolov5s.pt --include onnx --img 640
Notebook Kullanımı
İnteraktif bir deneyimi tercih edersen, bu komutları bir AzureML Notebook içinde çalıştırabilirsin. Conda ortamına bağlı özel bir IPython çekirdeği oluşturman gerekecektir.
Yeni Bir IPython Çekirdeği Oluştur
Aşağıdaki komutları işlem örneği terminalinde çalıştır:
# Ensure your Conda environment is active
# conda activate yolov5env
# Install ipykernel if not already present
conda install ipykernel -y
# Create a new kernel linked to your environment
python -m ipykernel install --user --name yolov5env --display-name "Python (yolov5env)"Çekirdeği oluşturduktan sonra tarayıcını yenile. Bir .ipynb notebook dosyası açtığında veya oluşturduğunda, sağ üstteki çekirdek açılır menüsünden yeni çekirdeğini ("Python (yolov5env)") seç.
Notebook Hücrelerinde Komut Çalıştırma
-
Python Hücreleri: Python hücrelerindeki kodlar, seçilen
yolov5envçekirdeği kullanılarak otomatik olarak yürütülecektir. -
Bash Hücreleri: Kabuk komutlarını çalıştırmak için hücrenin başında
%%bashsihirli komutunu kullan. Conda ortamını her bash hücresinde etkinleştirmeyi unutma, çünkü bunlar notebook'un çekirdek ortam bağlamını otomatik olarak devralmazlar.%%bash source activate yolov5env # Activate environment within the cell # Example: Run validation using the activated environment python val.py --weights yolov5s.pt --data coco128.yaml --img 640
Tebrikler! AzureML üzerinde Ultralytics YOLOv5 kurulumunu başarıyla gerçekleştirdin ve çalıştırdın. Daha fazla keşif için diğer Ultralytics Entegrasyonlarını veya ayrıntılı YOLOv5 belgelerini kontrol etmeyi düşün. Ayrıca dağıtık eğitim veya uç nokta olarak model dağıtımı gibi gelişmiş senaryolar için AzureML belgelerini faydalı bulabilirsin.