Ultralytics YOLO27:

YOLOv8 ve DAMO-YOLO#

Bilgisayarlı görü dünyası sürekli gelişiyor; yeni mimariler, uç cihazlarda ve devasa bulut kümelerinde mümkün olanların sınırlarını zorluyor. Bu teknik derinlemesine incelemede, öne çıkan iki gerçek zamanlı nesne algılama modelini karşılaştırıyoruz: YOLOv8 ve DAMO-YOLO. Makine öğrenimi mühendisleri, mimarilerini, performans metriklerini ve eğitim yöntemlerini inceleyerek dağıtım işlem hatları için bilinçli kararlar verebilir.

Model Geçmişi ve Kökenleri#

Her iki model de yaklaşık aynı dönemde tanıtıldı, ancak farklı tasarım felsefelerinden ve araştırma hedeflerinden doğdu.

YOLOv8 Ayrıntıları#

DAMO-YOLO Ayrıntıları#

DAMO-YOLO hakkında daha fazla bilgi edin

Mimari Yenilikler#

YOLOv8: Çok Yönlü Çapasız Tasarım#

Ultralytics YOLOv8, önceki sürümlerine kıyasla önemli iyileştirmeler sunarak son teknoloji ve son derece güvenilir bir model olarak konumunu pekiştirdi. Daha az kutu tahmini üreten ve çıkarımı hızlandıran çapasız bir algılama başlığı içerir. Mimari, nesne varlığı, sınıflandırma ve regresyon görevlerini birbirinden ayıran ayrıştırılmış bir başlık kullanır; bu da daha doğru sınırlayıcı kutu tahminleri sağlar.

Bunun yanı sıra YOLOv8, CIoU kaybıyla birlikte Dağılımsal Odaklanma Kaybı (DFL) uygular. Bu, özellikle daha küçük veya örtülmüş hedeflerde nesne sınırlarını hassas biçimde konumlandırma yeteneğini geliştirir. Sadeleştirilmiş omurgası hem GPU hem de CPU çalıştırması için büyük ölçüde optimize edilmiştir.

DAMO-YOLO: Mimari Aramayla Geliştirildi#

DAMO-YOLO farklı bir yaklaşım benimser ve omurgasını otomatik olarak tasarlamak için büyük ölçüde Sinirsel Mimari Aramaya (NAS) dayanır. Alibaba ekibi, özellikle TensorRT hızlandırması altında en uygun gecikme-doğruluk dengelerini sunan yapıları bulmak için "MAE-NAS"ı tanıttı.

Model, verimli özellik birleştirme için RepGFPN (Yeniden Parametreleştirilmiş Genelleştirilmiş Özellik Piramidi Ağı) ve algılama başlığının hesaplama yükünü en aza indirmek için bir "ZeroHead" tasarımı içerir. Eğitim sırasında etiket atama için AlignedOTA'dan yararlanır ve karmaşık bir bilgi damıtma sürecine büyük ölçüde dayanır; bu süreç, hedef öğrenci modeli denetlemek için daha büyük bir öğretmen modeli gerektirir.

Eğitim Karmaşıklığı

DAMO-YOLO, NAS ve damıtma sayesinde etkileyici gecikme metriklerine ulaşsa da bu süreç, YOLOv8'in yüksek düzeyde optimize edilmiş tek aşamalı eğitim işlem hattına kıyasla eğitim sırasında önemli ölçüde daha fazla CUDA belleği ve hesaplama süresi gerektirir.

Performans ve Metrikler#

Bilgisayarlı görü modelleri üretime dağıtılırken doğruluğu (mAP) çıkarım hızıyla dengelemek kritik öneme sahiptir. Aşağıdaki tablo, her iki modelin çeşitli boyutlardaki performansını göstermektedir.

Modelboyut
(piksel)
mAPval
50-95
Hız
CPU ONNX
(ms)
Hız
T4 TensorRT10
(ms)
parametre
(M)
FLOPs
(B)
YOLOv8n64037.380.41.473.28.7
YOLOv8s64044.9128.42.6611.228.6
YOLOv8m64050.2234.75.8625.978.9
YOLOv8l64052.9375.29.0643.7165.2
YOLOv8x64053.9479.114.3768.2257.8
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

YOLOv8 olağanüstü bir performans dengesi sunar. YOLOv8n (nano) modeli, DAMO-YOLOt'in 8,5 milyon parametresine kıyasla yalnızca 3,2 milyon parametre gerektirir; bu da onu mobil cihazlar veya bellek gereksinimleri katı olan ortamlar için çok daha üstün kılar. Ayrıca YOLOv8, bulut tabanlı iş yükleri için yüksek doğruluklu YOLOv8x modeline kadar ölçeklenen daha geniş bir boyut aralığı sunar.

Geliştirici Deneyimi ve Ekosistem#

Kullanım Kolaylığı ve Eğitim Verimliliği#

En önemli ayırt edici faktörlerden biri kullanıcı deneyimidir. Ultralytics ekosistemi, geliştirici verimliliği için tasarlanmıştır. Özel bir YOLOv8 modelini eğitmek çok az bellek kullanır ve birleşik bir Python API'si veya komut satırı arayüzü üzerinden gerçekleştirilebilir.

Buna karşılık, DAMO-YOLO'nun damıtmayla güçlendirilmiş eğitimini yeniden üretmek çoğu zaman karmaşık yapılandırma dosyalarında gezinmeyi ve çok aşamalı öğretmen-öğrenci deney takibini yönetmeyi gerektirir.

Python kullanarak YOLOv8'i eğitmenin, doğrulamanın ve dışa aktarmanın ne kadar kolay olduğuna dair bir örneği burada bulabilirsin:

from ultralytics import YOLO

# Load a pre-trained YOLOv8 nano model
model = YOLO("yolov8n.pt")

# Train the model on the COCO8 dataset
results = model.train(data="coco8.yaml", epochs=100, imgsz=640, device="cpu")

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

Görü Görevleri Arasında Çok Yönlülük#

DAMO-YOLO yalnızca sınırlayıcı kutu nesne algılama için geliştirilmiştir. Buna karşılık YOLOv8 mimarisi yerel olarak birden fazla görevi destekler. Geliştiriciler, model ağırlıklarını değiştirerek temel dağıtım kod tabanını değiştirmeden Örnek Segmentasyonu, Görüntü Sınıflandırma ve Poz Tahmini gerçekleştirebilir. Bu çok yönlülük, Ultralytics modellerini karmaşık uygulamalar için çok daha pratik hale getirir.

Gerçek Dünya Kullanım Örnekleri#

YOLOv8 ne zaman kullanılmalı?#

YOLOv8'in hız, doğruluk ve dağıtım kolaylığını bir araya getirmesi onu şu alanlar için ideal kılar:

  • Akıllı Perakende Analitiği: Müşteri davranışını izlemek veya envanter kontrollerini otomatikleştirmek için nesne takibi gerçekleştirme.
  • Tarım Robotları: Gerçek zamanlı olarak ürünleri veya zararlıları belirlemek için farklı donanımlardaki güçlü performansından yararlanma.
  • Sağlık Tanıları: Tıbbi görüntülerdeki anormallikleri hızlı ve doğru biçimde haritalamak için örnek segmentasyonunu kullanma.
  • Uç Dağıtımlar: OpenVINO ve CoreML gibi dışa aktarma biçimleriyle sorunsuz entegrasyonu, YOLOv8'in kısıtlı cihazlarda öne çıkmasını sağlar.

DAMO-YOLO ne zaman kullanılmalı?#

DAMO-YOLO, özellikle aşağıdaki gibi niş senaryolarda faydalı olabilir:

  • Akademik NAS Araştırması: Yeniden parametrelendirme veya otomatik mimari tasarım metodolojilerini inceleyen ekipler için.
  • Yalnızca GPU'ya Bağlı İşlem Hatları: NAS yapılarının TensorRT yürütme sınırları için yoğun biçimde optimize edildiği belirli NVIDIA donanımlarında özel olarak çalışan uygulamalar.

Kullanım Alanları ve Öneriler#

YOLOv8 ile DAMO-YOLO arasında seçim yapmak, özel proje gereksinimlerine, dağıtım kısıtlamalarına ve ekosistem tercihlerine bağlıdır.

YOLOv8 Ne Zaman Seçilmeli?#

YOLOv8 şu durumlar için güçlü bir seçenektir:

  • Çok Görevli Çok Yönlü Dağıtım: Ultralytics ekosistemi içinde algılama, segmentasyon, sınıflandırma ve poz tahmini için kendini kanıtlamış bir model gerektiren projeler.
  • Kurulu Üretim Sistemleri: YOLOv8 mimarisi üzerine kurulmuş, kararlı ve kapsamlı biçimde test edilmiş dağıtım işlem hatlarına sahip mevcut üretim ortamları.
  • Geniş Topluluk ve Ekosistem Desteği: YOLOv8'in kapsamlı eğitimlerinden, üçüncü taraf entegrasyonlarından ve aktif topluluk kaynaklarından yararlanan uygulamalar.

DAMO-YOLO Ne Zaman Seçilmeli?#

DAMO-YOLO şu durumlar için önerilir:

  • Yüksek İş Hacimli Video Analitiği: Batch-1 iş hacminin temel ölçüt olduğu sabit NVIDIA GPU altyapısında yüksek FPS'li video akışlarını işleme.
  • Endüstriyel Üretim Hatları: Montaj hatlarında gerçek zamanlı kalite denetimi gibi özel donanım üzerinde katı GPU gecikme kısıtlarının bulunduğu senaryolar.
  • Sinir Ağı Mimarisi Araması Araştırmaları: Otomatik mimari aramasının (MAE-NAS) ve verimli yeniden parametrelendirilmiş omurgaların algılama performansı üzerindeki etkilerini inceleme.

Ultralytics (YOLO26) Ne Zaman Seçilmeli?#

Yeni projelerin çoğu için Ultralytics YOLO26, performans ve geliştirici deneyiminin en iyi birleşimini sunar:

  • NMS'siz Uç Dağıtımı: Maksimum Olmayan Bastırma son işleme karmaşıklığı olmadan tutarlı ve düşük gecikmeli çıkarım gerektiren uygulamalar.
  • Yalnızca CPU Kullanılan Ortamlar: Özel GPU hızlandırması olmayan ve YOLO26'nın %43'e varan daha hızlı CPU çıkarımının belirleyici bir avantaj sağladığı cihazlar.
  • Küçük Nesne Algılama: ProgLoss ve STAL'ın küçük nesnelerde doğruluğu önemli ölçüde artırdığı hava drone görüntüleri veya IoT sensör analizi gibi zorlu senaryolar.

Geleceğe Bakış: Daha Yeni Ultralytics Modelleri#

YOLOv8 son derece güvenilir bir iş gücü olmaya devam etse de bilgisayarlı görü alanı hızla ilerliyor. Kullanıcılar daha yeni nesilleri de incelemeyi değerlendirmelidir:

YOLO26: En yeni nesil olan Ultralytics YOLO26, bir paradigma değişimini temsil eder. Son işleme aşamasındaki Maksimum Olmayan Bastırma ile ilişkili gecikme darboğazlarını tamamen ortadan kaldıran yerel Uçtan Uca NMS'siz Tasarım sunar. Yeni MuSGD Optimize Edici (SGD ve Muon'un bir hibriti) ve özel ProgLoss + STAL kayıp işlevleriyle güçlendirilen YOLO26, dikkat çekici derecede kararlı bir eğitim ve küçük nesne tanımada büyük ölçüde iyileşme sağlar. DFL'nin Kaldırılması (basitleştirilmiş dışa aktarma ve uç/düşük güç tüketimli cihazlarla daha iyi uyumluluk için Dağılımsal Odaklanma Kaybının kaldırılması) sayesinde mimari değişiklikler, önceki nesillere kıyasla %43'e Kadar Daha Hızlı CPU Çıkarımı sağlar ve YOLO26'yı modern uç bilişim için kesin tercih haline getirir.

YOLO11: Bir diğer mükemmel alternatif olan Ultralytics YOLO11, YOLOv8'e kıyasla aşamalı mimari iyileştirmeler sunar ve toplulukta sağlam, yaygın olarak benimsenmiş bir model olmayı sürdürür.

İş Akışını Sadeleştir

Modellerini prototipten üretime taşımaya hazır mısın? Veri kümelerine otomatik olarak açıklama eklemek, deneyleri izlemek ve modelleri buluta veya uç cihazlara sorunsuz şekilde dağıtmak için Ultralytics Platformu'nu kullan.

Sonuç olarak DAMO-YOLO, mimari aramaya ilişkin ilginç akademik bilgiler sunsa da Ultralytics modelleri çok daha olgun, çok yönlü ve geliştirici dostu bir ekosistem sağlar. İster YOLOv8'in kanıtlanmış kararlılığını kullanmaya devam et ister ışık hızındaki, NMS'siz YOLO26 mimarisine yükseltme yap; Ultralytics paketi gerçek zamanlı görsel yapay zekâ için lider tercih olmaya devam eder.

Yorumlar