Ultralytics YOLO27:

YOLOv5 ve YOLOv9#

Bilgisayarlı görü ve gerçek zamanlı nesne algılama alanları son birkaç yılda dikkate değer ilerlemeler kaydetti. Yerleşik, kapsamlı şekilde test edilmiş 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 etkili iki model olan YOLOv5 ve YOLOv9 arasında kapsamlı bir teknik karşılaştırma sunar.

İster kısıtlı uç cihazlara dağıtım yapıyor, ister yüksek doğruluklu özellik çıkarımı üzerine araştırma yürütüyor, ister karmaşık nesne algılama işlem hatları oluşturuyor ol, bu modellerin mimari inceliklerini, performans metriklerini ve ekosistem farklılıklarını anlaman kritik önem taşır.

Model Genel Bakışları#

Mimari karşılaştırmalara geçmeden önce her modelin kökenlerini ve temel hedeflerini anlamak faydalı olacaktır.

Ultralytics YOLOv5#

Glenn Jocher tarafından geliştirilen ve 26 Haziran 2020'de Ultralytics tarafından yayımlanan YOLOv5, geliştiricilerin görü modelleriyle etkileşim kurma biçiminde bir paradigma değişikliği yarattı. PyTorch çatısını tamamen benimseyen YOLOv5, önceki Darknet tabanlı modellerin karmaşık derleme adımlarını sezgisel ve Python öncelikli bir kullanıcı deneyimiyle değiştirdi.

YOLOv5, Kullanım Kolaylığı ve farklı donanım ortamlarındaki istikrarlı performansıyla tanınır. Yalnızca algılamayı değil, aynı zamanda görüntü sınıflandırmayı ve örnek bölütlemeyi de destekler.

YOLOv9#

Academia Sinica, Tayvan'daki Bilgi Bilimleri 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 büyük ölçüde odaklanı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 temelinde iki önemli teorik yenilik bulunur: Programlanabilir Gradyan Bilgisi (PGI) ve Genelleştirilmiş Verimli Katman Birleştirme Ağı (GELAN). Bu kavramlar, modelin derin ağ katmanları boyunca kritik uzamsal özellikleri korumasına yardımcı olur.

YOLOv9 hakkında daha fazla bilgi edin

Dağıtımlarını Geleceğe Hazırla

YOLOv5 ve YOLOv9 güçlü olsa da yeni yayımlanan YOLO26, hız ve hassasiyet arasında ideal dengeyi sunar. Uçtan uca NMS içermeyen tasarımı ve %43'e kadar daha hızlı CPU çıkarımı sayesinde YOLO26, modern uç bilişim ve üretim dağıtımları için şiddetle önerilir.

Mimari ve Teknik Farklılıklar#

Bu görü modellerinin perde arkasında nasıl çalıştığını anlamak, model dağıtımı stratejilerini optimize etmek için hayati önem taşır.

Özellik Çıkarımı ve Bilgi Koruma#

YOLOv5, geri yayılım sırasında gradyan akışını doğru tutarken hesaplama yükünü etkili biçimde azaltan bir Kısmi Aşamalı Çapraz Ağ (CSPNet) omurgası kullanır. Bu tasarım, geleneksel GPU işlemleri için büyük ölçüde 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'ı kullanıma sunar. Yardımcı tersine çevrilebilir bir dal olan PGI ile birlikte YOLOv9, derin katmanların hassas amaç fonksiyonları için gerekli anlamsal 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, son derece kısıtlı uç donanımlara yönelik dışa aktarma işlem hatlarını zaman zaman zorlaştırabilir.

Bellek Gereksinimleri ve Eğitim Verimliliği#

Eğitim verimliliği söz konusu olduğunda YOLOv5 son derece sağlamlığını korur. İyi bakımı yapı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 toplu iş boyutlarını en üst düzeye çıkarmasına olanak tanır. YOLOv9 mükemmel parametre verimliliği sağlasa da (boyutuna kıyasla yüksek doğruluk), optimize edilmiş çatılar kullanılmadığında eğitim süreci daha fazla kaynak gerektirebilir. Neyse ki YOLOv9'u Ultralytics API'sine entegre etmek, kaynak yönetiminde onu YOLOv5 ile daha yakın bir düzeye getirir.

Performans ve Metrikler#

Bu mimarileri nesnel biçimde değerlendirmek için performanslarını COCO gibi standart veri kümelerinde karşılaştırıyoruz. Aşağıda mAP (Ortalama Ortalama Kesinlik), çıkarım hızı ve parametre sayıları gibi metriklerin ayrıntılı bir dökümü yer alır.

Modelboyut
(piksel)
mAPval
50-95
Hız
CPU ONNX
(ms)
Hız
T4 TensorRT10
(ms)
parametre
(M)
FLOPs
(B)
YOLOv5n64028.073.61.122.67.7
YOLOv5s64037.4120.71.929.124.0
YOLOv5m64045.4233.94.0325.164.2
YOLOv5l64049.0408.46.6153.2135.0
YOLOv5x64050.7763.211.8997.2246.4
YOLOv9t64038.3-2.32.07.7
YOLOv9s64046.8-3.547.126.4
YOLOv9m64051.4-6.4320.076.3
YOLOv9c64053.0-7.1625.3102.1
YOLOv9e64055.6-16.7757.3189.0

Tablonun gösterdiği gibi YOLOv9, eşdeğer seviyelerde daha yüksek ham doğruluk elde ederek daha yeni mimarisini yansıtır. Ancak YOLOv5n, 1,12 ms gibi son derece düşük TensorRT gecikmesini korur ve yüksek hızlı, yerel uç bilişim uygulamalarındaki kalıcı gücünü ortaya koyar.

Eğitim Yöntemleri ve Kullanım Kolaylığı#

Günümüzde bilgisayarlı görüden yararlanmanın gerçek avantajı, araç zincirinin erişilebilirliğinde yatar.

Ultralytics Avantajı#

YOLOv9 gibi modellerin özgün araştırma depoları temel niteliğinde olsa da genellikle karmaşık bağımlılık matrisleri ve hazır şablon betikleriyle birlikte gelir. Ultralytics Python API'si bu karmaşıklığı tamamen soyutlar. Ultralytics ekosistemiyle hem YOLOv5'i hem de YOLOv9'u aynı, birleşik söz dizimiyle eğitebilir, değerlendirebilir ve dışa aktarabilirsin.

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 yalnızca algılamayı değil, poz tahminini ve yönlendirilmiş sınırlayıcı kutuları (OBB) da destekleyerek büyük bir Çok Yönlülük sağlar. Ayrıca Comet ML ve Weights & Biases gibi araçlarla güçlü entegrasyonlar doğrudan eğitim döngüsüne yerleştirilmiştir.

İdeal Kullanım Alanları ve Gerçek Dünya Uygulamaları#

Bu mimariler arasındaki seçim büyük ölçüde donanımının kısıtlarına ve uygulama alanının gerektirdiği hassasiyete bağlıdır.

YOLOv5 Ne Zaman Seçilmeli?#

YOLOv5; kararlılığa, düşük bellek ayak izine ve olağanüstü dışa aktarma uyumluluğuna öncelik veren dağıtımlarda öne çıkan, zorlu testlerden geçmiş bir modeldir.

  • Mobil Dağıtımlar: YOLOv5'i TFLite veya CoreML'e aktararak eski akıllı telefonlarda cihaz üzerinde çıkarım yapmak son derece sorunsuzdur.
  • Eski Uç Donanımlar: Raspberry Pi veya ilk nesil NVIDIA Jetson Nano gibi cihazlarda YOLOv5'in basit evrişimleri, akıllı otopark 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 geniş veri kümesi uyumluluğunun yaygın olması, kavram kanıtını doğrulamanın en hızlı yolunu sunar.

YOLOv9 Ne Zaman Seçilmeli?#

YOLOv9, biraz daha fazla hesaplama yükü gerektirse bile karmaşık ayrıntıların yakalanmasının ve yanlış negatiflerin en aza indirilmesinin kesinlikle kritik olduğu senaryolar için idealdir.

  • Hava ve Uydu Görüntüleri: PGI çatısı, küçük nesnelerin aslına uygunluğunu korumada oldukça başarılıdır; 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ı algılarken GELAN'ın doğru gradyan akışı, duyarlılık açısından gerekli avantajı sağlar.
  • Üst Düzey Perakende Analitiği: Yoğun raflardaki üst üste binmiş ürünleri izlemek, YOLOv9'un üstün özellik koruma yeteneklerinden önemli ölçüde yararlanır.

Ufuklarını Genişlet#

YOLOv5 ve YOLOv9'u karşılaştırmak, mimarilerin 2020'den 2024'e nasıl geliştiğine dair net bir görüş sunsa da yapay zekâ alanı her zamankinden daha hızlı ilerliyor. Performansın mutlak sınırını arayan geliştiricilerin en yeni YOLO26 modellerini incelemesi şiddetle önerilir. YOLO26, geleneksel Maksimum Olmayan Bastırmayı yerel bir Uçtan Uca NMS İçermeyen Tasarım ile değiştirerek ve gelişmiş MuSGD Optimize Ediciyi kullanarak araştırma düzeyindeki doğruluk ile üretim düzeyindeki hız arasındaki boşluğu kapatır. DFL Kaldırma (dışa aktarmayı basitleştirmek ve uç/düşük güçlü cihaz uyumluluğunu iyileştirmek için Dağılım Odaklı Kayıp kaldırılmıştır) sayesinde YOLO26, CPU çıkarımını %43'e kadar hızlandırır ve bu da onu uç bilişim için ideal kılar. Ayrıca ProgLoss + STAL, IoT, robotik ve hava görüntüleri için kritik olan küçük nesne tanımada kayda değer iyileştirmelerle daha iyi kayıp fonksiyonları sağlar.

Bu mimarileri RT-DETR veya yüksek kapasiteye sahip YOLO11 gibi diğer son teknoloji modellerle karşılaştırmak da ilgini çekebilir. Birleşik Ultralytics çatısını kullanmak, hangi modeli seçersen seç geliştirme işlem hattının temiz, verimli ve ölçeklenmeye hazır kalmasını sağlar.

Yorumlar