YOLOv5 ve YOLOv9: Derinlemesine Teknik Karşılaştırma
Bilgisayar görüşü ve gerçek zamanlı nesne algılama alanı son birkaç yılda dikkate değer ilerlemeler kaydetti. Köklü, sahada kanıtlanmış 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 iki oldukça etkili model olan YOLOv5 ve YOLOv9 arasında kapsamlı bir teknik karşılaştırma sunmaktadır.
Kısıtlı uç cihazlara dağıtım yapıyor, yüksek doğruluklu özellik çıkarımı araştırıyor veya karmaşık nesne algılama 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 Ultralytics tarafından 26 Haziran 2020'de yayınlanan YOLOv5, geliştiricilerin görüntü modelleriyle etkileşim kurma biçiminde bir paradigma değişimi yarattı. PyTorch çerçevesini tamamen benimseyerek, YOLOv5 önceki Darknet tabanlı modellerin karmaşık derleme adımlarını sezgisel, Python öncelikli bir kullanıcı deneyimiyle değiştirdi.
- Yazar: Glenn Jocher
- Kuruluş:Ultralytics
- Tarih: 2020-06-26
- GitHub:YOLOv5 Deposu
- Belgeler:YOLOv5 Platformuna Genel Bakış
YOLOv5, Kullanım Kolaylığı ve farklı donanım ortamlarında istikrarlı performansı ile tanınır. Sadece detect'i değil, aynı zamanda görüntü sınıflandırmayı ve örnek segment'i de destekler.
YOLOv5 hakkında daha fazla bilgi edinin.
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ı hafifletmek için mimari teoriye yoğun bir şekilde odaklanmaktadır.
- Yazarlar: Chien-Yao Wang ve Hong-Yuan Mark Liao
- Kuruluş: Institute of Information Science, Academia Sinica, Taiwan
- Tarih: 2024-02-21
- Arxiv:2402.13616
- GitHub:YOLOv9 Deposu
- Belgeler:YOLOv9 Belgeleri
YOLOv9'un çekirdeği, iki ana teorik yeniliğe dayanır: Programlanabilir Gradyan Bilgisi (PGI) ve Genelleştirilmiş Verimli Katman Toplama Ağı (GELAN). Bu kavramlar, modelin derin ağ katmanları boyunca kritik uzamsal özellikleri korumasına yardımcı olur.
YOLOv9 hakkında daha fazla bilgi edinin.
Dağıtımlarınızı Geleceğe Hazırlayın
YOLOv5 ve YOLOv9 güçlü olsa da, yeni yayınlanan YOLO26, hız ve hassasiyetin nihai dengesini temsil eder. Uçtan uca NMS içermeyen bir tasarıma ve %43'e kadar daha hızlı CPU çıkarımına sahip olan YOLO26, modern kenar bilişim ve üretim dağıtımları için şiddetle tavsiye edilir.
Mimari ve Teknik Farklılıklar
Bu görüntü modellerini temelden neyin güçlendirdiğini anlamak, model dağıtım stratejilerini optimize etmek için hayati öneme sahiptir.
Özellik Çıkarımı ve Bilgi Saklama
YOLOv5, geri yayılım sırasında doğru gradyan akışını korurken hesaplama yükünü etkili bir şekilde azaltan bir Çapraz Aşama Kısmi Ağ (CSPNet) backbone'u kullanır. Bu tasarım, geleneksel GPU işlemleri için yüksek düzeyde optimize edilmiştir ve ağır transformatör alternatiflerine kıyasla eğitim sırasında daha düşük bellek gereksinimleri sağlar.
YOLOv9, CSPNet prensiplerini genişleten genel bir mimari olan GELAN'ı tanıtır. Yardımcı tersine çevrilebilir bir dal olan PGI ile birleştiğinde, YOLOv9 derin katmanların hassas hedef fonksiyonları için gerekli semantik verileri kaybetmemesini sağlar. Bu, YOLOv9'un özellikle daha küçük nesnelerde yüksek doğruluk elde etmesini sağlar; ancak karmaşık yardımcı dallanma, bazen derinlemesine kısıtlı kenar donanımlarına yönelik dışa aktarma süreçlerini 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 kalır. İyi yönetilen 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 toplu iş 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 yoğun olabilir. Neyse ki, YOLOv9'u Ultralytics API'sine entegre etmek, onu YOLOv5'in kolaylaştırılmış kaynak yönetimiyle eşit seviyeye getirir.
Performans ve Metrikler
Bu mimarileri objektif olarak değerlendirmek için, COCO gibi standart veri kümelerindeki performanslarını karşılaştırıyoruz. Aşağıda, mAP (Ortalama Hassasiyet Ortalaması), çı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) | 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 |
Tablonun gösterdiği gibi, YOLOv9 eşdeğer seviyelerde daha yüksek ham doğruluk elde ederek yeni mimarisini yansıtır. Ancak, YOLOv5n inanılmaz derecede düşük 1.12ms'lik TensorRT gecikmesini koruyarak, yüksek hızlı, yerelleştirilmiş kenar bilişim uygulamaları için kalıcı gücünü vurgular.
Eğitim Metodolojileri ve Kullanım Kolaylığı
Günümüzde bilgisayar görüşünden yararlanmanın gerçek avantajı, araç zincirinin erişilebilirliğinde yatmaktadır.
Ultralytics'in Avantajı
YOLOv9 gibi modeller için orijinal araştırma depoları temel olsa da, genellikle karmaşık bağımlılık matrisleri ve hazır komut dosyalarıyla birlikte gelirler. Ultralytics Python API'si bu karmaşıklığı tamamen soyutlar. Ultralytics ekosistemi ile hem YOLOv5 hem de YOLOv9'u aynı, birleşik bir sözdizimi 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 detect'i değil, aynı zamanda duruş 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 dahil 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.
YOLOv5 Ne Zaman Tercih Edilmeli?
YOLOv5, kararlılığı, düşük bellek ayak izlerini ve aşırı dışa aktarma uyumluluğunu önceliklendiren dağıtımlarda öne çıkan, savaş görmüş bir veterandır.
- Mobil Dağıtımlar: YOLOv5'i eski akıllı telefonlarda cihaz içi çıkarım için TFLite veya CoreML'e aktarmak inanılmaz derecede sorunsuzdur.
- Eski Kenar Donanımları: Raspberry Pi veya erken nesil NVIDIA Jetson Nanos gibi cihazlar için, YOLOv5'in basit evrişimleri, 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 büyük veri kümesi uyumluluğunun geniş çapta bulunabilirliği, bir konsept kanıtını doğrulamak için en hızlı yol olmasını sağlar.
YOLOv9 Ne Zaman Tercih Edilmeli?
YOLOv9, karmaşık ayrıntıları yakalamanın ve yanlış negatifleri en aza indirmenin kesinlikle kritik olduğu senaryolar için idealdir, hafifçe daha fazla hesaplama yükü gerektirse bile.
- Hava ve Uydu Görüntüleri: PGI çerçevesi, küçük nesnelerin doğruluğunu korumakta oldukça yeteneklidir, bu da YOLOv9'u drone tabanlı tarımsal izleme için mükemmel kılar.
- Tıbbi Görüntüleme Tanıları: Yüksek çözünürlüklü taramalarda küçük anormallikleri veya lezyonları detect ederken, GELAN'ın doğru gradyan akışı, geri çağırmada gerekli bir avantaj sağlar.
- Üst Düzey Perakende Analitiği: Yoğun raflardaki üst üste binen ürünleri track etmek, YOLOv9'un üstün özellik koruma yeteneklerinden önemli ölçüde faydalanır.
Ufkunuzu Genişletmek
YOLOv5 ve YOLOv9'u karşılaştırmak, mimarilerin 2020'den 2024'e nasıl evrildiğine dair net bir bakış sunarken, yapay zeka alanı her zamankinden daha hızlı ilerliyor. Performansın mutlak sınırını arayan geliştiriciler için en yeni YOLO26 modellerini keşfetmeleri şiddetle tavsiye edilir. Geleneksel Non-Maximum Suppression'ı yerel bir Uçtan Uca NMS-Serbest Tasarım ile değiştirerek ve gelişmiş MuSGD Optimizatörünü kullanarak, YOLO26 araştırma düzeyindeki doğruluk ile üretim düzeyindeki hız arasındaki boşluğu kapatır. DFL Kaldırma (basitleştirilmiş dışa aktarım ve daha iyi kenar/düşük güç tüketimli cihaz uyumluluğu için Distribution Focal Loss kaldırıldı) ile YOLO26, %43'e kadar daha hızlı CPU çıkarımı elde ederek kenar bilişim için ideal hale gelir. Ek olarak, ProgLoss + STAL, IoT, robotik ve hava görüntüleri için kritik olan küçük nesne tanımada önemli iyileştirmelerle geliştirilmiş kayıp fonksiyonları sunar.
Bu mimarileri RT-DETR veya oldukça yetenekli YOLO11 gibi diğer son teknoloji modellerle karşılaştırmak da ilginizi çekebilir. Birleşik Ultralytics çerçevesini kullanmak, hangi modeli seçerseniz seçin, geliştirme hattınızın temiz, verimli ve ölçeklenmeye hazır kalmasını sağlar.