Meituan YOLOv6
Genel Bakış
Meituan YOLOv6, hız ve doğruluk arasında dikkate değer bir denge sunan ve gerçek zamanlı uygulamalar için popüler bir seçim haline getiren son teknoloji ürünü bir nesne dedektörüdür. Bu model, mimarisinde ve eğitim şemasında, Çift Yönlü Birleştirme (BiC) modülünün uygulanması, çapa destekli eğitim (AAT) stratejisi ve COCO veri kümesinde son teknoloji doğruluk için geliştirilmiş bir omurga ve boyun tasarımı dahil olmak üzere birkaç önemli geliştirme sunmaktadır.
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 boynu (N ve S gösterilmiştir). M/L için RepBlocks'un CSPStackRep ile değiştirildiğine dikkat edin. (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 boynuna bir BiC modülü ekleyerek lokalizasyon sinyallerini geliştirir ve ihmal edilebilir hız düşüşü ile performans kazanımları sağlar.
- Çapa Destekli Eğitim (AAT) Stratejisi: Bu model, çıkarım verimliliğinden ödün vermeden hem çapa tabanlı hem de çapasız paradigmaların avantajlarından yararlanmak için AAT'yi önermektedir.
- Geliştirilmiş Omurga ve Boyun Tasarımı: YOLOv6'yı omurga ve boyunda başka bir aşama içerecek şekilde derinleştiren bu model, yüksek çözünürlüklü girdide COCO veri kümesinde en son teknolojiye sahip performansa ulaşır.
- Kendi Kendine Damıtma Stratejisi: YOLOv6'nın daha küçük modellerinin performansını artırmak için, eğitim sırasında yardımcı regresyon dalını geliştiren ve belirgin bir hız düşüşünü önlemek için çıkarımda kaldıran yeni bir kendi kendine damıtma stratejisi uygulanmaktadır.
Performans Ölçütleri
YOLOv6, farklı ölçeklerde çeşitli önceden eğitilmiş modeller sağlar:
- YOLOv6-N: NVIDIA Tesla T4 GPU ile COCO val2017'de 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ı olarak son teknoloji ürünü doğruluk.
YOLOv6 ayrıca farklı kesinlikler için nicelleştirilmiş modeller ve mobil platformlar için optimize edilmiş modeller sağlar.
Kullanım Örnekleri
Bu örnek basit YOLOv6 eğitim ve çıkarım örnekleri sağlar. Bu ve diğer modlarla ilgili tüm belgeler için Predict, Train, Val ve Export docs sayfalarına bakın.
Örnek
PyTorch ön eğitimli *.pt
modellerin yanı sıra yapılandırma *.yaml
dosyalar şu dosyalara aktarılabilir YOLO()
sınıfında bir model örneği oluşturmak için python:
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')
CLI komutları modelleri doğrudan çalıştırmak için kullanılabilir:
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, farklı hesaplama ihtiyaçlarına ve doğruluk gereksinimlerine cevap vererek onları geniş bir uygulama yelpazesi için çok yönlü hale getirir.
Model Tipi | Önceden Eğitilmiş Ağırlıklar | Desteklenen Görevler | Çıkarım | Doğrulama | Eğitim | İhracat |
---|---|---|---|---|---|---|
YOLOv6-N | yolov6-n.pt |
Nesne Algılama | ✅ | ✅ | ✅ | ✅ |
YOLOv6-S | yolov6-s.pt |
Nesne Algılama | ✅ | ✅ | ✅ | ✅ |
YOLOv6-M | yolov6-m.pt |
Nesne Algılama | ✅ | ✅ | ✅ | ✅ |
YOLOv6-L | yolov6-l.pt |
Nesne Algılama | ✅ | ✅ | ✅ | ✅ |
YOLOv6-L6 | yolov6-l6.pt |
Nesne Algılama | ✅ | ✅ | ✅ | ✅ |
Bu tablo, YOLOv6 model varyantlarına ayrıntılı bir genel bakış sunmakta, nesne algılama görevlerindeki yeteneklerini ve Çıkarım, Doğrulama, Eğitim ve Dışa Aktarma gibi çeşitli operasyonel modlarla uyumluluklarını vurgulamaktadır. Bu kapsamlı destek, kullanıcıların çok çeşitli nesne algılama senaryolarında YOLOv6 modellerinin yeteneklerinden tam olarak yararlanabilmesini sağlar.
Atıflar ve Teşekkür
Yazarlara gerçek zamanlı nesne algılama alanındaki önemli katkılarından dolayı teşekkür ederiz:
Orijinal YOLOv6 makalesi arXiv'de bulunabilir. Yazarlar çalışmalarını kamuya açık hale getirmişlerdir ve kod tabanına GitHub üzerinden erişilebilir. Alanı ilerletme ve çalışmalarını daha geniş bir topluluk için erişilebilir hale getirme çabalarını takdir ediyoruz.