YOLOv5 - DAMO-YOLO Karşılaştırması: Detaylı Teknik Bir İnceleme
Bilgisayar görüşü alanındaki hızlı gelişmelerde, doğru nesne algılama mimarisini seçmek proje başarısı için çok önemlidir. Bu karşılaştırma, güvenilirliği ve hızıyla bilinen, dünya çapında benimsenmiş bir endüstri standardı olan Ultralytics YOLOv5 ile yeni mimari arama teknikleri sunan Alibaba Group'tan araştırma odaklı bir model olan DAMO-YOLO olmak üzere iki önemli modeli incelemektedir.
Her iki model de nesne algılama görevlerini çözmeyi amaçlasa da, farklı ihtiyaçlara hitap ederler. YOLOv5, kullanım kolaylığına, dağıtım çok yönlülüğüne ve gerçek dünya performans dengesine öncelik verirken, DAMO-YOLO, Nöral Mimari Arama (NAS) ve ağır özellik birleştirme mekanizmaları ile akademik sınırları zorlamaya odaklanır.
Performans Metrikleri ve Kıyaslamalar
Üretim için bir model seçerken çıkarım hızı ve detect doğruluğu arasındaki ödünleşmeleri anlamak önemlidir. Aşağıdaki veriler, bu modellerin nesne algılama için standart bir ölçüt olan COCO veri kümesi üzerinde nasıl performans gösterdiğini vurgulamaktadır.
| 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 |
| DAMO-YOLOt | 640 | 42.0 | - | 2.32 | 8.5 | 18.1 |
| DAMO-YOLOs | 640 | 46.0 | - | 3.45 | 16.3 | 37.8 |
| DAMO-YOLOm | 640 | 49.2 | - | 5.09 | 28.2 | 61.8 |
| DAMO-YOLOl | 640 | 50.8 | - | 7.18 | 42.1 | 97.3 |
Sonuçların Analizi
Veriler, tasarım felsefesinde belirgin bir ikilik ortaya koymaktadır. YOLOv5n (Nano), GPU'da inanılmaz bir 1,12 ms çıkarım süresi ve yaygın olarak erişilebilir CPU performansı sunarak hız ve verimlilik için tartışmasız şampiyondur. Bu, onu düşük gecikme süresinin pazarlık konusu olmadığı uç nokta yapay zekası uygulamaları için ideal kılar.
DAMO-YOLO modelleri, örneğin DAMO-YOLOl, marjinal olarak daha yüksek elde edin ortalama Ortalama Kesinlik (mAP), şu zirveye ulaşarak 50.8, ancak CPU performans metriklerinde şeffaflık pahasına. DAMO-YOLO için bildirilen CPU hızlarının olmaması, öncelikle üst düzey GPU ortamları için optimize edildiğini ve mobil uygulamalar veya gömülü sistemler gibi daha geniş dağıtım senaryoları için esnekliğini sınırladığını gösteriyor.
Ultralytics YOLOv5: Çok Yönlü Endüstri Standardı
Yazar: Glenn Jocher
Kuruluş:Ultralytics
Tarih: 2020-06-26
GitHub:https://github.com/ultralytics/yolov5
Dokümantasyon:https://docs.ultralytics.com/models/yolov5/
YOLOv5 , piyasaya sürüldüğünden bu yana bilgisayarla görme topluluğunda bir köşe taşı olarak kendini kanıtlamıştır. Yerel olarak oluşturulmuş PyTorchkarmaşıklığı kullanılabilirlikle dengeleyerek "piller dahil" bir deneyim sunar. Mimarisi, çeşitli boyutlardaki nesneleri detect etmek için farklı ölçeklerdeki özellikleri verimli bir şekilde toplayan bir CSPDarknet backbone ve bir PANet boynu kullanır.
Temel Güçlü Yönler
- Kullanım Kolaylığı: Ultralytics, geliştirici deneyimine (DX) öncelik verir. Basit bir Python API ve sezgisel CLI komutları ile kullanıcılar, modelleri dakikalar içinde eğitebilir ve dağıtabilir.
- İyi Yönetilen Ekosistem: Aktif bir topluluk ve sık güncellemelerle desteklenen YOLOv5, sorunsuz model yönetimi için Ultralytics HUB dahil olmak üzere en son araçlarla uyumluluk sağlar.
- Çeşitlilik: Standart detect işleminin ötesinde, YOLOv5 örnek segmentasyonunu ve görüntü sınıflandırmasını destekleyerek geliştiricilerin tek bir çerçeveyle birden fazla görüntü işleme görevinin üstesinden gelmesini sağlar.
- Dağıtım Esnekliği: ONNX'e aktarmadan ve TensorRT'den iOS ve Android'de çalıştırmaya kadar YOLOv5 her yerde çalışacak şekilde tasarlanmıştır.
YOLOv5 hakkında daha fazla bilgi edinin
Kolaylaştırılmış İş Akışı
YOLOv5, popüler MLOps araçlarıyla sorunsuz bir şekilde entegre olur. Eğitim çalıştırmalarınızın yeniden üretilebilir ve analiz edilmesi kolay olmasını sağlayarak, tek bir komutla Weights & Biases veya Comet kullanarak deneylerinizi izleyebilirsiniz.
DAMO-YOLO: Araştırma Odaklı Doğruluk
Yazarlar: Xianzhe Xu, Yiqi Jiang, Weihua Chen, Yilun Huang, Yuan Zhang ve Xiuyu Sun
Kuruluş: Alibaba Group
Tarih: 2022-11-23
Arxiv:https://arxiv.org/abs/2211.15444v2
GitHub:https://github.com/tinyvision/DAMO-YOLO
DAMO-YOLO, Alibaba'nın DAMO Akademisi tarafından geliştirilen bir yöntemdir. Verimli backbone'lar (MAE-NAS), RepGFPN (Reparameterized Generalized Feature Pyramid Network) olarak bilinen ağır bir neck yapısı ve ZeroHead adlı hafif bir head'i otomatik olarak tasarlamak için Nöral Mimari Arama (NAS) dahil olmak üzere bir dizi gelişmiş teknoloji sunar.
Temel Özellikler
- MAE-NAS Backbone: Belirli gecikme kısıtlamaları altında optimum bir ağ yapısı bulmak için MAE-NAS adlı bir yöntem kullanır, ancak bu mimariyi manuel olarak değiştirmeyi daha karmaşık hale getirebilir.
- AlignedOTA Etiket Ataması: Sınıflandırma ve regresyon görevleri arasındaki uyumsuzlukları çözmek için AlignedOTA adlı dinamik bir etiket atama stratejisi kullanır.
- Doğruluğa Odaklanma: DAMO-YOLO'nun temel amacı, COCO veri kümesindeki mAP'yi en üst düzeye çıkarmaktır ve bu da onu her yüzde birimin önemli olduğu yarışmalar veya akademik araştırmalar için güçlü bir rakip haline getirir.
DAMO-YOLO hakkında daha fazla bilgi edinin
Mimari ve Operasyonel Farklılıklar
YOLOv5 ve DAMO-YOLO arasındaki ayrım, basit metriklerin ötesine, temel tasarım felsefelerine ve operasyonel gereksinimlerine kadar uzanır.
Mimari: Basitlik - Karmaşıklık Karşılaştırması
YOLOv5, elle hazırlanmış, sezgisel bir mimari kullanır. Bağlantı tabanlı yaklaşımı iyi anlaşılmıştır ve hata ayıklaması kolaydır. Buna karşılık, DAMO-YOLO, ağır yeniden parametrelendirmeye ve otomatik aramaya (NAS) dayanır. NAS verimli yapılar sağlayabilirken, genellikle geliştiricilerin özelleştirmesi veya yorumlaması zor olan "kara kutu" modellerle sonuçlanır. Ek olarak, DAMO-YOLO'daki ağır boyun (RepGFPN), eğitim sırasında hesaplama yükünü artırır ve YOLOv5'in verimli CSP tasarımına kıyasla daha fazla GPU belleği gerektirir.
Eğitim Verimliliği ve Bellek
Ultralytics modelleri, eğitim verimlilikleriyle ünlüdür. YOLOv5, tipik olarak daha az CUDA belleği gerektirir ve bu da onun tüketici sınıfı GPU'larda eğitilmesine olanak tanır. Karmaşık yeniden parametrelendirme ve damıtma süreçlerine sahip DAMO-YOLO, etkili bir şekilde eğitmek için genellikle üst düzey donanım gerektirir. Ayrıca, Ultralytics, yakınsama yolunu hızlandırmak için geniş bir önceden eğitilmiş ağırlıklar kitaplığı ve otomatik hiperparametre ayarlama sağlar.
Ekosistem ve Kullanım Kolaylığı
Belki de en önemli fark ekosistemde yatmaktadır. YOLOv5 sadece bir model değil; kapsamlı bir araç paketinin parçasıdır.
- Dokümantasyon: Ultralytics, kullanıcıları veri toplamadan dağıtıma kadar yönlendiren kapsamlı, çok dilli dokümantasyon sağlar.
- Topluluk: Büyük bir küresel topluluk, sorunların hızla çözülmesini sağlar ve eğitimler kolayca bulunur.
- Entegrasyonlar: Roboflow veri kümeleri ve NVIDIA Jetson gibi dağıtım hedefleri için yerel destek, tüm hattı basitleştirir.
Öncelikle bir araştırma deposu olan DAMO-YOLO, bu düzeyde gelişmiş bir desteğe sahip değildir ve bu da ticari ürünlere entegrasyonu önemli ölçüde zorlaştırmaktadır.
Gerçek Dünya Kullanım Durumları
Bu modeller arasındaki seçim genellikle özel dağıtım ortamına bağlıdır.
YOLOv5'in Üstün Olduğu Alanlar
- Akıllı Tarım: Düşük kaynak gereksinimleri, onu ekin hastalığı tespiti için dronlarda veya otonom traktörlerde çalıştırmak için mükemmel kılar.
- Üretim: Endüstriyel otomasyon alanında, YOLOv5'in yüksek hızı, hızlı hareket eden taşıma bantlarında gerçek zamanlı kusur tespiti sağlar.
- Perakende Analitiği: Nesne sayımı ve kuyruk yönetimi için YOLOv5'in CPU performansı, mevcut mağaza donanımında uygun maliyetli dağıtım sağlar.
DAMO-YOLO'nun Mükemmel Olduğu Yerler
- Akademik Araştırma: RepGFPN veya NAS tekniklerinin etkinliğini inceleyen araştırmacılar, DAMO-YOLO'yu değerli bir temel olarak bulacaklardır.
- Üst Düzey Gözetim: Doğruluğun gecikmeye göre öncelikli olduğu özel sunucu sınıfı GPU'lara sahip senaryolarda, DAMO-YOLO karmaşık sahnelerde hassas detect sağlayabilir.
Kod Örneği: YOLOv5 ile Başlarken
Ultralytics python paketi sayesinde YOLOv5'i çalıştırmak oldukça kolaydır. Aşağıdaki örnek, önceden eğitilmiş bir modelin nasıl yükleneceğini ve bir görüntü üzerinde çıkarım yapmanın nasıl gerçekleştirileceğini gösterir.
import torch
# Load a pre-trained YOLOv5s model from PyTorch Hub
model = torch.hub.load("ultralytics/yolov5", "yolov5s", pretrained=True)
# Define an image URL or local path
img = "https://ultralytics.com/images/zidane.jpg"
# Run inference
results = model(img)
# Print results to the console
results.print()
# Show the image with bounding boxes
results.show()
Sonuç
Hem YOLOv5 hem de DAMO-YOLO, nesne algılama alanına önemli katkılarda bulunmaktadır. DAMO-YOLO, yüksek doğruluk ölçütlerine ulaşmak için Sinirsel Mimari Arama ve gelişmiş özellik kaynaştırmasının potansiyelini sergiliyor.
Ancak, geliştiricilerin, mühendislerin ve işletmelerin büyük çoğunluğu için Ultralytics YOLOv5 üstün bir seçim olmaya devam ediyor. Eşsiz Kullanım Kolaylığı, sağlam Performans Dengesi ve İyi Yönetilen bir Ekosistemin güvenliği, projelerin prototipten üretime minimum zorlukla geçmesini sağlar. CPU'lar ve GPU'lar arasında verimli bir şekilde dağıtım yapabilme özelliği, eğitim için daha düşük bellek gereksinimleriyle birleştiğinde, YOLOv5'i gerçek dünya uygulamaları için oldukça pratik bir çözüm haline getirir.
Bilgisayar görüşü teknolojisindeki en son gelişmelerden yararlanmak isteyenler için Ultralytics, YOLOv8 ve en son teknoloji YOLO11 ile yenilikler yapmaya devam etti. Bu yeni modeller, YOLOv5'in sağlam temeli üzerine inşa edilmiş olup daha da yüksek hız, doğruluk ve görev çok yönlülüğü sunar.
Diğer Karşılaştırmaları İnceleyin
Bu modellerin daha geniş ekosisteme nasıl uyduğunu daha iyi anlamak için, bu ayrıntılı karşılaştırmaları keşfedin:
- YOLOv5 - YOLOv8 Karşılaştırması
- DAMO-YOLO ve YOLOv8 Karşılaştırması
- YOLOv5 - RT-DETR
- DAMO-YOLO - YOLO11 Karşılaştırması
- YOLOv5 - YOLOv7