EfficientDet - YOLOX Karşılaştırması: Kapsamlı Teknik Bir Karşılaştırma
Doğru nesne algılama mimarisini seçmek, bilgisayar görüşü geliştirmede çok önemli bir karardır. Bu alana yön veren iki öne çıkan model, Google tarafından optimum ölçeklenebilirlik için geliştirilen EfficientDet ve Megvii'den yüksek performanslı, ankraj içermeyen bir detectör olan YOLOX'tir. EfficientDet, bileşik ölçeklendirme kullanarak katı hesaplama bütçeleri dahilinde doğruluğu en üst düzeye çıkarmaya odaklanırken, YOLOX çıkarım hızına ve basitleştirilmiş eğitim hatlarına öncelik verir.
Bu kılavuz, projeniz için en uygun olanı seçmenize yardımcı olmak amacıyla mimarilerinin, performans metriklerinin ve ideal dağıtım senaryolarının ayrıntılı bir analizini sunar. Ek olarak, Ultralytics YOLO11 gibi modern alternatiflerin, bu öncüllerin güçlü yönlerini birleşik, kullanıcı dostu bir çerçevede nasıl entegre ettiğini inceliyoruz.
EfficientDet: Ölçeklenebilir Verimlilik
EfficientDet, nesne detect modellerini verimli bir şekilde ölçeklendirme sorununu ele almak için tanıtıldı. Boyutları keyfi olarak ölçeklendiren önceki mimarilerden farklı olarak EfficientDet, çözünürlüğü, derinliği ve genişliği düzgün bir şekilde ölçeklendiren ilkeli bir bileşik ölçeklendirme yöntemi kullanır.
Mimari ve Temel Özellikler
EfficientDet'in temel yeniliği, Çift Yönlü Özellik Piramidi Ağı (BiFPN)'dır. Geleneksel FPN'ler, farklı ölçeklerden gelen özellikleri ayrım yapmadan toplar, ancak BiFPN, kaynaştırma sırasında en önemli özellikleri vurgulamak için öğrenilebilir ağırlıklar sunar. Bir EfficientNet backbone ile birlikte bu, modelin önemli ölçüde daha az parametre ve FLOP (Saniye Başına Kayan Nokta İşlemleri) ile son teknoloji doğruluğu elde etmesini sağlar.
- Bileşik Ölçeklendirme: Basit bir bileşik katsayı kullanarak ağ genişliğini, derinliğini ve görüntü çözünürlüğünü aynı anda ölçeklendirir.
- BiFPN: Kolay ve hızlı çok ölçekli özellik birleştirmeyi sağlar.
- Verimlilik: mAP (ortalama Ortalama Kesinlik) değerini en üst düzeye çıkarırken kaynak kullanımını en aza indirecek şekilde optimize edilmiştir.
Model Meta Verileri
- Yazarlar: Mingxing Tan, Ruoming Pang ve Quoc V. Le
- Kuruluş:Google
- Tarih: 2019-11-20
- Arxiv:EfficientDet: Ölçeklenebilir ve Verimli Nesne Algılama
EfficientDet hakkında daha fazla bilgi edinin
YOLOX: Bağlantısız Evrim
YOLOX, YOLO serisinde bağlantısız bir tasarıma doğru bir değişimi temsil eder. Önceden tanımlanmış bağlantı kutularına olan ihtiyacı ortadan kaldırarak, YOLOX eğitim sürecini basitleştirir ve çeşitli veri kümelerinde genelleştirmeyi geliştirir.
Mimari ve Temel Özellikler
YOLOX, sınıflandırma ve regresyon görevlerini farklı dallara ayırarak detect head'i ayırır. Bu "ayrılmış head" tasarımı genellikle daha hızlı yakınsamaya ve daha iyi performansa yol açar. Ayrıca, eğitim süresini kısaltan ve doğruluğu artıran, pozitif örnekleri dinamik olarak atayan gelişmiş bir etiket atama stratejisi olan SimOTA'yı içerir.
- Çapa Olmayan: Manuel çapa kutusu ayarlama ihtiyacını ortadan kaldırarak tasarım karmaşıklığını azaltır.
- Ayrıştırılmış Kafa (Decoupled Head): Sınıflandırma ve yerelleştirme görevlerini ayırarak performansı artırır.
- Gelişmiş Artırma: Güçlü eğitim için Mosaic ve MixUp artırmalarını kullanır.
Model Meta Verileri
- Yazarlar: Zheng Ge, Songtao Liu, Feng Wang, Zeming Li ve Jian Sun
- Kuruluş:Megvii
- Tarih: 2021-07-18
- Arxiv:YOLOX: 2021'de YOLO Serisini Aşmak
YOLOX hakkında daha fazla bilgi edinin
Performans ve Kıyaslama Karşılaştırması
Bu iki model arasındaki ödünleşimler farklıdır. EfficientDet, parametre verimliliği için tasarlanmıştır ve bu da onu CPU bağlantılı uygulamalar veya model boyutunun (depolama) birincil kısıtlama olduğu senaryolar için güçlü bir rakip yapar. Tersine, YOLOX, NVIDIA T4 veya V100 gibi cihazlarda hızlı çıkarım hızları sağlamak için donanım dostu işlemlerden yararlanarak GPU gecikmesi için optimize edilmiştir.
Aşağıdaki tablo, COCO veri kümesindeki bu farklılıkları vurgulamaktadır. YOLOX modellerinin, benzer doğruluğa sahip EfficientDet varyantlarına kıyasla GPU donanımında genellikle daha hızlı çıkarım hızları sunduğuna dikkat edin.
| 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 |
| YOLOXnano | 416 | 25.8 | - | - | 0.91 | 1.08 |
| YOLOXtiny | 416 | 32.8 | - | - | 5.06 | 6.45 |
| YOLOXs | 640 | 40.5 | - | 2.56 | 9.0 | 26.8 |
| YOLOXm | 640 | 46.9 | - | 5.43 | 25.3 | 73.8 |
| YOLOXl | 640 | 49.7 | - | 9.04 | 54.2 | 155.6 |
| YOLOXx | 640 | 51.1 | - | 16.1 | 99.1 | 281.9 |
Temel Çıkarımlar
- Gecikme ve Verim: YOLOX-s, T4 TensorRT'de 2.56 ms'lik baş döndürücü bir hıza ulaşarak, daha fazla parametreye sahip olmasına rağmen EfficientDet-d0'dan (3.92 ms) önemli ölçüde daha hızlıdır. Bu, YOLOX'un GPU'larda gerçek zamanlı çıkarım için üstün optimizasyonunu gösterir.
- Model Boyutu: EfficientDet-d0, son derece sınırlı depolama alanına sahip uç cihazlar için oldukça rekabetçi olmaya devam ediyor ve 3,9M'lik kompakt bir parametre sayısına sahip.
- Ölçeklendirme: EfficientDet-d7, yüksek bir mAP değerine (53,7) ulaşır, ancak bu yüksek gecikme (128ms) pahasına olur ve bu da onu daha hafif modellere kıyasla canlı video akışları için daha az uygun hale getirir.
Ultralytics'in Avantajı
EfficientDet ve YOLOX önemli tekniklere öncülük etmiş olsa da, bilgisayarlı görü alanı hızla ilerliyor. Ultralytics YOLO11, önceki nesillerden elde edilen en iyi mimari dersleri birleşik, yüksek performanslı bir pakette birleştirerek en son teknolojiyi temsil ediyor.
Geliştiriciler ve araştırmacılar için Ultralytics, eski modellere göre zorlayıcı avantajlar sunar:
- Kullanım Kolaylığı: Ultralytics Python API, basitlik için tasarlanmıştır. Bir modeli yükleyebilir, bir görüntü üzerinde tahmin yapabilir ve sonuçları yalnızca birkaç satır kodla görselleştirebilir, böylece YZ çözümleri için giriş engelini düşürebilirsiniz.
- Kapsamlı Ekosistem: Bağımsız havuzların aksine, Ultralytics modelleri sağlam bir ekosistem tarafından desteklenmektedir. Bu, Weights & Biases ve ClearML gibi MLOps araçlarıyla sorunsuz entegrasyonların yanı sıra aktif topluluk desteğini de içerir.
- Performans Dengesi: Ultralytics YOLO modelleri, hız ve doğruluk arasında optimum dengeyi sağlamak için tasarlanmıştır. Genellikle YOLOX'u gecikme süresinde geride bırakırken, EfficientDet'in parametre verimliliğini yakalar.
- Bellek Gereksinimleri: Ultralytics modelleri, birçok transformatör tabanlı veya eski CNN mimarisine kıyasla eğitim sırasında daha düşük CUDA bellek kullanımı için optimize edilmiştir ve bu da standart donanımda daha büyük toplu işleri eğitmenize olanak tanır.
- Çeşitlilik: Tek bir Ultralytics çerçevesi Nesne Tespiti, Örnek Segmentasyonu, Poz Tahmini, Sınıflandırma ve Yönlendirilmiş Sınırlayıcı Kutuları (OBB)'nı destekler. Bu çok yönlülük, farklı görevler için farklı kod tabanlarını öğrenme ihtiyacını ortadan kaldırır.
Basit Çıkarım Örneği
Karmaşık eski işlem hatlarına kıyasla Ultralytics YOLO11 ile çıkarım çalıştırmanın ne kadar kolay olduğunu görün:
from ultralytics import YOLO
# Load a pre-trained YOLO11n model
model = YOLO("yolo11n.pt")
# Run inference on a local image
results = model("bus.jpg")
# Display the results
results[0].show()
Sonuç: İdeal Kullanım Durumları
EfficientDet, YOLOX ve Ultralytics YOLO arasında seçim yapmak, özel kısıtlamalarınıza bağlıdır.
- EfficientDet'i Seçin; uygulamanız depolama alanı ve FLOP'ların mutlak darboğaz olduğu, çok küçük gömülü mikro denetleyiciler gibi donanımlarda dağıtılıyorsa. İlkeli ölçeklendirmesi, model boyutu üzerinde ince ayarlı kontrol sağlar.
- GPU'lar üzerinde dağıtım yapıyorsanız ve ham hıza ihtiyacınız varsa YOLOX'u seçin. Mimarisi, ankraj tabanlı yöntemlerin bazı operasyonel yüklerinden kaçınarak, desteklenen donanımda gerçek zamanlı video analitiği için oldukça etkili olmasını sağlar.
- Ultralytics YOLO11'i en iyi çok yönlü performans için seçin. YOLOX'un hızını modern mimari tasarımların verimliliğiyle birleştirir. Ayrıca, ekosistemi, belgelendirmesi ve çoklu görev desteği geliştirme süresini önemli ölçüde azaltarak hem hızlı prototipleme hem de ölçeklenebilir üretim dağıtımları için üstün bir seçimdir.
Diğer Model Karşılaştırmaları
Önde gelen bilgisayarlı görü modelleri arasındaki teknik farklılıkları daha derinlemesine inceleyin:
- YOLOv8 - EfficientDet
- YOLO11 - EfficientDet Karşılaştırması
- RT-DETR vs. YOLOX
- YOLOv8 - YOLOX karşılaştırması
- YOLO11 - YOLOX karşılaştırması