YOLOv10 ve YOLOX: Çıpasız ve NMS'siz Nesne Tespitinin Evrimi
Bilgisayar görüşü alanı, gerçek zamanlı nesne tespiti mimarilerindeki hızlı gelişmelerle ilerlemektedir. Bu ayrıntılı teknik karşılaştırma, verimlilik ve tasarım paradigmalarının sınırlarını zorlayan iki etkili model olan YOLOv10 ve YOLOX'u inceliyor. Mimari farklılıklarını, performans metriklerini ve eğitim metodolojilerini inceleyerek, geliştiriciler ve araştırmacılar sağlam görüş sistemleri dağıtmak için bilinçli kararlar alabilirler.
Model Arka Planları ve Kökenleri
Bu derin öğrenme modellerinin kökenlerini anlamak, mimari hedefleri ve hedeflenen kullanım durumları hakkında değerli bir bağlam sağlar.
YOLOv10: Gerçek Uçtan Uca Tespit İçin NMS'yi Ortadan Kaldırmak
Uzun süredir devam eden gecikme darboğazlarını çözmek için geliştirilen YOLOv10, YOLO ailesine yerel bir uçtan uca yaklaşım getirdi.
- Yazarlar: Ao Wang, Hui Chen, Lihao Liu, ve diğerleri.
- Kuruluş:Tsinghua Üniversitesi
- Tarih: 23 Mayıs 2024
- ArXiv:2405.14458
- GitHub:THU-MIG/yolov10
- Belgeler:Ultralytics YOLOv10 Belgeleri
YOLOv10 hakkında daha fazla bilgi edinin.
YOLOX: Araştırma ve Endüstri Arasındaki Boşluğu Kapatmak
YOLOX, geleneksel YOLO tasarımının çıpasız bir versiyonu olarak ortaya çıktı ve endüstriyel topluluklarda dağıtımı kolaylaştırmayı hedefleyen, rekabetçi performansla daha basit bir metodoloji sundu.
- Yazarlar: Zheng Ge, Songtao Liu, Feng Wang, Zeming Li ve Jian Sun
- Kuruluş:Megvii
- Tarih: 18 Temmuz 2021
- ArXiv:2107.08430
- GitHub:Megvii-BaseDetection/YOLOX
- Belgeler:YOLOX Resmi Belgeleri
YOLOX hakkında daha fazla bilgi edinin
Mimari Öne Çıkanlar ve Yenilikler
Her iki çerçeve de geleneksel çıpa tabanlı dedektörlerden ayrılır, ancak nesne tespiti hattında farklı sorunları çözerler.
YOLOX Mimarisi
YOLOX, 2021 yılında ekosisteme birkaç önemli güncelleme getirdi. Temel katkısı, çıpasız bir dedektör tasarımına geçiş yapmasıydı. Önceden tanımlanmış çıpa kutularını ortadan kaldırarak, YOLOX farklı veri kümeleri için gereken tasarım parametrelerinin ve sezgisel ayarlamanın sayısını büyük ölçüde azalttı.
Ayrıca, YOLOX sınıflandırma ve regresyon görevlerini ayıran ayrık bir kafa kullanır. Bu, iki hedef arasındaki çelişkiyi çözerek eğitim sırasında yakınsamayı önemli ölçüde hızlandırdı. Ayrıca, COCO veri kümesinde yaygın olan kalabalık sahnelerin ve örtüşmelerin ele alınmasını iyileştiren gelişmiş etiket ataması için SimOTA'yı kullanır.
Çıpasız Avantajı
YOLOX tarafından öncülük edilenler gibi çıpasız tasarımlar, model ayarlamasının karmaşıklığını önemli ölçüde azaltır. Geliştiricilerin artık optimal çıpa kutusu boyutlarını tanımlamak için özel veri kümeleri üzerinde k-ortalamalar kümelemesi yapmasına gerek kalmaz, bu da değerli hazırlık süresinden tasarruf sağlar.
YOLOv10 Mimarisi
YOLOX tespit kafasını iyileştirmiş olsa da, çıkarım sırasında gecikme değişkenliğine neden olan Non-Maximum Suppression (NMS)'a hala güveniyordu. YOLOv10, NMS'siz eğitim için tutarlı bir ikili atama stratejisi sunarak bu kusuru özellikle hedefledi. Eğitim sırasında hem çoktan-bire hem de birden-bire etiket atamalarını kullanır, ancak çıkarım sırasında çoktan-bire kafayı tamamen bırakarak NMS son işlemine gerek kalmadan temiz tahminler üretir.
YOLOv10 ayrıca bütünsel verimlilik-doğruluk odaklı bir model tasarımına sahiptir. Hafif sınıflandırma kafaları ve uzamsal-kanal ayrık örnekleme içerir, bu da doğruluktan ödün vermeden parametre sayısını ve FLOP'ları büyük ölçüde azaltır.
Performans Karşılaştırması
Bu modelleri NVIDIA T4 GPU gibi donanımlar üzerinde değerlendirmek, ölçeğe bağlı olarak belirgin avantajlar ortaya koymaktadır. Aşağıda kapsamlı karşılaştırma tablosu bulunmaktadır.
| Model | boyut (piksel) | mAPval 50-95 | Hız CPU ONNX (ms) | Hız T4 TensorRT10 (ms) | parametreler (M) | FLOP'lar (B) |
|---|---|---|---|---|---|---|
| YOLOv10n | 640 | 39.5 | - | 1.56 | 2.3 | 6.7 |
| YOLOv10s | 640 | 46.7 | - | 2.66 | 7.2 | 21.6 |
| YOLOv10m | 640 | 51.3 | - | 5.48 | 15.4 | 59.1 |
| YOLOv10b | 640 | 52.7 | - | 6.54 | 24.4 | 92.0 |
| YOLOv10l | 640 | 53.3 | - | 8.33 | 29.5 | 120.3 |
| YOLOv10x | 640 | 54.4 | - | 12.2 | 56.9 | 160.4 |
| 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 |
Yukarıda görüldüğü gibi, YOLOv10 olağanüstü iyi ölçeklenir. Bu YOLOv10x varyantı en yüksek doğruluğu elde eder (54.4 mAP), iken YOLOv10n varyantı kullanarak en hızlı çıkarımı sunar TensorRT entegrasyonu. Tersine, eski YOLOX nano modeli, yoğun kısıtlı ortamlar için en küçük genel ayak izine sahiptir.
Eğitim Metodolojileri ve Kaynak Gereksinimleri
Modelleri üretim için uygularken, eğitim ekosistemi ve kaynak talepleri, ham çıkarım hızı kadar kritiktir.
YOLOX genellikle yönetimi zahmetli olabilen eski ortam yapılandırmalarına dayanır. Ayrıca, eski kod tabanı, çoklu GPU dağıtılmış eğitimi veya karma hassasiyet optimizasyonu elde etmek için daha fazla şablon kodu gerektirir.
Buna karşılık, YOLOv10 modern PyTorch iş akışlarıyla sorunsuz bir şekilde entegre olur, ancak geliştirici deneyimini gerçekten dönüştüren Ultralytics ekosistemidir. Ultralytics modelleri, RT-DETR gibi transformatör tabanlı mimarilere kıyasla eğitim sırasında önemli ölçüde daha düşük CUDA bellek kullanımı ile karakterize edilir.
Kod Örneği: Akıcı Eğitim
Birleşik Ultralytics API'sini kullanarak, son teknoloji modelleri yalnızca birkaç satır Python koduyla sorunsuz bir şekilde eğitebilirsiniz. Bu, C++ operatörlerinin manuel derlenmesini veya karmaşık yapılandırma dosyalarını önler.
from ultralytics import YOLO
# Initialize a pre-trained YOLOv10 model
model = YOLO("yolov10s.pt")
# Train the model on the COCO8 dataset
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)
# Validate the model's performance
metrics = model.val()
# Export the optimized model to ONNX format
model.export(format="onnx")
Bu basit sözdizimi, otomatik karma hassasiyet, otomatik veri artırma ve kutudan çıktığı gibi Weights & Biases gibi araçlarla entegrasyona anında erişim sağlar.
Kullanım Durumları ve Öneriler
YOLOv10 ve YOLOX arasında seçim yapmak, projenizin özel gereksinimlerine, dağıtım kısıtlamalarına ve ekosistem tercihlerinize bağlıdır.
YOLOv10 Ne Zaman Tercih Edilmeli?
YOLOv10 için güçlü bir seçenektir:
- NMS-Serbest Gerçek Zamanlı Algılama: Non-Maximum Suppression olmadan uçtan uca algılamadan faydalanan, dağıtım karmaşıklığını azaltan uygulamalar.
- Dengeli Hız-Doğruluk Dengelemeleri: Çeşitli model ölçeklerinde çıkarım hızı ve algılama doğruluğu arasında güçlü bir denge gerektiren projeler.
- Tutarlı Gecikme Süreli Uygulamalar: Tahmin edilebilir çıkarım sürelerinin kritik olduğu dağıtım senaryoları, örneğin robotik veya otonom sistemler.
Ne Zaman YOLOX Seçmeli
YOLOX şunlar için önerilir:
- Anchor-Free Algılama Araştırması: YOLOX'un temiz, anchor-free mimarisini yeni algılama başlıkları veya kayıp fonksiyonları denemek için bir temel olarak kullanan akademik araştırmalar.
- Ultra Hafif Kenar 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.
- SimOTA Etiket Atama Çalışmaları: Optimal taşıma tabanlı etiket atama stratejilerini ve bunların eğitim yakınsaması üzerindeki etkilerini araştıran projeler.
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 (NMS) son işlem karmaşıklığı olmadan tutarlı, düşük gecikmeli çıkarım gerektiren uygulamalar.
- Yalnızca CPU Ortamları: Özel GPU hızlandırması olmayan cihazlarda, YOLO26'nın %43'e kadar daha hızlı CPU çıkarımı belirleyici bir avantaj sağlar.
- Küçük Nesne Algılama: ProgLoss ve STAL'ın küçük nesneler üzerindeki doğruluğu önemli ölçüde artırdığı hava drone görüntüleri veya IoT sensör analizi gibi zorlu senaryolar.
Görsel Yapay Zekanın Geleceği: YOLO26 Sahneye Çıkıyor
YOLOv10 ve YOLOX önemli kilometre taşlarını temsil etse de, bilgisayar görüşü alanı durmaksızın ilerlemektedir. Bugün yeni projelere başlayan geliştiriciler için kesin öneri Ultralytics YOLO26'dır.
Ocak 2026'da piyasaya sürülen Ultralytics YOLO26, YOLOv10 tarafından öncülük edilen uçtan uca NMS içermeyen tasarımın temel atılımı üzerine inşa edilmiştir ve daha fazla kararlılık ve hız için geliştirilmiştir.
YOLO26, birkaç büyük ilerleme tanıtarak öne çıkıyor:
- %43'e Kadar Daha Hızlı CPU Çıkarımı: Dağıtım Odak Kaybını (DFL) stratejik olarak kaldırarak, YOLO26 GPU'suz uç cihazlarda çok daha üstün performans elde eder.
- MuSGD Optimizatörü: LLM eğitim kararlılığından esinlenerek, SGD ve Muon'un bu yeni hibriti, daha hızlı yakınsama ve oldukça kararlı eğitim çalışmaları sağlar.
- ProgLoss + STAL: Bu gelişmiş kayıp fonksiyonları, hava görüntüleri ve IoT sensörleri için kritik bir faktör olan küçük nesne tanımada önemli iyileşmeler sağlar.
- Benzersiz Çok Yönlülük: Kesinlikle bir nesne dedektörü olan YOLOX'un aksine, YOLO26, tek, birleşik bir kütüphane içinde yerel olarak Örnek Segmentasyonu, Poz Tahmini, Görüntü Sınıflandırması ve OBB Tespiti'ni destekler.
YOLO26 hakkında daha fazla bilgi edinin
Ultralytics Platformundan Yararlanın
Üretime giden en basit yol için, geliştiriciler Ultralytics Platformunu kullanarak veri kümelerini etiketleyebilir, bulutta YOLO26 modellerini eğitebilir ve sıfır kurulum gereksinimiyle herhangi bir uç cihaza dağıtabilir.
Gerçek Dünya Uygulamaları
Doğru modeli seçmek, çeşitli endüstrilerdeki gerçek dünya dağıtımlarının başarısını belirler.
Yüksek Hızlı Video Analizi
Akıllı şehir trafik yönetimi gibi yoğun video akışlarını işlemek için, YOLOv10, NMS içermeyen ön işleme özelliği sayesinde önemli bir avantaj sağlar. NMS darboğazını ortadan kaldırmak, tutarlı düşük gecikmeye olanak tanır ve bu da onu BoT-SORT gibi takip algoritmalarıyla eşleştirmek için ideal kılar.
Eski Nesil Kenar Dağıtımı
Eski akademik kurulumlar veya saf evrişimsel paradigmalara göre yoğun bir şekilde optimize edilmiş eski Android uygulamaları için, YOLOX-Tiny gibi daha küçük modeller, eski PyTorch ortamlarını sürdürmenin kabul edilebilir bir ödünleşim olduğu özel kullanım durumları bulabilir.
Modern Kenar ve IoT Cihazları
Robotik, dronlar ve perakende raf analizi gibi yeni nesil donanım dağıtımları için YOLO26 nihai çözümdür. Dramatik olarak azaltılmış CPU gecikmesi ve üstün küçük nesne tespiti, onu otonom navigasyon ve ayrıntılı envanter yönetimi için benzersiz bir şekilde nitelikli kılar.
Derin öğrenme araç setinizi genişletmek için ek karşılaştırmalar yapmak üzere, bu modellerin esnek YOLO11 veya transformer tabanlı RT-DETR gibi alternatiflere karşı nasıl performans gösterdiğini de inceleyebilirsiniz.