Meituan YOLOv6
Genel Bakış
Meituan YOLOv6, released in 2022, offers a strong balance between speed and accuracy, making it a popular choice for real-time applications. This model introduces several notable enhancements on its architecture and training scheme, including the implementation of a Bi-directional Concatenation (BiC) module, an anchor-aided training (AAT) strategy, and an improved backbone and neck design for high accuracy on the COCO dataset.
YOLOv6'ya Genel Bakış. Önemli performans iyileştirmelerine yol açan yeniden tasarlanmış ağ bileşenlerini ve eğitim stratejilerini gösteren model mimarisi diyagramı. (a) YOLOv6'nın boyun kısmı (N ve S gösterilmiştir). M/L için RepBlocks'un CSPStackRep ile değiştirildiğine dikkat et. (b) Bir BiC modülünün yapısı. (c) Bir SimCSPSPPF bloğu. (kaynak).
Temel Özellikler
- Çift Yönlü Birleştirme (BiC) Modülü: YOLOv6, dedektörün boyun kısmına bir BiC modülü ekleyerek yerelleştirme sinyallerini güçlendirir ve hız kaybı olmadan performans artışı sağlar.
- Çapa Destekli Eğitim (AAT) Stratejisi: Bu model, çıkarım verimliliğinden ödün vermeden hem çapa tabanlı hem de çapa içermeyen paradigmaların avantajlarından yararlanmak için AAT'yi önerir.
- Geliştirilmiş Backbone ve Boyun Tasarımı: YOLOv6'yı backbone ve boyunda bir aşama daha içerecek şekilde derinleştirerek, bu model yayınlandığında yüksek çözünürlüklü girişte COCO veri kümesinde güçlü bir performans elde etti.
- Kendi Kendine Damıtma Stratejisi: YOLOv6'nın daha küçük modellerinin performansını artırmak, eğitim sırasında yardımcı regresyon dalını iyileştirmek ve belirgin bir hız düşüşünü önlemek için çıkarımda onu kaldırmak amacıyla yeni bir kendi kendine damıtma stratejisi uygulanır.
Performans Metrikleri
YOLOv6, farklı ölçeklerde çeşitli önceden eğitilmiş modeller sunar:
- YOLOv6-N: NVIDIA T4 GPU ile 1187 FPS'de COCO val2017 üzerinde %37.5 AP.
- YOLOv6-S: 484 FPS'de %45.0 AP.
- YOLOv6-M: 226 FPS'de %50.0 AP.
- YOLOv6-L: 116 FPS'de %52.8 AP.
- YOLOv6-L6: Gerçek zamanlıda en güncel doğruluk.
YOLOv6 ayrıca farklı hassasiyetler için nicelenmiş modeller ve mobil platformlar için optimize edilmiş modeller sağlar.
Kullanım Örnekleri
Bu örnek, basit YOLOv6 eğitimi ve çıkarım örnekleri sağlar. Bunlar ve diğer modlar hakkında tam dokümantasyon için Predict, Train, Val ve Export dokümantasyon sayfalarına bak.
YOLOv6 *.yaml dosyaları, Python'da ilgili modeli oluşturmak için YOLO() sınıfına aktarılabilir:
from ultralytics import YOLO
# Build a YOLOv6n model from scratch
model = YOLO("yolov6n.yaml")
# Display model information (optional)
model.info()
# Train the model on the COCO8 example dataset for 100 epochs
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)
# Run inference with the YOLOv6n model on the 'bus.jpg' image
results = model("path/to/bus.jpg")Desteklenen Görevler ve Modlar
YOLOv6 serisi, her biri yüksek performanslı Nesne Algılama için optimize edilmiş bir dizi model sunar. Bu modeller, çeşitli hesaplama ihtiyaçlarını ve doğruluk gereksinimlerini karşılar, bu da onları çok çeşitli uygulamalar için çok yönlü kılar.
| Model | Dosya Adları | Görevler | Çıkarım | Doğrulama | Eğitim | Dışa Aktar (Export) |
|---|---|---|---|---|---|---|
| YOLOv6-N | yolov6n.yaml | Nesne Tespiti | ✅ | ✅ | ✅ | ✅ |
| YOLOv6-S | yolov6s.yaml | Nesne Tespiti | ✅ | ✅ | ✅ | ✅ |
| YOLOv6-M | yolov6m.yaml | Nesne Tespiti | ✅ | ✅ | ✅ | ✅ |
| YOLOv6-L | yolov6l.yaml | Nesne Tespiti | ✅ | ✅ | ✅ | ✅ |
| YOLOv6-X | yolov6x.yaml | Nesne Tespiti | ✅ | ✅ | ✅ | ✅ |
Bu tablo, YOLOv6 model varyantlarına ayrıntılı bir genel bakış sunarak nesne algılama görevlerindeki yeteneklerini ve Çıkarım, Doğrulama, Eğitim ve Dışa Aktarma gibi çeşitli operasyonel modlarla uyumluluklarını vurgular. Bu kapsamlı destek, kullanıcıların YOLOv6 modellerinin yeteneklerinden çok çeşitli nesne algılama senaryolarında tam olarak yararlanabilmelerini sağlar.
Alıntılar ve Teşekkür
Gerçek zamanlı nesne algılama alanındaki önemli katkılarından dolayı yazarlara teşekkür etmek isteriz:
@misc{li2023yolov6,
title={YOLOv6 v3.0: A Full-Scale Reloading},
author={Chuyi Li and Lulu Li and Yifei Geng and Hongliang Jiang and Meng Cheng and Bo Zhang and Zaidan Ke and Xiaoming Xu and Xiangxiang Chu},
year={2023},
eprint={2301.05586},
archivePrefix={arXiv},
primaryClass={cs.CV}
}Orijinal YOLOv6 makalesi arXiv üzerinde bulunabilir. Yazarlar çalışmalarını herkese açık hale getirdiler ve kod tabanına GitHub üzerinden erişilebilir. Alanı ilerletme ve çalışmalarını daha geniş topluluğa ulaştırılabilir kılma çabalarını takdir ediyoruz.
SSS
Meituan YOLOv6 nedir ve onu benzersiz kılan nedir?
2022'de yayınlanan Meituan YOLOv6, gerçek zamanlı uygulamalar için tasarlanmış, hız ve doğruluk arasında denge kuran bir nesne algılayıcıdır. Çift Yönlü Birleştirme (BiC) modülü ve Çapa Destekli Eğitim (AAT) stratejisi gibi dikkate değer mimari iyileştirmelere sahiptir. Bu yenilikler, hızda ihmal edilebilir bir düşüşle önemli performans kazanımları sağlayarak YOLOv6'yı nesne algılama görevleri için rekabetçi bir seçenek haline getirir.
YOLOv6'daki Çift Yönlü Birleştirme (BiC) Modülü performansı nasıl artırır?
YOLOv6'daki Çift Yönlü Birleştirme (BiC) modülü, dedektörün boyun kısmındaki yerelleştirme sinyallerini geliştirerek hız etkisi ihmal edilebilir düzeyde performans iyileştirmeleri sağlar. Bu modül, farklı özellik haritalarını etkili bir şekilde birleştirerek modelin nesneleri doğru bir şekilde algılama yeteneğini artırır. YOLOv6'nın özellikleri hakkında daha fazla ayrıntı için Temel Özellikler bölümüne bak.
Ultralytics kullanarak nasıl YOLOv6 modeli eğitebilirim?
Basit Python veya CLI komutları ile Ultralytics kullanarak bir YOLOv6 modeli eğitebilirsin. Örneğin:
from ultralytics import YOLO
# Build a YOLOv6n model from scratch
model = YOLO("yolov6n.yaml")
# Train the model on the COCO8 example dataset for 100 epochs
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)Daha fazla bilgi için Train sayfasını ziyaret et.
YOLOv6'nın farklı sürümleri nelerdir ve performans metrikleri nelerdir?
YOLOv6, her biri farklı performans gereksinimleri için optimize edilmiş birden fazla sürüm sunar:
- YOLOv6-N: 1187 FPS'de %37.5 AP
- YOLOv6-S: 484 FPS'de %45.0 AP
- YOLOv6-M: 226 FPS'de %50.0 AP
- YOLOv6-L: 116 FPS'de %52.8 AP
- YOLOv6-L6: Gerçek zamanlı senaryolarda en güncel doğruluk
Bu modeller, bir NVIDIA T4 GPU kullanılarak COCO veri kümesi üzerinde değerlendirilir. Performans metrikleri hakkında daha fazla bilgi için Performans Metrikleri bölümüne bak.
Çapa Destekli Eğitim (AAT) stratejisi YOLOv6'ya nasıl fayda sağlar?
YOLOv6'daki Çapa Destekli Eğitim (AAT), çapa tabanlı ve çapa içermeyen yaklaşımların unsurlarını birleştirerek çıkarım verimliliğinden ödün vermeden modelin algılama yeteneklerini geliştirir. Bu strateji, sınırlayıcı kutu tahminlerini iyileştirmek için eğitim sırasında çapalardan yararlanır ve YOLOv6'yı çeşitli nesne algılama görevlerinde etkili kılar.
Ultralytics'teki YOLOv6 modelleri tarafından hangi operasyonel modlar desteklenir?
YOLOv6, Çıkarım, Doğrulama, Eğitim ve Dışa Aktarma dahil olmak üzere çeşitli operasyonel modları destekler. Bu esneklik, kullanıcıların modelin yeteneklerinden farklı senaryolarda tam olarak yararlanmasını sağlar. Her modun ayrıntılı bir özeti için Desteklenen Görevler ve Modlar bölümüne göz at.