YOLOv5 - YOLOv6-3.0: Ekosistem Olgunluğu ve Endüstriyel Hassasiyeti Dengeleme
Bilgisayar görüşü alanındaki hızlı gelişmelerde, doğru nesne algılama mimarisini seçmek geliştiriciler ve araştırmacılar için çok önemli bir karardır. Bu karşılaştırma, erişilebilirliği ve sağlam ekosistemiyle ünlü efsanevi bir model olan Ultralytics YOLOv5 ile özellikle endüstriyel uygulamalar için tasarlanmış bir çerçeve olan Meituan YOLOv6-3.0 arasındaki teknik farklılıkları incelemektedir. Her iki model de nesne algılama konusunda başarılı olsa da, farklı dağıtım ihtiyaçlarına ve iş akışı tercihlerine hitap etmektedir.
Ultralytics YOLOv5
Yazarlar: Glenn Jocher
Kuruluş: Ultralytics
Tarih: 2020-06-26
GitHub: https://github.com/ultralytics/yolov5
Belgeler: https://docs.ultralytics.com/models/yolov5/
YOLOv5 , 2020'de piyasaya sürülmesinden bu yana dünyanın en popüler ve güvenilir AI modellerinden biri olarak kendini kanıtlamıştır. üzerine inşa edilmiştir. PyTorch çerçevesi, kullanılabilirlik, dışa aktarılabilirlik ve "kullanıma hazır" performansa öncelik vererek en son teknoloji vizyon yapay zekasına erişimi demokratikleştirdi.
Mimari ve Ekosistem
YOLOv5, PANet boynu ve YOLOv3 tarzı bir başlık ile birlikte bir CSPDarknet omurgası kullanır. Mimarisi, nesne konumlarını tahmin etmek için bağlantı kutuları kullanan bağlantı tabanlıdır. Temel bir farklılaştırıcı, olgun bir ekosisteme entegrasyonudur. Birçok araştırma kod tabanının aksine, YOLOv5, mühendisler için bir ürün olarak tasarlanmıştır ve ONNX, CoreML ve TFLite gibi formatlara sorunsuz dışa aktarım özelliği sayesinde mobil ve uç dağıtım için son derece çok yönlüdür.
Temel Güçlü Yönler
- Kullanım Kolaylığı: "YOLOv5 deneyimi" basitliği ile tanımlanır. Özel veri kümelerini eğitmekten çıkarım çalıştırmaya kadar, iş akışları kolaylaştırılmış ve iyi belgelenmiştir.
- İyi Yönetilen Ekosistem: Kullanıcılar aktif bakımdan, sık güncellemelerden ve büyük bir topluluktan yararlanır. Weights & Biases ve Comet gibi MLOps araçlarıyla entegrasyonlar yereldir.
- Çok Yönlülük: Standart algılamanın ötesinde, depo örnek segmentasyonunu ve görüntü sınıflandırmasını destekleyerek tek bir kod tabanında çoklu görev çözümü sunar.
- Bellek Verimliliği: YOLOv5, transformatör tabanlı modellere kıyasla eğitim sırasında nispeten düşük bellek ayak iziyle bilinir ve bu da onu tüketici sınıfı GPU'larda erişilebilir kılar.
Sorunsuz Dağıtım
YOLOv5'in dışa aktarılabilirlik odaklı olması, geliştiricilerin modelleri bulut sunucularından Raspberry Pi veya NVIDIA Jetson gibi uç cihazlara kadar çeşitli ortamlara zahmetsizce dağıtmasına olanak tanır.
YOLOv5 hakkında daha fazla bilgi edinin
Meituan YOLOv6-3.0
Yazarlar: Chuyi Li, Lulu Li, Yifei Geng, Hongliang Jiang, Meng Cheng, Bo Zhang, Zaidan Ke, Xiaoming Xu ve Xiangxiang Chu
Kuruluş: Meituan
Tarih: 2023-01-13
Arxiv: https://arxiv.org/abs/2301.05586
GitHub: https://github.com/meituan/YOLOv6
Belgeler: https://docs.ultralytics.com/models/yolov6/
Meituan'daki vizyon yapay zeka ekibi tarafından geliştirilen YOLOv6-3.0, özellikle donanım farkındalığına sahip uygulamalar için hız ve doğruluğu dengelemeye odaklanan endüstriyel bir rakip olarak konumlanıyor. TensorRT optimizasyonu kullanarak GPU'lar üzerindeki verimi en üst düzeye çıkarmak için tasarlanmıştır.
Mimari ve Endüstriyel Odak
YOLOv6, doğruluktan ödün vermeden çıkarım hızını artırmak için yeniden parametrelendirme tekniklerinden (RepVGG stili) yararlanan EfficientRep omurgası ve Rep-PAN boynu kullanır. Eğitim sırasında model, çıkarım sırasında tek dallı bir yapıya çöken çok dallı bir yapı kullanır. Sürüm 3.0, ortalama Ortalama Hassasiyeti (mAP)'yi daha da artırmak için kendi kendine damıtma gibi stratejiler sunmuştur.
Güçlü ve Zayıf Yönler
- GPU Optimizasyonu: Mimari, standart GPU çıkarımı için büyük ölçüde ayarlanmıştır ve genellikle TensorRT kullanırken NVIDIA T4 kartlarında yüksek FPS kıyaslamaları elde eder.
- Kuantalamaya Uygun: Meituan, belirli endüstriyel dağıtım senaryoları için çok önemli olan eğitim sonrası kuantalama (PTQ) ve kuantalama farkında eğitim (QAT) için özel destek sağlar.
- Sınırlı Çok Yönlülük: YOLOv6 algılama konusunda mükemmel olsa da, kapsamlı Ultralytics paketinde bulunan geniş, yerel çoklu görev desteğine (Poz Tahmini veya OBB gibi) sahip değildir.
- Karmaşıklık: Yeniden parametrelendirme adımları ve belirli eğitim hatları, Ultralytics modellerinin tak ve çalıştır yapısına kıyasla karmaşıklık getirebilir.
YOLOv6 hakkında daha fazla bilgi edinin
Performans Kafa Kafaya
Aşağıdaki karşılaştırma, performans ödünleşimlerini vurgulamaktadır. YOLOv6-3.0, güçlü donanımlarda en yüksek doğruluğu hedefleyerek genellikle parametre verimliliğinden ödün verir. Buna karşılık, Ultralytics YOLOv5, CPU tabanlı ortamlarda ve uç cihazlarda gerçek zamanlı çıkarımda mükemmel olan hafif modeller sunarak dikkat çekici bir dengeyi korur.
| Model | boyut (piksel) | mAPval 50-95 | Hız CPU ONNX (ms) | Hız T4 TensorRT10 (ms) | parametreler (M) | FLOP'lar (B) |
|---|---|---|---|---|---|---|
| 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 |
| YOLOv6-3.0n | 640 | 37.5 | - | 1.17 | 4.7 | 11.4 |
| YOLOv6-3.0s | 640 | 45.0 | - | 2.66 | 18.5 | 45.3 |
| YOLOv6-3.0m | 640 | 50.0 | - | 5.28 | 34.9 | 85.8 |
| YOLOv6-3.0l | 640 | 52.8 | - | 8.95 | 59.6 | 150.7 |
Analiz
YOLOv5n, mobil uygulamalar için son derece verimli bir çözüm olarak öne çıkıyor ve en küçük YOLOv6 varyantına (4.7M) kıyasla önemli ölçüde daha az parametre (2.6M) gerektiriyor. YOLOv6-3.0 daha büyük boyutlarda daha yüksek tepe mAP değerine ulaşsa da, bunu artan model boyutu (FLOP'lar ve Parametreler) pahasına yapıyor. Robotik veya düşük güçlü izleme gibi CPU dağıtımını hedefleyen geliştiriciler için, YOLOv5'in CPU hızları açıkça kıyaslanmış ve optimize edilmiştir, oysa YOLOv6 büyük ölçüde GPU hızlandırmasına odaklanmaktadır.
Eğitim Metodolojileri ve Deneyim
Eğitim deneyimi, iki ekosistem arasında önemli ölçüde farklılık gösterir. Ultralytics, düşük kodlu, yüksek esneklik yaklaşımına öncelik verir.
Ultralytics İş Akışı
YOLOv5, doğrudan PyTorch Hub aracılığıyla entegre edilebilir ve kullanıcıların minimum düzeyde temel kodla modelleri yükleyip çalıştırmasına olanak tanır. Eğitim betiği, veri artırmadan günlüğe kaydetmeye kadar her şeyi otomatik olarak halleder.
import torch
# Load YOLOv5s from PyTorch Hub
model = torch.hub.load("ultralytics/yolov5", "yolov5s")
# Perform inference
img = "https://ultralytics.com/images/zidane.jpg"
results = model(img)
results.print()
Endüstriyel İş Akışı
YOLOv6 genellikle, havuzun klonlanması, yeniden parametrelendirme omurgası için belirli yapılandırma dosyalarının ayarlanması ve kutudan çıkar çıkmaz harici MLOps araçlarıyla daha az entegre olan komut dosyalarının çalıştırılmasını içeren daha manuel bir kurulum gerektirir. Güçlü olmasına rağmen, bildirilen kıyaslamalara ulaşmak için belirli mimari kısıtlamaların (kendi kendine damıtma parametreleri gibi) daha derinlemesine anlaşılmasını gerektirir.
İdeal Kullanım Senaryoları
Bu modeller arasında seçim yapmak, donanım, doğruluk ve geliştirme hızı ile ilgili özel kısıtlamalarınıza bağlıdır.
- Ultralytics YOLOv5: Hızlı prototipleme, uç dağıtımı ve topluluk desteği için başvurulacak seçenektir. Bir Raspberry Pi, cep telefonu veya CPU sunucusuna dağıtım yapmanız gerekiyorsa, YOLOv5'in hafif yapısı ve dışa aktarma desteği benzersizdir. Ayrıca, algılamanın yanı sıra segmentasyon ve sınıflandırmayı destekleyen çok yönlü bir kod tabanına ihtiyaç duyan araştırmacılar için de idealdir.
- Meituan YOLOv6-3.0: Üst düzey GPU'ların mevcut olduğu ve mAP'yi maksimize etmenin tek öncelik olduğu sabit endüstriyel ortamlar için en uygunudur. NVIDIA T4/A10 sunucularında çalışan bir fabrika kalite güvence sistemi kuruyorsanız ve yeniden parametrelendirilmiş modelleri ince ayarlamak için mühendislik kaynaklarına sahipseniz, YOLOv6 güçlü bir adaydır.
Sonuç
Ultralytics YOLOv5, performans dengesi, kullanım kolaylığı ve gelişen ekosistemi ile kutlanan bilgisayar görüşü topluluğunun temel taşı olmaya devam ediyor. Uçtan buluta kadar çok çeşitli donanımlarda güvenilir sonuçlar sunma yeteneği, onu çok yönlülüğe ve pazara sunma süresine öncelik veren çoğu geliştirici için üstün bir seçim haline getiriyor.
YOLOv6.0, endüstriyel GPU çıkarımı için etkileyici mimari yenilikler sunarken, Ultralytics modellerinin kapsamlı ekosistemi ve çoklu platform uyarlanabilirliğinden yoksundur. Performans ve verimlilikte mutlak en son teknolojiyi arayanlar için şunları keşfetmenizi öneririz Ultralytics YOLO11YOLOv5 ve YOLOv6 'yı doğruluk ve hız açısından geride bırakırken kullanıcı dostu Ultralytics API'sini de koruyor.
Özel görevler için, geliştiriciler Ultralytics dokümantasyonundaki YOLOv8, YOLOv9, YOLOv10 veya transformatör tabanlı RT-DETR gibi diğer modelleri de düşünebilir.
Ultralytics Model Belgeleri'nde vizyon yapay zekasının tüm potansiyelini keşfedin.