YOLOv10 ve EfficientDet: Gerçek Zamanlı Nesne Algılama Mimarilerinin Karşılaştırılması
Nesne algılama için en uygun sinir ağını seçmek, modern bilgisayarlı görü sistemlerinin başarısını belirleyen kritik bir karardır. Bu alanda önemli ölçüde etkili olmuş iki öne çıkan mimari YOLOv10 ve EfficientDet'tir. Her ikisi de hesaplama yükünü minimize ederken doğruluğu maksimize etmeyi amaçlasa da, bu hedeflere ulaşmak için birbirinden çok farklı mimari yaklaşımlar benimserler.
Bu kapsamlı rehber, vision AI uygulamaları için geliştiricilerin ve makine öğrenimi mühendislerinin veriye dayalı kararlar almasına yardımcı olmak amacıyla bu modellerin özgün tasarımlarını, eğitim metodolojilerini ve dağıtım özelliklerini incelemektedir. Gömülü edge AI cihazlarından güçlü bulut GPU'larına kadar değişen donanımlarda nasıl performans gösterdiklerini inceleyeceğiz.
YOLOv10: NMS-İçermeyen Öncü
Gerçek zamanlı gecikme sınırlarını zorlamak için geliştirilen YOLOv10, YOLO ailesindeki en kalıcı darboğazlardan birini ele almıştır: NMS (Non-Maximum Suppression). Bu işlem sonrası adımı ortadan kaldırarak, model otonom araçlar ve yüksek hızlı robotik sistemler için kritik öneme sahip, son derece öngörülebilir bir gecikme süresi elde eder.
Mimari Yenilikler
YOLOv10, NMS içermeyen eğitim için tutarlı ikili atamalar sunar. Eğitim sırasında hem bire-çok hem de bire-bir etiket atamalarından yararlanarak, ağın zengin temsiller öğrenmesini sağlarken çıkarım sırasında nesne başına yerel olarak en iyi tek bir sınırlayıcı kutu çıktısı vermesine olanak tanır. Mimari ayrıca sınıflandırma kafasını kolaylaştıran ve önceki iterasyonlarda bulunan hesaplama fazlalığını azaltan bütünsel bir verimlilik-doğruluk odaklı tasarım içerir.
Model Detayları
- Yazarlar: Ao Wang, Hui Chen, Lihao Liu ve diğerleri.
- Kuruluş: Tsinghua University
- Tarih: 2024-05-23
- Makale: YOLOv10: Real-Time End-to-End Object Detection
- GitHub: THU-MIG/yolov10
- Dokümanlar: YOLOv10 Dokümantasyonu
YOLOv10, NMS adımını kaldırdığı için, sınırlayıcı kutu filtreleme adına özel çalışma zamanı eklentilerine ihtiyaç duymadan ONNX formatı ve NVIDIA TensorRT gibi formatlara aktarılması doğal olarak daha kolaydır.
Güçlü Yönler:
- Öngörülebilir Çıkarım: NMS'nin kaldırılması, sahnedeki nesne sayısından bağımsız olarak tutarlı çıkarım süreleri sağlar.
- Daha Düşük Bellek Kullanımı: RT-DETR gibi Transformer tabanlı modellere kıyasla, YOLOv10 hem eğitim hem de çıkarım sırasında önemli ölçüde daha düşük bellek gereksinimlerine sahiptir.
- Mükemmel Hız/Doğruluk Dengesi: performans metriklerinden ödün vermeden düşük gecikmeli senaryolar için özel olarak optimize edilmiştir.
Zayıf Yönler:
- Tek Görev Odaklı: Daha geniş Ultralytics ekosisteminin aksine, orijinal YOLOv10 deposu büyük ölçüde algılamaya odaklanmıştır ve örnek segmentasyonu veya poz tahmini için yerel desteğe sahip değildir.
YOLOv10 hakkında daha fazla bilgi edinin
EfficientDet: Ölçeklenebilir ve Dengeli
Google Brain tarafından tanıtılan EfficientDet, nesne algılamaya sistematik ağ ölçeklendirmesi perspektifinden yaklaşır. EfficientNet görüntü sınıflandırma omurgası üzerine inşa edilir ve yeni bir özellik füzyon mekanizması sunar.
Mimari Yenilikler
EfficientDet'in kalbi, kolay ve hızlı çok ölçekli özellik füzyonuna olanak tanıyan Bi-directional Feature Pyramid Network (BiFPN) yapısıdır. Sadece özellikleri yukarıdan aşağıya toplayan geleneksel FPN'lerin aksine, BiFPN farklı girdi özelliklerinin önemini öğrenmek için çift yönlü ölçekler arası bağlantılar ve eğitilebilir ağırlıklar sunar. Ayrıca EfficientDet, tüm omurga, özellik ağı ve kutu/sınıf tahmin ağları için çözünürlüğü, derinliği ve genişliği tek tip ölçeklendiren bileşik bir ölçeklendirme yöntemi kullanır.
Model Detayları
- Yazarlar: Mingxing Tan, Ruoming Pang ve Quoc V. Le
- Kuruluş: Google Brain
- Tarih: 20-11-2019
- Makale: EfficientDet: Scalable and Efficient Object Detection
- GitHub: Google AutoML EfficientDet
Güçlü Yönler:
- Yüksek Verimlilik: Mükemmel parametre-doğruluk oranı,
-d0ile-d2arasındaki küçük varyantları oldukça hafif kılar. - İlkeli Ölçeklendirme: Bileşik ölçeklendirme, kullanıcıların tam hesaplama bütçelerine uyan bir model boyutunu kolayca seçmelerine olanak tanır.
Zayıf Yönler:
- Eski Çerçeve Entegrasyonu: Orijinal uygulama, modern dağıtım hatlarını karmaşıklaştırabilen eski TensorFlow sürümlerine büyük ölçüde dayanır.
- Daha Yavaş Eğitim: EfficientDet'i sıfırdan eğitmek oldukça yavaştır ve YOLO mimarilerinin hızlı yakınsamasına kıyasla dikkatli hiperparametre ayarı gerektirir.
- Çıkarım Hızı: Parametre açısından verimli olsa da, karmaşık BiFPN işlemleri, yüksek düzeyde optimize edilmiş YOLO modellerine kıyasla standart donanımlarda genellikle daha yavaş gerçek dünya çıkarım hızlarına yol açar.
EfficientDet hakkında daha fazla bilgi edinin
Performans ve Kıyaslamalar
Bu modellerin gerçek testi, COCO veri seti gibi standart kıyaslamalardaki ampirik performanslarında yatmaktadır. Aşağıdaki tablo, NVIDIA T4 GPU üzerindeki parametre sayısı, kayan nokta işlemleri (FLOPs) ve çıkarım gecikmesindeki kritik farkları göstermektedir.
| Model | boyut (piksel) | mAPval 50-95 | Hız CPU ONNX (ms) | Hız T4 TensorRT10 (ms) | parametre (M) | FLOPs (B) |
|---|---|---|---|---|---|---|
| YOLOv10n | 640 | 39.5 | - | 1.56 | 2.3 | 6.7 |
| YOLOv10s | 640 | 46.7 | - | 2.66 | 7.2 | 21.6 |
| YOLOv10m | 640 | 51.3 | - | 5.48 | 15.4 | 59.1 |
| YOLOv10b | 640 | 52.7 | - | 6.54 | 24.4 | 92.0 |
| YOLOv10l | 640 | 53.3 | - | 8.33 | 29.5 | 120.3 |
| YOLOv10x | 640 | 54.4 | - | 12.2 | 56.9 | 160.4 |
| 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 |
Yukarıda gösterildiği gibi, YOLOv10 ham çıkarım hızında önemli bir avantaja sahiptir. Örneğin, YOLOv10-S, 2.66ms TensorRT gecikmesiyle 46.7 mAP elde ederken, EfficientDet-d3 benzer bir 47.5 mAP değerine ulaşır ancak yaklaşık 20ms sürer; bu da YOLOv10'u gerçek zamanlı video akışı veya hızlı hareket eden üretim hatları için çok daha üstün kılar.
Kullanım Durumları ve Öneriler
YOLOv10 ve EfficientDet arasında seçim yapmak, özel proje gereksinimlerine, dağıtım kısıtlamalarına ve ekosistem tercihlerine bağlıdır.
Ne Zaman YOLOv10 Seçilmeli
YOLOv10 şunlar için güçlü bir seçimdir:
- NMS-Free Gerçek Zamanlı Algılama: Non-Maximum Suppression olmadan uçtan uca algılamadan faydalanan, dağıtım karmaşıklığını azaltan uygulamalar.
- Dengeli Hız-Doğruluk Takasları: Çeşitli model ölçeklerinde çıkarım hızı ile algılama doğruluğu arasında güçlü bir denge gerektiren projeler.
- Consistent-Latency Applications: Deployment scenarios where predictable inference times are critical, such as robotics or autonomous systems.
Ne Zaman EfficientDet Seçilmeli?
EfficientDet şunlar için önerilir:
- Google Cloud ve TPU İş Akışları: EfficientDet'in yerel optimizasyona sahip olduğu Google Cloud Vision API'leri veya TPU altyapısı ile derinlemesine entegre edilmiş sistemler.
- Bileşik Ölçeklendirme Araştırması: Dengeli ağ derinliği, genişliği ve çözünürlük ölçeklendirmesinin etkilerini incelemeye odaklanan akademik karşılaştırmalar.
- TFLite ile Mobil Dağıtım: Özellikle Android veya gömülü Linux cihazları için TensorFlow Lite dışa aktarımı gerektiren projeler.
Ne Zaman Ultralytics (YOLO26) Seçilmeli
Çoğu yeni proje için Ultralytics YOLO26 performans ve geliştirici deneyiminin en iyi kombinasyonunu sunar:
- NMS-Free Uç Dağıtımı: Non-Maximum Suppression işlem sonrası zorluğu olmadan tutarlı, düşük gecikmeli çıkarım gerektiren uygulamalar.
- Sadece CPU Ortamları: Özel GPU hızlandırması olmayan, YOLO26'nın %43'e kadar daha hızlı CPU çıkarımının belirleyici bir avantaj sağladığı cihazlar.
- Küçük Nesne Algılama: ProgLoss ve STAL'ın küçük nesneler üzerindeki doğruluğu önemli ölçüde artırdığı hava drone görüntüleri veya IoT sensör analizi gibi zorlu senaryolar.
Modern Standart: Ultralytics YOLO26 ile Tanışın
YOLOv10 çığır açan NMS içermeyen paradigmayı tanıtmış ve EfficientDet ilkeli ölçeklendirmeyi sergilemiş olsa da, bilgisayarlı görü alanı gelişmeye devam etti. Bugün yeni projelere başlayan geliştiriciler için Ultralytics YOLO26 tartışmasız en güncel teknolojiyi temsil eder. Ocak 2026'da piyasaya sürülen model, tüm dünyaların en iyilerini Ultralytics Platform içinde son derece cilalı ve üretime hazır bir pakette birleştirir.
Neden YOLO26 Rakiplerinden Daha İyi?
- Uçtan Uca NMS İçermeyen Tasarım: YOLO26, YOLOv10'da öncülük edilen uçtan uca NMS içermeyen mimariyi doğal olarak benimseyerek dağıtımı kolaylaştırır ve çıkarımı hızlandırır.
- %43'e Varan Daha Hızlı CPU Çıkarımı: Özel hızlandırıcılardan yoksun uç cihazlar için YOLO26, standart CPU'larda verimli çalışacak şekilde özel olarak optimize edilmiştir.
- Gelişmiş MuSGD Optimize Edici: LLM eğitim yeniliklerinden esinlenen YOLO26, inanılmaz derecede kararlı eğitim ve hızlı yakınsama için SGD ve Muon hibritini kullanır, bu da EfficientDet'e kıyasla eğitim verimliliğini büyük ölçüde artırır.
- ProgLoss + STAL: Bu geliştirilmiş kayıp fonksiyonları, hem YOLOv10 hem de EfficientDet için geleneksel bir zayıf nokta olan küçük nesne tanımada kayda değer artışlar sağlar.
- DFL Kaldırma: Distribution Focal Loss kaldırılarak, YOLO26 OpenVINO ve CoreML dahil olmak üzere neredeyse tüm donanım formatlarına sorunsuz bir şekilde aktarılır.
Furthermore, YOLO26 provides unmatched versatility. While EfficientDet and YOLOv10 are strictly detection models, YOLO26 seamlessly handles oriented bounding boxes, image classification, and instance segmentation using the same intuitive Ultralytics Python package.
Ultralytics ile Kullanım Kolaylığı
Ultralytics tarafından sağlanan bakımlı ekosistem, sorunsuz bir geliştirici deneyimi sağlar. Bir modeli eğitmek, doğrulamak ve TensorRT entegrasyonuna aktarmak sadece birkaç satır kod alır.
from ultralytics import YOLO
# Load a pre-trained YOLOv10 model (or upgrade to YOLO26 natively)
model = YOLO("yolov10n.pt")
# Train the model efficiently on a custom dataset
model.train(data="coco8.yaml", epochs=50, imgsz=640)
# Run inference and immediately visualize results
results = model("https://ultralytics.com/images/bus.jpg")
results[0].show()
# Export for rapid deployment
model.export(format="engine", half=True)Sonuç
YOLOv10 ve EfficientDet'i karşılaştırırken, seçim büyük ölçüde çerçeve tercihlerinize ve hız kısıtlamalarınıza bağlıdır. EfficientDet, TensorFlow ekosistemi içinde model ölçeklendirmeye yapılandırılmış bir yaklaşım sunar. Ancak YOLOv10, NMS içermeyen mimarisi sayesinde üstün gerçek zamanlı performans, daha düşük bellek kullanımı ve daha basit bir dağıtım yolu sağlar.
Mutlak en iyi performans dengesi, kullanım kolaylığı ve çok görevli çok yönlülük için Ultralytics Platform seviyesine yükseltmek ve YOLO26 kullanmak şiddetle tavsiye edilir. YOLOv10'un NMS içermeyen yeniliklerini alır, MuSGD optimize edici gibi son teknoloji eğitim tekniklerini uygular ve bunu devasa bir küresel topluluk tarafından desteklenen, sağlam, açık kaynaklı bir çerçeve içinde sunar.