Ultralytics YOLO27:

YOLOv5 ve EfficientDet#

Yeni bir bilgisayarlı görü projesine başlarken doğru sinir ağı mimarisini seçmek, vereceğin en önemli kararlardan biridir. Bu kılavuz, Ultralytics YOLOv5 ile Google'ın EfficientDet modeli arasında kapsamlı bir teknik karşılaştırma sunar. Mimarilerini, performans ölçütlerini ve eğitim ekosistemlerini analiz ederek geliştiricilerin ve araştırmacıların kendi dağıtım ortamları için en uygun nesne algılama modelini belirlemelerine yardımcı olmayı amaçlıyoruz.

EfficientDet, bileşik ölçekleme ve özellik birleştirme alanlarında yenilikçi kavramlar ortaya koyarken YOLOv5, son derece sezgisel PyTorch uygulaması, yalın kullanıcı deneyimi ve hız ile doğruluk arasındaki benzersiz dengesi sayesinde yüksek performanslı yapay zekâya erişimi demokratikleştirerek sektörde devrim yarattı.

Ultralytics YOLOv5: Erişilebilirlikte Sektör Standardı#

2020 yazında yayımlanan YOLOv5, YOLO soyunda önemli bir dönüm noktası oldu. C tabanlı Darknet framework'ünden yerel PyTorch kullanımına geçmesiyle, modelleri hızlıca oluşturmak, eğitmek ve dağıtmak isteyen geliştiricilerin başvurduğu mimari hâline geldi.

Mimari Yenilikler#

YOLOv5, sorunsuz bir makine öğrenimi yaşam döngüsünü önceliklendiren, yüksek düzeyde optimize edilmiş mimarisiyle öne çıkar. Değiştirilmiş bir CSPDarknet53 omurgasını, birden fazla uzamsal ölçekte özellik yayılımını büyük ölçüde iyileştiren bir Path Aggregation Network (PANet) boynu ile birlikte kullanır.

Önemli geliştirmeler şunlardır:

  • Mozaik Veri Artırma: Bu eğitim tekniği, dört farklı eğitim görüntüsünü tek bir mozaikte birleştirir. Böylece model, karmaşık uzamsal bağlamlarda nesneleri tanımayı öğrenmeye zorlanır ve küçük hedefleri algılama yeteneği önemli ölçüde artar.
  • Otomatik Öğrenen Anchor Box'lar: Eğitim başlamadan önce YOLOv5, özel eğitim verilerini analiz eder ve k-means kümeleme kullanarak en uygun anchor box boyutlarını otomatik olarak hesaplar.
  • Bellek Verimliliği: Ağır Transformer tabanlı modellerle karşılaştırıldığında YOLOv5, hem eğitim hem de çıkarım sırasında çok daha düşük bir bellek ayak izi korur ve tüketici sınıfı donanımlarda sorunsuz çalışabilir.

EfficientDet: Ölçeklenebilir Nesne Algılama#

2019'da Google Research tarafından tanıtılan EfficientDet, ölçeklenebilir nesne algılayıcılardan oluşan bir aile sunmayı amaçladı. EfficientNet görüntü sınıflandırma omurgası üzerine kuruludur ve yeni bir özellik birleştirme mekanizması sunar.

Mimari Yenilikler#

EfficientDet'in temel yaklaşımı, ölçekleme ve özellik toplama konularındaki sistematik yaklaşımına dayanır:

  • BiFPN (Çift Yönlü Özellik Piramidi Ağı): Bilgiyi yalnızca yukarıdan aşağıya ileten geleneksel FPN'lerin aksine BiFPN, farklı giriş özelliklerinin önemini öğrenmek için öğrenilebilir ağırlıklar sunarak hızlı ve kolay çok ölçekli özellik birleştirmeyi mümkün kılar.
  • Bileşik Ölçekleme: 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 birlikte ölçeklendirir. Bunun sonucunda hafif D0'dan devasa D7'ye kadar uzanan modeller ortaya çıkar.

EfficientDet hakkında daha fazla bilgi edin

Framework Farkları

EfficientDet TensorFlow ekosistemine ve AutoML kütüphanelerine büyük ölçüde dayanırken YOLOv5, PyTorch içinde yerel olarak çalışır ve birçok geliştiricinin daha sezgisel, Python tarzı ve hata ayıklaması kolay bulduğu bir iş akışı sunar.

Performans ve Metrik Karşılaştırması#

Bu modelleri karşılaştırırken COCO veri kümesi gibi standart kıyaslamalardaki performanslarını değerlendirmek kritik önem taşır. Aşağıdaki tablo; boyut, hesaplama gereksinimi (FLOPs) ve çıkarım hızı arasındaki ödünleşimleri vurgular.

Modelboyut
(piksel)
mAPval
50-95
Hız
CPU ONNX
(ms)
Hız
T4 TensorRT10
(ms)
parametre
(M)
FLOPs
(B)
YOLOv5n64028.073.61.122.67.7
YOLOv5s64037.4120.71.929.124.0
YOLOv5m64045.4233.94.0325.164.2
YOLOv5l64049.0408.46.6153.2135.0
YOLOv5x64050.7763.211.8997.2246.4
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

Dengeli Analiz#

YOLOv5, dağıtım esnekliği ve ham donanım hızlandırma uyumluluğuyla öne çıkar. T4 GPU üzerindeki son derece hızlı TensorRT hızlarına dikkat et. Bu, YOLOv5'i yüksek hacimli video analitiği ve gerçek zamanlı çıkarım işlem hatları için son derece uygun hâle getirir. Ayrıca Ultralytics ekosistemi, ONNX, CoreML ve TensorRT gibi biçimlere tek satırlık bir komutla dışa aktarmayı sağlar.

EfficientDet, parametre verimliliği açısından mükemmel sonuçlar sunar. Belirli bir parametre sayısı için genellikle yüksek bir ortalama kesinlik (mAP) elde eder. Ancak bu teorik verimlilik, BiFPN katmanının karmaşık yönlendirmesi nedeniyle uç GPU'larda her zaman daha hızlı gerçek süreli çıkarım zamanlarına dönüşmez; çünkü bu katman hesaplama sınırlı olmaktan ziyade bellek bant genişliği sınırlı olabilir.

Ekosistem ve Kullanım Kolaylığı#

Bir Ultralytics modeli seçmenin belirleyici avantajı, onu çevreleyen ekosistemde yatar. YOLOv5, geniş topluluk desteğine sahip, yoğun biçimde bakımı yapılan ve aktif olarak geliştirilen bir deponun parçasıdır.

Ultralytics Platform'un kullanıma sunulmasıyla kullanıcılar veri toplama aşamasından dağıtıma sorunsuz biçimde geçebilir. Bu platform, kullanıma hazır olarak otomatik açıklama ekleme, bulut eğitimi ve model izleme özelliklerini destekler. Buna karşılık EfficientDet'i eğitmek çoğu zaman eski TensorFlow nesne algılama API'lerinin karmaşıklıklarıyla uğraşmayı gerektirir; bu da hızlı prototipleme için zorlu bir öğrenme eğrisi oluşturabilir.

Ayrıca YOLOv5'in çok yönlülüğü sınırlayıcı kutuların ötesine geçer. Ultralytics framework'ü, sürekli güncellemeler sayesinde örnek bölütleme ve görüntü sınıflandırmayı yerel olarak destekleyerek birden fazla bilgisayarlı görü görevi için birleşik bir API sunar.

İdeal Kullanım Alanları#

  • Şu durumlarda YOLOv5'i seç: Hızlı prototiplemeye, sorunsuz bir eğitim deneyimine ve yüksek düzeyde optimize edilmiş uç dağıtımına ihtiyacın varsa. Düşük gecikmenin kritik olduğu drone'lar, perakende analitiği ve mobil uygulamalar için idealdir.
  • Şu durumlarda EfficientDet'i seç: Yalnızca Google Cloud/TensorFlow AutoML ortamında çalışıyorsan ve katı gerçek zamanlı gecikme kısıtları olmadan parametre başına en yüksek doğruluğa ihtiyaç duyuyorsan.

Yeni Nesil: YOLO26'yı Benimsemek#

YOLOv5 güvenilir bir iş gücü olmaya devam etse de bilgisayarlı görü dünyası ilerledi. 2026'da en gelişmiş çözümleri arayan geliştiriciler için YOLO26, Ultralytics ürün ailesinin yeni zirvesini temsil ediyor.

Önceki modellerinin (örneğin YOLOv8 ve YOLO11) mirası üzerine inşa edilen YOLO26, çığır açan yenilikler sunar:

  • Uçtan Uca NMS'siz Tasarım: YOLO26, Maksimum Olmayan Bastırma son işleme adımına duyulan ihtiyacı yerel olarak ortadan kaldırır. Bu, gecikme değişkenliğini önemli ölçüde azaltır ve dağıtım mimarisini basitleştirir.
  • %43'e Kadar Daha Hızlı CPU Çıkarımı: Uç yapay zekâ için yoğun biçimde optimize edilen bu model, özel GPU'lar olmadan düşük güç tüketimli uç cihazlara ve standart CPU'lara benzeri görülmemiş hızlar kazandırır.
  • MuSGD Optimizer: Büyük Dil Modeli (LLM) eğitim tekniklerinden esinlenen bu SGD ve Muon birleşimi, son derece kararlı eğitim ve hızlı yakınsama sağlar.
  • Gelişmiş Kayıp Fonksiyonları: ProgLoss ve STAL entegrasyonu, yüksek irtifa drone görüntüleri ve robotik için hayati önem taşıyan küçük hedeflerin tanınmasını büyük ölçüde iyileştirir.
  • DFL'nin Kaldırılması: Distribution Focal Loss'un kaldırılmasıyla model dışa aktarma süreci yalınlaştırılır ve farklı donanım hızlandırıcıları arasındaki uyumluluk daha da geliştirilir.

Ultralytics ekosistemindeki diğer güncel mimarileri keşfetmek isteyen kullanıcılar YOLOv10 veya RT-DETR gibi modelleri de karşılaştırabilir.

Geçiş Kolaydır

Ultralytics Python API'si geriye ve ileriye dönük uyumluluk için tasarlanmıştır. YOLOv5'ten YOLO26'ya yükseltmek, kodundaki model ağırlığı dizesini değiştirmek kadar kolaydır!

Kod Örneği: Eğitim ve Çıkarım#

Ultralytics ekosisteminin eşsiz kullanım kolaylığını göstermek için modern bir YOLO modeliyle nasıl eğitim yapabileceğini ve çıkarım çalıştırabileceğini burada gösteriyoruz. Bu kod %100 çalıştırılabilir; veri kümesinin indirilmesini, eğitim döngülerini ve doğrulamayı otomatik olarak yönetir.

from ultralytics import YOLO

# Load a modern model (Swap 'yolov5s.pt' for 'yolo26n.pt' to test the newest architecture!)
model = YOLO("yolov5s.pt")

# Train the model on the COCO8 example dataset for 20 epochs
results = model.train(data="coco8.yaml", epochs=20, imgsz=640)

# Run inference on an image from the web
inference_results = model("https://ultralytics.com/images/bus.jpg")

# Display the image with bounding boxes
inference_results[0].show()

Kullanıcı deneyimine öncelik vererek, sağlam bir ekosistemi koruyarak ve YOLO26 gibi güncellemelerle mümkün olanın sınırlarını sürekli ileri taşıyarak Ultralytics, geliştiricilerin gerçek dünyadaki görsel zekâ sorunlarını çözmek için her zaman en iyi araçlara sahip olmasını sağlar.

Yorumlar