YOLOv7 ve EfficientDet: Gerçek Zamanlı Nesne Algılama Mimarilerine Derinlemesine Bir Bakış
Nesne algılamanın evrimi, doğruluk ve verimlilik arasında sürekli bir çekişme ile şekillenmiştir. Bu alanda iki ağır siklet rakip YOLOv7, 2022'de piyasaya sürülen "You Only Look Once" ailesinin bir dönüm noktası olan ve EfficientDet, Google 2019 sonlarında piyasaya sürdüğü ölçeklenebilir mimaridir. Her iki model de bilgisayar görme alanını önemli ölçüde etkilemiş olsa da, nesne algılama sorununa temelde farklı mimari felsefelerle yaklaşmaktadırlar.
Bu kılavuz, geliştiricilerin, araştırmacıların ve mühendislerin belirli bilgisayar görme projeleri için doğru aracı seçmelerine yardımcı olmak amacıyla kapsamlı bir teknik karşılaştırma sunmaktadır. Benzersiz mimarilerini, karşılaştırmalı performans ölçütlerini, eğitim metodolojilerini ve ideal dağıtım senaryolarını inceleyeceğiz.
Modele Genel Bakış ve Kökenleri
Metriklere dalmadan önce, bu modellerin kökenini anlamak çok önemlidir.
YOLOv7: Ücretsiz Hediyelerle Dolu Güç Merkezi
2022 yılının Temmuz ayında piyasaya sürülen YOLOv7 , gerçek zamanlı dedektörlerle mümkün olanın sınırlarını YOLOv7 . Yazarların "eğitilebilir bag-of-freebies" olarak adlandırdığı, çıkarım maliyetlerini artırmadan eğitim sürecini optimize etmek için tasarlanmış mimari yenilikler getirdi.
- Yazarlar: Chien-Yao Wang, Alexey Bochkovskiy ve Hong-Yuan Mark Liao
- Kuruluş: Bilgi Bilimi Enstitüsü, Academia Sinica, Tayvan
- Tarih: 2022-07-06
- Bağlantılar:ArXiv Makalesi | GitHub Deposu
YOLOv7 hakkında daha fazla bilgi edinin.
EfficientDet: Ölçeklenebilir ve Verimli
Google ekibi tarafından geliştirilen EfficientDet, ölçeklendirmeye sistematik bir yaklaşım benimsemiştir. Yeni bir ağırlıklı çift yönlü özellik piramidi ağı (BiFPN) ile çözünürlük, derinlik ve genişliği eşit şekilde ölçeklendiren bir bileşik ölçeklendirme yöntemini birleştirmiştir.
- Yazarlar: Mingxing Tan, Ruoming Pang ve Quoc V. Le
- Kuruluş:Google Research
- Tarih: 2019-11-20
- Bağlantılar:ArXiv Makalesi | GitHub Deposu
Mimari Farklılıklar
Bu iki model arasındaki temel fark, özellik toplama ve model ölçeklendirme işlemlerini nasıl gerçekleştirdiklerinde yatmaktadır.
YOLOv7 Mimarisi
YOLOv7 , Genişletilmiş Verimli Katman Toplama Ağı (E-ELAN) özelliğini YOLOv7 . Bu mimari, en kısa ve en uzun gradyan yollarını kontrol ederek modelin daha çeşitli özellikleri öğrenmesini sağlar ve orijinal gradyan yolunu bozmadan ağın öğrenme yeteneğini geliştirir.
Temel mimari özellikler şunları içerir:
- Model Ölçeklendirme: EfficientDet'in bileşik ölçeklendirmesinden farklı olarak, YOLOv7 , birleştirme tabanlı modellerde mimari özellikleri (derinlik ve genişlik) aynı anda YOLOv7 .
- Yardımcı Başlık Kaba-İnce: Yardımcı başlık eğitim için kaba etiketler üretirken, ana başlık ince ayarları gerçekleştirir.
- Yeniden parametreleştirme: YOLOv7 , karmaşık eğitim zamanı yapılarını daha hızlı çıkarım için standart konvolüsyonlara basitleştiren RepConv katmanları YOLOv7 . Bu teknik, gerçek zamanlı çıkarım için çok önemlidir.
EfficientDet Mimarisi
EfficientDet, EfficientNet backbone üzerine inşa edilmiştir backbone BiFPN'yi tanıtmaktadır.
Temel mimari özellikler şunları içerir:
- BiFPN: Kolay ve hızlı çok ölçekli özellik füzyonu sağlayan ağırlıklı çift yönlü özellik piramidi ağı. Farklı girdi özelliklerinin önemini öğrenir ve yukarıdan aşağıya ve aşağıdan yukarıya çok ölçekli özellik füzyonunu tekrar tekrar uygular.
- Bileşik Ölçeklendirme: Ağ genişliğini, derinliğini ve çözünürlüğü ortaklaşa ölçeklendiren basit ama etkili bir katsayıdır ve farklı kaynak kısıtlamalarını hedefleyen bir model ailesi (D0 ila D7) oluşturur.
Performans Karşılaştırması
Performansı karşılaştırırken, COCO indeki ortalama hassasiyet (mAP) ile çıkarım hızını karşılaştırıyoruz.
| Model | boyut (piksel) | mAPval 50-95 | Hız CPU ONNX (ms) | Hız T4 TensorRT10 (ms) | parametreler (M) | FLOP'lar (B) |
|---|---|---|---|---|---|---|
| YOLOv7l | 640 | 51.4 | - | 6.84 | 36.9 | 104.7 |
| YOLOv7x | 640 | 53.1 | - | 11.57 | 71.3 | 189.9 |
| 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 |
Kritik Analiz
- Gecikme süresi: YOLOv7 , GPU önemli ölçüde daha YOLOv7 . Örneğin, YOLOv7x, ~11,5 ms'lik TensorRT %53,1 mAP elde ederken, EfficientDet-d7, biraz daha yüksek olan %53,7 mAP elde etmek için ~128 ms'ye ihtiyaç duyar. Bu, YOLOv7 yüksek doğruluk senaryolarında 10 kat daha hızlı hale getirir.
- Verimlilik: EfficientDet-d0 ila d2, FLOP açısından son derece hafiftir, bu da onları GPU kullanılamadığı çok düşük güçlü CPU'lar için uygun hale getirir. Ancak, D4 ve üstüne çıktıkça, YOLO kıyasla verimlilik artışı azalır.
- Doğruluk: EfficientDet-d7 etkileyici bir doğruluk düzeyine ulaşsa da, hesaplama maliyeti gerçek zamanlı uygulamalar için çok yüksektir. YOLOv7 , gerçek zamanlı yeteneklerden ödün vermeden yüksek doğruluğu koruyarak daha iyi bir "ideal nokta" YOLOv7 .
Eğitim ve Ekosistem
Bir modeli çevreleyen ekosistem, geliştiriciler için modelin pratikliğini belirler. Ultralytics işte bu noktada önemli bir değer sunar.
Verimli Ekosistem
EfficientDet, esas olarak TensorFlow dayanmaktadır. Güçlü olmasına rağmen, onu modern boru hatlarına entegre etmek genellikle karmaşık bağımlılıkları yönetmeyi gerektirir.
- Karmaşıklık: BiFPN ve swish aktivasyonları, standart konvolüsyonlara kıyasla belirli kenar hızlandırıcılarında optimize edilmesi daha zor olabilir.
- Bakım: YOLO hızlı sürüm döngüsüne kıyasla birçok depo daha az sıklıkta güncellenmektedir.
Ultralytics Ekosistem Avantajı
YOLOv7 ve daha yeni sürümleri) gibi Ultralytics kullanmanın en önemli avantajlarından biri, iyi bakımlı ekosistemdir.
- Kullanım Kolaylığı: Ultralytics , eğitimi, doğrulamayı ve dağıtımı basitleştiren birleşik bir Python Ultralytics .
- Eğitim Verimliliği: YOLO , standart GPU etkili bir şekilde kullanarak, özel veri kümeleri üzerinde eğitim ile ilgili zaman ve maliyeti azaltır.
- Bellek Gereksinimleri: Eski iki aşamalı dedektörler veya ağır transformatör tabanlı modellerle karşılaştırıldığında, YOLOv7 eğitim sırasında daha az CUDA gerektirir, bu da tüketici sınıfı donanımlarda daha büyük parti boyutlarına olanak tanır.
Ultralytics ile Kolaylaştırılmış Eğitim
Bir YOLO modelini Python API ile eğitmek basittir. İşte bir eğitim çalıştırmasını nasıl başlatabileceğiniz:
from ultralytics import YOLO
# Load a model
model = YOLO("yolov7.pt") # load a pretrained model
# Train the model
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)
Kullanım Durumu Önerileri
YOLOv7 Ne Zaman Tercih Edilmeli?
YOLOv7, gecikmenin kritik olduğu gerçek zamanlı uygulamalar için tercih edilen seçenektir.
- Otonom Sürüş: Yüksek kare hızlarında yayaları, araçları ve işaretleri detect eder, güvenli karar verme süreçlerini sağlar.
- Robotik: Robotikte bilgisayar görüşünü entegre etmek için idealdir, robotların dinamik ortamlarda gezinmesine ve etkileşim kurmasına olanak tanır.
- Video Analizi: Büyük hesaplama kümelerine ihtiyaç duymadan, güvenlik veya perakende analizi için birden fazla video akışını aynı anda işler.
Ne Zaman EfficientDet Seçmeli
EfficientDet, belirli düşük güç senaryoları için veya model boyutunun (MB cinsinden) gecikmeden ziyade birincil kısıtlama olduğu durumlarda geçerliliğini korur.
- Mobil Uygulamalar: D0-D1 gibi daha küçük varyantlar, depolama alanı sınırlı olan mobil cihazlar için uygundur.
- Eski Sistemler: TensorFlow/AutoML ekosistemleri için zaten yoğun bir şekilde optimize edilmiş ortamlarda, EfficientDet daha kolay entegrasyon sunabilir.
- Akademik Araştırma: Gerçek zamanlı çıkarımın birincil hedef olmadığı bileşik ölçeklendirme veya özellik birleştirme tekniklerinin etkilerini incelemek için yararlıdır.
Gelecek: YOLO26'ya yükseltme
YOLOv7 yetenekli bir araç YOLOv7 da, bilgisayar görme alanı hızla gelişmektedir. En iyi performansı arayan geliştiriciler için, Ocak 2026'da piyasaya sürülen YOLO26 modeli en son teknolojiyi temsil etmektedir.
YOLO26, uçtan uca NMS tasarım ile önceki YOLO'ların mirasını temel alır. Bu, Non-Maximum Suppression (NMS) son işlemine olan ihtiyacı ortadan kaldırarak, dağıtım süreçlerini basitleştirir ve çıkarım hızını artırır.
YOLO26'nın YOLOv7 EfficientDet'e göre temel avantajları şunlardır:
- MuSGD Optimizer: SGD Muon'un bir karışımı olan bu araç, daha istikrarlı bir eğitim ve daha hızlı yakınsama için LLM eğitim yeniliklerini bilgisayar görüşüne getiriyor.
- Kenar Optimizasyonu: Dağıtım Odak Kaybı (DFL) kaldırıldığında, YOLO26 CPU %43'e kadar daha hızlıdır, bu da onu EfficientDet'ten daha uygun hale getirir.
- Gelişmiş Çok Yönlülük: Algılamanın ötesinde, YOLO26 tek bir çerçeve içinde poz tahmini, örnek segmentasyonu ve Yönlendirilmiş Sınırlayıcı Kutu (OBB) alanlarında en son teknolojiye sahip performans sunar.
- ProgLoss + STAL: Geliştirilmiş kayıp fonksiyonları, IoT ve hava görüntüleri için kritik öneme sahip küçük nesne tanımada önemli iyileştirmeler sağlar.
YOLO26 hakkında daha fazla bilgi edinin
Sonuç
YOLOv7 EfficientDet, bilgisayar görme tarihinde yerlerini sağlamlaştırmıştır. EfficientDet zarif ölçeklendirme ilkeleri getirirken, YOLOv7 gerçek zamanlı hız için "bag-of-freebies" yaklaşımını YOLOv7 . Ancak, performans dengesi, kullanım kolaylığı ve çok yönlülük gerektiren modern üretim süreçleri için, YOLOv7 daha yeni olan YOLO26 ile özetlenen Ultralytics belirgin bir avantaj sunmaktadır.
Eğitim sırasında daha düşük bellek gereksinimleri ve ONNX ve TensorRTgibi formatlara sorunsuz aktarım ile Ultralytics , veri setinden dağıtım aşamasına kadar olan sürecin mümkün olduğunca sorunsuz geçmesini sağlar.
Daha Fazla Okuma
- Modeller: Diğer mimarileri keşfedin, örneğin YOLOv8, YOLO11ve RT-DETR.
- Platform: Ultralytics kullanarak veri kümelerini yönetin, modelleri eğitin ve zahmetsizce dağıtın.
- Kılavuzlar: Modellerinizden en yüksek performansı elde etmek için hiperparametre ayarlaması hakkında bilgi edinin.