YOLOX ve YOLOv6-3.0#
Computer vision evrimi, büyük ölçüde YOLO serisindeki hızlı gelişmelerle şekillenmiştir. Dağıtımınız için doğru mimariyi seçmek genellikle ham iş hacmini, mimari basitliği ve eğitim verimliliğini dengelemeye dayanır. Bu yolculuktaki iki önemli kilometre taşı, YOLOX'un çıpasız (anchor-free) araştırma odaklı yaklaşımı ve YOLOv6-3.0'ın son derece optimize edilmiş endüstriyel iş hacmidir.
Bu teknik karşılaştırma, mimari farklarını, performans metriklerini ve ideal kullanım senaryolarını incelerken, aynı zamanda en üst düzey uç (edge) ve bulut dağıtım çözümü arayan geliştiriciler için Ultralytics YOLO26 yeni nesil yeteneklerini tanıtmaktadır.
YOLOX: Araştırma ve Endüstriyi Birleştirmek#
Megvii araştırmacısı tarafından geliştirilen YOLOX, tamamen çıpasız hale getirilerek YOLO mimarisini basitleştirmeye yönelik büyük bir adım olarak sunulmuştur.
- Yazarlar: Zheng Ge, Songtao Liu, Feng Wang, Zeming Li, Jian Sun
- Kuruluş: Megvii
- Tarih: 2021-07-18
- Arxiv: 2107.08430
- GitHub: Megvii-BaseDetection/YOLOX
Mimari Öne Çıkanlar#
YOLOX, çıpasız tasarımı YOLO ailesine başarıyla entegre etmiştir. Önceden tanımlanmış anchor box (çapa kutusu) kalıplarını ortadan kaldırarak model, eğitim sırasında gereken tasarım parametrelerinin ve sezgisel ayarların sayısını önemli ölçüde azaltır. Bu, YOLOX'un manuel çapa yeniden hesaplaması gerektirmeden çeşitli özel veri setlerine yüksek oranda uyum sağlamasını sağlar.
Ayrıca YOLOX, ayrıştırılmış bir başlık (decoupled head) mimarisi sunmuştur. Sınıflandırma ve regresyon görevlerini farklı kollara ayırarak model, bir nesnenin ne olduğu ve nerede bulunduğu arasındaki doğal çelişkiyi çözer. SimOTA etiket atama stratejisiyle eşleştirilen YOLOX, daha hızlı yakınsama ve iyileştirilmiş ortalama duyarlılık (mAP) elde eder.
YOLOX hakkında daha fazla bilgi edinin
YOLOX gibi çapasız dedektörler, yeni verilerle eşleşmeyebilecek sabit sınırlayıcı kutu ön kabullerine dayanmadıkları için, olağan dışı nesne en-boy oranlarına sahip özel veri setlerinde genellikle daha iyi performans gösterirler.
YOLOv6-3.0: Endüstriyel Ağır Siklet#
Meituan Vision AI Departmanı tarafından geliştirilen YOLOv6-3.0, özellikle TensorRT gibi donanım hızlandırıcıları kullanan NVIDIA GPU'larda maksimum endüstriyel iş hacmi için açıkça tasarlanmıştır.
- Yazarlar: Chuyi Li, Lulu Li, Yifei Geng ve diğerleri.
- Kuruluş: Meituan
- Tarih: 2023-01-13
- Arxiv: 2301.05586
- GitHub: meituan/YOLOv6
Dağıtım için Optimizasyon#
YOLOv6-3.0, GPU kullanımını maksimize etmeye odaklanır. Yüksek çıkarım hızlarını korurken özellik birleşimini geliştirmek için boyun (neck) kısmında Çift Yönlü Birleştirme (BiC) modülünü sunar. Çıkarım aşaması tamamen çıpasız olmasına rağmen YOLOv6-3.0, eğitim aşamasında çapa tabanlı kararlılıktan yararlanmak için yenilikçi bir Çapa Destekli Eğitim (AAT) stratejisi kullanır.
Omurga yapısı, bellek erişim maliyetlerini en aza indirmek ve modern hızlandırıcılar üzerinde hesaplama yoğunluğunu en üst düzeye çıkarmak için özel olarak tasarlanmış, donanım dostu EfficientRep mimarisi kullanılarak oluşturulmuştur. Bu, YOLOv6'yı sunucu tarafı video analitiği için son derece güçlü bir aday yapar.
YOLOv6 hakkında daha fazla bilgi edin
Performans Karşılaştırması#
Bu modelleri karşılaştırırken geliştiriciler, ham doğruluk ile çıkarım hızı ve parametre sayısını tartmalıdır. Aşağıdaki tablo, her iki model ailesinin çeşitli boyutlardaki performansını vurgulamaktadır.
| Model | boyut (piksel) | mAPval 50-95 | Hız CPU ONNX (ms) | Hız T4 TensorRT10 (ms) | parametreler (M) | FLOPs (B) |
|---|---|---|---|---|---|---|
| YOLOXnano | 416 | 25.8 | - | - | 0.91 | 1.08 |
| YOLOXtiny | 416 | 32.8 | - | - | 5.06 | 6.45 |
| YOLOXs | 640 | 40.5 | - | 2.56 | 9.0 | 26.8 |
| YOLOXm | 640 | 46.9 | - | 5.43 | 25.3 | 73.8 |
| YOLOXl | 640 | 49.7 | - | 9.04 | 54.2 | 155.6 |
| YOLOXx | 640 | 51.1 | - | 16.1 | 99.1 | 281.9 |
| YOLOv6-3.0n | 640 | 37.5 | - | 1.17 | 4.7 | 11.4 |
| YOLOv6-3.0s | 640 | 45.0 | - | 2.66 | 18.5 | 45.3 |
| YOLOv6-3.0m | 640 | 50.0 | - | 5.28 | 34.9 | 85.8 |
| YOLOv6-3.0l | 640 | 52.8 | - | 8.95 | 59.6 | 150.7 |
YOLOv6-3.0 daha büyük varyantlar için üstün mAP ve mükemmel TensorRT hızları gösterse de, YOLOX basitliği ve eski donanımlardaki sağlam performansı sayesinde oldukça rekabetçi kalmaya devam etmektedir.
Kullanım Durumları ve Öneriler#
YOLOX ve YOLOv6 arasında seçim yapmak, özel proje gereksinimlerine, dağıtım kısıtlamalarına ve ekosistem tercihlerine bağlıdır.
Ne Zaman YOLOX Seçilmeli#
YOLOX şunlar için güçlü bir tercihtir:
- Anchor-Free Algılama Araştırmaları: Yeni algılama başlıkları veya kayıp fonksiyonlarını denemek için YOLOX'un temiz, anchor-free mimarisini temel olarak kullanan akademik araştırmalar.
- Ultra Hafif Uç Cihazlar: YOLOX-Nano varyantının son derece küçük ayak izinin (0.91M parametre) kritik olduğu mikrodenetleyicilerde veya eski mobil donanımlarda dağıtım yapmak.
- SimOTA Etiket Atama Çalışmaları: Optimum taşıma tabanlı etiket atama stratejilerini ve bunların eğitim yakınsaması üzerindeki etkilerini araştıran araştırma projeleri.
Ne Zaman YOLOv6 Seçilmeli#
YOLOv6 şunlar için önerilir:
- Endüstriyel Donanım Odaklı Dağıtım: Modelin donanım odaklı tasarımı ve verimli yeniden parametrelendirilmesinin, belirli hedef donanımlarda optimize edilmiş performans sağladığı senaryolar.
- Hızlı Tek Aşamalı Algılama: Kontrollü ortamlarda gerçek zamanlı video işleme için GPU üzerindeki ham çıkarım hızına öncelik veren uygulamalar.
- Meituan Ekosistem Entegrasyonu: Halihazırda Meituan's teknoloji yığını ve dağıtım altyapısı içinde çalışan ekipler.
Ultralytics (YOLO26) Ne Zaman Seçilmeli#
Çoğu yeni proje için Ultralytics YOLO26, performans ve geliştirici deneyiminin en iyi kombinasyonunu sunar:
- NMS-Free Uç Dağıtımı: Non-Maximum Suppression işlem sonrası karmaşıklığı olmadan tutarlı, düşük gecikmeli çıkarım gerektiren uygulamalar.
- Sadece CPU Ortamları: YOLO26'nın %43'e kadar daha hızlı CPU çıkarımının belirleyici bir avantaj sağladığı, özel GPU hızlandırması olmayan cihazlar.
- Küçük Nesne Tespiti: ProgLoss ve STAL'ın çok küçük nesneler üzerindeki doğruluğu önemli ölçüde artırdığı havadan drone görüntüleri veya IoT sensör analizi gibi zorlu senaryolar.
Ultralytics Avantajı#
Hem Megvii hem de Meituan güçlü araştırma depoları sağlasa da, bu modelleri prodüksiyonda devreye almak genellikle önemli mühendislik yükü gerektirir. Entegre Ultralytics ekosistemi, birleştirilmiş ve kapsamlı bir şekilde belgelendirilmiş bir API sunarak bu engelleri ortadan kaldırır.
Ultralytics paketinden yararlanarak geliştiriciler benzersiz bir kullanıcı deneyimine erişim kazanır. Bu, yerleşik otomatik artırma (auto-augmentation), eğitim sırasında son derece verimli bellek yönetimi (örneğin RTDETR gibi transformer modellerine kıyasla VRAM gereksinimlerini büyük ölçüde düşürür) ve ONNX ile OpenVINO gibi formatlara kesintisiz dışa aktarma boru hatlarını içerir.
Özelleşmiş modellerin aksine Ultralytics mimarileri doğası gereği çok yönlüdür ve kutudan çıktığı gibi Nesne Algılama, Örnek Bölütleme (Instance Segmentation), Poz Tahmini, Görüntü Sınıflandırma ve Yönlendirilmiş Sınırlayıcı Kutular (OBB) destekler.
YOLO26 ile Tanışın: En Üst Düzey Uç (Edge) Çözümü#
Yeni bilgisayarlı görü projelerine başlayan ekipler için, yeni piyasaya sürülen Ultralytics YOLO26 sürümüne yükseltmenizi şiddetle tavsiye ederiz. YOLO11 ve YOLOv8 başarılarını temel alan YOLO26, paradigma değiştiren yenilikler sunar:
- Uçtan Uca NMS İçermeyen Tasarım: İlk olarak YOLOv10'da keşfedilen YOLO26, Non-Maximum Suppression (NMS) son işleme duyulan ihtiyacı doğası gereği ortadan kaldırır. Bu, gerçek zamanlı robotik için kritik olan deterministik, ultra düşük gecikmeli çıkarımı garanti eder.
- MuSGD Optimize Edici: Moonshot AI'nın Kimi K2'si gibi LLM eğitim tekniklerinden esinlenen YOLO26, inanılmaz derecede istikrarlı eğitim dinamikleri ve daha hızlı yakınsama elde etmek için MuSGD optimize edicisini (SGD ve Muon'un bir melezi) kullanır.
- %43'e Varan Daha Hızlı CPU Çıkarımı: Dağılım Odaklı Kaybı (DFL) kaldırarak ve ağ başlığını modernize ederek YOLO26, CPU yürütmeye güvenen uç cihazlar için yoğun bir şekilde optimize edilmiş olup, uç senaryolarında YOLOv6'yı büyük ölçüde geride bırakmaktadır.
- ProgLoss + STAL: Bu gelişmiş kayıp formülasyonları, küçük nesne algılamada dikkate değer iyileştirmeler sunarak YOLO26'yı havadan çekilen görüntüler ve mikroskobik kusur denetimi için ideal hale getirir.
YOLO26 hakkında daha fazla bilgi edin
Birleşik Eğitim Örneği#
Ultralytics Python API'sini kullanarak son teknoloji modelleri eğitmek sadece birkaç satır kod gerektirir. Aynı temiz arayüz, ister eski bir YOLO modelini test ediyor olun, ister en yeni YOLO26 çerçevesini dağıtıyor olun geçerlidir.
from ultralytics import YOLO
# Load the next-generation YOLO26 model (NMS-free, optimized for edge)
model = YOLO("yolo26n.pt")
# Train the model on the COCO8 dataset
# The ecosystem handles downloading, caching, and auto-batching natively
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)
# Validate the model and print mAP metrics
metrics = model.val()
print(f"Validation mAP50-95: {metrics.box.map}")
# Export the model for edge deployment
model.export(format="onnx")Daha da sorunsuz bir deneyim için, kod yazma gerektirmeyen Ultralytics Platform kullanarak veri setlerinizi yönetin, denemeleri takip edin ve bulutta modeller eğitin.
Kullanım Durumu Önerileri#
Bu mimariler arasında karar verirken, donanım kısıtlamalarını ve proje gereksinimlerini göz önünde bulundur:
- YOLOX'u seç: Etiket atama stratejileri üzerine akademik araştırmalar yapıyorsan veya özel mimari değişiklikler için saf, anlaşılması kolay, çapasız bir temel model gerekiyorsa.
- YOLOv6-3.0'ı seç: Yüzlerce video akışını aynı anda işlemek için büyük yığın boyutlarından ve TensorRT optimizasyonlarından yararlanabileceğin, üst düzey NVIDIA GPU'larla (A100 veya T4 gibi) donatılmış bir endüstriyel sunucu rafına dağıtım yapıyorsan.
- Modern uygulamaların büyük çoğunluğu için YOLO26'yı seçin. IoT cihazları, dronlar veya cep telefonları için Edge AI uygulamaları geliştiriyorsanız, YOLO26'nın yerel NMS içermeyen tasarımı, CPU optimizasyonları ve kapsamlı ekosistem desteği, eğitim ile prodüksiyon arasındaki boşluğu kapatmak için onu tartışmasız en iyi seçim haline getirir.