YOLOv5 - YOLOv9: Kapsamlı Teknik Bir Karşılaştırma
Gerçek zamanlı nesne algılama alanındaki evrim, doğruluk ve verimlilikteki hızlı gelişmelerle işaretlenmiştir. Bu yolculuktaki iki önemli kilometre taşı, kullanılabilirlik ve dağıtım için endüstri standardını belirleyen bir model olan Ultralytics YOLOv5 ve derin öğrenme teorisinin sınırlarını zorlayan araştırma odaklı bir mimari olan YOLOv9'dur.
Bu teknik karşılaştırma, geliştiricilerin ve araştırmacıların bilgisayar görüşü projeleri için doğru aracı seçmelerine yardımcı olmak amacıyla mimarilerini, performans metriklerini ve ideal kullanım durumlarını analiz eder.
Ultralytics YOLOv5: Çok Yönlülük için Endüstri Standardı
Yayınlandığından beri, YOLOv5 dünya çapında en popüler vizyon yapay zeka modellerinden biri haline gelmiştir. Ultralytics tarafından geliştirilen bu model, mühendislik mükemmelliğine, kullanım kolaylığına ve gerçek dünya performansına öncelik vermektedir. Sağlam bir ekosistem aracılığıyla sorunsuz bir kullanıcı deneyimi sunarken hız ve doğruluğu dengeler.
Teknik Detaylar:
- Yazarlar: Glenn Jocher
- Kuruluş:Ultralytics
- Tarih: 2020-06-26
- GitHub:https://github.com/ultralytics/yolov5
- Belgeler:https://docs.ultralytics.com/models/yolov5/
Mimari ve Tasarım
YOLOv5, verimli özellik çıkarımı ve toplama için bir CSPDarknet backbone ile birlikte bir PANet neck kullanır. Ankraj tabanlı algılama başlığı, hız için oldukça optimize edilmiştir ve bu da onu çok çeşitli donanımlar için uygun hale getirir. Tamamen akademik modellerin aksine, YOLOv5 dağıtım düşünülerek tasarlanmıştır ve iOS, Android ve uç cihazlar için yerel destek sunar.
Temel Güçlü Yönler
- İyi Yönetilen Ekosistem: YOLOv5, yıllarca süren aktif geliştirmeden yararlanır ve bu da kapsamlı belgeler, topluluk desteği ve Ultralytics HUB gibi araçlarla entegrasyonlarla sonuçlanır.
- Eğitim Verimliliği: Hızlı eğitim süreleri ve transformatör tabanlı mimarilere kıyasla daha düşük bellek gereksinimleri ile bilinir, bu da onu standart tüketici sınıfı GPU'larda erişilebilir kılar.
- Çeşitlilik: Detect işleminin ötesinde, YOLOv5 yerel olarak örnek segmentasyonunu ve görüntü sınıflandırmasını destekleyerek geliştiricilerin tek bir çerçeveyle birden fazla görüntü işleme görevinin üstesinden gelmesini sağlar.
- Dağıtıma Hazır: ONNX, TensorRT, CoreML ve TFLite'a yerleşik dışa aktarma yetenekleriyle, araştırmadan üretime geçiş kolaylaştırılmıştır.
YOLOv5 hakkında daha fazla bilgi edinin
YOLOv9: Maksimum Doğruluk için Mimari Yenilik
2024'te yayınlanan YOLOv9, derin ağlarda bilgi kaybı sorunlarını çözmeye odaklanmaktadır. Verilerin modelde nasıl yayıldığını iyileştirmek için yeni kavramlar sunar ve COCO gibi kıyaslama testlerinde son teknoloji sonuçlar elde eder.
Teknik Detaylar:
- Yazarlar: Chien-Yao Wang, Hong-Yuan Mark Liao
- Kuruluş:Institute of Information Science, Academia Sinica, Taiwan
- Tarih: 2024-02-21
- Arxiv:https://arxiv.org/abs/2402.13616
- GitHub:https://github.com/WongKinYiu/yolov9
- Belgeler:https://docs.ultralytics.com/models/YOLOv9/
Mimari ve Yenilikler
YOLOv9, iki temel mimari gelişmeyi sunar:
- Programlanabilir Gradyan Bilgisi (PGI): Bilgi darboğazı sorununu hafifletmek için tasarlanmış, kayıp fonksiyonu hesaplaması için eksiksiz girdi bilgisinin kullanılabilir olmasını sağlayan bir teknik.
- Genelleştirilmiş Verimli Katman Toplama Ağı (GELAN): Parametre verimliliğini optimize eden, modelin bazı öncüllerinden daha az parametreyle daha yüksek doğruluk elde etmesini sağlayan hafif bir ağ mimarisi.
Temel Güçlü Yönler
- High Accuracy: YOLOv9, özellikle daha büyük konfigürasyonlarında (YOLOv9-E) nesne algılama doğruluğu için etkileyici benchmarklar belirler.
- Parametre Verimliliği: GELAN mimarisi, modelin parametreleri etkili bir şekilde kullanmasını sağlayarak güçlü bir doğruluk-ağırlık oranı sağlar.
- Teorik Gelişme: Derin öğrenmede derin katmanlardaki bilgi korunmasıyla ilgili temel sorunları ele alır.
YOLOv9 hakkında daha fazla bilgi edinin
Performans Karşılaştırması
Bu iki modeli karşılaştırırken, ödünleşme genellikle hız ve mutlak doğruluk arasında yatar. YOLOv9, COCO veri kümesinde daha yüksek mAPval puanları elde ederek PGI ve GELAN'ın etkinliğini gösterir. Ancak, Ultralytics YOLOv5, özellikle optimize edilmiş mimarisinin parladığı CPU'lar ve uç cihazlarda çıkarım hızında zorlu bir rakip olmaya devam ediyor.
Performans Dengesi
YOLOv9 doğruluk tablolarında üst sıralarda yer alırken, YOLOv5 genellikle gerçek zamanlı uygulamalar için daha pratik bir denge sağlar ve standart donanımda önemli ölçüde daha hızlı çıkarım hızları (ms) sunarken sağlam algılama yeteneklerini korur.
| Model | boyut (piksel) | mAPval 50-95 | Hız CPU ONNX (ms) | Hız T4 TensorRT10 (ms) | parametreler (M) | FLOP'lar (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 |
Eğitim ve Kaynaklar
Geliştiriciler için eğitim verimliliği genellikle çıkarım hızı kadar önemlidir. Ultralytics YOLOv5, "eğit ve git" basitliğiyle bilinir. Özellikle transformatör tabanlı modeller (örneğin RT-DETR) ile karşılaştırıldığında, eğitim sırasında genellikle daha yeni, daha karmaşık mimarilerden daha az bellek gerektirir. Giriş için bu düşük engel, kullanıcıların mütevazı donanım kurulumlarında özel modelleri eğitmesine olanak tanır.
YOLOv9, parametrelerde verimli olmasına rağmen, çıkarım sırasında kaldırılan ancak eğitim sırasında ek yük getiren PGI için kullanılan yardımcı dalların karmaşıklığı nedeniyle eğitilmesi daha kaynak yoğun olabilir.
Kod Örneği: Birleştirilmiş Arayüz
Ultralytics ekosisteminin en büyük avantajlarından biri, birleşik Python API'sidir. Tek bir kod satırıyla YOLOv5 ve YOLOv9 arasında geçiş yapabilir, bu da her ikisini de belirli veri kümenizde karşılaştırmayı inanılmaz derecede kolaylaştırır.
from ultralytics import YOLO
# Load an Ultralytics YOLOv5 model (pre-trained on COCO)
model_v5 = YOLO("yolov5su.pt")
# Train the model on your custom data
results_v5 = model_v5.train(data="coco8.yaml", epochs=100, imgsz=640)
# Load a YOLOv9 model for comparison
model_v9 = YOLO("yolov9c.pt")
# Train YOLOv9 using the exact same API
results_v9 = model_v9.train(data="coco8.yaml", epochs=100, imgsz=640)
İdeal Kullanım Senaryoları
Bu modeller arasında seçim yapmak, proje önceliklerinize bağlıdır:
Ne Zaman Ultralytics YOLOv5 Seçmeli
- Uç Nokta Dağıtımı: Her milisaniyelik gecikmenin önemli olduğu Raspberry Pi, mobil uygulamalar ve gömülü sistemler için idealdir.
- Hızlı Prototipleme: Kullanım kolaylığı, kapsamlı eğitimler ve topluluk desteği inanılmaz derecede hızlı geliştirme döngülerine olanak tanır.
- Çoklu Görev Gereksinimleri: Projeniz algılamanın yanı sıra segmentasyon veya sınıflandırma gerektiriyorsa, YOLOv5 birleşik bir çözüm sunar.
- Kaynak Kısıtlamaları: Eğitim için sınırlı GPU belleğine sahip projeler, YOLOv5'in verimliliğinden yararlanacaktır.
Ne Zaman YOLOv9 Seçmeli
- Maksimum Doğruluk: Bir tespiti kaçırmanın maliyetli olduğu tıbbi görüntüleme veya yüksek hassasiyetli endüstriyel inceleme gibi uygulamalar için kritiktir.
- Akademik Araştırma: Gradyan bilgi akışı ve ağ mimarisi tasarımındaki en son gelişmeleri araştıran araştırmacılar için mükemmeldir.
- Güçlü Donanım: Tam potansiyelinden yararlanmak için eğitim ve çıkarım için bol miktarda hesaplama kaynağı mevcut olduğunda en iyi şekilde kullanılır.
Sonuç
Her iki model de bilgisayar görüşü alanında mükemmelliği temsil ediyor. Ultralytics YOLOv5, hız, güvenilirlik ve ekosistem desteğinin rakipsiz bir kombinasyonunu sunarak çoğu geliştirici için pragmatik bir seçim olmaya devam ediyor. Gerçek dünya dağıtımı için savaşta test edilmiş bir araçtır. Öte yandan YOLOv9, mimari verimliliğin geleceğine bir bakış sunarak, ihtiyacı olanlar için en üst düzeyde doğruluk sağlıyor.
En son performansı ve çok yönlülüğü arayanlar için, YOLOv5 ve YOLOv8'in güçlü yönleri üzerine inşa edilmiş, tüm metriklerde en son sonuçları sunan YOLO11'i de keşfetmenizi öneririz.
Diğer Modelleri İnceleyin
Daha fazla keşfetmekle ilgileniyorsanız, Ultralytics ekosistemindeki bu ilgili modellere göz atın:
- YOLO11: Üstün performans ve çok yönlülük sunan en son SOTA modeli.
- YOLOv8: Detect, segmentasyon, poz ve OBB'yi destekleyen güçlü bir anchor-free model.
- RT-DETR: Yüksek doğruluklu uygulamalar için gerçek zamanlı, dönüştürücü tabanlı bir dedektör.