İçeriğe geç

EfficientDet - DAMO-YOLO Karşılaştırması: Teknik Bir İnceleme

Bilgisayarla görmenin hızla gelişen ortamında, doğru nesne algılama mimarisini seçmek uygulama başarısı için kritik öneme sahiptir. Alanı şekillendiren iki önemli mimari, Google Research tarafından geliştirilen EfficientDet ve Alibaba'nın DAMO Akademisi tarafından geliştirilen YOLO'dur. Her ikisi de performansı en üst düzeye çıkarmayı amaçlasa da tasarım felsefelerinde önemli ölçüde farklılaşmaktadır: biri parametre verimliliği ve ölçeklenebilirliğe odaklanırken, diğeri endüstriyel donanımda düşük gecikmeli çıkarımı hedeflemektedir.

Bu kılavuz, geliştiricilerin bilinçli kararlar vermesine yardımcı olmak için bu iki modelin mimarilerini, performans ölçümlerini ve ideal kullanım durumlarını karşılaştırarak derinlemesine bir teknik analiz sunar.

Performans Analizi: Verimlilik ve Gecikme

Aşağıdaki kıyaslamalar EfficientDet ve YOLO arasındaki farklı değiş tokuşları göstermektedir. EfficientDet düşük parametre sayısı ve FLOP'ları ile ünlüdür, bu da onu teorik olarak verimli kılarken, YOLO GPU'larda gerçek dünya çıkarım hızı için optimize edilmiştir.

Modelboyut
(piksel)
mAPval
50-95
Hız
CPU ONNX
(ms)
Hız
T4 TensorRT10
(ms)
parametreler
(M)
FLOP'lar
(B)
EfficientDet-d064034.610.23.923.92.54
EfficientDet-d164040.513.57.316.66.1
EfficientDet-d264043.017.710.928.111.0
EfficientDet-d364047.528.019.5912.024.9
EfficientDet-d464049.742.833.5520.755.2
EfficientDet-d564051.572.567.8633.7130.0
EfficientDet-d664052.692.889.2951.9226.0
EfficientDet-d764053.7122.0128.0751.9325.0
DAMO-YOLOt64042.0-2.328.518.1
DAMO-YOLOs64046.0-3.4516.337.8
DAMO-YOLOm64049.2-5.0928.261.8
DAMO-YOLOl64050.8-7.1842.197.3

Temel Kıyaslama Çıkarımları

Yukarıdaki verilerden birkaç kritik ayrım ortaya çıkmaktadır:

  • GPU Gecikme Hakimiyeti: YOLO , GPU donanımında önemli ölçüde daha yüksek çıkarım hızları göstermektedir. Örneğin, DAMO-YOLOm, T4 GPU'da sadece 5,09 ms'lik bir gecikmeyle 49,2 mAP 'ye ulaşır. Buna karşılık, karşılaştırılabilir EfficientDet-d4 (49,7 mAP) 33,55 ms gerektirir - neredeyse 6 kat daha yavaş.
  • Parametre Verimliliği: EfficientDet model sıkıştırma metriklerinde üstündür. EfficientDet-d0 modeli yalnızca 3,9 milyon parametre ve 2,54 milyar FLOP kullanır ve depolama alanı kısıtlı cihazlar için ideal olan hafif bir ayak izi sunar.
  • CPU Performansı: EfficientDet, CPU performansı için yerleşik ölçütler sağlayarak hızlandırılmamış uç cihazlar için öngörülebilir bir seçimdir. Bununla birlikte, karmaşık özellik füzyon katmanları genellikle daha basit mimarilere kıyasla daha yavaş gerçek dünya verimiyle sonuçlanır.

EfficientDet: Ölçeklenebilir ve Verimli

EfficientDet, model boyutlarını ölçeklendirmek için ilkeli bir yol sunarak nesne algılamada devrim yarattı. EfficientNet backbone üzerine inşa edilen bu sistem, teorik hesaplama maliyetini (FLOPs) en aza indirirken yüksek doğruluk elde etmeyi amaçlamaktadır.

VerimliDetaylar:

Mimari Öne Çıkanlar

EfficientDet'in temel yeniliği iki ana bileşende yatmaktadır:

  1. BiFPN (Çift Yönlü Özellik Piramidi Ağı): Farklı ölçeklerdeki özellikleri toplayan geleneksel FPN'lerin aksine, BiFPN farklı girdi özelliklerine öğrenilebilir ağırlıklar ekler ve bilginin hem yukarıdan aşağıya hem de aşağıdan yukarıya tekrar tekrar akmasına izin verir. Bu özellik füzyonunu geliştirir ancak hesaplama karmaşıklığını artırır.
  2. Bileşik Ölçeklendirme: EfficientDet backbone, BiFPN'i, sınıf/kutu ağını ve girdi çözünürlüğünü birlikte ölçeklendiren bir bileşik katsayı önermektedir. Bu, sadece bir boyutu (derinlik veya genişlik gibi) keyfi olarak ölçeklendirmek yerine ağın tüm parçalarının dengeli bir şekilde büyümesini sağlar.

Güçlü ve Zayıf Yönler

EfficientDet'in birincil gücü teorik verimliliğidir. YOLOv3 veya RetinaNet gibi önceki dedektörlerden çok daha az parametre ile son teknoloji ürünü doğruluğa ulaşır. Bununla birlikte, derinlemesine ayrılabilir konvolüsyonların yoğun kullanımı ve BiFPN'in karmaşık bellek erişim modelleri, modern GPU'larda daha düşük kullanıma yol açabilir, bu da daha düşük FLOP'lara rağmen daha yüksek gecikme ile sonuçlanabilir.

Dağıtımla İlgili Hususlar

EfficientDet düşük FLOP'lara sahip olsa da, "düşük FLOP'lar" her zaman "hızlı çıkarım" anlamına gelmez. GPU'lar veya TPU'lar gibi donanımlarda, bellek bant genişliği ve çekirdek başlatma ek yükleri genellikle daha önemlidir. EfficientDet' in karmaşık grafik yapısı bazen gerçek zamanlı çıkarım senaryolarında bir darboğaz olabilir.

YOLO: Hız Odaklı İnovasyon

YOLO belirli bir hedefle tasarlanmıştır: endüstriyel donanımlarda yüksek performans ve düşük gecikme süresi arasındaki boşluğu doldurmak. Algılama görevleri için en uygun yapıyı bulmak üzere en ileri nöral mimari arama (NAS) teknolojilerini içermektedir.

YOLO Detaylar:

Mimari Öne Çıkanlar

YOLO , YOLO ailesine çeşitli "yeni teknoloji" bileşenleri sunmaktadır:

  1. MAE-NAS Backbone: Değişken girdi çözünürlüklerini etkili bir şekilde işleyen verimli omurgaları keşfetmek için Maksimum Entropi tarafından yönlendirilen Sinirsel Mimari Arama (NAS) kullanır.
  2. RepGFPN: Bu, standart Genelleştirilmiş FPN üzerinde bir iyileştirmedir ve füzyon bloğunu düzene sokmak için yeniden parametrelendirmeyi içerir ve donanım kullanımını en üst düzeye çıkarır.
  3. ZeroHead & Al ignedOTA: "ZeroHead" tasarımı algılama kafasının karmaşıklığını önemli ölçüde azaltırken, AlignedOTA (Optimal Transport Assignment) sınıflandırma ve regresyon arasındaki uyumsuzluğu çözmek için eğitim sırasında sağlam bir etiket atama stratejisi sağlar.

Güçlü ve Zayıf Yönler

YOLO ham hız konusunda üstündür. Donanım hızlandırma dostu yapılara öncelik vererek ( TensorRT gibi), dikkate değer bir verim elde eder. Bununla birlikte, NAS tarafından oluşturulan karmaşık mimarilere dayanması, daha basit, elle hazırlanmış mimarilere kıyasla özel araştırma amaçları için değiştirilmesini veya ince ayar yapılmasını daha zor hale getirebilir. Ayrıca, daha yaygın YOLO sürümlerinde bulunan geniş topluluk desteği ve çoklu platform kullanım kolaylığından yoksundur.

Ultralytics YOLO11: Bütünsel Alternatif

EfficientDet parametre verimliliği sunarken, YOLO GPU hızı sunar, Ultralytics YOLO11 geliştirici dostu bir ekosistemde her ikisinin de üstün bir dengesini sağlar. Uç yapay zekadan bulut dağıtımlarına kadar birçok pratik uygulama için YOLO11 en uygun seçimi temsil ediyor.

YOLO11 hakkında daha fazla bilgi edinin

Neden Ultralytics Modellerini Seçmelisiniz?

  1. Eşsiz Çok Yönlülük: Öncelikle nesne algılayıcıları olan EfficientDet ve YOLO'nun aksine, Ultralytics YOLO11 , örnek segmentasyonu, poz tahmini, yönlendirilmiş sınırlayıcı kutular (OBB) ve görüntü sınıflandırması dahil olmak üzere çok çeşitli bilgisayarla görme görevlerini yerel olarak destekler. Bu, çeşitli proje gereksinimleri için tek bir çerçeve kullanmanıza olanak tanır.
  2. Performans Dengesi: YOLO11 doğruluk-gecikme sınırında sınırları zorlar. Özel gerçek zamanlı modellerle rekabetçi çıkarım hızlarını korurken, genellikle daha ağır modellerin doğruluğuyla eşleşir veya aşar.
  3. Kullanım Kolaylığı ve Ekosistem: Ultralytics API basitlik için tasarlanmıştır. Kapsamlı dokümantasyon ve topluluk desteği ile geliştiriciler kurulumdan eğitime dakikalar içinde geçebilirler. Ekosistem, veri açıklama, deney izleme ve ONNX, TensorRT, CoreML ve TFLite gibi formatlara tek tıklamayla dışa aktarma için sorunsuz entegrasyonlar içerir.
  4. Eğitim Verimliliği: Ultralytics modelleri hızlı yakınsama için optimize edilmiştir. Gelişmiş veri artırma stratejileri ve verimli veri yükleyicileri kullanarak yüksek performanslı modellerin eğitimiyle ilgili süreyi ve maliyeti azaltırlar.
  5. Bellek Verimliliği: Transformer tabanlı modeller veya eski mimarilerle karşılaştırıldığında YOLO11 , eğitim için önemli ölçüde daha az CUDA belleği gerektirir ve bu da onu tüketici sınıfı GPU'larda erişilebilir hale getirir.

Kod Örneği: YOLO11 ile Başlarken

Ultralytics ile son teknoloji algılama uygulamak basittir. Aşağıdaki kod parçacığı, önceden eğitilmiş bir YOLO11 modelinin nasıl yükleneceğini ve bir görüntü üzerinde çıkarımın nasıl çalıştırılacağını göstermektedir:

from ultralytics import YOLO

# Load a pre-trained YOLO11n model
model = YOLO("yolo11n.pt")

# Run inference on a local image or URL
results = model.predict("https://ultralytics.com/images/bus.jpg")

# Display the results
results[0].show()

# Export the model to ONNX format for deployment
path = model.export(format="onnx")

Sorunsuz Entegrasyon

Ultralytics modelleri, popüler MLOps araçlarıyla zahmetsizce entegre olur. İster günlük kaydı için MLflow, ister hiperparametre optimizasyonu için Ray Tune kullanıyor olun, işlevsellik doğrudan kütüphaneye yerleştirilmiştir.

Sonuç

EfficientDet ve YOLO arasındaki karşılaştırmada, seçim büyük ölçüde belirli donanım kısıtlamalarına bağlıdır. EfficientDet, teorik verimlilik ve parametre sayısının birincil darboğaz olduğu senaryolar için güçlü bir aday olmaya devam etmektedir. YOLO, gecikmenin çok önemli olduğu modern GPU'larda çalışan yüksek verimli uygulamalar için açık ara kazanandır.

Ancak, her iki dünyanın da en iyilerini -yüksek performans, kullanım kolaylığı ve çoklu görev kapasitesi- bir araya getiren bir çözüm içinUltralytics YOLO11 endüstri standardı olarak öne çıkıyor. Sağlam ekosistemi ve sürekli iyileştirmeleri, geliştiricilerin ölçeklenebilir bilgisayarla görme çözümleri oluşturmak için en güvenilir araçlara sahip olmasını sağlar.

Diğer Karşılaştırmaları İnceleyin

Nesne algılama modellerinin manzarasını daha iyi anlamak için bu ek karşılaştırmaları inceleyin:


Yorumlar