YOLOv8 ve YOLOv5#
Doğru bilgisayarlı görü mimarisini seçmek, sağlam makine öğrenimi işlem hatları oluşturmanın kritik bir adımıdır. Bu ayrıntılı teknik karşılaştırmada, görü yapay zekâ ekosistemindeki en popüler iki model olan YOLOv8 ve YOLOv5 arasındaki farkları inceliyoruz. Her iki model de Ultralytics tarafından geliştirildi ve gerçek zamanlı nesne algılama alanını önemli ölçüde şekillendirerek hız, doğruluk ve kullanım kolaylığı açısından sektör standartlarını belirledi.
İster uç cihazlara dağıtım yapıyor ister bulut çıkarımını ölçeklendiriyor ol, bu modellerin mimari değişimlerini, performans metriklerini ve eğitim yöntemlerini anlamak, bilgisayarlı görü projelerin için bilinçli bir karar vermene yardımcı olur.
Ultralytics YOLOv8: Çok Yönlü Standart#
2023'ün başlarında yayımlanan YOLOv8, önceki sürümlerinden önemli bir mimari değişimi temsil ediyordu. Sıfırdan, örnek bölütleme, görüntü sınıflandırma ve poz tahmini dâhil olmak üzere birden çok görü görevini yerel olarak ele alabilen birleşik bir çerçeve olarak tasarlandı.
- Yazarlar: Glenn Jocher, Ayush Chaurasia ve Jing Qiu
- Kuruluş: Ultralytics
- Tarih: 2023-01-10
- GitHub: ultralytics/ultralytics
- Belgeler: YOLOv8 Belgeleri
Mimari ve Yöntemler#
YOLOv8, veri kümesi dağılımına göre bağlantı kutularını manuel olarak yapılandırma gereksinimini ortadan kaldırarak eğitim sürecini basitleştiren anchor-free bir algılama başlığı sundu. Bu, modelin özel veri kümelerine genelleme yaparken daha sağlam olmasını sağlar ve kutu tahminlerinin sayısını azaltarak Maksimum Olmayan Bastırma (NMS) işlemini hızlandırır.
Mimari, YOLOv5'te bulunan C3 modülünün yerine geçen bir C2f modülü (iki evreli kısmi geçişli, iki evrişimli darboğaz) içerir. C2f modülü, hesaplama maliyetini önemli ölçüde artırmadan gradyan akışını iyileştirir ve modelin daha zengin özellik temsilleri öğrenmesini sağlar. Ayrıca YOLOv8, nesnelik, sınıflandırma ve regresyon görevlerini birbirinden ayıran ayrıştırılmış başlık yapısını kullanır; bunun yakınsama hızını ve doğruluğu iyileştirdiği gösterilmiştir.
YOLOv8 dâhil Ultralytics YOLO modelleri, RT-DETR gibi Transformer tabanlı birçok alternatife kıyasla eğitim sırasında daha düşük CUDA bellek kullanımı için optimize edilmiştir. Bu sayede geliştiriciler, NVIDIA RTX serisi gibi standart tüketici GPU'larında daha büyük batch boyutları kullanabilir.
Güçlü ve Zayıf Yönler#
Güçlü Yönler:
- Basit sınırlayıcı kutu algılamanın ötesindeki birden çok görevde benzersiz çok yönlülük.
ultralyticspaketi üzerinden sunulan yalın Python API, eğitimi ve dışa aktarmayı son derece sezgisel hâle getirir.- YOLOv5'e kıyasla tüm boyut varyantlarında daha yüksek ortalama Kesinlik Ortalaması (mAP).
Zayıf Yönler:
- Ayrıştırılmış başlık ve C2f modülü, bazı varyantlarda birebir YOLOv5 muadillerine kıyasla parametre sayısında ve FLOPs değerinde hafif bir artışa neden olur.
Ultralytics YOLOv5: Çevik Öncü#
2020'de tanıtılan YOLOv5, YOLO'yu PyTorch ekosistemine taşıyarak geliştirici erişilebilirliğini büyük ölçüde iyileştirdi. Hızlı, güvenilir ve kolayca dağıtılabilir nesne algılama modelleri için kısa sürede sektör standardı hâline geldi.
- Yazar: Glenn Jocher
- Kuruluş: Ultralytics
- Tarih: 2020-06-26
- GitHub: ultralytics/yolov5
- Belgeler: YOLOv5 Belgeleri
Mimari ve Yöntemler#
YOLOv5, anchor-based bir mimariye dayanır ve değiştirilmiş bir CSPDarknet53 omurgası kullanır. Anchor-based yaklaşımlar, eğitimden önce en uygun anchor'ları tanımlamak için veri kümesindeki sınırlayıcı kutuların dikkatle kümelenmesini gerektirse de belirli ve iyi tanımlanmış veri kümelerinde oldukça etkilidir.
YOLOv5, düşük parametre ayak izini korurken özellikleri verimli bir şekilde çıkaran C3 modülünü içerir. Kayıp işlevi, ağı doğru tahminlere yönlendirmek için sınıflandırma ve sınırlayıcı kutu regresyonu kayıplarıyla birleştirilen Objectness kaybına büyük ölçüde dayanır.
Güçlü ve Zayıf Yönler#
Güçlü Yönler:
- Son derece hafiftir; bu da Nano (YOLOv5n) ve Small (YOLOv5s) varyantlarını kaynakları kısıtlı uç yapay zekâ dağıtımları için son derece uygun hâle getirir.
- Özellikle CPU'larda olağanüstü hızlı çıkarım hızları.
- Kapsamlı topluluk eğitimleri ve üçüncü taraf entegrasyonları içeren, köklü bir ekosistem.
Zayıf Yönler:
- Anchor kutusu yapılandırması gerektirir; bu da oldukça çeşitli veya özel veri kümeleri için kurulumu karmaşıklaştırabilir.
- YOLOv8 ve YOLO26 gibi modern anchor-free mimarilere kıyasla genel doğruluğu (mAP) daha düşüktür.
Performans Karşılaştırması#
Bu modelleri değerlendirirken hız ve doğruluk arasında elverişli bir denge kurmak büyük önem taşır. Aşağıdaki tablo, her iki mimarinin COCO veri kümesi üzerinde değerlendirilen performans metriklerini gösterir. CPU hızları ONNX kullanılarak, GPU hızları ise TensorRT kullanılarak ölçülmüştür.
| Model | boyut (piksel) | mAPval 50-95 | Hız CPU ONNX (ms) | Hız T4 TensorRT10 (ms) | parametre (M) | FLOPs (B) |
|---|---|---|---|---|---|---|
| YOLOv8n | 640 | 37.3 | 80.4 | 1.47 | 3.2 | 8.7 |
| YOLOv8s | 640 | 44.9 | 128.4 | 2.66 | 11.2 | 28.6 |
| YOLOv8m | 640 | 50.2 | 234.7 | 5.86 | 25.9 | 78.9 |
| YOLOv8l | 640 | 52.9 | 375.2 | 9.06 | 43.7 | 165.2 |
| YOLOv8x | 640 | 53.9 | 479.1 | 14.37 | 68.2 | 257.8 |
| 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 |
YOLOv5, Nano varyantında parametre sayısı ve mutlak ham hız açısından hafif bir üstünlüğünü korusa da YOLOv8, genel olarak mAP değerinde büyük bir sıçrama sunarak zorlu gerçek dünya dağıtım senaryoları için çok daha güçlü bir performans dengesi sağlar.
Kullanım Kolaylığı ve Ultralytics Ekosistemi#
Modern Ultralytics modellerinin belirleyici özelliklerinden biri, etraflarında bulunan bakımı iyi yapılan ekosistemdir. YOLOv5'ten YOLOv8'e geçiş, birleşik ultralytics pip paketinin kullanıma sunulmasını sağlayarak son derece yalın bir kullanıcı deneyimi oluşturdu.
Geliştiriciler yalnızca birkaç satır Python koduyla model eğitimi, doğrulama, tahmin ve dışa aktarma işlemlerini sorunsuzca gerçekleştirebilir; böylece derin öğrenme projelerinde geçmişte gereken karmaşık standart kodları atlayabilir.
from ultralytics import YOLO
# Load a pretrained YOLOv8 model
model = YOLO("yolov8n.pt")
# Train the model on custom data efficiently
results = model.train(data="coco8.yaml", epochs=100, imgsz=640, device=0)
# Export the model to ONNX for production deployment
path = model.export(format="onnx")Ayrıca Ultralytics Platform gibi araçlarla entegrasyon; veri kümesi yönetimini, bulut eğitimini ve dağıtımı basitleştirerek aktif geliştirme ve güçlü topluluk desteği sağlar.
İdeal Kullanım Alanları#
YOLOv5 ne zaman seçilmeli: Eski sistemlerin bakımını yapıyorsan, Raspberry Pi gibi ciddi ölçüde kısıtlı CPU'larda çıkarım çalıştırıyorsan veya model boyutunda her megabaytın küçük bir bölümünü bile korumanın kritik olduğu bir proje üzerinde çalışıyorsan YOLOv5 güvenilir bir iş atı olmaya devam eder.
YOLOv8 ne zaman seçilmeli: Bugün başlayan neredeyse tüm yeni projeler için YOLOv8, YOLOv5'e kıyasla kesinlikle önerilir. Gelişmiş mimarisi karmaşık izleme, yönlendirilmiş sınırlayıcı kutular (OBB) ve bölütleme işlemlerini zahmetsizce ele alır. Otonom robotikten tıbbi görüntü analizine ve akıllı şehir altyapısına kadar uzanan modern uygulamalar için idealdir.
YOLOv8 son derece yetenekli olsa da performansın mutlak sınırlarını arayan geliştiriciler YOLO26 modelini değerlendirmelidir. 2026'da yayımlanan model, çığır açan çeşitli yenilikler sunar:
- Uçtan Uca NMS'siz Tasarım: Daha hızlı ve basit dağıtım için NMS son işleme adımını ortadan kaldırır; bu kavram ilk olarak YOLOv10'da öncülük edilmiştir.
- MuSGD Optimize Edicisi: SGD ve Muon'un bir hibriti olan bu yöntem, LLM eğitimi yeniliklerini bilgisayarlı görüye taşıyarak daha kararlı eğitim ve daha hızlı yakınsama sağlar.
- %43'e Kadar Daha Hızlı CPU Çıkarımı: Özel GPU'lara sahip olmayan uç bilişim ortamları için yoğun şekilde optimize edilmiştir.
- DFL'nin Kaldırılması: Distribution Focal Loss, dışa aktarmayı basitleştirmek ve uç cihaz uyumluluğunu artırmak için kaldırılmıştır.
- ProgLoss + STAL: Hava görüntüleri ve IoT için kritik olan küçük nesne tanımada kayda değer iyileştirmeler sağlayan gelişmiş kayıp işlevleri.
Ultralytics tarafından sunulan kapsamlı belgelerden ve araçlardan yararlanarak YOLOv8'i kolayca dağıtabilir veya en yeni YOLO26'yı keşfederek karmaşık görsel sorunları benzeri görülmemiş hız ve doğrulukla çözebilirsin. Daha fazla bilgi edinmek için hiperparametre ayarlama ve model dağıtımı uygulamaları hakkındaki kılavuzlarımızı inceleyebilirsin.