İçeriğe geç

YOLOv7'ye karşı YOLOv5: Ayrıntılı Teknik Bir Karşılaştırma

Doğru nesne algılama mimarisini seçmek, bilgisayar görüşü projelerinizin hızını, doğruluğunu ve dağıtım fizibilitesini etkileyen kritik bir karardır. Bu sayfa, YOLO soyundaki iki etkili model olan YOLOv7 ve Ultralytics YOLOv5 arasında kapsamlı bir teknik karşılaştırma sunar. Uygulamanız için en uygun olanı seçmenize yardımcı olmak amacıyla mimari yeniliklerini, performans karşılaştırma değerlerini ve ideal kullanım durumlarını inceliyoruz.

YOLOv7, 2022'de önemli akademik gelişmeler sunsa da, Ultralytics YOLOv5, benzersiz kullanım kolaylığı, sağlamlığı ve dağıtım esnekliği nedeniyle sektörde baskın bir güç olmaya devam ediyor. Performanstaki en son yenilikleri arayanlar için, bu modellerin son teknoloji Ultralytics YOLO11'in önünü nasıl açtığını da araştırıyoruz.

Performans Metrikleri Karşılaştırması

Aşağıdaki tablo, iki mimari arasındaki performans ödünleşimlerini vurgulamaktadır. YOLOv7 daha yüksek ortalama Hassasiyet (mAP) için zorlarken, YOLOv5 belirli model boyutları için çıkarım hızında ve daha düşük parametre sayılarında belirgin avantajlar sunmaktadır.

Modelboyut
(piksel)
mAPval
50-95
Hız
CPU ONNX
(ms)
Hız
T4 TensorRT10
(ms)
parametreler
(M)
FLOP'lar
(B)
YOLOv7l64051.4-6.8436.9104.7
YOLOv7x64053.1-11.5771.3189.9
YOLOv5n64028.073.61.122.67.7
YOLOv5s64037.4120.71.929.124.0
YOLOv5m64045.4233.94.0325.164.2
YOLOv5l64049.0408.46.6153.2135.0
YOLOv5x64050.7763.211.8997.2246.4

YOLOv7: Doğruluk Sınırlarını Zorlama

Temmuz 2022'de piyasaya sürülen YOLOv7, gerçek zamanlı nesne dedektörleri için yeni bir son teknoloji ürünü belirlemek üzere tasarlanmıştır. Çıkarım maliyetini önemli ölçüde artırmadan doğruluğu artırmak için mimari optimizasyonuna büyük önem vermektedir.

Yazarlar: Chien-Yao Wang, Alexey Bochkovskiy ve Hong-Yuan Mark Liao
Kuruluş:Institute of Information Science, Academia Sinica, Tayvan
Tarih: 2022-07-06
Arxiv:https://arxiv.org/abs/2207.02696
GitHub:https://github.com/WongKinYiu/yolov7
Belgeler:https://docs.ultralytics.com/models/yolov7/

Mimari ve Temel Yenilikler

YOLOv7, özellik öğrenimini geliştirmeyi amaçlayan çeşitli karmaşık mimari değişiklikler sunar:

  • E-ELAN (Genişletilmiş Verimli Katman Toplama Ağı): En kısa ve en uzun gradyan yollarını kontrol ederek ağın öğrenme yeteneğini geliştiren gelişmiş bir backbone yapısıdır. Bu, modelin daha çeşitli özellikleri öğrenmesini sağlar.
  • Birleştirmeye Dayalı Modeller için Model Ölçeklendirme: Standart ölçeklendirmenin aksine, YOLOv7, kaynak kullanımının en iyi şekilde olmasını sağlayarak, birleştirmeye dayalı mimariler için derinliği ve genişliği aynı anda ölçeklendirir.
  • Eğitilebilir Bedava Hileler Çantası: Bu, planlı yeniden parametrelendirilmiş evrişim (RepConv) ve yardımcı baş eğitimini içerir. Yardımcı başlar, eğitim sırasında öğrenme sürecine rehberlik etmeye yardımcı olan, ancak hızı korumak için çıkarım sırasında kaldırılan kabaca ayrıntılı hiyerarşik etiketler oluşturur.

'Bag of Freebies' nedir?

"Bedava Hediyeler Çantası" (Bag of Freebies), çıkarım maliyetini artırmadan bir nesne algılama modelinin doğruluğunu artıran bir dizi eğitim yöntemi ve veri artırma tekniğini ifade eder. YOLOv7'de bu, Coarse-to-Fine Lead Guided Label Assignment gibi gelişmiş stratejileri içerir.

YOLOv7 için İdeal Kullanım Alanları

Yüksek doğruluğa odaklanması nedeniyle YOLOv7 özellikle şunlar için çok uygundur:

  • Akademik Araştırma: Her bir mAP kesrinin önemli olduğu SOTA modellerine karşı kıyaslama.
  • Üst Düzey GPU Dağıtımı: Daha büyük model boyutlarını ve bellek gereksinimlerini karşılamak için güçlü donanımın (NVIDIA A100'ler gibi) mevcut olduğu uygulamalar.
  • Statik Analiz: Yüksek çözünürlüklü uydu görüntülerini veya tıbbi taramaları analiz etmek gibi gerçek zamanlı gecikmenin hassasiyetten daha az kritik olduğu senaryolar.

YOLOv7 hakkında daha fazla bilgi edinin

Ultralytics YOLOv5: Endüstri Standardı

Ultralytics YOLOv5, mevcut en pratik ve kullanıcı dostu nesne algılama modellerinden biri olarak kabul edilir. 2020'deki lansmanından bu yana, hızı, doğruluğu ve mühendislik mükemmelliği dengesi nedeniyle sayısız ticari uygulamanın omurgası haline geldi.

Yazarlar: Glenn Jocher
Kuruluş:Ultralytics
Tarih: 2020-06-26
GitHub:https://github.com/ultralytics/yolov5
Belgeler:https://docs.ultralytics.com/models/yolov5/

Mimari ve Ekosistem Faydaları

YOLOv5, çeşitli dağıtım hedefleri için optimize edilmiş bir PANet neck ve bir YOLOv3 başlığı ile bir CSP-Darknet53 backbone kullanır. Ancak, gerçek gücü Ultralytics ekosisteminde yatmaktadır:

  • Kullanım Kolaylığı: "Kur ve çalıştır" felsefesiyle bilinen YOLOv5, geliştiricilerin dakikalar içinde özel veri kümeleri üzerinde eğitime başlamasına olanak tanır. API sezgiseldir ve dokümantasyon kapsamlıdır.
  • Eğitim Verimliliği: YOLOv5, daha yeni ve daha karmaşık mimarilere kıyasla eğitim sırasında genellikle daha az CUDA belleği gerektirir ve bu da onu orta sınıf GPU'lara sahip geliştiriciler için erişilebilir kılar.
  • Dağıtım Esnekliği: ONNX, TensorRT, CoreML, TFLite ve daha fazlasına tek tıklamayla dışa aktarmayı destekleyerek bulut sunucularından cep telefonlarına kadar her şeye dağıtımı kolaylaştırır.
  • İyi Yönetilen Ekosistem: Sık güncellemeler, hata düzeltmeleri ve büyük bir topluluk ile Ultralytics, modelin üretim ortamları için kararlı ve güvenli kalmasını sağlar.

YOLOv5 için İdeal Kullanım Alanları

YOLOv5, güvenilirlik ve hız gerektiren gerçek dünya senaryolarında üstündür:

  • Uç Yapay Zeka (Edge AI): Şuna benzer cihazlarda çalıştırma: NVIDIA Jetson veya hafif Nano (yolov5n) ve Küçük (yolov5s) varyantları.
  • Mobil Uygulamalar: Cihaz üzerinde çıkarım için CoreML ve TFLite aracılığıyla iOS ve Android uygulamalarına entegrasyon.
  • Hızlı Prototipleme: Kavramdan hızla MVP'ye geçmesi gereken startup'lar ve geliştiriciler, kolaylaştırılmış iş akışından yararlanır.
  • Endüstriyel Otomasyon: Gecikme ve kararlılığın çok önemli olduğu üretim hatları için güvenilir algılama.

YOLOv5 hakkında daha fazla bilgi edinin

Detaylı Karşılaştırmalı Analiz

YOLOv7 ve YOLOv5 arasında karar verirken, sadece mAP puanının ötesinde çeşitli teknik faktörler devreye girer.

1. Hız ve Doğruluk Arasındaki Denge

YOLOv7, COCO veri kümesinde daha yüksek tepe doğruluğuna ulaşır. Örneğin, YOLOv7x, YOLOv5x'in %50,7'sine kıyasla %53,1 mAP'ye ulaşır. Ancak, bu karmaşıklık pahasına gelir. YOLOv5, daha yumuşak bir model geçişi sunar; YOLOv5n (Nano) modeli inanılmaz derecede hızlıdır (73,6ms CPU hızı) ve hafiftir (2,6M parametre), bu da YOLOv7'nin aynı ayrıntı düzeyiyle açıkça hedeflemediği ultra düşük kaynaklı ortamlar için bir niş oluşturur.

2. Mimari ve Karmaşıklık

YOLOv7, eğitim sırasında gereken bellek bant genişliğini artıran E-ELAN ile birleştirme tabanlı bir mimari kullanır. Bu, YOLOv5'ten daha yavaş eğitilmesine ve daha fazla bellek tüketmesine neden olabilir. Buna karşılık, Ultralytics YOLOv5, daha hızlı yakınsama ve daha düşük bellek kullanımına olanak tanıyan eğitim verimliliği için yüksek oranda optimize edilmiş, aerodinamik bir mimari kullanır; bu da sınırlı hesaplama bütçelerine sahip mühendisler için önemli bir avantajdır.

3. Kullanılabilirlik ve Geliştirici Deneyimi

Ultralytics YOLOv5'in gerçekten parladığı yer burasıdır. Ultralytics çerçevesi, veri artırma, hiperparametre evrimi ve deney takibi için sağlam araçlarla birleşik bir deneyim sunar.

import torch

# Example: Loading YOLOv5s from PyTorch Hub for inference
model = torch.hub.load("ultralytics/yolov5", "yolov5s", pretrained=True)

# Inference on an image
results = model("https://ultralytics.com/images/zidane.jpg")

# Print results
results.print()

YOLOv7'nin bir deposu olmasına rağmen, Ultralytics ekosistemini destekleyen cilalı, üretime hazır CI/CD işlem hatlarından, kapsamlı entegrasyon kılavuzlarından ve topluluk desteğinden yoksundur.

4. Çok Yönlülük

Her iki model de öncelikle nesne algılama mimarileri olmasına rağmen, YOLOv5'i çevreleyen Ultralytics ekosistemi, örnek segmentasyonu ve görüntü sınıflandırmayı sorunsuz bir şekilde destekleyecek şekilde gelişti. YOLOv7 de bu görevleri destekler, ancak genellikle kodun farklı dallarını veya çatallarını gerektirir, oysa Ultralytics daha birleşik bir yaklaşım sunar.

Kolaylaştırılmış Dağıtım

Ultralytics modelleri, kullanıma hazır çok çeşitli dışa aktarma formatlarını destekler. Basit bir CLI komutu veya Python betiği kullanarak, eğitilmiş modelinizi Android için TFLite, iOS için CoreML veya optimize edilmiş GPU çıkarımı için TensorRT'ye kolayca dönüştürebilirsiniz.

Sonuç: Hangi Modeli Seçmelisiniz?

YOLOv7 ve YOLOv5 arasındaki seçim, proje önceliklerinize bağlıdır:

  • YOLOv7'yi Seçin: Birincil kısıtlamanız maksimum doğruluksa ve bir araştırma ortamında veya çıkarım hızı ve bellek ayak izinin ikincil öneme sahip olduğu üst düzey donanımlarda çalışıyorsanız.
  • Güvenilir, üretime hazır bir çözüme ihtiyacınız varsa Ultralytics YOLOv5'i seçin. Kullanım kolaylığı, verimli eğitimi, uç cihazlarda düşük gecikme süresi ve büyük destek ekosistemi, onu çoğu ticari uygulama ve bilgisayar görüşü yolculuğuna başlayan geliştiriciler için üstün bir seçim haline getirir.

Geleceğe Bakış: YOLO11

YOLOv5 ve YOLOv7 mükemmel modeller olsa da, bilgisayarla görme alanı hızla ilerlemektedir. Her iki dünyanın da en iyisini arayan geliştiriciler için - YOLOv7 'nin doğruluğunu ve YOLOv5'in hızını/kullanılabilirliğini aşarak - şunları keşfetmenizi şiddetle tavsiye YOLOv5Ultralytics YOLO11.

YOLO11, eğitim hattını basitleştiren ve algılama, segmentasyon, poz tahmini ve yönlendirilmiş sınırlayıcı kutular (OBB) dahil olmak üzere tüm görevlerde performansı artıran anchor-free bir mimariye sahip en son evrimi temsil eder.

Diğer Modelleri İnceleyin

YOLO ailesindeki diğer modelleri karşılaştırmakla ilgileniyorsanız, bu ilgili sayfalara göz atın:


Yorumlar