EfficientDet ve YOLOX#
Modern bir bilgisayarlı görü işlem hattı tasarlarken doğru modeli seçmek, hem doğruluğu hem de gerçek zamanlı kullanıma uygunluğu belirleyen kritik bir karardır. Bu teknik kılavuz, sinir ağlarının gelişiminde önemli rol oynayan iki mimariyi (Google'ın EfficientDet'i ve Megvii'nin YOLOX'ini) derinlemesine karşılaştırıyor. Mimarilerinin yaklaşımlarını inceleyecek, kıyaslama performanslarını değerlendirecek ve yeni yayımlanan Ultralytics YOLO26 gibi en yeni çözümlerle nasıl karşılaştırıldıklarını ele alacağız.
EfficientDet'e Genel Bakış#
Google Brain ekibinin geliştirdiği EfficientDet, model ölçeklemeye son derece yapılandırılmış bir yaklaşım getirdi ve yüksek doğruluğun, çok sayıda parametre içeren çağdaş ağlardan önemli ölçüde daha az parametreyle elde edilebileceğini gösterdi.
EfficientDet ayrıntıları:
- Yazarlar: Mingxing Tan, Ruoming Pang ve Quoc V. Le
- Kuruluş: Google
- Tarih: 2019-11-20
- ArXiv: 1911.09070
- GitHub: google/automl/efficientdet
- Belgeler: EfficientDet Belgeleri
Mimari Öne Çıkanlar#
EfficientDet, EfficientNet omurgasını temel alır ve ağın çözünürlüğünü, derinliğini ve genişliğini eşit biçimde ölçeklendiren bileşik bir yöntem uygular. Ayırt edici özelliği, çok ölçekli özelliklerin hızlı ve etkili biçimde birleştirilmesini sağlayan Çift Yönlü Özellik Piramit Ağı'dır (BiFPN). Farklı giriş özellikleri için öğrenilebilir ağırlıklar kullanan BiFPN, ağın uzamsal açıdan daha önemli verilere öncelik vermesini sağlar.
EfficientDet'in teorik FLOP değerleri dikkat çekici derecede düşük olsa da TensorFlow ekosistemine ve eski AutoML yapılandırmalarına bağımlılığı, modeli modern ve hızla gelişen PyTorch iş akışlarına entegre etmeyi zorlaştırabilir. Ayrıca karmaşık çok dallı ağ yapısı, eğitim sırasında modern YOLO varyantlarına kıyasla beklenenden daha fazla bellek kullanımına yol açabilir.
EfficientDet hakkında daha fazla bilgi edin
YOLOX'e Genel Bakış#
İki yıl sonra yayımlanan YOLOX, geleneksel YOLO mimarisini bağlantı noktası içermeyen bir çatıya dönüştürerek akademik araştırma ile endüstriyel dağıtım arasındaki boşluğu kapatmayı amaçladı.
YOLOX Ayrıntıları:
- Yazarlar: Zheng Ge, Songtao Liu, Feng Wang, Zeming Li ve Jian Sun
- Kuruluş: Megvii
- Tarih: 2021-07-18
- ArXiv: 2107.08430
- GitHub: Megvii-BaseDetection/YOLOX
- Belgeler: YOLOX Belgeleri
Mimari Öne Çıkanlar#
YOLOX, nesne tespiti yaklaşımını önemli ölçüde basitleştirdi. Bağlantı noktası içermeyen tasarıma geçerek karmaşık ve veri kümesine özgü bağlantı noktası ayarlarını ortadan kaldırdı, böylece sezgisel ayarlama yükünü azalttı. Ayrıca sınıflandırma ve konum belirleme görevlerini birbirinden ayıran bağımsız bir başlık ekleyerek yakınsama hızını önemli ölçüde artırdı. Bunun yanı sıra SimOTA etiket atama stratejisi, eğitim sırasında pozitif örneklerin dağılımını dinamik biçimde optimize etti.
Bu gelişmelere rağmen YOLOX depolarını yönetmek, çoğu zaman C++ uzantılarını elle derlemeyi ve karmaşık bağımlılıklarla uğraşmayı gerektirir; bu durum, daha az deneyimli ekiplerin modelleri hızla dağıtmasını zorlaştırabilir.
YOLOX hakkında daha fazla bilgi edin
Performans Karşılaştırması#
Modelleri üretim ortamları için değerlendirirken Ortalama Hassasiyet (mAP) ile çıkarım hızı arasındaki dengeyi gözetmek çok önemlidir. Aşağıdaki tabloda EfficientDet ve YOLOX aileleri, standart COCO kıyaslamaları üzerinden doğrudan karşılaştırılıyor.
| Model | boyut (piksel) | mAPval 50-95 | Hız CPU ONNX (ms) | Hız T4 TensorRT10 (ms) | parametre (M) | FLOPs (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 |
EfficientDet, büyük d7 varyantlarında yüksek doğruluk sağlarken YOLOX, GPU donanımında (TensorRT aracılığıyla) çok daha düşük gecikme sunar. Bu nedenle otonom sürüş veya spor takibi gibi yüksek FPS gerektiren uygulamalar için daha iyi bir seçenektir.
Kullanım Alanları ve Öneriler#
EfficientDet ile YOLOX arasında seçim yapmak, projenin gereksinimlerine, dağıtım kısıtlarına ve ekosistem tercihlerine bağlıdır.
EfficientDet Ne Zaman Seçilmeli#
EfficientDet şu durumlarda iyi bir seçenektir:
- Google Cloud ve TPU İşlem Hatları: EfficientDet'in yerel optimizasyona sahip olduğu, Google Cloud Vision API'leriyle veya TPU altyapısıyla sıkı biçimde bütünleşik sistemler.
- Bileşik Ölçekleme Araştırmaları: Dengeli ağ derinliği, genişliği ve çözünürlüğü ölçeklemenin etkilerini incelemeye odaklanan akademik karşılaştırmalar.
- LiteRT ile Mobil Dağıtım: Android veya gömülü Linux cihazlarına dağıtım için özellikle LiteRT (eski adıyla TensorFlow Lite) biçimine dışa aktarma gerektiren projeler.
YOLOX Ne Zaman Seçilmeli#
YOLOX şu durumlarda önerilir:
- Çapasız Algılama Araştırmaları: Yeni algılama başlıklarını veya kayıp fonksiyonlarını denemek için YOLOX'in yalın, çapasız mimarisini temel alan akademik araştırmalar.
- Ultra Hafif Uç Cihazlar: YOLOX-Nano sürümünün son derece küçük boyutunun (0.91M parametre) kritik olduğu mikrodenetleyicilere veya eski mobil donanımlara dağıtım.
- SimOTA Etiket Atama Çalışmaları: Optimal taşıma tabanlı etiket atama stratejilerini ve bunların eğitim yakınsaması üzerindeki etkilerini inceleyen araştırma projeleri.
Ultralytics'i (YOLO26) Ne Zaman Seçmeli#
Yeni projelerin çoğu için Ultralytics YOLO26, performans ve geliştirici deneyiminin en iyi bileşimini sunar:
- NMS Olmadan Uç Dağıtımı: Maksimum Olmayan Bastırma son işleminin karmaşıklığı olmadan tutarlı ve düşük gecikmeli çıkarım gerektiren uygulamalar.
- Yalnızca CPU Kullanılan Ortamlar: YOLO26'nın CPU'da %43'e varan daha hızlı çıkarımının belirleyici bir avantaj sağladığı, özel GPU hızlandırması bulunmayan cihazlar.
- Küçük Nesne Algılama: ProgLoss ve STAL'ın çok küçük nesnelerde doğruluğu önemli ölçüde artırdığı havadan drone görüntüleri veya IoT sensör analizi gibi zorlu senaryolar.
Ultralytics'in Avantajı: YOLO26 ile Tanış#
EfficientDet ve YOLOX kendi dönemlerinde önemli atılımları temsil etse de modern bilgisayarlı görü daha fazla çok yönlülük, daha yalın iş akışları ve tavizsiz hız gerektiriyor. Kullanım kolaylığına, daha düşük bellek gereksinimlerine ve bakımı iyi yapılan bir ekosisteme öncelik veren geliştiricilere, Ocak 2026'da yayımlanan Ultralytics YOLO26 sürümüne yükseltmelerini önemle öneriyoruz.
YOLO26, YOLO ailesinde bir paradigma değişimini temsil ediyor ve YOLOX ile EfficientDet gibi eski modellerde görülen sınırlamaları sistematik olarak aşıyor:
- Uçtan Uca, NMS Gerektirmeyen Tasarım: Pahalı bir son işleme adımı olan Maksimum Olmayan Bastırma (NMS) gerektiren EfficientDet ve YOLOX'in aksine YOLO26, isteğe bağlı bire bir başlığı (
nms=False) aracılığıyla yerel uçtan uca çıkarımı destekliyor. Bu, NMS kaynaklı gecikme darboğazlarını ortadan kaldırıyor ve uç dağıtımını önemli ölçüde basitleştiriyor. - CPU'da %43'e Varan Daha Hızlı Çıkarım: YOLO26, stratejik mimari ayarlamaları ve DFL'nin Kaldırılması (Dağılımsal Odak Kaybı) sayesinde özel GPU'su olmayan ortamlar için benzersiz biçimde optimize edilmiştir ve Raspberry Pi gibi uç yapay zekâ donanımlarında mükemmel performans sunar.
- MuSGD Optimizasyon Algoritması: LLM eğitimindeki yeniliklerden (Moonshot AI'ın Kimi K2'si gibi) ilham alan YOLO26, SGD ile Muon'un hibritini kullanıyor. Bu, eski TensorFlow tahminleyicilerinden çok daha üstün, son derece kararlı bir eğitim ve daha hızlı yakınsama sağlıyor.
- ProgLoss + STAL: Gelişmiş kayıp fonksiyonları, hem YOLOX hem de EfficientDet için tarihsel bir zayıflık olan küçük nesneleri tanımada dikkate değer iyileştirmeler sağlıyor. Bu, drone analitiği ve IoT için kritik önem taşıyor.
- İnanılmaz Çok Yönlülük: EfficientDet ve YOLOX yalnızca sınırlayıcı kutu algılayıcılarıyken YOLO26 yerel olarak örnek segmentasyonunu, poz tahminini (Artık Artık Olabilirlik Tahmini aracılığıyla) ve Yönlendirilmiş Sınırlayıcı Kutuları (OBB) destekliyor.
Daha Yalın Kullanıcı Deneyimi ve Eğitim Verimliliği#
YOLOX gibi modellerde karşılaşılan en büyük zorluklardan biri eğitim ortamını kurmaktır. Birleşik Ultralytics Python API, son teknoloji ürünü bir modeli eğitmek için yalnızca birkaç satır kod yazmanın yeterli olduğu anlamına geliyor. Ayrıca YOLO modelleri, Transformer ağırlıklı modellere veya eski çok dallı ağlara kıyasla CUDA bellek kullanımını önemli ölçüde azaltan, yüksek düzeyde optimize edilmiş veri yükleyicilere sahip.
from ultralytics import YOLO
# Son teknoloji YOLO26n modelini yükle (nms=False ile NMS içermeyen çıkarım kullanılabilir)
model = YOLO("yolo26n.pt")
# Modeli özel veri kümenle eğit
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)
# Uç dağıtım için modeli ONNX veya OpenVINO'ya sorunsuzca aktar
model.export(format="openvino")Sonuç: Doğru Seçimi Yapmak#
TensorFlow ekosistemine derinlemesine entegre olmuş eski bir sistemi sürdürüyor olsan bile, özellikle büyük ölçekli bileşik ölçeklemenin teorik olarak gerekli olduğu senaryolarda EfficientDet kararlı bir seçenek olmaya devam ediyor. Öte yandan, eski anchor-free kod tabanlarında saf hıza ihtiyacın varsa YOLOX hızlı ve güvenilir bir algılayıcı olarak öne çıkıyor.
Ancak üretime alınacak her yeni proje için tercih hiç şüphesiz Ultralytics YOLO26 olmalı (eski kurumsal destek için yüksek kararlılığa sahip YOLO11 da tercih edilebilir). İsteğe bağlı uçtan uca, NMS gerektirmeyen çıkarım; çok daha yüksek CPU hızları ve OpenVINO ile TensorRT gibi platformlar üzerinden sorunsuz bir dağıtım hattı sunan YOLO26, bilgisayarlı görü uygulamalarının geleceğe hazır, son derece isabetli ve bakımı inanılmaz kolay olmasını sağlıyor.