YOLOv7 ve YOLOv8: Gerçek Zamanlı Detect'örlerin Teknik Karşılaştırması
Bilgisayar görüşünün hızlı evrimi, geliştiriciler ve araştırmacılar için bir dizi güçlü araç ortaya çıkarmıştır. Bir nesne algılama hattı için doğru mimariye karar verirken, yerleşik modelleri karşılaştırmak esastır. Bu teknik kılavuz, oldukça etkili iki model olan YOLOv7 ve Ultralytics YOLOv8'in mimarilerine, performans metriklerine ve ideal kullanım senaryolarına derinlemesine bir bakış sunmaktadır.
Mimarilere Giriş
Her iki model de performansta önemli sıçramaları temsil etse de, derin sinir ağlarını optimize etme zorluğuna farklı yapısal felsefelerden yaklaşmaktadırlar.
YOLOv7: 'Bag-of-Freebies' Öncüsü
2022 ortalarında tanıtılan YOLOv7, üst düzey donanımlarda gerçek zamanlı algılamanın sınırlarını zorlamak için mimari gradyan yolu optimizasyonuna ve "eğitilebilir bedelsiz özellikler (trainable bag-of-freebies)" kavramına yoğun bir şekilde odaklanmıştır.
- Yazarlar: Chien-Yao Wang, Alexey Bochkovskiy ve Hong-Yuan Mark Liao
- Kuruluş: Enformasyon Bilimi Enstitüsü, Academia Sinica, Tayvan
- Tarih: 2022-07-06
- Arxiv: 2207.02696
- GitHub: WongKinYiu/yolov7
- Belgeler: Ultralytics YOLOv7 Dokümantasyonu
Mimari Özellikler: YOLOv7, öncelikli olarak çapa tabanlı bir algılama kafası kullanır (çapasız dallarla deneyler yapılmış olsa da) ve Genişletilmiş Verimli Katman Agregasyon Ağları (E-ELAN) sunar. Bu tasarım, orijinal gradyan yolunu bozmadan ağın öğrenme yeteneğini geliştirir. Sunucu sınıfı GPU'larda olağanüstü performans göstererek, yoğun video analizi için oldukça uygun hale gelir.
Güçlü ve Zayıf Yönler: YOLOv7, özel donanımlarda mükemmel gecikme süresi elde etse de, ekosistemi oldukça parçalıdır. Eğitim, karmaşık komut satırı argümanları, manuel depo klonlama ve PyTorch'ta sıkı bağımlılık yönetimi gerektirir. Ayrıca, eğitim sırasında bellek gereksinimleri tüketici donanımlarında engelleyici olabilir.
YOLOv7 hakkında daha fazla bilgi edinin.
Ultralytics YOLOv8: Çok Yönlü Standart
2023 başlarında piyasaya sürülen YOLOv8, sadece son teknoloji doğruluk üzerine değil, aynı zamanda birleşik, üretime hazır bir çerçeve sunmaya odaklanarak geliştirici deneyimini tamamen yeniden tanımladı.
- Yazarlar: Glenn Jocher, Ayush Chaurasia ve Jing Qiu
- Organizasyon: Ultralytics
- Tarih: 2023-01-10
- GitHub: ultralytics/ultralytics
- Platform: Ultralytics YOLOv8
Mimari Özellikler: YOLOv8, yerel olarak çapasız bir algılama kafası tanıttı; bu, MS COCO veri kümesi veya özel veri dağılımlarına dayalı olarak çapa kutularını manuel olarak yapılandırma ihtiyacını ortadan kaldırır. Gradyan akışını iyileştirmek için C2f modülünü içerir ve nesnellik, sınıflandırma ve regresyon görevlerini ayıran ayrık bir kafa yapısı kullanır. Bu, yakınsamayı büyük ölçüde hızlandırır ve doğruluğu artırır.
Güçlü ve Zayıf Yönler: YOLOv8, olağanüstü Bellek Gereksinimleri verimliliğine sahiptir. Eğitim sırasında YOLOv7 ve daha ağır transformer modellerine kıyasla önemli ölçüde daha az CUDA belleği gerektirir, bu da geliştiricilerin daha büyük yığın boyutları kullanmasına olanak tanır. Temel gücü, örnek segmentasyon, görüntü sınıflandırma, poz tahmini ve Yönlendirilmiş Sınırlayıcı Kutular (OBB) gibi özelliklere yerel olarak destek veren Çok Yönlülüğünde yatmaktadır. Tek küçük dezavantajı, yalnızca YOLOv7 tensor'ları için özel olarak oluşturulmuş aşırı uzmanlaşmış eski hatların kısa bir yeniden düzenleme süresi gerektirebilmesidir.
YOLOv8 hakkında daha fazla bilgi edinin.
Ekosistem Avantajı
Ultralytics YOLOv8, İyi Yönetilen Bir Ekosistemden faydalanır. Sezgisel bir Python API'si, aktif geliştirme ve sağlam topluluk desteği sayesinde, bir modeli yerel testten küresel dağıtıma geçirmek, bağımsız depolara kıyasla çok daha kısa sürer.
Detaylı Performans Karşılaştırması
Aşağıdaki tablo, temel model boyutlarındaki performans metriklerini detaylandırmaktadır. YOLOv8'in elde ettiği belirgin Performans Dengesi'ne dikkat edin; dünya standartlarında doğruluğu korurken, kenar cihazlarda hızlı çıkarım için yoğun bir şekilde optimize edilmiştir.
| Model | boyut (piksel) | mAPval 50-95 | Hız CPU ONNX (ms) | Hız T4 TensorRT10 (ms) | parametreler (M) | FLOP'lar (B) |
|---|---|---|---|---|---|---|
| YOLOv7l | 640 | 51.4 | - | 6.84 | 36.9 | 104.7 |
| YOLOv7x | 640 | 53.1 | - | 11.57 | 71.3 | 189.9 |
| 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 |
Not: YOLOv8x bu grupta en yüksek mAP'yi elde ederken, YOLOv8n parametre verimliliği ve çıkarım hızında baskın konumdadır, bu da onu bilgisayar görüşünü kenar yapay zeka cihazlarına dağıtmak için tartışmasız şampiyon yapmaktadır.
Kullanım Kolaylığı ve Eğitim Verimliliği
Kullanım Kolaylığı söz konusu olduğunda, Ultralytics YOLOv8 kendi liginde yer almaktadır. YOLOv7 gibi eski mimariler, veri kümelerini ve yolları yapılandırmak için belirli depoları klonlamayı ve ayrıntılı komut satırı betikleri çalıştırmayı gerektirir.
Tersine, YOLOv8'in ultralytics paketi, son derece akıcı bir geliştirici deneyimi sunar. Eğitim Verimliliği otomatik veri indirme, kullanıma hazır önceden eğitilmiş ağırlıklar ve sorunsuz dışa aktarma yetenekleri gibi formatlara ONNX ve TensorRT.
Ultralytics Python API'sini kullanarak bir modeli ne kadar kolay yükleyebileceğinizi, eğitebileceğinizi ve çıkarım yapabileceğinizi aşağıda görebilirsiniz:
from ultralytics import YOLO
# Load a pretrained YOLOv8 nano model
model = YOLO("yolov8n.pt")
# Train the model efficiently on the COCO8 dataset
results = model.train(data="coco8.yaml", epochs=50, imgsz=640)
# Run fast inference on a test image
predictions = model("https://ultralytics.com/images/bus.jpg")
# Display the predictions
predictions[0].show()
Deney Takibi
YOLOv8, Weights & Biases ve ClearML gibi popüler MLOps araçlarıyla yerel olarak entegre olur ve hiperparametre ayarınızı ve eğitim metriklerinizi gerçek zamanlı olarak izlemenize olanak tanır.
İdeal Kullanım Senaryoları
Bu mimariler arasında seçim yapmak genellikle dağıtım ortamınızın özel kısıtlamalarına bağlıdır.
YOLOv7 Ne Zaman Tercih Edilmeli?
- Eski Kıyaslama: 2022'nin mimari standartlarına karşı karşılaştırma yapmak için sabit bir temel çizgiye ihtiyaç duyan araştırmacılar için uygundur.
- Mevcut Ağır Altyapı: YOLOv7'nin belirli tensor konfigürasyonlarının eski bir C++ hattına derinlemesine gömülü olduğu NVIDIA V100 veya A100 GPU'lara yoğun yatırım yapmış ortamlar.
YOLOv8 Ne Zaman Tercih Edilmeli?
- Çapraz Platform Üretimi: Bulut GPU'ları, mobil cihazlar ve tarayıcılar arasında sorunsuz bir şekilde dağıtım yapması gereken ekipler için idealdir.
- Çoklu Görev Gereksinimleri: Projeniz sınırlayıcı kutuların ötesine geçerek zengin örnek segmentasyon maskelerini veya poz anahtar noktalarını kullanmayı gerektiriyorsa.
- Kaynak Kısıtlı Uç Cihazlar: YOLOv8 Nano (
yolov8n) robotik, dronlar ve IoT sensörleri için inanılmaz doğruluk-hız oranları sunar.
Geleceğe Bakış: YOLO26'ya Nesilsel Sıçrama
YOLOv8 oldukça sağlam bir seçenek olmaya devam etse de, bilgisayar görüşü alanı hızla ilerliyor. Tamamen yeni, yüksek performanslı projelere başlayan geliştiriciler için Ultralytics yakın zamanda yapay zeka modellerinin bir sonraki evrimini tanıttı. Hem derinlemesine geliştirilmiş YOLO11'i hem de yeni çıkan YOLO26'yı incelemeniz şiddetle tavsiye edilir.
Ocak 2026'da piyasaya sürülen YOLO26, uç cihazlarda nelerin mümkün olduğunun sınırlarını zorluyor:
- Uçtan Uca NMS'siz Tasarım: YOLO26, Non-Maximum Suppression (NMS) sonrası işlemeyi tamamen ortadan kaldırarak doğal olarak uçtan ucadır. Bu, geleneksel yoğun tahmin modellerinin gecikme darboğazları olmadan önemli ölçüde daha hızlı, daha basit dağıtım hatları sağlar.
- DFL Kaldırma: Distribution Focal Loss'u kaldırarak, YOLO26 çok daha basit model dağıtım seçenekleri ve üstün uç cihaz uyumluluğu elde eder.
- %43'e Kadar Daha Hızlı CPU Çıkarımı: Raspberry Pi ve gömülü sistemler gibi kısıtlı ortamlar için yoğun bir şekilde optimize edilmiş olup, CPU veriminde önceki tüm nesilleri geride bırakmaktadır.
- MuSGD Optimize Edici: Büyük Dil Modeli (LLM) eğitim paradigmalarından esinlenerek, YOLO26 bir SGD ve Muon hibritini bünyesinde barındırır. Bu, eşi benzeri görülmemiş eğitim kararlılığı ve ışık hızında yakınsama sağlar.
- ProgLoss + STAL: Bu gelişmiş kayıp fonksiyonları, hava görüntüleri, otomatik tarım ve robotik için son derece kritik olan küçük nesne tanımada kayda değer iyileşmeler sağlar.
İster YOLOv8 ile büyük video analizi kümelerine ölçeklendirme yapıyor olun, ister son teknoloji YOLO26 ile çıkarımı küçük uç cihazlara taşıyor olun, Ultralytics Platformu, tüm yapay zeka yaşam döngünüzü sorunsuz bir şekilde yönetmek için araçlar sağlar.