YOLOv9 ve EfficientDet: Mimari ve Performansın Teknik Karşılaştırması
Bilgisayar görüşünün gelişen dünyasında, doğru nesne algılama mimarisini seçmek, sistem gecikmesini, doğruluğunu ve dağıtım karmaşıklığını etkileyen kritik bir karardır. Bu kılavuz, 2024 başında tanıtılan son teknoloji bir model olan YOLOv9 ile Google'ın verimli ölçeklendirmesiyle bilinen oldukça etkili bir mimarisi olan EfficientDet arasında ayrıntılı bir teknik karşılaştırma sunmaktadır. Yapısal farklılıklarını, performans metriklerini ve gerçek dünya uygulamaları için uygunluklarını analiz ediyoruz.
Performans Metrikleri Analizi
Aşağıdaki tablo, çeşitli model ölçeklerinin performansını karşılaştırmaktadır. YOLOv9, genellikle eski EfficientDet mimarisine kıyasla modern donanımlarda üstün doğruluk-parametre oranları ve daha hızlı çıkarım hızları sergilemektedir.
| Model | boyut (piksel) | mAPval 50-95 | Hız CPU ONNX (ms) | Hız T4 TensorRT10 (ms) | parametreler (M) | FLOP'lar (B) |
|---|---|---|---|---|---|---|
| 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 |
| EfficientDet-d0 | 640 | 34.6 | 10.2 | 3.92 | 3.9 | 2.54 |
| EfficientDet-d1 | 640 | 40.5 | 13.5 | 7.31 | 6.6 | 6.1 |
| EfficientDet-d2 | 640 | 43.0 | 17.7 | 10.92 | 8.1 | 11.0 |
| EfficientDet-d3 | 640 | 47.5 | 28.0 | 19.59 | 12.0 | 24.9 |
| EfficientDet-d4 | 640 | 49.7 | 42.8 | 33.55 | 20.7 | 55.2 |
| EfficientDet-d5 | 640 | 51.5 | 72.5 | 67.86 | 33.7 | 130.0 |
| EfficientDet-d6 | 640 | 52.6 | 92.8 | 89.29 | 51.9 | 226.0 |
| EfficientDet-d7 | 640 | 53.7 | 122.0 | 128.07 | 51.9 | 325.0 |
Model Genel Bakışları
YOLOv9
Yazarlar: Chien-Yao Wang, Hong-Yuan Mark Liao
Kuruluş: Institute of Information Science, Academia Sinica, Taiwan
Tarih: 2024-02-21
Bağlantılar:Arxiv | GitHub | Docs
YOLOv9, derin ağlardaki "bilgi darboğazı" sorununu ele almak için önemli mimari yenilikler sunmaktadır. Temel katkı, derin katmanların kritik özellik bilgilerini korumasını sağlamak için yardımcı bir denetim dalı aracılığıyla güvenilir gradyanlar üreten Programlanabilir Gradyan Bilgisi (PGI)'dir. Ek olarak, parametre verimliliğini en üst düzeye çıkaran hafif bir mimari olan Genelleştirilmiş Verimli Katman Toplama Ağı (GELAN)'ı kullanır.
YOLOv9 hakkında daha fazla bilgi edinin.
EfficientDet
Yazarlar: Mingxing Tan, Ruoming Pang, Quoc V. Le
Kuruluş:Google Research
Tarih: 2019-11-20
Bağlantılar:Arxiv | GitHub
EfficientDet, AutoML alanında Çift Yönlü Özellik Piramit Ağı (BiFPN)'nı tanıtan öncü bir çalışmaydı. Geleneksel FPN'lerden farklı olarak, BiFPN öğrenilebilir ağırlıklar sunarak kolay çok ölçekli özellik füzyonuna olanak tanır. Model ayrıca, çözünürlüğü, derinliği ve genişliği tek tip olarak ölçeklendiren bir yöntem olan Bileşik Ölçeklendirme'yi kullanarak geniş bir kaynak kısıtlaması yelpazesinde (D0'dan D7'ye kadar) mükemmel performans elde etmesini sağlar.
Mimari Derinlemesine İnceleme
Özellik Birleştirme: GELAN ve BiFPN
Temel farklılaştırıcı, bu modellerin özellikleri nasıl topladığıdır. EfficientDet, FLOP'lar açısından teorik olarak verimli olsa da, bellek yoğun olabilen ve TensorRT gibi belirli donanım hızlandırıcıları için optimize edilmesi daha zor olan karmaşık BiFPN yapısına dayanır.
Buna karşılık, YOLOv9'un GELAN mimarisi, CSPNet ve ELAN'ın en iyi yönlerini birleştirir. Karmaşık füzyon bağlantıları yerine gradyan yolu planlamasına öncelik verir. Bu, sadece parametre açısından daha hafif olmakla kalmayıp, aynı zamanda daha "donanım dostu" olan bir ağla sonuçlanır ve eğitim ile çıkarım sırasında daha yüksek GPU kullanımı sağlar.
Gradyan Akışı ve Bilgi Kaybı
EfficientDet, çok derin bir EfficientNet backbone aracılığıyla standart geri yayılıma dayanır. YOLOv9, derin ağların girdi verisi ayrıntılarını "unutması" sorununu ele alır. PGI aracılığıyla YOLOv9, öğrenme sürecini yönlendiren yardımcı bir tersine çevrilebilir dal sağlar ve çıkarım sırasında bu yardımcı dalları sürdürmenin hesaplama maliyeti olmadan ana dalın sağlam semantik özellikleri yakalamasını garanti eder.
Not: PGI Faydası
Programlanabilir Gradyan Bilgisi (PGI), YOLOv9'un daha az veriyle daha iyi yakınsama elde etmesini sağlayarak, etiketli örneklerin az olabileceği özel veri kümeleri için özellikle etkili olmasını sağlar.
Ekosistem ve Kullanım Kolaylığı
Geliştiriciler için en önemli farklılıklardan biri, bu modelleri çevreleyen ekosistemdir.
EfficientDet, öncelikli olarak TensorFlow ekosistemine dayanmaktadır. Güçlü olsa da, onu kullanmak genellikle karmaşık bağımlılık zincirlerinde gezinmeyi veya sık güncellemelerden yoksun olabilecek eski depolara başvurmayı gerektirir.
Ultralytics ekosistemine entegre edilen YOLOv9, akıcı bir deneyim sunar. Geliştiriciler, modeli basit bir Python API aracılığıyla erişebilir, böylece eğitim, doğrulama ve dağıtımı dakikalar içinde gerçekleştirebilirler. Ultralytics çerçevesi, veri artırma, günlükleme (örn. MLflow veya Comet'e) ve dışa aktarma işlemlerini otomatik olarak yönetir.
from ultralytics import YOLO
# Load a pretrained YOLOv9c model
model = YOLO("yolov9c.pt")
# Train the model on a custom dataset
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)
# Export to ONNX for deployment
model.export(format="onnx")
Bu kod parçacığı, Ultralytics modellerinin doğasında bulunan Kullanım Kolaylığını göstermektedir. Çerçeve ayrıca, Otomatik Karma Hassasiyet (AMP) ve çoklu GPU eğitimini kutudan çıktığı gibi destekleyerek Eğitim Verimliliğini sağlar.
Çok Yönlülük ve Dağıtım
Görev Desteği
EfficientDet, temel olarak nesne algılama için tasarlanmıştır. Onu segmentasyon veya poz tahmini gibi görevlere uyarlamak, önemli mimari değişiklikler ve özel kod gerektirir.
YOLOv9 ve halefleri dahil olmak üzere Ultralytics modelleri, doğal olarak şunları destekleyen çok yönlü bir kod tabanı üzerine inşa edilmiştir:
- Nesne Algılama
- Örnek Segmentasyonu
- Poz Tahmini
- Yönlendirilmiş Sınırlayıcı Kutu (OBB)
- Sınıflandırma
Uç Cihaz Uyumluluğu ve Bellek
EfficientDet-D0 küçük olsa da, D7'ye ölçeklendirme, çözünürlük ölçeklendirmesi (1536x1536'ya kadar) nedeniyle büyük bellek maliyetleri getirir. YOLOv9, çoğu kıyaslama için standart 640x640 girişini korurken üstün doğruluk elde eder. Bu düşük giriş çözünürlüğü, VRAM için Bellek Gereksinimlerini önemli ölçüde azaltır, bu da tüketici GPU'larında daha büyük toplu iş boyutlarına ve daha hızlı deneylere olanak tanır.
Ayrıca, Ultralytics modelleri mobil cihazlar için TFLite, Intel CPU'lar için OpenVINO ve Apple cihazları için CoreML gibi formatlara tek tıklamayla dışa aktarımı destekleyerek geniş Uç Cihaz Uyumluluğu sağlar.
Gerçek Dünya Kullanım Durumları
Model seçimi genellikle belirli bir uygulamanın başarısını belirler:
- Perakende Analizi: Raflardaki ürünleri saymak için, YOLOv9, PGI'nın ince ayrıntıları koruma yeteneği sayesinde küçük nesneler üzerindeki yüksek doğruluğu (mAP) nedeniyle üstündür.
- Otonom Drone'lar: Gömülü donanımda (örn. Jetson Orin) gerçek zamanlı çıkarım gerektiren senaryolarda, YOLOv9'un verimli GELAN mimarisi, EfficientDet'in karmaşık BiFPN katmanlarının genellikle eşleşmekte zorlandığı gerekli FPS'yi sağlar.
- Eski Sistemler:EfficientDet, belirli model mimarisinin donanım hattına sabit kodlandığı araştırma karşılaştırmalarında veya eski Google Coral TPU dağıtımlarında geçerliliğini korumaktadır.
Gelecek: YOLO26
YOLOv9 olağanüstü performans sunsa da, yapay zeka alanı hızla ilerlemektedir. Ultralytics, yeni projeler için önerilen seçenek olan YOLO26 ile yenilik yapmaya devam ediyor.
YOLO26, önceki YOLO sürümlerinin güçlü yönleri üzerine inşa edilmiştir ancak Non-Maximum Suppression (NMS) son işlemindeki gecikmeyi ve karmaşıklığı ortadan kaldıran yerel uçtan uca NMS-free bir tasarım sunar. SGD ve Muon'un bir hibriti olan MuSGD Optimizer'ı içerir ve daha basit dışa aktarım için Distribution Focal Loss (DFL) özelliğini kaldırır. Bu değişiklikler, %43'e kadar daha hızlı CPU çıkarımı ve geliştirilmiş eğitim kararlılığı sağlar.
YOLO26 hakkında daha fazla bilgi edinin
Ek olarak, YOLO26, robotik ve hava görüntüleri için kritik olan küçük nesne tanımada önemli iyileştirmeler sunan ProgLoss + STAL (Soft-Target Anchor Loss) özelliğini bünyesinde barındırır. Hız, doğruluk ve dağıtım kolaylığının nihai dengesini arayan geliştiriciler için YOLO26 yeni standardı temsil etmektedir.
Sonuç
Her iki mimari de bilgisayar görüşü tarihinde yerini almıştır. EfficientDet, bileşik ölçeklendirmenin gücünü gösterirken, YOLOv9 programlanabilir gradyanların derin ağlarda bilgiyi nasıl kurtarabileceğini sergilemiştir. Ancak, modern üretim ortamları için, hem YOLOv9'u hem de daha yeni YOLO26'yı destekleyen Ultralytics ekosistemi, sürdürülebilirlik, eğitim hızı ve dağıtım esnekliği açısından belirgin bir avantaj sunmaktadır.
Ayrıca Bakınız
- YOLOv10 vs EfficientDet: İlk NMS-free YOLO ile karşılaştırma.
- YOLO26 vs YOLOv9: En yeni nesil yükseltmelere derinlemesine bir bakış.
- Ultralytics Platform: Modellerinizi eğitmenin ve dağıtmanın en basit yolu.