YOLOv5 ve YOLOv9: Kapsamlı Bir Teknik Karşılaştırma
Bilgisayarlı görü ve gerçek zamanlı nesne tespiti alanı, son birkaç yılda dikkate değer ilerlemelere sahne oldu. Yerleşik, sahada kendini kanıtlamış modeller ile daha yeni araştırma mimarileri arasında seçim yapmak, makine öğrenimi mühendisleri için yaygın bir zorluktur. Bu kılavuz, YOLO ailesindeki son derece etkili iki model olan YOLOv5 ve YOLOv9 arasında kapsamlı bir teknik karşılaştırma sunmaktadır.
İster kısıtlı uç cihazlara dağıtım yapıyor olun, ister yüksek kaliteli özellik çıkarımı üzerine araştırma yapıyor veya karmaşık nesne tespiti boru hatları oluşturuyor olun, bu modellerin mimari nüanslarını, performans metriklerini ve ekosistem farklılıklarını anlamak çok önemlidir.
Model Genel Bakışları
Mimari karşılaştırmalara dalmadan önce, her bir modelin kökenlerini ve birincil hedeflerini anlamak faydalıdır.
Ultralytics YOLOv5
Glenn Jocher tarafından geliştirilen ve 26 Haziran 2020'de Ultralytics tarafından yayınlanan YOLOv5, geliştiricilerin vizyon modelleriyle etkileşim biçiminde bir paradigma değişikliği yarattı. PyTorch çerçevesini tamamen benimseyen YOLOv5, önceki Darknet tabanlı modellerin karmaşık derleme adımlarını, sezgisel ve Python öncelikli bir kullanıcı deneyimi ile değiştirdi.
- Yazar: Glenn Jocher
- Organizasyon: Ultralytics
- Tarih: 2020-06-26
- GitHub: YOLOv5 Deposu
- Dokümanlar: YOLOv5 Platformuna Genel Bakış
YOLOv5, Kullanım Kolaylığı ve çeşitli donanım ortamlarındaki kararlı performansı ile ünlüdür. Sadece tespiti değil, aynı zamanda görüntü sınıflandırmayı ve örnek segmentasyonunu da destekler.
YOLOv5 hakkında daha fazla bilgi edin
YOLOv9
Tayvan'daki Academia Sinica Bilgi Bilimi Enstitüsü'nden Chien-Yao Wang ve Hong-Yuan Mark Liao tarafından tanıtılan YOLOv9, derin sinir ağlarındaki bilgi darboğazı sorunlarını azaltmak için mimari teoriye yoğun bir şekilde odaklanır.
- Yazarlar: Chien-Yao Wang ve Hong-Yuan Mark Liao
- Organizasyon: Institute of Information Science, Academia Sinica, Tayvan
- Tarih: 2024-02-21
- Arxiv: 2402.13616
- GitHub: YOLOv9 Deposu
- Dokümantasyon: YOLOv9 Dokümantasyonu
YOLOv9'un çekirdeği iki temel teorik yeniliğe dayanır: Programlanabilir Gradyan Bilgisi (PGI) ve Genelleştirilmiş Verimli Katman Birleştirme Ağı (GELAN). Bu kavramlar, modelin kritik mekansal özellikleri derin ağ katmanları boyunca korumasına yardımcı olur.
YOLOv9 hakkında daha fazla bilgi edin
YOLOv5 ve YOLOv9 güçlü olsalar da, yeni piyasaya sürülen YOLO26 hız ve hassasiyetin nihai dengesini temsil eder. Uçtan uca NMS içermeyen bir tasarıma sahip olan ve %43'e kadar daha hızlı CPU çıkarımı sunan YOLO26, modern uç bilişim ve üretim dağıtımları için şiddetle tavsiye edilir.
Mimari ve Teknik Farklılıklar
Bu vizyon modellerinin perde arkasında nelerin çalıştığını anlamak, model dağıtımı stratejilerini optimize etmek için hayati önem taşır.
Özellik Çıkarımı ve Bilgi Tutma
YOLOv5, geri yayılım sırasında doğru gradyan akışını korurken hesaplama yükünü etkili bir şekilde azaltan bir Cross Stage Partial Network (CSPNet) omurgası kullanır. Bu tasarım, geleneksel GPU işlemleri için oldukça optimize edilmiştir ve ağır Transformer alternatiflerine kıyasla eğitim sırasında daha düşük bellek gereksinimleri sağlar.
YOLOv9, CSPNet ilkelerini genişleten genel bir mimari olan GELAN'ı tanıtır. Yardımcı bir tersinir dal olan PGI ile birleştiğinde YOLOv9, derin katmanların kesin amaç fonksiyonları için gerekli olan anlamsal verileri kaybetmemesini sağlar. Bu, YOLOv9'un özellikle küçük nesnelerde yüksek doğruluk elde etmesini sağlasa da, karmaşık yardımcı dallanma bazen derinlemesine kısıtlanmış uç donanımlara yönelik dışa aktarma boru hatlarını zorlaştırabilir.
Bellek Gereksinimleri ve Eğitim Verimliliği
Eğitim verimliliği söz konusu olduğunda, YOLOv5 inanılmaz derecede sağlam kalmaya devam eder. İyi bakılan Ultralytics ekosistemi, YOLOv5 modellerinin önemli ölçüde daha az CUDA belleği tüketmesini sağlayarak araştırmacıların tüketici sınıfı GPU'larda yığın boyutlarını maksimize etmelerine olanak tanır. YOLOv9 mükemmel parametre verimliliği (boyutuna göre yüksek doğruluk) elde etse de, optimize edilmiş çerçeveler kullanılmadığında eğitim süreci daha fazla kaynak gerektirebilir. Neyse ki, YOLOv9'u Ultralytics API'ye entegre etmek, onu YOLOv5'in modernleştirilmiş kaynak yönetimi ile aynı seviyeye yaklaştırır.
Performans ve Metrikler
Bu mimarileri objektif olarak değerlendirmek için, performanslarını COCO gibi standart veri kümeleri üzerinde karşılaştırıyoruz. Aşağıda mAP (Ortalama Hassasiyet), çıkarım hızı ve parametre sayıları gibi metriklerin ayrıntılı bir dökümü bulunmaktadır.
| Model | boyut (piksel) | mAPval 50-95 | Hız CPU ONNX (ms) | Hız T4 TensorRT10 (ms) | parametre (M) | FLOPs (B) |
|---|---|---|---|---|---|---|
| YOLOv5n | 640 | 28.0 | 73.6 | 1.12 | 2.6 | 7.7 |
| YOLOv5s | 640 | 37.4 | 120.7 | 1.92 | 9.1 | 24.0 |
| YOLOv5m | 640 | 45.4 | 233.9 | 4.03 | 25.1 | 64.2 |
| YOLOv5l | 640 | 49.0 | 408.4 | 6.61 | 53.2 | 135.0 |
| YOLOv5x | 640 | 50.7 | 763.2 | 11.89 | 97.2 | 246.4 |
| YOLOv9t | 640 | 38.3 | - | 2.3 | 2.0 | 7.7 |
| YOLOv9s | 640 | 46.8 | - | 3.54 | 7.1 | 26.4 |
| YOLOv9m | 640 | 51.4 | - | 6.43 | 20.0 | 76.3 |
| YOLOv9c | 640 | 53.0 | - | 7.16 | 25.3 | 102.1 |
| YOLOv9e | 640 | 55.6 | - | 16.77 | 57.3 | 189.0 |
Tablonun da gösterdiği gibi YOLOv9, daha yeni mimarisini yansıtacak şekilde eşdeğer seviyelerde daha yüksek ham doğruluk elde eder. Bununla birlikte YOLOv5n, 1.12ms'lik inanılmaz derecede düşük bir TensorRT gecikmesini koruyarak yüksek hızlı, yerelleştirilmiş uç bilişim uygulamaları için kalıcı gücünü vurgular.
Eğitim Metodolojileri ve Kullanım Kolaylığı
Bilgisayarlı görü teknolojisinden bugün yararlanmanın gerçek avantajı, araç zincirinin erişilebilirliğinde yatmaktadır.
Ultralytics Avantajı
YOLOv9 gibi modeller için orijinal araştırma depoları temel teşkil etse de, bunlar genellikle karmaşık bağımlılık matrisleri ve hazır betiklerle birlikte gelir. Ultralytics Python API bu karmaşıklığı tamamen ortadan kaldırır. Ultralytics ekosistemi ile hem YOLOv5 hem de YOLOv9'u özdeş ve birleşik bir söz dizimi ile eğitebilir, değerlendirebilir ve dışa aktarabilirsiniz.
from ultralytics import YOLO
# Load a pre-trained YOLOv5 model for fast deployment
model_v5 = YOLO("yolov5s.pt")
# Or leverage a YOLOv9 model for high-fidelity accuracy
model_v9 = YOLO("yolov9c.pt")
# Train seamlessly on custom data with automatic MLflow logging
results = model_v9.train(data="coco8.yaml", epochs=50, imgsz=640)
# Export the trained model to ONNX
model_v9.export(format="onnx")Bu tek API yaklaşımı, seçilen modele bağlı olarak sadece tespiti değil, poz tahmini ve yönlendirilmiş sınırlayıcı kutuları (OBB) da destekleyerek muazzam bir Çok Yönlülük sağlar. Ayrıca, Comet ML ve Weights & Biases gibi araçlarla sağlam entegrasyonlar doğrudan eğitim döngüsüne entegre edilmiştir.
İdeal Kullanım Durumları ve Gerçek Dünya Uygulamaları
Bu mimariler arasında seçim yapmak büyük ölçüde donanımınızın kısıtlamalarına ve uygulama alanınızın gerektirdiği hassasiyete bağlıdır.
Ne Zaman YOLOv5 Seçilmeli
YOLOv5, kararlılığa, düşük bellek ayak izlerine ve aşırı dışa aktarma uyumluluğuna öncelik veren dağıtımlarda parlayan, savaşta test edilmiş bir emektardır.
- Mobil Dağıtımlar: YOLOv5'i, eski akıllı telefonlarda cihaz üzerinde çıkarım yapmak için TFLite veya CoreML'e aktarmak inanılmaz derecede sorunsuzdur.
- Eski Uç Donanımlar: Raspberry Pi veya erken nesil NVIDIA Jetson Nano gibi cihazlar için, YOLOv5'in basit kıvrımları akıllı park yönetimi gibi uygulamalar için tutarlı kare hızları sağlar.
- Hızlı Prototipleme: Topluluk eğitimlerinin, özel önceden eğitilmiş ağırlıkların ve devasa veri kümesi uyumluluğunun kapsamlı mevcudiyeti, onu bir kavram kanıtını doğrulamanın en hızlı yolu haline getirir.
Ne Zaman YOLOv9 Seçilmeli
YOLOv9, biraz daha fazla hesaplama yükü gerektirse bile, karmaşık ayrıntıları yakalamanın ve yanlış negatifleri en aza indirmenin kesinlikle kritik olduğu senaryolar için idealdir.
- Aerial and Satellite Imagery: The PGI framework is highly adept at maintaining the fidelity of small objects, making YOLOv9 excellent for drone-based agricultural monitoring.
- Tıbbi Görüntüleme Tanıları: Yüksek çözünürlüklü taramalarda küçük anomalileri veya lezyonları tespit ederken, GELAN'ın doğru gradyan akışı geri çağırmada gerekli bir avantaj sağlar.
- Üst Düzey Perakende Analitiği: Yoğun raflardaki örtüşen ürünleri takip etmek, YOLOv9'un üstün özellik tutma yeteneklerinden önemli ölçüde yararlanır.
Ufkunuzu Genişletin
YOLOv5 ve YOLOv9'u karşılaştırmak, mimarilerin 2020'den 2024'e nasıl evrimleştiğine dair net bir bakış sunsa da, yapay zeka alanı her zamankinden daha hızlı ilerliyor. Performansın mutlak sınırını arayan geliştiriciler için en son YOLO26 modellerini keşfetmeleri şiddetle tavsiye edilir. Geleneksel NMS'yi yerel bir Uçtan Uca NMS İçermeyen Tasarım ile değiştirerek ve gelişmiş MuSGD Optimize Edici'yi kullanarak, YOLO26 araştırma seviyesindeki doğruluk ile üretim seviyesindeki hız arasındaki boşluğu doldurur. DFL Kaldırma (basitleştirilmiş dışa aktarma ve daha iyi uç/düşük güçlü cihaz uyumluluğu için kaldırılan Distribution Focal Loss) ile YOLO26, %43'e kadar daha hızlı CPU çıkarımı elde ederek onu uç bilişim için ideal hale getirir. Ayrıca, ProgLoss + STAL, IoT, robotik ve hava görüntüleri için kritik olan küçük nesne tanımada belirgin iyileştirmelerle daha iyi kayıp fonksiyonları sağlar.
Bu mimarileri RT-DETR veya son derece yetenekli YOLO11 gibi diğer en son teknoloji modellerle karşılaştırmak da ilginizi çekebilir. Birleşik Ultralytics çerçevesini kullanmak, hangi modeli seçerseniz seçin geliştirme boru hattınızın temiz, verimli ve ölçeklenmeye hazır kalmasını sağlar.