YOLOv10 ve YOLOv5#
Üretimde başarılı bilgisayarlı görü işlem hatları dağıtılırken doğru sinir ağı mimarisini seçmek kritik önem taşır. Bu sayfa, gerçek zamanlı nesne algılamanın gelişiminde oldukça etkili iki model olan YOLOv10 ve YOLOv5'i karşılaştıran kapsamlı bir teknik analiz sunar. Her iki model de yapay zekâ topluluğu üzerinde önemli etkiler yaratmış olsa da derin öğrenme mimarisi tasarımında farklı dönemleri ve felsefeleri temsil eder.
Bu kılavuz, bu mimarileri ortalama kesinlik (mAP), çıkarım gecikmesi, parametre verimliliği ve ekosistem desteğine göre değerlendirerek dağıtım ihtiyaçların için en iyi modeli seçmene yardımcı olur.
Model Genel Bakışları#
YOLOv10: Gerçek Zamanlı Uçtan Uca Nesne Algılama#
Tsinghua Üniversitesi'ndeki araştırmacılar tarafından geliştirilen YOLOv10, son işleme ihtiyacını ortadan kaldırarak nesne algılamaya yeni bir yaklaşım getirdi.
- 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 atılımı, Uçtan Uca NMS İçermeyen Tasarımıdır. Tarihsel olarak YOLO modelleri, yinelenen BBox'ları filtrelemek için Maksimum Olmayan Bastırma (NMS) yöntemine dayanıyordu. YOLOv10, NMS içermeyen eğitim için tutarlı ikili atamalar kullanır; bu da çıkarım gecikmesindeki değişkenliği büyük ö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-doğruluk odaklı bütünsel bir tasarıma sahiptir.
YOLOv10 hakkında daha fazla bilgi edin
YOLOv5: Kullanılabilirlikte Sektör Standardı#
Ultralytics PyTorch deposunun başlangıcından kısa süre sonra yayımlanan YOLOv5, geliştiricilerin açık kaynaklı bir görü yapay zekâ çerçevesinden beklentilerini yeniden tanımladı. Günümüzde dünya genelinde en yaygın dağıtı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 son derece İyi Korunan Ekosistemi ile tanınır. Tamamen PyTorch ile yazılan model, eğitim, doğrulama ve ONNX ile TensorRT gibi biçimlere dışa aktarma desteğini hazır olarak sunarak sorunsuz bir "sıfırdan kahramana" deneyimi sağladı. Öncelikli olarak saf nesne algılamaya odaklanan YOLOv10'un aksine YOLOv5, aynı bütünleşik Python API içinde örnek bölütleme ve görüntü sınıflandırma desteği sunarak olağanüstü Çok Yönlülük sergiler.
Performans ve Metrik Karşılaştırması#
Hız ve doğruluk arasındaki ilişkiyi görselleştirmek, belirli bir hız kısıtı için en iyi doğruluğu sunan modelleri belirlemek açısından önemlidir. Bu performans metriklerini anlamak, belirli donanım kısıtlarına uygun bir model seçmenin temelini oluşturur.
| Model | boyut (piksel) | mAPval 50-95 | Hız CPU ONNX (ms) | Hız T4 TensorRT10 (ms) | parametre (M) | FLOPs (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 |
| YOLOv5n | 640 | 28.0 | 73.6 | 1.12 | 2.6 | 7.7 |
| YOLOv5s | 640 | 37.4 | 120.7 | 1.92 | 9.1 | 24.0 |
| YOLOv5m | 640 | 45.4 | 233.9 | 4.03 | 25.1 | 64.2 |
| YOLOv5l | 640 | 49.0 | 408.4 | 6.61 | 53.2 | 135.0 |
| YOLOv5x | 640 | 50.7 | 763.2 | 11.89 | 97.2 | 246.4 |
Teknik Analiz#
- Doğruluk (mAP): YOLOv10, doğrulukta belirgin bir nesil avantajı gösterir. Örneğin YOLOv10-X modeli %54,4 mAPval elde ederek YOLOv5x'in %50,7 mAP değerini geride bırakır. Bu sıçrama büyük ölçüde NMS içermeyen eğitim stratejisinden ve 2024'te sunulan mimari iyileştirmelerden kaynaklanır.
- Çıkarım Gecikmesi: YOLOv5 modelleri ham T4 TensorRT karşılaştırmalarında (ör. YOLOv5n için 1,12 ms) olağanüstü hızlı olsa da YOLOv10, son işleme NMS adımını tamamen ortadan kaldırır. Uçtan uca pratik dağıtımlarda YOLOv10'un NMS içermeyen tasarımı daha tutarlı ve deterministik bir gecikme sağlar; bu da 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 korur. YOLOv10-S yalnızca 7,2 milyon parametreyle %46,7 mAP elde ederken YOLOv5s, 9,1 milyon parametreyle %37,4 mAP elde eder.
NVIDIA Jetson gibi uç yapay zekâ cihazlarına dağıtım yaparken NMS mantığı içermeyen modeller (YOLOv10 ve YOLO26 gibi) çoğu zaman 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, belirli proje gereksinimlerine, dağıtım kısıtlarına ve ekosistem tercihlerine bağlıdır.
YOLOv10 Ne Zaman Seçilmeli?#
YOLOv10 şu durumlar için güçlü bir tercihtir:
- NMS'siz 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.
- Dengeli Hız-Doğruluk Dengesi: Ç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 Ne Zaman Seçilmeli?#
YOLOv5 şu durumlar için önerilir:
- Üretimde Kanıtlanmış Sistemler: YOLOv5'in uzun yıllara dayanan kararlılığına, 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ı sınırlı ortamlar.
- Kapsamlı Dışa Aktarma Biçimi Desteği: ONNX, TensorRT, CoreML ve TFLite dahil olmak üzere birçok biçimde dağıtım gerektiren projeler.
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.
Ultralytics Avantajı#
YOLOv10 mükemmel algılama yetenekleri sunsa da akademik depolara güvenmek bazen üretim işlem hatlarını karmaşıklaştırabilir. Resmî Ultralytics Python paketini kullanarak hem YOLOv5'i hem de 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. Büyük miktarda CUDA belleği gerektiren ağır Transformer modellerinin (RT-DETR gibi) aksine YOLOv5 ve YOLOv10'u standart tüketici GPU'larında rahatça eğitebilirsin.
- Ekosistem Entegrasyonu: Ultralytics Platform ile entegrasyon, geliştiricilerin veri kümelerini görsel olarak yönetmesine, Weights & Biases kullanarak deneyleri 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 basittir. Eğitim işlem hattı veri artırma, ölçeklendirme ve optimize edici yapılandırmasını otomatik olarak yönetir.
from ultralytics import YOLO
# To use YOLOv5:
# model = YOLO("yolov5s.pt")
# To use YOLOv10:
model = YOLO("yolov10s.pt")
# Train the model on a custom dataset
results = model.train(
data="coco8.yaml",
epochs=100,
imgsz=640,
batch=16,
device=0, # Use GPU 0
)
# Export the trained model to ONNX format
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 şiddetle öneririz. Ocak 2026'da yayımlanan bu model, son beş yılın en iyi yeniliklerini bir araya getirerek en ileri teknoloji düzeyini temsil eder.
YOLO26, YOLOv10 tarafından öncülük edilen Uçtan Uca NMS İçermeyen Tasarımı doğal olarak bünyesinde barındırır ve hızlı, deterministik dağıtım sağlar. Ayrıca YOLO26 birkaç kritik atılım sunar:
- %43'e Kadar Daha Hızlı CPU Çıkarımı: Dağılım Odaklı Kayıp (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 Optimize Edicisi: Moonshot AI'ın Kimi K2'si gibi Büyük Dil Modeli (LLM) eğitim tekniklerinden ilham alan YOLO26, SGD ve Muon'un bir birleşimini kullanır. Bu, YOLOv10'da kullanılan AdamW optimize edicilerine kıyasla son derece kararlı eğitim çalışmaları ve çok daha hızlı yakınsama sağlar.
- ProgLoss + STAL: Bu gelişmiş kayıp işlevleri, drone görüntüleri ve hava güvenliği uygulamaları için kritik olan küçük nesne tanımada kayda değer iyileştirmeler sağlar.
- Göreve Özel Uzmanlık: YOLOv10 yalnızca BBox algılayıcısıyken YOLO26, Pose için Artık Log-Olasılık Tahmini (RLE) ve Yönlendirilmiş BBox'lar (OBB) için özel açı kayıpları dahil olmak üzere tüm görevler için özel mimari iyileştirmeler sunar.
Nesne algılamanın daha geniş kapsamını inceliyorsan bu mimarileri diğer çerçevelerle karşılaştırmak da ilgini çekebilir. Daha kapsamlı karşılaştırmalar için YOLO11 ve EfficientDet veya RT-DETR ve YOLOv8 hakkındaki ayrıntılı incelemelerimize göz at.
İster YOLOv5'in sağlam geçmişine, ister YOLOv10'un NMS içermeyen yeniliğine, ister YOLO26'nın eşsiz son teknoloji performansına güven; Ultralytics ekosistemi, görü yapay zekâ uygulamalarını hızlı ve verimli biçimde hayata geçirmen için gereken araçları sunar.