YOLOv10 ve YOLOv5#
Üretimde başarılı bilgisayarlı görü işlem hatları dağıtmak için doğru sinir ağı mimarisini seçmek kritik önem taşır. Bu sayfa, gerçek zamanlı nesne algılamanın gelişiminde büyük etkisi olan iki model olan YOLOv10 ve YOLOv5'i derinlemesine ve teknik açıdan karşılaştırır. Her iki model de yapay zekâ topluluğunda önemli bir etki yaratmış olsa da derin öğrenme mimarisi tasarımının farklı dönemlerini ve yaklaşımlarını temsil eder.
Bu kılavuz, dağıtım ihtiyaçlarına en uygun modeli seçmene yardımcı olmak için bu mimarileri ortalama Ortalama Hassasiyet (mAP), çıkarım gecikmesi, parametre verimliliği ve ekosistem desteği açısından değerlendirir.
Modellere Genel Bakış#
YOLOv10: Gerçek Zamanlı Uçtan Uca Nesne Algılama#
Tsinghua Üniversitesi araştırmacıları tarafından geliştirilen YOLOv10, son işleme ihtiyacını ortadan kaldıran yeni bir nesne algılama yaklaşımı sundu.
- Yazarlar: Ao Wang, Hui Chen, Lihao Liu ve diğerleri
- Kuruluş: Tsinghua Üniversitesi
- Tarih: 2024-05-23
- Araştırma Makalesi: arXiv:2405.14458
- Kaynak Kodu: YOLOv10 GitHub Deposu
YOLOv10'un belirleyici yeniliği, Uçtan Uca, NMS Gerektirmeyen Tasarımıdır. Tarihsel olarak YOLO modelleri, yinelenen sınırlayıcı kutuları filtrelemek için Maksimum Olmayan Bastırma (NMS) yöntemine dayanıyordu. YOLOv10, NMS gerektirmeyen eğitim için tutarlı çift atamalar kullanır; bu, çıkarım gecikmesindeki değişkenliği önemli ölçüde azaltır ve dağıtım mantığını basitleştirir. Ayrıca mimari, hesaplama tekrarını azaltmak için çeşitli bileşenleri kapsamlı biçimde optimize eden, verimlilik ve doğruluğu bütüncül olarak ele alan bir tasarıma sahiptir.
YOLOv10 hakkında daha fazla bilgi edin
YOLOv5: Kullanım Kolaylığında Endüstri Standardı#
Ultralytics PyTorch deposunun kuruluşundan kısa süre sonra yayımlanan YOLOv5, geliştiricilerin açık kaynaklı görüntü yapay zekâ çerçevesinden beklentilerini yeniden belirledi. Dünya genelinde en yaygın kullanılan mimarilerden biri olmaya devam ediyor.
- Yazar: Glenn Jocher
- Kuruluş: Ultralytics
- Tarih: 2020-06-26
- Kaynak Kodu: YOLOv5 GitHub Deposu
YOLOv5, Kullanım Kolaylığı ve güçlü, İyi Bakılan Ekosistemi ile takdir toplar. Tamamen PyTorch ile yazılan model, ONNX ve TensorRT gibi biçimlere eğitim, doğrulama ve dışa aktarma desteğini kutudan çıktığı hâliyle sunarak sıfırdan ileri seviyeye sorunsuz bir deneyim sağladı. Öncelikli olarak saf nesne algılamaya odaklanan YOLOv10'un aksine YOLOv5, aynı birleşik Python API'si içinde örnek segmentasyonunu ve görüntü sınıflandırmasını destekleyerek olağanüstü Çok Yönlülük gösterir.
Performans ve Metrik Karşılaştırması#
Hız ile doğruluk arasındaki ilişkiyi görselleştirmek, belirli bir hız kısıtı altında en iyi doğruluğu sunan modelleri belirlemek için önemlidir. Bu performans ölçütlerini anlamak, donanım kısıtlarına uygun bir model seçmenin temelidir.
| Model | boyut (piksel) | mAPval 50-95 | Hız CPU ONNX (ms) | Hız T4 TensorRT10 (ms) | parametre (M) | FLOPs (B) |
|---|---|---|---|---|---|---|
| YOLOv10n | 640 | 38.5 | - | 1.84 | 2.3 | 6.7 |
| YOLOv10s | 640 | 46.3 | - | 2.49 | 7.2 | 21.6 |
| YOLOv10m | 640 | 51.1 | - | 4.74 | 15.4 | 59.1 |
| YOLOv10b | 640 | 52.5 | - | 5.74 | 19.1 | 92.0 |
| YOLOv10l | 640 | 53.2 | - | 7.28 | 24.4 | 120.3 |
| YOLOv10x | 640 | 54.4 | - | 10.70 | 29.5 | 160.4 |
| YOLOv5n | 640 | 28.0 | - | 1.12 | 1.9 | 4.5 |
| YOLOv5s | 640 | 37.4 | - | 1.92 | 7.2 | 16.5 |
| YOLOv5m | 640 | 45.4 | - | 4.03 | 21.2 | 49.0 |
| YOLOv5l | 640 | 49.0 | - | 6.61 | 46.5 | 109.1 |
| YOLOv5x | 640 | 50.7 | - | 11.89 | 86.7 | 205.7 |
Teknik Analiz#
- Doğruluk (mAP): YOLOv10, doğruluk bakımından nesil farkından kaynaklanan belirgin bir üstünlük gösterir. Örneğin YOLOv10-X modeli, 54,4% mAPval değerine ulaşarak YOLOv5x'in (50,7% mAP) önüne geçer. Bu sıçrama büyük ölçüde NMS gerektirmeyen eğitim stratejisinden ve 2024'te sunulan mimari iyileştirmelerden kaynaklanır.
- Çıkarım Gecikmesi: YOLOv5 modelleri ham T4 TensorRT kıyaslamalarında olağanüstü hızlı olsa da (ör. YOLOv5n 1,12 ms), YOLOv10 son işleme aşamasındaki NMS adımını tamamen ortadan kaldırır. Uçtan uca gerçek dağıtımlarda YOLOv10'un NMS gerektirmeyen tasarımı daha tutarlı ve öngörülebilir gecikme sunar; bu, otonom araçlar ve robotik gibi gerçek zamanlı uygulamalar için kritik önem taşır.
- Parametre Verimliliği: YOLOv10 modelleri son derece rekabetçi bir Performans Dengesi sunar. YOLOv10-S, YOLOv5s ile aynı sayıda (7,2 milyon) parametreyle %46,3 mAP elde ederken YOLOv5s %37,4 mAP değerine ulaşır.
NVIDIA Jetson gibi uç yapay zekâ cihazlarına dağıtım yaparken, NMS mantığı içermeyen modeller (YOLOv10 veya nms=False ile dışa aktarılan YOLO26 gibi) genellikle TensorRT'ye daha sorunsuz derlenir ve CPU'ya geri dönüş işlemlerini önler.
Kullanım Alanları ve Öneriler#
YOLOv10 ve YOLOv5 arasında seçim yapmak, projene özel gereksinimlere, dağıtım kısıtlamalarına ve ekosistem tercihlerine bağlıdır.
YOLOv10'u Ne Zaman Seçmeli?#
YOLOv10 şu durumlar için güçlü bir seçenektir:
- NMS Olmadan Gerçek Zamanlı Algılama: Maksimum Olmayan Bastırma olmadan uçtan uca algılamadan yararlanan ve dağıtım karmaşıklığını azaltan uygulamalar.
- Hız ve Doğruluk Arasında Dengeli Ödünleşimler: Çeşitli model ölçeklerinde çıkarım hızı ile algılama doğruluğu arasında güçlü bir denge gerektiren projeler.
- Tutarlı Gecikme Gerektiren Uygulamalar: Robotik veya otonom sistemler gibi öngörülebilir çıkarım sürelerinin kritik olduğu dağıtım senaryoları.
YOLOv5'i Ne Zaman Seçmeli?#
YOLOv5 şu durumlarda önerilir:
- Üretimde Kendini Kanıtlamış Sistemler: YOLOv5'in uzun süreli istikrar geçmişine, kapsamlı belgelerine ve geniş topluluk desteğine değer verilen mevcut dağıtımlar.
- Kaynakları Kısıtlı Eğitim: YOLOv5'in verimli eğitim işlem hattının ve daha düşük bellek gereksinimlerinin avantaj sağladığı, GPU kaynaklarının sınırlı olduğu ortamlar.
- Kapsamlı Dışa Aktarma Biçimi Desteği: ONNX, TensorRT, CoreML ve LiteRT dâhil birçok biçimde dağıtım gerektiren projeler.
Ultralytics'i (YOLO26) Ne Zaman Seçmeli#
Yeni projelerin çoğu için Ultralytics YOLO26, performans ve geliştirici deneyiminin en iyi bileşimini sunar:
- NMS Olmadan Uç Dağıtımı: Maksimum Olmayan Bastırma son işleminin karmaşıklığı olmadan tutarlı ve düşük gecikmeli çıkarım gerektiren uygulamalar.
- Yalnızca CPU Kullanılan Ortamlar: YOLO26'nın CPU'da %43'e varan daha hızlı çıkarımının belirleyici bir avantaj sağladığı, özel GPU hızlandırması bulunmayan cihazlar.
- Küçük Nesne Algılama: ProgLoss ve STAL'ın çok küçük nesnelerde doğruluğu önemli ölçüde artırdığı havadan drone görüntüleri veya IoT sensör analizi gibi zorlu senaryolar.
Ultralytics Avantajı#
YOLOv10 mükemmel algılama yetenekleri sunsa da akademik depolara dayanmak bazen üretim işlem hatlarını karmaşıklaştırabilir. Resmî Ultralytics Python paketini kullanarak hem YOLOv5'i hem YOLOv10'u ve gelişmiş özellikleri destekleyen birleşik bir ekosisteme erişebilirsin.
- Eğitim Verimliliği: Ultralytics YOLO mimarileri, eğitim sırasında daha düşük bellek gereksinimleri için kapsamlı biçimde optimize edilmiştir. Yoğun CUDA belleği gerektiren RT-DETR gibi ağır Transformer modellerinin aksine YOLOv5'i ve YOLOv10'u standart tüketici GPU'larında rahatlıkla eğitebilirsin.
- Ekosistem Entegrasyonu: Ultralytics Platform entegrasyonu, geliştiricilerin veri kümelerini görsel olarak yönetmesine, deneyleri Weights & Biases ile izlemesine ve hiperparametreleri otomatik olarak ayarlamasına olanak tanır.
Kod Örneği: Sorunsuz Eğitim#
Ultralytics kütüphanesini kullanarak bu mimariler arasında geçiş yapmak, model dizesini değiştirmek kadar kolaydır. Eğitim işlem hattı veri artırma, ölçeklendirme ve optimizasyon ayarlarını otomatik olarak yönetir.
from ultralytics import YOLO
# YOLOv5'i kullanmak için:
# model = YOLO("yolov5su.pt")
# YOLOv10'u kullanmak için:
model = YOLO("yolov10s.pt")
# Modeli özel bir veri kümesiyle eğit
results = model.train(
data="coco8.yaml",
epochs=100,
imgsz=640,
batch=16,
device=0, # GPU 0'ı kullan
)
# Eğitilmiş modeli ONNX biçimine aktar
path = model.export(format="onnx")Yeni Nesil: Ultralytics YOLO26#
Bugün yeni bir makine öğrenimi projesine başlıyorsan en yeni Ultralytics YOLO26 modelini değerlendirmeni önemle öneririz. Ocak 2026'da yayımlanan model, son beş yılın en iyi yeniliklerini bir araya getirerek son teknoloji düzeyini temsil eder.
YOLO26, YOLOv10'un öncülük ettiği Uçtan Uca, NMS Gerektirmeyen Tasarımı isteğe bağlı bir bire-bir başlık (nms=False) olarak bünyesinde barındırır ve hızlı, öngörülebilir dağıtım sağlar. Ayrıca YOLO26 birçok önemli yenilik sunar:
- %43'e Kadar Daha Hızlı CPU Çıkarımı: Distribution Focal Loss (DFL) modülünü kaldıran YOLO26, standart CPU'larda büyük hız artışları sağlar ve mobil dağıtım ile düşük güçlü IoT sensörleri için en iyi seçenek hâline gelir.
- MuSGD Optimizasyonu: Moonshot AI'ın Kimi K2 modeli gibi Büyük Dil Modeli (LLM) eğitim tekniklerinden ilham alan YOLO26, SGD ile Muon'u birleştiren hibrit bir yöntem kullanır. Bu, önceki YOLO modellerinde kullanılan standart SGD ve AdamW optimizasyonlarına kıyasla son derece kararlı eğitim süreçleri ve çok daha hızlı yakınsama sağlar.
- ProgLoss + STAL: Bu gelişmiş kayıp fonksiyonları, drone görüntüleri ve havadan güvenlik uygulamaları için kritik önem taşıyan küçük nesneleri tanımada kayda değer iyileştirmeler sağlar.
- Göreve Özgü Uzmanlık: YOLOv10 yalnızca sınırlayıcı kutu algılamaya odaklanırken YOLO26, Poz için Artık Log-Olasılık Tahmini (RLE) ve Yönlendirilmiş Sınırlayıcı Kutular (OBB) için özel açı kayıpları dâhil tüm görevlere yönelik mimari iyileştirmeler sunar.
Nesne algılamanın daha geniş kapsamını araştırıyorsan bu mimarileri başka çerçevelerle karşılaştırmak da ilgini çekebilir. Daha kapsamlı kıyaslamalar için YOLO11 ve EfficientDet ya da RT-DETR ve YOLOv8 üzerine ayrıntılı incelemelerimize göz at.
YOLOv5'in güçlü geçmişine, YOLOv10'un NMS gerektirmeyen yeniliğine ya da YOLO26'nın eşsiz ve son teknoloji performansına güveniyor ol, Ultralytics ekosistemi görüntü yapay zekâ uygulamalarını hızlı ve verimli biçimde hayata geçirmek için gereken araçları sunar.