EfficientDet vs. YOLOv9: Nesne Algılama Verimliliğinin Evrimi
Bilgisayarla görmenin hızlı dünyasında, doğru model mimarisini seçmek performans, hız ve hesaplama kaynaklarını dengelemek için çok önemlidir. Bu kılavuz, Google Research tarafından geliştirilen ve önemli bir model olan EfficientDet ile aşağıdaki modeller arasında kapsamlı bir teknik karşılaştırma sunmaktadır YOLOv9Ultralytics ekosistemine entegre edilmiş son teknoloji ürünü dedektör. Mimari yeniliklerini analiz edecek, performans ölçümlerini kıyaslayacak ve modern gerçek zamanlı nesne algılama uygulamaları için hangi modelin en uygun olduğunu belirleyeceğiz.
EfficientDet: Ölçeklenebilir Verimliliğe Öncülük Ediyor
2019'un sonlarında piyasaya sürülen EfficientDet, model ölçeklendirmeye yönelik sistematik bir yaklaşım getirerek sonraki yıllarda yapılan araştırmaları etkiledi. Google Research ekibi tarafından geliştirilen bu yaklaşım, doğruluktan ödün vermeden verimliliği optimize etmeyi amaçlıyordu.
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 ve Temel Özellikler
EfficientDet, EfficientNet backbone üzerine inşa edilmiştir ve Çift Yönlü Özellik Piramit Ağını (BiFPN) sunar. Geleneksel FPN'lerin aksine BiFPN, farklı girdi özelliklerinin önemini öğrenmek için öğrenilebilir ağırlıklar sunarak kolay ve hızlı çok ölçekli özellik füzyonuna olanak tanır. Model, tüm backbone, özellik ağı ve kutu/sınıf tahmin ağları için çözünürlüğü, derinliği ve genişliği aynı anda eşit olarak ölçeklendiren bir bileşik ölçeklendirme yöntemi kullanır.
Güçlü ve Zayıf Yönler
EfficientDet, YOLOv3 gibi çağdaşlarından daha az parametre ile yüksek doğruluk elde etme kabiliyeti açısından devrim niteliğindeydi. Birincil gücü ölçeklenebilirliğinde yatmaktadır; model ailesi (D0 ila D7) kullanıcıların belirli bir kaynak ödünleşimi seçmelerine olanak tanır.
Bununla birlikte, modern standartlara göre EfficientDet, özellikle GPU donanımında daha düşük çıkarım hızlarından muzdariptir. Karmaşık özellik füzyon katmanları doğru olsa da yeni mimariler kadar donanım dostu değildir. Ayrıca, orijinal uygulama modern çerçevelerde bulunan kullanıcı dostu araçlardan yoksundur, bu da eğitim ve dağıtımı daha emek yoğun hale getirir.
Kullanım Alanları
EfficientDet için geçerliliğini korumaktadır:
- Akademik Araştırma: Bileşik ölçekleme ve özellik füzyonu ilkelerini anlamak.
- Eski Sistemler: TensorFlow ekosistemi içinde oluşturulmuş mevcut boru hatlarının bakımı.
- CPU Ortamları: Parametre verimliliğinin düşük FPS uygulamaları için hala makul performans sunabildiği yerler.
EfficientDet hakkında daha fazla bilgi edinin
YOLOv9: Gerçek Zamanlı Performansı Yeniden Tanımlıyor
2024'ün başlarında tanıtıldı, YOLOv9 üstün verimlilik elde etmek için derin öğrenme bilgi darboğazlarını ele alarak YOLO serisinde ileriye doğru bir sıçramayı temsil eder. Ultralytics python paketi içinde tamamen desteklenir ve geliştiriciler için sorunsuz bir deneyim sağlar.
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 ve Temel Özellikler
YOLOv9 çığır açan iki kavramı tanıtıyor: Programlanabilir Gradyan Bilgisi (PGI ) ve Genelleştirilmiş Verimli Katman Toplama Ağı (GELAN).
- PGI, veriler bir sinir ağının derin katmanlarından geçerken oluşan bilgi kaybını ele alarak model ağırlıklarını güncellemek için kullanılan gradyanların güvenilir olmasını sağlar.
- GELAN, hesaplama verimliliğine öncelik veren hafif bir mimaridir. Modelin, derinlik-bilge konvolüsyon tabanlı yöntemlere kıyasla daha az parametre ve hesaplama maliyeti (FLOP) ile daha yüksek doğruluk elde etmesini sağlar.
Güçlü Yönler ve Avantajlar
- Üstün Hız-Doğruluk Takası: Kıyaslamanın gösterdiği gibi, YOLOv9 doğruluğu korurken veya aşarken çıkarım gecikmesinde EfficientDet'ten önemli ölçüde daha iyi performans gösterir.
- Ultralytics Ekosistemi: Ultralytics ile entegrasyon, basit bir Python API'sine, CLI araçlarına erişim ve ONNX, TensorRT ve CoreML gibi formatlara kolay aktarım anlamına gelir.
- Eğitim Verimliliği: YOLOv9 modelleri genellikle eğitim sırasında daha az bellek gerektirir ve optimize edilmiş Ultralytics eğitim hattından yararlanarak eski mimarilere göre daha hızlı yakınsar.
- Çok yönlülük: Mimari, standart algılamanın ötesinde karmaşık görevleri destekleyerek gelişmiş segmentasyon ve çoklu görev öğrenmenin önünü açar.
YOLOv9 hakkında daha fazla bilgi edinin
Biliyor muydunuz?
YOLOv9'un GELAN mimarisi donanımdan bağımsız olacak şekilde tasarlanmıştır, yani bazı transformatör tabanlı modeller gibi özel donanım optimizasyonları gerektirmeden uç TPU'lardan üst düzey NVIDIA GPU'lara kadar çok çeşitli çıkarım cihazlarında verimli bir şekilde çalışır.
Performans Analizi
Aşağıdaki karşılaştırma, YOLOv9 'un EfficientDet ailesine kıyasla masaya getirdiği çıkarım hızı ve verimliliğindeki çarpıcı gelişmeleri vurgulamaktadır.
| Model | boyut (piksel) | mAPval 50-95 | Hız CPU ONNX (ms) | Hız T4 TensorRT10 (ms) | parametreler (M) | FLOP'lar (B) |
|---|---|---|---|---|---|---|
| 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 |
| 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 |
Kritik Karşılaştırmalı Analizler
- Büyük Hız Avantajı: YOLOv9c modeli, T4 GPU'da sadece 7,16 ms' lik bir çıkarım hızıyla rekabetçi bir 53,0 mAP elde eder. Buna karşılık, karşılaştırılabilir EfficientDet-d6 (52,6 mAP) 89,29 ms'de tarar. Bu, YOLOv9 'u benzer doğruluk için 12 kattan fazla daha hızlı hale getirir; bu, otonom araçlar veya trafik izleme gibi gerçek zamanlı uygulamalar için kritik bir faktördür.
- Parametre Verimliliği: Spektrumun alt ucunda, YOLOv9t sadece 2,0 milyon parametre ile güçlü bir 38,3 mAP sunarak, parametrelerin neredeyse yarısını kullanırken ve önemli ölçüde daha hızlı çalışırken doğrulukta EfficientDet-d0 taban çizgisini aşıyor.
- Üst Düzey Hassasiyet: Maksimum hassasiyet gerektiren görevler için YOLOv9e, 55,6 mAP ile sınırları zorlayarak en büyük EfficientDet-d7 modelinden daha iyi performans gösterirken, D7'nin engelleyici 128 ms'sinin aksine video işleme için hala uygun olan bir gecikme süresini (16,77 ms) korur.
Entegrasyon ve Kullanım Kolaylığı
Bu iki model arasındaki en önemli farklardan biri, onları çevreleyen ekosistemdir. EfficientDet eski TensorFlow depolarına dayanırken, YOLOv9 Ultralytics kütüphanesinde birinci sınıf bir vatandaştır.
Ultralytics Avantajı
YOLOv9 'u Ultralytics ile kullanmak, tüm makine öğrenimi yaşam döngüsünü basitleştiren bakımlı bir ekosistem sağlar. Veri kümelerine açıklama eklemekten uç cihazlara dağıtmaya kadar iş akışı kolaylaştırılmıştır.
- Basit API: Sadece birkaç satır Python kodu ile modelleri eğitebilir, doğrulayabilir ve dağıtabilirsiniz.
- Geniş Uyumluluk: Dışa aktarma modunu kullanarak modellerinizi zahmetsizce ONNX, TensorRT, OpenVINO ve CoreML 'ye aktarın.
- Topluluk Desteği: Kapsamlı dokümantasyon ve aktif bir topluluk, yaygın sorunlara yönelik çözümlerin kolayca bulunabilmesini sağlar.
İşte Ultralytics Python API'sini kullanarak YOLOv9 ile çıkarım yapmanın ne kadar kolay olduğuna dair pratik bir örnek:
from ultralytics import YOLO
# Load a pre-trained YOLOv9 compact model
model = YOLO("yolov9c.pt")
# Run inference on an image
results = model("path/to/image.jpg")
# Process results
for result in results:
result.show() # Display predictions
result.save() # Save image to disk
Uygulamada Çok Yönlülük
EfficientDet kesinlikle bir nesne algılayıcı olsa da, YOLOv9 ve Ultralytics çerçevesinin arkasındaki mimari ilkeler daha geniş bir görüş görevi yelpazesini destekler. Kullanıcılar aynı kod tabanı içinde nesne algılama, örnek segmentasyonu ve poz tahmini arasında kolayca geçiş yapabilir ve karmaşık projeler için teknik borcu azaltır.
Sonuç
EfficientDet ile YOLOv9 karşılaştırıldığında, modern bilgisayarla görü geliştirme için seçim açıktır. EfficientDet model ölçekleme verimliliğinin tanımlanmasında tarihi bir rol oynamıştır, YOLOv9 bugün geliştiricileri ilgilendiren neredeyse her metrikte onun yerini alıyor.
YOLOv9 , parametre başına üstün doğruluk, büyüklük sırasına göre daha yüksek çıkarım hızları ve sağlam, geliştirici dostu bir ekosistem sunar. İster kısıtlı uç cihazlara dağıtım yapıyor ister bulutta yüksek verimli video akışlarını işliyor olun, YOLOv9 başarı için gerekli performans dengesini sağlar.
Yeni projelere başlayanlar için YOLOv9 veya en son sürümlerden yararlanmanızı şiddetle tavsiye ederiz. YOLO11 Uygulamanızın derin öğrenme verimliliğindeki en son gelişmelerden yararlanmasını sağlamak için.
Diğer Modelleri İnceleyin
Ultralytics ailesi içinde daha fazla seçenek keşfetmekle ilgileniyorsanız, bu modelleri göz önünde bulundurun:
- YOLO11: Algılama, segmentasyon ve sınıflandırma görevlerinde son teknoloji ürünü performans sunan YOLO serisinin en son evrimi.
- YOLOv10: Maksimum Olmayan BastırmaNMS) ihtiyacını ortadan kaldıran gerçek zamanlı bir uçtan uca dedektör.
- RT-DETR: CNN tabanlı mimarilere modern bir alternatif sağlayan, doğruluk açısından üstün transformatör tabanlı bir dedektör.