YOLOv10 ve YOLOv5: Kapsamlı Bir Teknik Karşılaştırma
Üretimde başarılı bilgisayar görüşü işlem hatlarını dağıtmak için doğru sinir ağı mimarisini seçmek kritiktir. Bu sayfa, gerçek zamanlı nesne tespitinin evriminde oldukça etkili iki model olan YOLOv10 ve YOLOv5'i karşılaştıran derinlemesine bir teknik analiz sunmaktadır. Her iki model de yapay zeka topluluğu üzerinde önemli etkiler yaratmış olsa da, derin öğrenme mimarisi tasarımında farklı dönemleri ve felsefeleri temsil etmektedirler.
Bu kılavuz, bu mimarileri ortalama Ortalama Hassasiyet (mAP), çıkarım gecikmesi, parametre verimliliği ve ekosistem desteği temelinde değerlendirerek dağıtım ihtiyaçlarınız için en iyi modeli seçmenize yardımcı olur.
Model Genel Bakışları
YOLOv10: Gerçek Zamanlı Uçtan Uca Nesne Algılama
Tsinghua Üniversitesi araştırmacıları tarafından geliştirilen YOLOv10, işlem sonrası 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 çığır açan özelliği, Uçtan Uca NMS-Serbest Tasarımı'dır. Tarihsel olarak, YOLO modelleri, gereksiz sınırlayıcı kutuları filtrelemek için Non-Maximum Suppression (NMS) yöntemine güveniyordu. YOLOv10, NMS-serbest eğitim için tutarlı ikili atamalar kullanarak çıkarım gecikmesi değişkenliğini önemli ölçüde azaltır ve dağıtım mantığını basitleştirir. Ek olarak, mimari, hesaplama fazlalığını azaltmak için çeşitli bileşenleri kapsamlı bir şekilde optimize eden bütünsel bir verimlilik-doğruluk odaklı tasarıma sahiptir.
YOLOv10 hakkında daha fazla bilgi edinin.
YOLOv5: Kullanılabilirlik İçin Endüstri Standardı
Ultralytics PyTorch deposunun başlangıcından kısa bir süre sonra piyasaya sürülen YOLOv5, geliştiricilerin açık kaynaklı bir yapay zeka görüş çerçevesinden beklentilerini yeniden tanımladı. Küresel olarak en yaygın kullanılan mimarilerden biri olmaya devam etmektedir.
- Yazar: Glenn Jocher
- Kuruluş:Ultralytics
- Tarih: 2020-06-26
- Kaynak Kodu:YOLOv5 GitHub Deposu
YOLOv5, Kullanım Kolaylığı ve son derece İyi Yönetilen Ekosistemi ile öne çıkmaktadır. Tamamen PyTorch ile yazılmış olup, eğitim, doğrulama ve ONNX ve TensorRT gibi formatlara dışa aktarma için kutudan çıktığı haliyle destekle sorunsuz bir "sıfırdan kahramana" deneyim sunmuştur. Yalnızca saf nesne algılamaya odaklanan YOLOv10'un aksine, YOLOv5, aynı birleşik Python API'si içinde örnek segmentasyonu ve görüntü sınıflandırmayı destekleyerek olağanüstü bir Çok Yönlülük sergilemektedir.
YOLOv5 hakkında daha fazla bilgi edinin.
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ıtlaması için en iyi doğruluğu sunan modelleri belirlemek açısından önemlidir. Bu performans metriklerini anlamak, özel donanım kısıtlamalarınıza uygun bir model seçmek için temeldir.
| 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 |
| 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 açık bir nesilsel avantaj sergilemektedir. Örneğin, YOLOv10-X modeli %54,4 mAPval değerine ulaşarak YOLOv5x'i (%50,7 mAP) geride bırakmaktadır. Bu sıçrama büyük ölçüde NMS-serbest eğitim stratejisi ve 2024'te tanıtılan mimari iyileştirmelerden kaynaklanmaktadır.
- Çıkarım Gecikmesi: YOLOv5 modelleri ham T4 TensorRT kıyaslamalarında (örn. YOLOv5n 1.12ms'de) olağanüstü hızlı olsa da, YOLOv10 işlem sonrası NMS adımını tamamen ortadan kaldırır. Uçtan uca pratik dağıtımlarda, YOLOv10'un NMS-serbest tasarımı, otonom araçlar ve robotik gibi gerçek zamanlı uygulamalar için kritik olan daha tutarlı ve deterministik bir gecikme sağlar.
- Parametre Verimliliği: YOLOv10 modelleri, oldukça rekabetçi bir Performans Dengesi sürdürmektedir. YOLOv10-S, yalnızca 7.2M parametre ile %46,7 mAP elde ederken, YOLOv5s, 9.1M parametre ile %37,4 mAP elde etmektedir.
Dağıtım İpucu
Kenar yapay zeka cihazlarına, örneğin NVIDIA Jetson'a dağıtım yaparken, NMS mantığı olmayan modeller (YOLOv10 ve YOLO26 gibi) genellikle TensorRT'ye daha temiz bir şekilde derlenir ve CPU'ya geri dönüş işlemlerini önler.
Kullanım Durumları ve Öneriler
YOLOv10 ve YOLOv5 arasında seçim yapmak, özel proje gereksinimlerinize, dağıtım kısıtlamalarınıza 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.
YOLOv5 Ne Zaman Tercih Edilmeli?
YOLOv5, aşağıdaki durumlar için önerilir:
- Kanıtlanmış Üretim Sistemleri: YOLOv5'in uzun süreli istikrar geçmişinin, kapsamlı dokümantasyonunun ve büyük topluluk desteğinin değerli olduğu mevcut dağıtımlar.
- Kaynak Kısıtlı Eğitim: Sınırlı GPU kaynaklarına sahip ortamlarda, YOLOv5'in verimli eğitim hattının ve daha düşük bellek gereksinimlerinin avantaj sağladığı durumlar.
- Kapsamlı Dışa Aktarma Formatı Desteği: ONNX, TensorRT, CoreML ve TFLite dahil olmak üzere birçok formatta dağıtım gerektiren 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.
Ultralytics'in Avantajı
YOLOv10 mükemmel algılama yetenekleri sunsa da, akademik depolara güvenmek bazen üretim süreçlerini karmaşıklaştırabilir. Resmi Ultralytics Python paketi kullanılarak, hem YOLOv5 hem de YOLOv10'u destekleyen birleşik bir ekosisteme ve gelişmiş özelliklere erişim sağlarsınız.
- Eğitim Verimliliği: Ultralytics YOLO mimarileri, eğitim sırasında daha düşük bellek gereksinimleri için derinlemesine optimize edilmiştir. Büyük CUDA belleği gerektiren ağır transformer modellerinin (RT-DETR gibi) aksine, YOLOv5 ve YOLOv10'u standart tüketici GPU'larında rahatlıkla eğitebilirsiniz.
- 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 hattı, veri artırma, ölçekleme 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ız, en son Ultralytics YOLO26'yı değerlendirmenizi şiddetle tavsiye ederiz. Ocak 2026'da piyasaya sürülen bu model, son beş yılın en iyi yeniliklerini birleştirerek mutlak son teknolojiyi temsil etmektedir.
YOLO26, YOLOv10 tarafından öncülük edilen Uçtan Uca NMS-Serbest Tasarımı'nı doğal olarak bünyesinde barındırır ve hızlı, deterministik dağıtım sağlar. Ayrıca, YOLO26 birkaç kritik çığır açan yenilik sunmaktadır:
- %43'e Kadar Daha Hızlı CPU Çıkarımı: Distribution Focal Loss (DFL) modülünü kaldırarak, YOLO26 standart CPU'larda büyük hız artışları elde eder, bu da onu mobil dağıtım ve düşük güçlü IoT sensörleri için en iyi seçenek haline getirir.
- MuSGD Optimize Edici: Moonshot AI'nin Kimi K2'si gibi Büyük Dil Modeli (LLM) eğitim tekniklerinden esinlenerek, YOLO26, SGD ve Muon'un bir hibritini kullanır. Bu, YOLOv10'da kullanılan AdamW optimize edicilerine kıyasla inanılmaz derecede kararlı eğitim çalışmaları ve büyük ölçüde hızlandırılmış yakınsama sağlar.
- ProgLoss + STAL: Bu gelişmiş kayıp fonksiyonları, küçük nesne tanımada önemli iyileşmeler sağlar; bu da drone görüntüleri ve hava güvenliği uygulamaları için kritiktir.
- Göreve Özel Uzmanlık: YOLOv10 kesinlikle bir sınırlayıcı kutu algılayıcısı olsa da, YOLO26, Pose için Residual Log-Likelihood Estimation (RLE) ve Oriented Bounding Boxes (OBB) için özel açı kayıpları dahil olmak üzere tüm görevler için özel mimari iyileştirmeler sunar.
Daha Fazlasını Keşfedin
Nesne algılamanın daha geniş kapsamını araştırıyorsanız, bu mimarileri diğer çerçevelerle karşılaştırmakla da ilgilenebilirsiniz. Daha kapsamlı kıyaslama için YOLO11 vs EfficientDet veya RT-DETR vs YOLOv8 hakkındaki derinlemesine incelemelerimize göz atın.
İster YOLOv5'in sağlam mirasına, ister YOLOv10'un NMS-serbest yeniliğine, ister YOLO26'nın eşsiz son teknoloji performansına güvenin, Ultralytics ekosistemi, yapay zeka görüş uygulamalarınızı hızlı ve verimli bir şekilde hayata geçirmek için gerekli araçları sağlar.