EfficientDet ve YOLOv9#
Bilgisayarlı görü alanı, sinir ağı tasarımındaki sürekli yeniliklerle şekillendi. Model seçerken hesaplama verimliliği ile algılama doğruluğu arasında doğru dengeyi bulmak kritiktir. Google'ın EfficientDet modeli, ölçeklenebilir mimarileriyle 2019'da güçlü bir temel oluştururken 2024'te yayımlanan YOLOv9, Programlanabilir Gradyan Bilgisi (PGI) kullanarak nesne algılamanın sınırlarını zorladı.
Bu kılavuz, bu iki model arasında kapsamlı bir teknik karşılaştırma sunar ve üretim ortamları için optimize edilmiş sağlam, uçtan uca bir çözüm sağlayan modern Ultralytics YOLO26 çerçevesini tanıtır.
Model Mimarileri ve Yenilikler#
EfficientDet ve YOLOv9'un temel işleyişini anlamak, en uygun kullanım alanlarını belirlemek açısından çok önemlidir.
EfficientDet: Bileşik Ölçekleme ve BiFPN#
Google Research tarafından geliştirilen EfficientDet, sistematik ölçeklendirmeye ve verimli özellik birleştirmeye odaklanır. Backbone olarak EfficientNet'i kullanır ve yeni bir özellik ağı mimarisi sunar.
- Yazarlar: Mingxing Tan, Ruoming Pang ve Quoc V. Le
- Kuruluş: Google
- Tarih: 20 Kasım 2019
- Bağlantılar: Arxiv, GitHub
Temel Mimari Özellikler: EfficientDet, çok ölçekli özelliklerin kolay ve hızlı bir şekilde birleştirilmesini sağlayan çift yönlü özellik piramit ağına (BiFPN) büyük ölçüde dayanır. Bunun yanı sıra ağın çözünürlüğünü, derinliğini ve genişliğini aynı oranda ölçeklendiren bileşik bir ölçeklendirme yöntemi kullanır. Dönemi için son derece isabetli olsa da EfficientDet, eski TensorFlow ortamlarına sıkı sıkıya bağlıdır; bu da modern dağıtım işlem hatlarını karmaşıklaştırır.
EfficientDet hakkında daha fazla bilgi edin
YOLOv9: Bilgi Darboğazını Çözme#
Academia Sinica'daki araştırmacılar tarafından geliştirilen YOLOv9, veriler derin sinir ağlarından geçerken ortaya çıkan bilgi kaybını ele alır.
- Yazarlar: Chien-Yao Wang ve Hong-Yuan Mark Liao
- Kurum: Academia Sinica Bilgi Bilimi Enstitüsü
- Tarih: 21 Şubat 2024
- Bağlantılar: Arxiv, GitHub, Belgeler
Temel Mimari Özellikler: YOLOv9, yardımcı denetim sağlamak ve ağ ağırlıklarının güvenilir biçimde güncellenmesi için önemli verilerin korunmasını güvence altına almak amacıyla Programlanabilir Gradyan Bilgisi'ni (PGI) kullanıma sunar. Ayrıca parametre verimliliğini en üst düzeye çıkarmak için Genelleştirilmiş Verimli Katman Toplama Ağı'nı (GELAN) kullanır. Bu gelişmelere rağmen YOLOv9, son işlem sırasında gecikmeyi artıran Maksimum Olmayan Bastırma (NMS) işlemine hâlâ ihtiyaç duyar.
YOLOv9 hakkında daha fazla bilgi edin
Performans Karşılaştırması#
Bu modelleri değerlendirirken, hangi mimarinin sana özel donanım gereksinimlerin için en iyi dengeyi sunduğunu belirlemek üzere deneysel verileri analiz edebilirsin.
| 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 |
| YOLOv9t | 640 | 38.3 | - | 2.3 | 2.0 | 7.7 |
| YOLOv9s | 640 | 46.8 | - | 3.54 | 7.2 | 26.7 |
| YOLOv9m | 640 | 51.4 | - | 6.43 | 20.1 | 76.8 |
| YOLOv9c | 640 | 53.0 | - | 7.16 | 25.5 | 102.8 |
| YOLOv9e | 640 | 55.6 | - | 16.77 | 58.1 | 192.5 |
Eleştirel Analiz#
YOLOv9, hız açısından kuşaklar arası bir sıçrama sunar. Örneğin YOLOv9e, TensorRT gecikmesi 16.77 ms iken %55.6 mAP değerine ulaşır. Buna karşılık EfficientDet-d7, 53.7 mAP ile daha düşük bir değer sunar ve çok yüksek gecikmeden (128.07 ms) muzdariptir; bu da modeli gerçek zamanlı video akışlarında dağıtmayı son derece zorlaştırır.
Kullanım Alanları ve Öneriler#
EfficientDet ile YOLOv9 arasında seçim yapmak, projene özgü gereksinimlere, dağıtım kısıtlamaları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.
YOLOv9'u Ne Zaman Seçmeli?#
YOLOv9 şu durumlarda önerilir:
- Bilgi Darboğazı Araştırmaları: Programlanabilir Gradyan Bilgisi (PGI) ve Genelleştirilmiş Verimli Katman Toplama Ağı (GELAN) mimarilerini inceleyen akademik projeler.
- Gradyan Akışı Optimizasyonu Çalışmaları: Eğitim sırasında derin ağ katmanlarındaki bilgi kaybını anlamaya ve azaltmaya odaklanan araştırmalar.
- Yüksek Doğruluklu Algılama Karşılaştırmaları: YOLOv9'un güçlü COCO karşılaştırma testi performansının mimari karşılaştırmalarda referans noktası olarak gerektiği senaryolar.
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 Farkı: YOLO26'yı Seçmek#
YOLOv9 ve EfficientDet öncü olsa da gerçekten modern, üretime hazır bir çerçeve arayan geliştiriciler, özellikle de yeni yayımlanan Ultralytics YOLO modellerini değerlendirmelidir. Bunların başında YOLO26 gelir.
Ultralytics Platform, güçlü yerel eğitim betiklerini bulut özellikli bir arayüzle birleştirerek benzersiz bir kullanım kolaylığı sunar. YOLO26, model tasarımında kapsamlı bir yenileme niteliğindedir ve eski mimarileri birçok ticari uygulama için geçersiz kılar.
YOLO26'nın Teknik Öne Çıkanları#
- Uçtan Uca, NMS Gerektirmeyen Tasarım: YOLO26'nın isteğe bağlı uçtan uca başlığı (
nms=False), son işlem darboğazlarını ortadan kaldırır. Maksimum Olmayan Bastırma işlemini kaldırarak dağıtım grafikleri birleştirilir ve uç yapay zekâ yongalarında doğal olarak daha hızlı çalışır. - CPU'da %43'e Varan Hızlı Çıkarım: Gömülü cihazlar için kapsamlı biçimde optimize edilen YOLO26n, GPU'ların kullanılamadığı durumlarda CPU üzerinde ONNX ile YOLO11n'den %43'e kadar daha hızlı çalışır.
- MuSGD Optimizasyonu: Büyük dil modeli yeniliklerini görsel yapay zekâya taşıyan bu hibrit optimize edici, eğitim süreçlerini kararlı hâle getirir ve modellerin daha az kaynakla daha hızlı yakınsamasını sağlar.
- Düşük Bellek Gereksinimi: Transformer ağırlıklı mimarilerin veya optimize edilmemiş CNN'lerin aksine YOLO26, eğitim sırasında CUDA bellek tüketimini en aza indirir ve tüketici sınıfı donanımlarda daha büyük toplu iş boyutları kullanmana olanak tanır.
- ProgLoss + STAL: Üstün kayıp fonksiyonu tasarımı, küçük nesneleri algılama doğruluğunu önemli ölçüde artırarak YOLO26'yı hava görüntüleri ve IoT ağları için ideal hâle getirir.
- DFL'nin Kaldırılması: Basitleştirilmiş yapısal tasarım, mobil dağıtım biçimlerine sorunsuz dönüştürme olanağı sağlar.
Ultralytics ekosistemindeki diğer güçlü seçenekler arasında, örnek segmentasyonu ve poz tahmini gibi çok görevli kullanım esnekliği sunan YOLO11 ve YOLOv8 da bulunur.
Python SDK ile Basitleştirilmiş Eğitim#
Ultralytics modelleri geliştirici deneyimine öncelik verir. Son teknoloji ürünü bir modeli eğitmek, yalnızca birkaç satır Python koduna sığar.
from ultralytics import YOLO
# Initialize the state-of-the-art YOLO26 model
model = YOLO("yolo26n.pt")
# Train with optimized memory usage and built-in augmentations
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)
# Validate the model's performance easily
metrics = model.val()
print(f"Validation mAP: {metrics.box.map}")Gerçek Dünya Uygulamaları#
Bu mimariler arasındaki seçim, büyük ölçüde dağıtım hedefinize bağlıdır.
- Eski Nesil Bulut Dağıtımları: EfficientDet, yüksek doğruluğun gerektiği ve katı gerçek zamanlı kısıtlamaların bulunmadığı çevrimdışı, bulut tabanlı toplu işleme senaryolarında popülerdi.
- Akademik Araştırma: YOLOv9, kuramsal CNN sınırlarını zorlayan ve ağ katmanlarındaki gradyan akışlarını analiz eden araştırmacılar için ilgi çekici bir seçenek olmaya devam ediyor.
- Uç Bilişim ve IoT: Gerçek dünya uygulamalarında YOLO26 öne çıkar. NMS gerektirmeyen işlem hattı ve Yönlendirilmiş Sınırlayıcı Kutu (OBB) yetenekleri; akıllı şehirlerde trafik analizi, perakende envanter takibi ve drone tabanlı denetim için onu üstün bir seçenek hâline getirir. Ayrıca yüksek doğruluk ile hızlı çıkarım arasında eşsiz bir denge sunar.