İçeriğe geç

YOLOv9 - YOLOX Karşılaştırması: Kapsamlı Teknik Bir İnceleme

Doğru nesne algılama mimarisini seçmek, bilgisayar görüşü uygulamalarının verimliliğini, doğruluğunu ve ölçeklenebilirliğini etkileyen kritik bir karardır. Bu kılavuz, 2024'te tanıtılan son teknoloji bir model olan YOLOv9 ile 2021'de piyasaya sürülen yüksek performanslı, ankraj içermeyen bir detectör olan YOLOX arasında ayrıntılı bir teknik karşılaştırma sunmaktadır.

YOLOv9: Derin Ağlarda Bilgi Kaybının Üstesinden Gelme

YOLOv9, verilerin derin sinir ağlarından geçerken bilgi kaybı temel zorluğunu ele almak üzere tasarlanmış, gerçek zamanlı nesne algılamada önemli bir sıçramayı temsil etmektedir.

Yazarlar: Chien-Yao Wang, Hong-Yuan Mark Liao
Kuruluş: Institute of Information Science, Academia Sinica, Tayvan
Tarih: 2024-02-21
Arxiv:arXiv:2402.13616
GitHub:WongKinYiu/yolov9
Belgeler:docs.ultralytics.com/models/yolov9/

Mimari ve İnovasyon

YOLOv9'daki temel yenilik, iki temel bileşende yatmaktadır: Programlanabilir Gradyan Bilgisi (PGI) ve Genelleştirilmiş Verimli Katman Toplama Ağı (GELAN).

  • Programlanabilir Gradyan Bilgisi (PGI): Derin ağlarda, temel girdi verileri genellikle özellik çıkarma işlemi sırasında kaybolur; bu, bilgi darboğazı olarak bilinen bir olgudur. PGI, güvenilir gradyan üretimi sağlayan yardımcı bir denetim sinyali sağlayarak modelin çıkarım maliyetini artırmadan daha etkili özellikler öğrenmesini sağlar.
  • GELAN: Bu mimari tasarım, parametre kullanımını ve hesaplama verimliliğini optimize eder. GELAN, Verimli Katman Toplama Ağları (ELAN) kavramını genelleştirerek, hesaplama bloklarının esnek bir şekilde yığılmasına olanak tanır ve bu da hem hafif hem de hızlı bir modelle sonuçlanır.

Bu yenilikler, YOLOv9'un COCO veri kümesinde üst düzey performans elde etmesini sağlayarak, hem doğruluk hem de parametre verimliliğinde önceki yinelemeleri geride bırakır.

YOLOv9 hakkında daha fazla bilgi edinin

YOLOX: Bağlantısız Standart

YOLOX, akademik araştırma ve endüstriyel uygulama arasındaki boşluğu kapatmak ve YOLO serisinde bağlantısız yaklaşımı popüler hale getirmek için tanıtıldı.

Yazarlar: Zheng Ge, Songtao Liu, Feng Wang, Zeming Li ve Jian Sun
Kuruluş: Megvii
Tarih: 2021-07-18
Arxiv:arXiv:2107.08430
GitHub:Megvii-BaseDetection/YOLOX
Belgeler:yolox.readthedocs.io

Temel Mimari Özellikler

YOLOX, anchor box'ları kaldırarak ve bir ayrılmış head yapısı kullanarak önceki YOLO sürümlerinden ayrılır.

  • Çapa Olmayan Tasarım: Geleneksel dedektörler, sezgisel ayarlama ve kümeleme gerektiren önceden tanımlanmış çapa kutularına dayanır. YOLOX, nesne tespitini bir nokta tahmin problemi olarak ele alarak tasarımı basitleştirir ve çeşitli nesne şekilleri arasında genellemeyi geliştirir.
  • Ayrıştırılmış Kafa (Decoupled Head): Sınıflandırma ve regresyon görevleri ayrı dallarda (kafalarda) işlenir. Bu ayrım, modelin her görev için bağımsız olarak optimize etmesini sağlayarak daha hızlı yakınsamaya ve daha iyi doğruluğa yol açar.
  • SimOTA: Pozitif örnekleri dinamik olarak yer doğruluk nesnelerine atayan ve performansı daha da artıran gelişmiş bir etiket atama stratejisidir.

Performans Analizi: Metrikler ve Kıyaslamalar

Performansı analiz ederken, YOLOv9 daha yeni bir mimari olmanın getirdiği açık bir avantajı tutarlı bir şekilde göstermektedir. PGI ve GELAN'dan yararlanarak YOLOv9, YOLOX'a kıyasla hesaplama yükünü (FLOP'lar) korurken veya azaltırken daha yüksek Ortalama Hassasiyet (mAP) elde eder.

Aşağıdaki tablo, performans farklılıklarını vurgulamaktadır. Özellikle, YOLOv9-C, YOLOX-L'den (%49,7) önemli ölçüde daha yüksek bir mAP (%53,0) elde ederken, parametre sayısı yarıdan azdır (25,3M'ye karşı 54,2M). Bu verimlilik, YOLOv9'u donanım kaynaklarıyla sınırlı ancak yüksek doğruluk gerektiren uygulamalar için üstün bir seçim haline getirir.

Modelboyut
(piksel)
mAPval
50-95
Hız
CPU ONNX
(ms)
Hız
T4 TensorRT10
(ms)
parametreler
(M)
FLOP'lar
(B)
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
YOLOXnano41625.8--0.911.08
YOLOXtiny41632.8--5.066.45
YOLOXs64040.5-2.569.026.8
YOLOXm64046.9-5.4325.373.8
YOLOXl64049.7-9.0454.2155.6
YOLOXx64051.1-16.199.1281.9

Hız ve Verimlilik

YOLOX 2021'de etkileyici hızlar sunarken, YOLOv9 çıtayı daha da yükseltiyor. YOLOv9-T (Tiny) modeli, yalnızca 2,0M parametreyle %38,3 mAP sunarak olağanüstü bir denge sunar ve bu da onu mobil ve gömülü uygulamalar için son derece uygun hale getirir. Buna karşılık, YOLOX-Nano daha küçüktür ancak önemli doğruluktan (%25,8 mAP) ödün verir.

Eğitim Verimliliği

YOLOv9, modern eğitim reçetelerinden ve optimize edilmiş Ultralytics eğitmeninden yararlanır ve bu da genellikle daha hızlı yakınsama ve eğitim sırasında daha düşük bellek kullanımıyla sonuçlanır.

İdeal Kullanım Senaryoları

Bu modeller arasında seçim yapmak, özel proje gereksinimlerinize bağlıdır.

Ne Zaman YOLOv9 Seçmeli

YOLOv9, üstün doğruluk-verimlilik oranı nedeniyle çoğu modern bilgisayarlı görü uygulaması için önerilen seçimdir.

  • Gerçek Zamanlı Uç Yapay Zeka: FLOP'ların önemli olduğu NVIDIA Jetson gibi cihazlara dağıtım. YOLOv9'un hafif mimarisi, verimi en üst düzeye çıkarır.
  • Yüksek Doğruluklu İnceleme: Küçük kusurların tespit edilmesinin kritik olduğu endüstriyel kalite kontrol. YOLOv9-E'nin yüksek mAP'si, en küçük ayrıntıların yakalanmasını sağlar.
  • Otonom Sistemler: Robotik ve dronlar düşük gecikme süresi gerektirir. YOLOv9'un optimize edilmiş grafik yapısı, algılama yeteneklerinden ödün vermeden hızlı çıkarım sağlar.

Ne Zaman YOLOX Düşünülmeli

YOLOX, belirli eski iş akışları veya araştırma karşılaştırmaları için güçlü bir rakip olmaya devam ediyor.

  • Akademik Araştırma: Ayrık başlığı ve ankrajsız tasarımı, onu nesne algılama temellerini incelemek için klasik bir temel haline getirir.
  • Eski Dağıtımlar: Mevcut bir altyapı belirli YOLOX mimarisi için (örneğin, özellikle YOLOX başlıkları için oluşturulmuş özel TensorRT eklentileri) yoğun bir şekilde optimize edilmişse, eski modeli korumak kısa vadede uygun maliyetli olabilir.

Ultralytics'in Avantajı

Ultralytics ekosistemi aracılığıyla YOLOv9'u benimsemek, bağımsız uygulamalara göre belirgin avantajlar sağlar. Ultralytics çerçevesi, tüm Makine Öğrenimi Operasyonları (MLOps) yaşam döngüsünü kolaylaştırmak için tasarlanmıştır.

  • Kullanım Kolaylığı: Ultralytics Python API, modelleri yalnızca birkaç satır kodla yüklemenize, eğitmenize ve dağıtmanıza olanak tanır.
  • İyi Yönetilen Ekosistem: Düzenli güncellemeler, PyTorch, ONNX ve CUDA'nın en son sürümleriyle uyumluluğu sağlar.
  • Çok Yönlülük: YOLOX öncelikli olarak bir nesne algılayıcısı olsa da, Ultralytics çerçevesi poz tahmini, segmentasyon ve sınıflandırma dahil olmak üzere çok çeşitli görevleri destekleyerek aynı kod tabanı içinde mimarileri veya görevleri kolayca değiştirmenize olanak tanır.
  • Bellek Verimliliği: Ultralytics modelleri, karmaşık Transformatör tabanlı modelleri veya optimize edilmemiş eski detectörleri eğitirken yaygın olan Bellek Dışı (OOM) hatalarını önleyerek bellek kullanımı için optimize edilmiştir.

Kod Örneği: YOLOv9 Çalıştırma

Ultralytics paketini kullanarak YOLOv9 ile çıkarım çalıştırmak basittir.

from ultralytics import YOLO

# Load a pre-trained YOLOv9 compact model
model = YOLO("yolov9c.pt")

# Run inference on a local image
results = model("path/to/image.jpg")

# Display the results
results[0].show()

Dışa Aktarma Esnekliği

Ultralytics ile eğitilmiş YOLOv9 modelleri, maksimum dağıtım esnekliği için TensorRT, OpenVINO ve CoreML gibi formatlara kolayca aktarılabilir.

Sonuç ve Öneriler

YOLOX ankrajsız algılamayı geliştirmede çok önemli bir rol oynarken, YOLOv9 mevcut geliştirme için üstün bir seçim olarak duruyor. Yenilikçi PGI ve GELAN mimarisi, önceki derin ağları sınırlayan bilgi darboğazı sorununu çözerek daha az parametreyle daha yüksek doğruluk sağlar.

Performans ve özelliklerdeki mutlak en son gelişmeleri arayan geliştiriciler için, bu kavramları daha da geliştirerek birden fazla görme görevi genelinde daha da yüksek hız ve çok yönlülük sağlayan YOLO11'i de keşfetmenizi öneririz. Ancak, YOLOX ile doğrudan karşılaştırma için YOLOv9, hesaplama yükünü azaltırken detect güvenilirliğini artıran zorlayıcı bir yükseltme yolu sunar.

Diğer Modelleri İnceleyin

Ultralytics ekosistemindeki diğer üst düzey modelleri karşılaştırarak bilginizi genişletin:


Yorumlar