YOLO Vision 2026:

YOLOv5 ve EfficientDet karşılaştırması#

Yeni bir computer vision 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 derinlemesine teknik bir karşılaştırma sunar. Mimarilerini, performans metriklerini ve eğitim ekosistemlerini analiz ederek, geliştiricilerin ve araştırmacıların belirli dağıtım ortamları için en iyi object detection modelini belirlemesine yardımcı olmayı amaçlıyoruz.

EfficientDet bileşik ölçekleme ve özellik birleştirme konularında yeni kavramlar ortaya koyarken, YOLOv5 inanılmaz derecede sezgisel PyTorch uygulaması, kolaylaştırılmış kullanıcı deneyimi ve eşsiz hız-doğruluk dengesi ile yüksek performanslı yapay zekaya erişimi demokratikleştirerek sektörde devrim yarattı.

Ultralytics YOLOv5: Erişilebilirlik Konusunda Endüstri Standardı#

2020 yazında piyasaya sürülen YOLOv5, YOLO soy ağacında çok önemli bir değişimi temsil ediyordu. C tabanlı Darknet çerçevesinden yerel PyTorch'a geçiş yaparak, modelleri hızla oluşturmak, eğitmek ve dağıtmak isteyen geliştiriciler için vazgeçilmez bir mimari haline geldi.

Mimari Yenilikler#

YOLOv5, kesintisiz bir machine learning yaşam döngüsünü önceleyen, son derece optimize edilmiş mimarisiyle bilinir. Birden fazla uzamsal ölçekte özellik yayılımını büyük ölçüde iyileştiren bir Path Aggregation Network (PANet) boyun kısmıyla eşleştirilmiş, değiştirilmiş bir CSPDarknet53 omurgası kullanır.

Önemli geliştirmeler şunlardır:

  • Mosaic Veri Artırma: Bu eğitim tekniği, dört farklı eğitim görüntüsünü tek bir mozaik içinde birleştirir. Bu, modeli karmaşık uzamsal bağlamlarda nesneleri nasıl tanımlayacağını öğrenmeye zorlar ve küçük hedefleri tespit etme yeteneğini önemli ölçüde artırır.
  • Otomatik Öğrenen Çapa Kutuları (Auto-Learning Anchor Boxes): Eğitim başlamadan önce YOLOv5, özel training data verilerini analiz eder ve k-means kümelemesini kullanarak optimal anchor box boyutlarını otomatik olarak hesaplar.
  • Bellek Verimliliği: Ağır transformer tabanlı modellere kıyasla, YOLOv5 hem eğitim hem de çıkarım sırasında önemli ölçüde daha düşük bir bellek ayak izi bırakır ve tüketici sınıfı donanımlarda sorunsuz çalışmasına olanak tanır.

YOLOv5 hakkında daha fazla bilgi edin

EfficientDet: Ölçeklenebilir Nesne Algılama#

2019 yılında Google Research tarafından tanıtılan EfficientDet, bir dizi ölçeklenebilir nesne dedektörü sağlamayı amaçladı. EfficientNet görüntü sınıflandırma bel kemiği üzerine inşa edilmiştir ve yeni bir özellik birleştirme mekanizması sunar.

Mimari Yenilikler#

EfficientDet'in temel iddiası, ölçeklendirme ve özellik toplama konusundaki sistematik yaklaşımında yatar:

  • BiFPN (Çift Yönlü Özellik Piramidi Ağı): Bilgiyi yalnızca yukarıdan aşağıya aktaran geleneksel FPN'lerin aksine BiFPN, farklı girdi özelliklerinin önemini öğrenmek için eğitilebilir ağırlıklar sunarak hızlı ve kolay çok ölçekli özellik birleştirmeyi sağlar.
  • Bileşik Ölçeklendirme: EfficientDet, tüm bel kemiği, özellik ağı ve kutu/sınıf tahmin ağları için çözünürlüğü, derinliği ve genişliği ortaklaşa ölçeklendirerek hafif D0 modelinden devasa D7 modeline kadar çeşitlenen modeller ortaya çıkarır.

EfficientDet hakkında daha fazla bilgi edinin

Çerçeve Farklılıkları

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

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

Bu modelleri karşılaştırırken, COCO dataset gibi standart kıyaslamalardaki performanslarını değerlendirmek çok önemlidir. Aşağıdaki tablo boyut, hesaplama talebi (FLOPs) ve çıkarım hızı arasındaki ödünleşimleri vurgulamaktadır.

Modelboyut
(piksel)
mAPval
50-95
Hız
CPU ONNX
(ms)
Hız
T4 TensorRT10
(ms)
parametreler
(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 verimli video analitiği ve real-time inference hatları için inanılmaz derecede uygun hale getirir. Dahası, Ultralytics ekosistemi ONNX, CoreML ve TensorRT gibi formatlara aktarımı tek satırlık bir komut haline getirir.

EfficientDet, mükemmel parametre verimliliği sunar. Belirli bir parametre sayısı için genellikle yüksek bir mean Average Precision (mAP) elde eder. Ancak bu teorik verimlilik, hesaplama odaklı olmaktan ziyade bellek bant genişliği sınırlı olabilen BiFPN katmanının karmaşık yönlendirmesi nedeniyle uç GPU'larda her zaman daha hızlı duvar saati çıkarım sürelerine dönüşmez.

Ekosistem ve Kullanım Kolaylığı#

Bir Ultralytics modeli seçmenin en belirgin avantajı, etrafındaki ekosistemdir. YOLOv5, devasa bir topluluk desteğine sahip, yoğun bir şekilde sürdürülen ve aktif olarak geliştirilen bir deponun parçasıdır.

Ultralytics Platform tanıtımıyla kullanıcılar, veri toplamadan dağıtıma sorunsuz bir şekilde geçiş yapabilirler. Bu platform, otomatik etiketleme, bulut eğitimi ve model izlemeyi kutudan çıktığı gibi destekler. Buna karşılık, EfficientDet'i eğitmek genellikle hızlı prototipleme için dik bir öğrenme eğrisi sunabilen daha eski TensorFlow nesne algılama API'lerinin karmaşıklıklarında gezinmeyi gerektirir.

Ayrıca YOLOv5'in çok yönlülüğü sınırlayıcı kutuların ötesine uzanır. Sürekli güncellemeler sayesinde Ultralytics çatısı, birden fazla bilgisayarlı görü görevi için birleşik bir API sağlayarak instance segmentation ve image classification işlemlerini yerel olarak destekler.

İdeal Kullanım Senaryoları#

  • Şu durumlarda YOLOv5'i seç: Hızlı prototiplemeye, sürtünmesiz bir eğitim deneyimine ve son derece optimize edilmiş uç dağıtıma ihtiyacın olduğunda. Düşük gecikmenin kritik olduğu dronlar, retail analytics 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ıtlamaları olmaksızın parametre başına maksimum doğruluk gerektiriyorsan.

Yeni Nesil: YOLO26 ile Tanış#

YOLOv5 güvenilir bir iş gücü olmaya devam ederken, bilgisayarlı görü alanı ilerledi. 2026 yılında mutlak son teknoloji (state-of-the-art) arayan geliştiriciler için YOLO26, Ultralytics serisinin yeni zirvesini temsil eder.

Öncüllerinin mirası üzerine inşa edilen (YOLOv8 ve YOLO11 gibi), YOLO26 çığır açan yenilikler sunar:

  • Uçtan Uca NMS'siz Tasarım: YOLO26, Non-Maximum Suppression sonrası işleme ihtiyacını yerel olarak ortadan kaldırır. Bu, gecikme varyansını önemli ölçüde azaltır ve dağıtım mimarisini basitleştirir.
  • %43'e Kadar Daha Hızlı CPU Çıkarımı: edge AI için yoğun bir şekilde optimize edilmiş olup, özel GPU'ları olmayan düşük güç tüketimli uç cihazlara ve standart CPU'lara benzeri görülmemiş hızlar getirir.
  • MuSGD Optimize Edici: Large Language Model (LLM) eğitim tekniklerinden esinlenen bu SGD ve Muon melezi, son derece kararlı bir eğitim ve hızlı yakınsama sağlar.
  • Gelişmiş Kayıp Fonksiyonları (Advanced Loss Functions): ProgLoss ve STAL entegrasyonu, yüksek rakımlı dron görüntüleri ve robotics için hayati önem taşıyan küçük hedeflerin tanınmasını büyük ölçüde geliştirir.
  • DFL Kaldırma: Distribution Focal Loss kaldırılarak, model dışa aktarma süreci kolaylaştırılır ve çeşitli donanım hızlandırıcıları genelinde uyumluluk daha da artırılır.

Ultralytics ekosistemindeki diğer son mimarileri keşfetmekle ilgilenen kullanıcılar YOLOv10 veya RT-DETR gibi modelleri de karşılaştırabilirler.

Geçiş Yapmak Çok Kolay

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

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

Ultralytics ekosisteminin benzersiz kullanım kolaylığını göstermek için, modern bir YOLO modelini kullanarak nasıl eğitim yapabileceğin ve çıkarım çalıştırabileceğin aşağıdadır. Bu kod %100 çalıştırılabilirdir ve veri kümesi indirmeyi, 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 ekosistem sürdürerek ve YOLO26 gibi güncellemelerle mümkün olanın sınırlarını sürekli zorlayarak Ultralytics, geliştiricilerin gerçek dünyadaki görsel zeka zorluklarını çözmek için her zaman en iyi araçlara sahip olmasını sağlar.

Yorumlar