DAMO-YOLO - YOLOv7 Karşılaştırması: Detaylı Bir Teknik Karşılaştırma
Nesne algılama için optimal mimariyi seçmek, bilgisayar görüşü geliştirmede çok önemli bir karardır. Seçim genellikle çıkarım gecikmesini algılama doğruluğuna karşı dengelemeyi gerektirirken, dağıtım donanım kısıtlamalarını da göz önünde bulundurur. Bu teknik karşılaştırma, gerçek zamanlı algılama sınırlarını zorlayan 2022'de piyasaya sürülen iki etkili model olan DAMO-YOLO ve YOLOv7'yi incelemektedir. Model seçim sürecinizde size yardımcı olmak için mimari yeniliklerini, kıyaslama performansını ve ideal uygulama senaryolarını analiz ediyoruz.
DAMO-YOLO: Uç Verimlilik için Sinirsel Mimari Arama
DAMO-YOLO, endüstriyel uygulamalar için performansı en üst düzeye çıkarmaya özel olarak odaklanan Alibaba Group tarafından geliştirilmiştir. Omurgasının tasarımını otomatik hale getirmek ve optimum verimlilik sağlamak için Sinirsel Mimari Arama (NAS) içermesiyle kendini farklı kılar.
- 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
- Belgeler:https://github.com/tinyvision/DAMO-YOLO/blob/master/README.md
Mimari Yenilikler
DAMO-YOLO, yüksek hassasiyeti korurken hesaplama yükünü azaltmayı amaçlayan çeşitli son teknoloji teknolojiler sunar:
- MAE-NAS Backbone (GiraffeNet): Geleneksel manuel olarak tasarlanmış backbonelerin aksine, DAMO-YOLO, Yöntem Farkındalıklı Verimlilik (MAE) NAS yaklaşımını kullanır. Bu, çeşitli donanım kısıtlamaları altında kayan nokta işlemleri (FLOP'lar) ve gecikme süresi arasında üstün bir denge sağlayan GiraffeNet adlı bir backbone serisiyle sonuçlanır.
- Verimli RepGFPN: Model, yeniden parametrelendirme ile optimize edilmiş Genelleştirilmiş bir Özellik Piramidi Ağı (GFPN) içerir. Bu "RepGFPN", standart FPN'lerle ilişkili ağır hesaplama maliyeti olmadan, çeşitli boyutlardaki nesneleri detect etmek için gerekli olan verimli çok ölçekli özellik birleştirmesine olanak tanır.
- ZeroHead: Yeni bir "ZeroHead" tasarımı, detect başlığını önemli ölçüde basitleştirir. Sınıflandırma ve regresyon görevlerini ayırarak ve karmaşık özel katmanı kaldırarak, çıkarım sırasında başlığın parametre sayısını sıfıra indirir, bellekten tasarruf sağlar ve hızı artırır.
- AlignedOTA: Eğitim kararlılığını ve doğruluğunu artırmak için DAMO-YOLO, sınıflandırma güvenilirliği ve regresyon doğruluğu arasındaki uyumsuzluk sorununu çözen dinamik bir etiket atama stratejisi olan AlignedOTA'yı kullanır.
Güçlü Yönler ve Kullanım Durumları
DAMO-YOLO, gecikme süresinin kritik olduğu ortamlarda mükemmeldir. Daha küçük varyantları (Tiny/Small), uç yapay zeka dağıtımları için özellikle etkilidir.
- Endüstriyel Otomasyon: Milisaniyelerin önemli olduğu yüksek hızlı montaj hatları için idealdir.
- Mobil Uygulamalar: Düşük parametre sayısı, sınırlı işlem gücüne sahip akıllı telefonlarda çalışmaya uygun hale getirir.
DAMO-YOLO hakkında daha fazla bilgi edinin
YOLOv7: Gerçek Zamanlı Doğruluğu Optimize Etme
DAMO-YOLO'dan kısa bir süre önce piyasaya sürülen YOLOv7, 5 FPS ila 160 FPS aralığında son teknoloji performans için yeni bir ölçüt belirledi. Çıkarım maliyetlerini artırmadan daha yüksek doğruluk elde etmek için eğitim sürecini ve gradyan akışını optimize etmeye büyük önem verdi.
- Yazarlar: Chien-Yao Wang, Alexey Bochkovskiy ve Hong-Yuan Mark Liao
- Kuruluş:Institute of Information Science, Academia Sinica, Taiwan
- 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 Yenilikler
YOLOv7, çıkarım modeli yapısını etkilemeden eğitim sırasında doğruluğu artıran "bedava hediyeler çantası" yöntemlerini tanıttı:
- E-ELAN (Genişletilmiş Verimli Katman Toplama Ağı): Bu mimari, en kısa ve en uzun gradyan yollarını kontrol ederek ağın daha çeşitli özellikleri öğrenmesini sağlar. Orijinal gradyan yolu durumunu bozmadan "kardinalitenin" öğrenme yeteneğini geliştirir.
- Birleştirmeye Dayalı Modeller için Model Ölçeklendirme: YOLOv7, parametrelerin en iyi şekilde kullanılmasını sağlayarak, birleştirmeye dayalı mimariler için derinliği ve genişliği aynı anda ölçeklendiren bileşik bir ölçeklendirme yöntemi önermektedir.
- Eğitilebilir Bedava Hileler Çantası: Planlı yeniden parametrelendirme ve yardımcı baş denetimi (kabaca ayrıntılıya) gibi teknikler kullanılır. Bunlar, modelin eğitim sırasında sağlamlığını ve doğruluğunu artırır, ancak çıkarım sırasında birleştirilir veya atılır, bu da modeli hızlı tutar.
Güçlü Yönler ve Kullanım Durumları
YOLOv7, genel amaçlı nesne algılama için bir güç merkezidir ve MS COCO gibi standart veri kümelerinde mükemmel ortalama Ortalama Hassasiyet (mAP) sunar.
- Akıllı Şehir Gözetimi: Yüksek doğruluğu, karmaşık kentsel ortamlarda yayaları ve araçları detect etmek için güvenilir olmasını sağlar.
- Otonom Sistemler: Daha yüksek çözünürlüklü girişlerin faydalı olduğu daha uzun menzillerde güvenilir algılama gerektiren robotik ve dronlar için uygundur.
YOLOv7 hakkında daha fazla bilgi edinin
Performans Karşılaştırması
Aşağıdaki tablo, DAMO-YOLO ve YOLOv7'nin performansını karşılaştırmaktadır. DAMO-YOLO genellikle boyutu için daha düşük gecikme süresi (daha yüksek hız) elde ederken, YOLOv7 genellikle özellikle daha büyük konfigürasyonlarında doğruluk konusunda güçlü bir üne sahiptir.
| Model | boyut (piksel) | mAPval 50-95 | Hız CPU ONNX (ms) | Hız T4 TensorRT10 (ms) | parametreler (M) | FLOP'lar (B) |
|---|---|---|---|---|---|---|
| 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 |
| YOLOv7l | 640 | 51.4 | - | 6.84 | 36.9 | 104.7 |
| YOLOv7x | 640 | 53.1 | - | 11.57 | 71.3 | 189.9 |
Veriler, yüksek düzeyde kısıtlı ortamlar için DAMO-YOLO'nun çok hafif bir çözüm (küçük sürüm için 8,5M parametre) sunduğunu göstermektedir. Bununla birlikte, YOLOv7, X varyantı ile %53,1 mAP elde ederek doğruluk sınırlarını zorlar, ancak daha yüksek işlem maliyetleriyle.
Mimari Değiş Tokuşları
DAMO-YOLO'nun NAS tabanlı backbone'u özellikle gecikme için optimize edilirken, YOLOv7'nin manuel mimari tasarımı gradyan akışı verimliliğine odaklanır. Kullanıcılar her ikisini de kendi özel donanımlarında karşılaştırmalıdır, çünkü teorik FLOP'lar her zaman gerçek dünya çıkarım hızı ile mükemmel bir şekilde ilişkili değildir.
Ultralytics'in Avantajı: Neden Yükseltmeli?
DAMO-YOLO ve YOLOv7 her ikisi de bilgisayarla görme tarihinde önemli başarıları temsil etse de, alan hızla gelişiyor. En sağlam, çok yönlü ve kullanımı kolay çözümleri arayan geliştiriciler için Ultralytics YOLO11 ve YOLOv8 önerilen seçimlerdir.
Ultralytics modelleri sadece araştırma çıktıları olarak değil, aynı zamanda kapsamlı üretim araçları olarak tasarlanmıştır. Yapay zeka dağıtımındaki "son aşama" sorunlarını ele alırlar: kullanılabilirlik, entegrasyon ve bakım.
Ultralytics Modellerinin Temel Avantajları
- Kullanım Kolaylığı: Birleşik bir Python API ve CLI ile, son teknoloji bir modeli birkaç satır kodla eğitebilirsiniz. Karmaşık yapılandırma dosyalarını manuel olarak ayarlamanıza veya bağımlılıklarla uğraşmanıza gerek yoktur.
- İyi Yönetilen Ekosistem: Ultralytics, hataları hızla tespit edip düzelterek sık güncellemelerle gelişen bir ekosistem sağlar. Kapsamlı dokümantasyon ve aktif topluluk kanalları aracılığıyla destek kolayca sağlanır.
- Performans Dengesi: YOLO11 gibi modeller, hem YOLOv7 hem de DAMO-YOLO'ya kıyasla üstün doğruluk-hız oranları elde etmek için gelişmiş ankrajsız detect başlıkları ve optimize edilmiş backbone'lar kullanır.
- Çok Yönlülük: Genellikle algılama ile sınırlı olan eski modellerin aksine, Ultralytics YOLO kutudan çıkar çıkmaz örnek segmentasyonu, poz tahmini, yönlendirilmiş nesne algılama (OBB) ve sınıflandırmayı destekler.
- Eğitim Verimliliği: Önceden eğitilmiş ağırlıklar ve optimize edilmiş veri yükleyiciler, daha hızlı yakınsama sağlayarak GPU saatlerinden ve enerjiden tasarruf sağlar.
from ultralytics import YOLO
# Load the latest YOLO11 model
model = YOLO("yolo11n.pt")
# Train on COCO8 dataset for 100 epochs
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)
# Run inference on an image
results = model("path/to/image.jpg")
YOLO11 hakkında daha fazla bilgi edinin
Sonuç
DAMO-YOLO ve YOLOv7'nin her birinin kendine özgü avantajları vardır. DAMO-YOLO, uç çıkarım hızının birincil kısıtlama olduğu projeler için güçlü bir adaydır ve milisaniyeleri kısaltmak için NAS'tan yararlanır. YOLOv7, kanıtlanmış bir mimari soyuna sahip yüksek doğruluklu detect arayan araştırmacılar için sağlam bir seçim olmaya devam ediyor.
Ancak, günümüzdeki çoğu ticari ve araştırma uygulaması için Ultralytics YOLO ekosistemi üstün bir deneyim sunar. Son teknoloji performansı, benzersiz kullanım kolaylığı ve çok yönlülük ile birleştiren Ultralytics modelleri, geliştiricilerin kodda hata ayıklamak yerine değer oluşturmaya odaklanmasını sağlar. İster bir bulut sunucusuna ister NVIDIA Jetson gibi bir uç cihaza dağıtım yapıyor olun, Ultralytics üretime en akıcı yolu sağlar.
Diğer Modeller
Nesne algılama mimarilerini araştırıyorsanız, bu modeller de ilginizi çekebilir:
- Ultralytics YOLOv8: Algılama, segmentasyon ve poz görevlerini destekleyen son derece çok yönlü bir model.
- Ultralytics YOLO11: YOLO serisindeki en son evrim, en son verimliliği sunar.
- RT-DETR: NMS gecikmelerinden kaçınan, gerçek zamanlı, dönüştürücü tabanlı bir dedektör.
- YOLOv9: Gelişmiş öğrenme için Programlanabilir Gradyan Bilgisi (PGI) içerir.
- YOLOv10: Düşük gecikme için NMS'siz uçtan uca eğitime odaklanır.