YOLOv7 ve YOLOv5: Gerçek Zamanlı Dedektörlerin Teknik Bir Karşılaştırması
Modern bilgisayarlı görü hatları oluştururken, doğruluk, çıkarım hızı ve kaynak kullanımı arasında denge kurmak için doğru nesne algılama mimarisini seçmek kritiktir. Bu kapsamlı karşılaştırma, bilgisayarlı görü alanında oldukça etkili iki modeli inceliyor: YOLOv7 ve Ultralytics YOLOv5.
Mimari farklılıklarını, performans metriklerini ve ideal dağıtım senaryolarını analiz ederek, geliştiricilerin ve araştırmacıların kendi özel gereksinimleri için en iyi modeli seçmelerine yardımcı olmayı amaçlıyoruz.
Modelin Arka Planı ve Kökenleri
Bu modellerin kökenlerini anlamak, tasarım felsefeleri ve hedeflenen kullanım durumları için bağlam sağlar.
YOLOv5
Glenn Jocher ve Ultralytics ekibi tarafından 26 Haziran 2020'de yayınlanan YOLOv5, performanstan ödün vermeden kullanılabilirliğe öncelik veren yerel bir PyTorch uygulaması sunarak alanı kökten değiştirdi. İnanılmaz derecede kolaylaştırılmış ekosistemi ve güvenilir eğitim dinamikleri sayesinde kısa sürede endüstri standardı haline geldi. Kaynak kodunu YOLOv5 GitHub deposunda inceleyebilir veya modele doğrudan Ultralytics Platformu üzerinden erişebilirsin.
YOLOv5 hakkında daha fazla bilgi edin
YOLOv7
Tayvan, Academia Sinica Bilgi Bilimleri Enstitüsü'nden Chien-Yao Wang, Alexey Bochkovskiy ve Hong-Yuan Mark Liao tarafından 6 Temmuz 2022'de tanıtıldı. YOLOv7, doğruluğu en üst seviyeye taşımak için Extended Efficient Layer Aggregation Networks (E-ELAN) gibi mimari yeniliklere ve eğitilebilir bir "bag-of-freebies" kavramına yoğun bir şekilde odaklandı. Ayrıntılar resmi Arxiv makalesinde ve YOLOv7 GitHub deposunda bulunabilir. Sorunsuz bir entegrasyon için Ultralytics YOLOv7 belgelerine göz atabilirsin.
YOLOv7 hakkında daha fazla bilgi edinin
Her iki model de Ultralytics Python paketine tamamen entegre edilmiştir; bu da kodundaki model dizgesini değiştirerek modeller arasında kolayca geçiş yapmanı sağlar!
Mimari Yenilikler
Ultralytics YOLOv5 Tasarımı
YOLOv5, bir Path Aggregation Network (PANet) boyun yapısıyla eşleştirilmiş modifiye edilmiş bir CSPDarknet53 omurgası kullanır. Bu tasarım, hızlı öznitelik çıkarma ve bellek verimliliği için oldukça optimize edilmiştir. Eski mimarilerin veya ağır Transformer modellerinin aksine, YOLOv5 eğitim sırasında çok daha az CUDA belleği gerektirir ve bu da standart tüketici sınıfı GPU'larda daha büyük yığın boyutlarına olanak tanır. Ayrıca Ultralytics çerçevesi, görüntü segmentasyonu ve görüntü sınıflandırma dahil olmak üzere standart sınırlayıcı kutuların ötesinde çok çeşitli görevleri doğal olarak destekler.
YOLOv7 Tasarımı
YOLOv7, çeşitli yapısal yeniden parametrelendirmeler ve ağın orijinal gradyan yolunu bozmadan daha çeşitli özellikleri öğrenmesini sağlayan E-ELAN mimarisini tanıttı. Ayrıca eğitim sırasında ara denetim için yardımcı bir başlık (auxiliary head) uygular. Bu gelişmeler yüksek bir ortalama Hassasiyet (mAP) sağlasa da, genellikle Ultralytics modellerine özgü akıcı dışa aktarma işlemlerine kıyasla ONNX veya TensorRT gibi uç formatlara dışa aktarmayı biraz daha zorlaştırabilecek karmaşık tensör yapıları sunar.
Performans Analizi
Bu modelleri karşılaştırırken geliştiricilerin mAPval, çıkarım hızı ve hesaplama karmaşıklığı (FLOPs) arasında denge kurması gerekir. Aşağıdaki tablo, COCO veri kümesinde değerlendirilen her iki mimarinin performansını göstermektedir.
| Model | boyut (piksel) | mAPval 50-95 | Hız CPU ONNX (ms) | Hız T4 TensorRT10 (ms) | parametre (M) | FLOPs (B) |
|---|---|---|---|---|---|---|
| YOLOv7l | 640 | 51.4 | - | 6.84 | 36.9 | 104.7 |
| YOLOv7x | 640 | 53.1 | - | 11.57 | 71.3 | 189.9 |
| 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 |
Temel Çıkarımlar
- Doğruluk Sınırı: YOLOv7x, 53.1 mAPval ile en yüksek genel doğruluğa ulaşarak, algılama performansını maksimize etmenin birincil hedef olduğu senaryolar için son derece rekabetçi bir hale gelir.
- Hız ve Verimlilik: Ultralytics YOLOv5n, yalnızca 2.6M parametrelik küçük bir bellek ayak izi ile ışık hızında çıkarım gecikmesi (T4 TensorRT üzerinde 1.12 ms) sunan bir verimlilik harikasıdır. Bu, onu oldukça kısıtlı uç nokta dağıtımları için benzersiz bir seçenek haline getirir.
- Performans Dengesi: YOLOv5 serisi, olağanüstü bir model yelpazesi sunar. YOLOv5l, YOLOv7l'nin küçük bir doğruluk payı gerisinde kalsa da harika bir orta yol sunar ve son derece olgun bir dağıtım hattına sahiptir.
Ultralytics Ekosistem Avantajı
Bir modelin mimarisi denklemin sadece yarısıdır; onu çevreleyen ekosistem gerçek dünyadaki uygulanabilirliğini belirler. İşte Ultralytics modellerinin gerçekten parladığı nokta burasıdır.
Kullanım Kolaylığı: Ultralytics, birleşik ve oldukça sezgisel bir Python API'si sağlar. Kapsamlı resmi belgelerle desteklenen, minimum kod tekrarıyla modelleri eğitebilir, doğrulayabilir ve dağıtabilirsin. İyi Korunan Ekosistem: Aktif geliştirme; sürekli güncellemeler, hata düzeltmeleri ve Weights & Biases gibi modern takip araçlarıyla sorunsuz entegrasyon sağlar. Eğitim Verimliliği: Optimize edilmiş veri yükleyicileri ve akıllı önbelleğe alma kullanan YOLOv5, eğitim sürelerini önemli ölçüde azaltır. Ayrıca, kullanıma hazır önceden eğitilmiş ağırlıklar, çeşitli alanlarda transfer öğrenimini hızlandırır.
Kod Örneği: Optimize Edilmiş Eğitim
Ultralytics paketi ile, seçtiğin mimari ne olursa olsun bir eğitim sürecini başlatmak neredeyse aynıdır.
from ultralytics import YOLO
# Load a pre-trained YOLOv5 model (can easily swap to "yolov7.pt")
model = YOLO("yolov5s.pt")
# Train the model on the COCO8 example dataset
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)
# Export the trained model to ONNX format for deployment
success = model.export(format="onnx")İdeal Kullanım Durumları
Ne Zaman YOLOv7 Seçilmeli
- Akademik Karşılaştırma: Yeni teknikleri iyi belgelenmiş 2022 baz çizgisiyle karşılaştırması gereken araştırmacılar için mükemmeldir.
- Üst Düzey GPU Bulut İşleme: Yoğun sahnelerde mutlak en yüksek mAP'ye ulaşmanın, dışa aktarma basitliğinden daha önemli olduğu güçlü sunucu donanımlarında dağıtım yaparken kullanılır.
Ne Zaman YOLOv5 Seçilmeli
- Üretim Dağıtımları: Yüksek kararlılık, basit model dağıtım seçenekleri ve geniş çapraz platform uyumluluğu gerektiren ticari uygulamalar için idealdir.
- Uç Cihazlar: Daha küçük varyantlar (YOLOv5n ve YOLOv5s), cep telefonlarında ve gömülü sistemlerde olağanüstü iyi çalışır.
- Çoklu Görev Gereksinimleri: Projenin basit bir algılamadan, birleşik bir çerçeve kullanarak poz tahmini veya segmentasyona evrilmesi gerekiyorsa uygundur.
Daha yeni yinelemeler mi arıyorsun? Çapa içermeyen algılama ve çoklu görev öğrenme yeteneklerinde daha fazla ilerleme için Ultralytics YOLOv8 veya Ultralytics YOLO11 seçeneklerini keşfetmeyi düşün.
Gelecek Nesil: Ultralytics YOLO26
YOLOv5 ve YOLOv7, yapay zeka vizyonu tarihinde hayati bir yere sahip olsa da, ortam sürekli gelişiyor. Ocak 2026'da yayınlanan Ultralytics YOLO26, önceki nesillerin önüne geçerek nesne algılama teknolojisinin en ileri noktasını temsil ediyor.
YOLO26 hakkında daha fazla bilgi edin
YOLO26, paradigma değiştiren birkaç özellik sunuyor:
- Uçtan Uca NMS'siz Tasarım: Önceki yinelemelerde öncülük edilen kavramlar üzerine inşa edilen YOLO26, doğal olarak uçtan ucadır. Bu, Non-Maximum Suppression (NMS) son işleme ihtiyacını tamamen ortadan kaldırarak, gecikme darboğazlarını azaltır ve dağıtım mantığını büyük ölçüde basitleştirir.
- MuSGD Optimize Edici: Moonshot AI'nın Kimi K2'sinden esinlenen bu devrim niteliğindeki optimize edici, standart SGD'nin kararlılığını Muon'un hızlandırılmış momentumuyla birleştirerek gelişmiş LLM eğitim yeniliklerini doğrudan bilgisayarlı görü alanına taşıyor.
- Gelişmiş CPU Hızı: Distribution Focal Loss (DFL) bileşenini stratejik olarak kaldırarak, YOLO26 %43'e kadar daha hızlı CPU çıkarımı sağlar ve bu da onu uç nokta ve düşük güçlü IoT cihaz dağıtımı için tartışmasız şampiyon yapar.
- ProgLoss + STAL: Bu gelişmiş kayıp fonksiyonları, hava görüntüleri ve hassas robotik için kritik olan küçük nesne tanımada büyük iyileştirmeler sağlar.
- Göreve Özel İyileştirmeler: Maske üretimi için anlamsal segmentasyon kaybı, Poz takibi için Residual Log-Likelihood Estimation (RLE) ve zorlu Yönlendirilmiş Sınırlayıcı Kutu (OBB) sınır sorunlarını çözmek için özel açı kaybı içerir.
Sonuç
Hem YOLOv5 hem de YOLOv7, gerçek zamanlı nesne algılama için sağlam çözümler sunar. YOLOv7, yüksek hesaplama gücüne sahip donanımlarda ham doğruluk için güçlü bir seçenek olmaya devam ederken, YOLOv5 hız, verimlilik ve dünya standartlarında bir ekosistemin olağanüstü dengesini sunarak nihai geliştirici dostu araç olarak öne çıkıyor.
Ancak, hatlarını geleceğe hazırlamak ve hız, basitlik ile en son teknoloji doğruluğun nihai kombinasyonuna ulaşmak isteyen geliştiriciler için Ultralytics YOLO26 sürümüne geçmelerini şiddetle tavsiye ediyoruz. Bu model, çığır açan mimari yenilikler sunarken Ultralytics platformunun efsanevi kullanım kolaylığını da bünyesinde barındırıyor.