YOLOv9 vs. EfficientDet: Kapsamlı Bir Teknik Karşılaştırma
Doğru nesne algılama modelini seçmek, bilgisayarla görü geliştirmede çok önemli bir karardır ve uygulamanızın hızını, doğruluğunu ve kaynak verimliliğini doğrudan etkiler. Bu kılavuz, aşağıdakiler arasında derinlemesine bir teknik karşılaştırma sağlar Ultralytics YOLOv9 ve EfficientDet'in mimari yeniliklerini, performans ölçümlerini ve modern dağıtım senaryolarına uygunluklarını analiz ediyor.
Performans Analizi
Nesne algılamanın gelişimi hızlı olmuş, yeni mimariler öncekilerden önemli ölçüde daha iyi performans göstermiştir. Aşağıdaki tablo, temel ölçütlerin doğrudan bir karşılaştırmasını sunmakta ve aşağıdaki gelişmelerin altını çizmektedir YOLOv9 Eski EfficientDet ailesine kıyasla çıkarım hızı ve parametre verimliliği açısından.
| 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 |
Anahtar Çıkarımlar:
- Hız Üstünlüğü: YOLOv9 modelleri GPU donanımında çok daha üstün çıkarım hızları göstermektedir. Örneğin, YOLOv9c (%53,0 mAP), karşılaştırılabilir doğruluktaki EfficientDet-d6'dan (%52,6 mAP) 12 kat daha hızlıdır.
- Parametre Verimliliği: YOLOv9 'un mimarisi, daha az parametre ile daha yüksek doğruluk elde etmesini sağlar. YOLOv9s sadece 7,1 milyon parametre ile %46,8 mAP elde ederken, EfficientDet benzer bir doğruluk seviyesi olan %47,5'e ulaşmak için daha büyük D3 varyantına (12,0 milyon parametre) ihtiyaç duyar.
- Son Teknoloji Doğruluk: En büyük model olan YOLOv9e, %55,6 mAP ile en ağır EfficientDet-d7 modelini geride bırakarak yüksek bir çıta oluştururken, gecikme süresinin bir kısmını da koruyor.
YOLOv9: Programlanabilir Gradyan Bilgisinde Yeni Bir Dönem
2024'ün başlarında tanıtılan YOLOv9, YOLO serisinde önemli bir sıçramayı temsil ediyor. Chien-Yao Wang ve Hong-Yuan Mark Liao tarafından geliştirilen bu sistem, özellik aktarımı sırasında bilgi kaybıyla ilgili derin öğrenmedeki temel sorunları ele almaktadır.
Teknik Detaylar:
- Yazarlar: Chien-Yao Wang, Hong-Yuan Mark Liao
- Organizasyon:Bilgi Bilimleri Enstitüsü, Academia Sinica, Tayvan
- Tarih: 2024-02-21
- Arxiv:YOLOv9: Programlanabilir Gradyan Bilgisini Kullanarak Öğrenmek İstediğinizi Öğrenmek
- GitHub:WongKinYiu/yolov9
- Dokümanlar:Ultralytics YOLOv9 Dokümantasyonu
Mimari Yenilikler
YOLOv9 , "bilgi darboğazı" sorununu ele almak için iki temel kavram ortaya koymaktadır:
- Programlanabilir Gradyan Bilgisi (PGI): Ağ ağırlıklarını güncellemek için güvenilir gradyanlar üreten ve modelin derin katmanlar boyunca kritik bilgileri korumasını sağlayan yardımcı bir denetim çerçevesi.
- Genelleştirilmiş Verimli Katman Toplama Ağı (GELAN): CSPNet ve ELAN'ın güçlü yönlerini birleştiren yeni bir hafif mimari. Gradyan yol planlamasına öncelik vererek, doğruluktan ödün vermeden daha yüksek parametre verimliliği ve daha hızlı çıkarım hızları sağlar.
Biliyor muydunuz?
GELAN mimarisi, donanımdan bağımsız olacak şekilde tasarlanmıştır ve çıkarımı yalnızca üst düzey GPU'lar için değil, aynı zamanda hesaplama kaynaklarının sınırlı olduğu uç cihazlar için de optimize eder.
Güçlü Yönler ve Kullanım Örnekleri
- Performans Dengesi: YOLOv9 , hız ve doğruluk arasında olağanüstü bir denge sunarak otonom sürüş ve video analizi gibi gerçek zamanlı çıkarım uygulamaları için idealdir.
- Ultralytics Ekosistemi: Ultralytics ile entegrasyon, eğitimi, doğrulamayı ve dağıtımı basitleştiren kolaylaştırılmış bir Python API ve CLI sağlar.
- Eğitim Verimliliği: Verimli mimarisi sayesinde YOLOv9 , eğitim sırasında transformatör tabanlı alternatiflere kıyasla genellikle daha az bellek gerektirir ve tüketici sınıfı GPU'larda daha kolay özel eğitim sağlar.
Kod Örneği: Ultralytics ile YOLOv9 Kullanımı
Ultralytics paketini kullanarak kolayca çıkarım yapabilir veya YOLOv9 'u eğitebilirsiniz.
from ultralytics import YOLO
# Load a pre-trained YOLOv9c model
model = YOLO("yolov9c.pt")
# Run inference on an image
results = model.predict("path/to/image.jpg")
# Train the model on a custom dataset (e.g., COCO8)
model.train(data="coco8.yaml", epochs=100, imgsz=640)
YOLOv9 hakkında daha fazla bilgi edinin
EfficientDet: Öncü Ölçeklenebilir Mimari
Google Research tarafından 2019'un sonlarında piyasaya sürülen EfficientDet, nesne dedektörlerini ölçeklendirmek için sistematik bir yol sunan çığır açan bir modeldi. Geniş bir kaynak kısıtlaması yelpazesinde verimliliği optimize etmeye odaklanmaktadır.
Teknik Detaylar:
- Yazarlar: Mingxing Tan, Ruoming Pang, Quoc V. Le
- Organizasyon:Google Araştırma
- Tarih: 2019-11-20
- Arxiv:EfficientDet: Ölçeklenebilir ve Verimli Nesne Algılama
- GitHub:google
Mimari Öne Çıkanlar
EfficientDet, EfficientNet backbone üzerine inşa edilmiştir ve birkaç temel özellik sunar:
- Çift Yönlü Özellik Piramidi Ağı (BiFPN): Geleneksel FPN'lerin aksine BiFPN, farklı giriş özelliklerine öğrenilebilir ağırlıklar ekleyerek kolay çok ölçekli özellik füzyonuna olanak tanır.
- Bileşik Ölçeklendirme: Bu yöntem, backbone, özellik ağı ve kutu/sınıf tahmin ağlarının çözünürlüğünü, derinliğini ve genişliğini eşit şekilde ölçeklendirerek farklı kaynak bütçelerine göre uyarlanmış bir model ailesine (D0 ila D7) olanak tanır.
Güçlü ve Zayıf Yönler
- Ölçeklenebilirlik: D0-D7 aile yapısı, kullanıcıların kendi FLOP bütçelerine uygun bir model seçmelerine olanak tanır.
- Tarihsel Önemi: 2020'de verimlilik standardını belirleyerek, nöral mimari arama alanındaki sonraki araştırmaları büyük ölçüde etkilemiştir.
- Eski Performans: Zamanına göre verimli olsa da EfficientDet artık GPU'larda gecikme süresi açısından YOLOv9 gibi modern dedektörlerin gerisinde kalmaktadır. Derinlemesine ayrılabilir konvolüsyonları yoğun bir şekilde kullanması, FLOP açısından verimli olsa da, YOLO mimarilerinde kullanılan optimize edilmiş yoğun konvolüsyonlara kıyasla NVIDIA T4 gibi donanımlarda genellikle daha yavaş çıkarıma neden olur.
EfficientDet hakkında daha fazla bilgi edinin
Detaylı Karşılaştırmalı Analiz
YOLOv9 ve EfficientDet arasında seçim yaparken, ham mAP 'nin ötesinde çeşitli faktörler devreye girer. İşte pratik geliştirme ortamlarında nasıl karşılaştırıldıklarının bir dökümü.
Hız ve Gecikme
En belirgin fark çıkarım hızında yatmaktadır. YOLOv9 , GPU'larda devasa paralelleştirme için optimize edilmiş GELAN mimarisini kullanır. Buna karşılık, EfficientDet'in karmaşık özellik füzyonuna (BiFPN) ve derinlemesine ayrılabilir konvolüsyonlara dayanması, hızlandırıcılarda bellek erişimi darboğazları yaratabilir. Performans tablosunda görüldüğü gibi, YOLOv9 modelleri sürekli olarak 2 ila 10 kat daha hızlıdır TensorRT benzer doğruluktaki EfficientDet muadillerinden daha yüksektir.
Ekosistem ve Kullanım Kolaylığı
Ultralytics ekosistemi YOLOv9 için önemli bir avantaj sağlamaktadır. EfficientDet bir TensorFlow ortamı ve genellikle karmaşık kurulum komut dosyaları gerektirirken, YOLOv9 destekleyen kullanıcı dostu bir pakete entegre edilmiştir:
- Tek hatlı kurulum:
pip install ultralytics - Geniş İhracat Desteği: Sorunsuz dışa aktarma ONNX, TensorRT, CoreML, OpenVINO ve daha fazlası aracılığıyla
model.export()fonksiyonu. - Aktif Bakım: Sık güncellemeler, topluluk desteği ve nesne izleme ve dağıtım gibi görevlerle ilgili kapsamlı kılavuzlar.
Dağıtım Esnekliği
Ultralytics ile eğitilen YOLOv9 modelleri, TFLite veya Edge TPU gibi formatlar kullanılarak uç cihazlara kolayca dağıtılabilir. Daha fazla ayrıntı için TFLite entegrasyon kılavuzumuza göz atın.
Eğitim Verimliliği ve Hafıza
Modern bilgisayarla görme modellerinin eğitimi yoğun kaynak gerektirebilir. Ultralytics YOLO modelleri, GPU belleğini verimli kullanmalarıyla ünlüdür. Bu, geliştiricilerin eski mimarilere veya ağır transformatör tabanlı modellere kıyasla tüketici donanımında daha büyük parti boyutlarını eğitmelerine olanak tanır. Ayrıca Ultralytics , önceden eğitilmiş hazır ağırlıklar sağlayarak EfficientDet'i sıfırdan eğitmekten çok daha hızlı yakınsayan transfer öğrenimini mümkün kılar.
Çok Yönlülük
EfficientDet kesinlikle bir nesne dedektörü olsa da, YOLOv9 'un (ve daha geniş Ultralytics YOLO ailesinin) arkasındaki mimari ilkeler birden fazla göreve uzanır. Ultralytics çerçevesi şunları destekler:
Bu çok yönlülük, geliştiricilerin çeşitli bilgisayarla görme zorlukları için tek bir birleşik API kullanmasına olanak tanır.
Sonuç
Yeni projelerin çoğu için YOLOv9 üstün bir seçimdir. Önemli ölçüde daha yüksek çıkarım hızları ile son teknoloji doğruluk sunar ve gerçek zamanlı uygulamalar için uygun hale getirir. Ultralytics ekosistemine entegrasyonu, veri hazırlamadan model dağıtımına kadar sorunsuz bir geliştirme deneyimi sağlar.
EfficientDet, bileşik ölçeklendirme ve özellik füzyonunu anlamak için değerli bir referans olmaya devam etmektedir, ancak modern donanımlarda watt başına performans ve gecikme ölçümlerinde genellikle yetersiz kalmaktadır.
Bilgisayarla görme teknolojisindeki en son gelişmeleri arayan geliştiriciler de şunları keşfetmelidir YOLO11daha da fazla verimlilik ve performans sunmak için bu gelişmeleri temel alır.
Diğer Modelleri İnceleyin
Daha fazla karşılaştırmayla ilgileniyorsanız, bu ilgili modelleri incelemeyi düşünebilirsiniz:
- YOLO11 vs. YOLOv9: En yeni neslin YOLOv9'u nasıl geliştirdiğini görün.
- RT-DETR: Gerçek zamanlı senaryolar için yüksek doğruluk sunan transformatör tabanlı bir dedektör.
- YOLOv8: Algılama, segmentasyon ve poz tahminini destekleyen çok yönlü bir model ailesi.