YOLOv8 vs YOLOv6.0: Teknik Bir Karşılaştırma
En uygun nesne algılama modelini seçmek, sağlam bilgisayarla görme uygulamaları oluşturmada çok önemli bir adımdır. Bu ayrıntılı karşılaştırma, mimari farklılıkları, performans ölçümlerini ve aşağıdakiler için ideal kullanım durumlarını araştırmaktadır Ultralytics YOLOv8 ve YOLOv6.0. Her iki model de aynı zamanda ortaya çıkmış ve benzer sorunları çözmeyi amaçlamış olsa da, tasarım felsefeleri, çok yönlülükleri ve onları destekleyen ekosistemler açısından önemli farklılıklar göstermektedir.
Ultralytics YOLOv8
Yazarlar Glenn Jocher, Ayush Chaurasia ve Jing Qiu
Organizasyon: Ultralytics
Tarih: 2023-01-10
GitHub: ultralytics
Dokümanlar: https:yolov8
Ultralytics YOLOv8YOLO mimarisinin gelişiminde önemli bir sıçramayı temsil etmektedir. Birleşik bir çerçeve olarak tasarlanan bu mimari, basit algılamanın ötesinde örnek segmentasyonu, poz tahmini ve sınıflandırma gibi çok çeşitli bilgisayarla görme görevlerini desteklemektedir. Kullanıcı merkezli tasarımı, kullanım kolaylığına öncelik vererek son teknoloji yapay zekayı tüm beceri seviyelerindeki geliştiriciler için erişilebilir hale getirir.
Mimari ve Temel Özellikler
YOLOv8 , model kafasını basitleştiren ve eğitim için gereken hiperparametre sayısını azaltan çapasız bir algılama mekanizması sunar. Bu yaklaşım, farklı nesne şekilleri ve boyutları arasında genelleştirmeyi geliştirir. Mimari, önceki iterasyonlara kıyasla gradyan akışını ve özellik entegrasyonunu geliştiren bir C2f modülü kullanan son teknoloji ürünü bir backbone ve boyun içerir.
Güçlü Yönler
- Eşsiz Çok Yönlülük: Birçok rakibinin aksine, YOLOv8 nesne algılama ile sınırlı değildir. Tek bir kod tabanı içinde örnek segmentasyonu, görüntü sınıflandırması, poz tahmini ve yönlendirilmiş sınırlayıcı kutu (OBB) görevlerini yerel olarak destekler.
- Üstün Verimlilik: Performans kıyaslamalarında vurgulandığı gibi, YOLOv8 daha az parametre ve FLOP ile daha yüksek doğrulukmAP) elde eder. Bu, hem eğitim hem de çıkarım sırasında daha düşük bellek gereksinimi ile sonuçlanır, bu da daha ağır transformatör tabanlı modellere göre kritik bir avantajdır.
- Kullanım Kolaylığı: Model, kullanıcıların modelleri minimum kodla eğitmesine, doğrulamasına ve dağıtmasına olanak tanıyan modern bir Python API ve komut satırı arayüzüCLI) ile sarılmıştır.
- Sağlam Ekosistem: Tarafından desteklenmektedir UltralyticsYOLOv8 , sürekli güncellemelerden, kapsamlı dokümantasyondan ve canlı bir topluluktan yararlanır. Bu, kurumsal dağıtımlar için uzun vadeli uygulanabilirlik ve destek sağlar.
Zayıflıklar
- Küçük Nesne Algılama: YOLOv8 gibi tek aşamalı dedektörler son derece yetenekli olsalar da özelleşmiş, hesaplama açısından pahalı iki aşamalı dedektörlere kıyasla son derece küçük veya tıkalı nesnelerde zaman zaman zorlanabilirler.
YOLOv8 hakkında daha fazla bilgi edinin
YOLOv6.0
Yazarlar Chuyi Li, Lulu Li, Yifei Geng, Hongliang Jiang, Meng Cheng, Bo Zhang, Zaidan Ke, Xiaoming Xu ve Xiangxiang Chu
Organizasyon: Meituan
Tarih: 2023-01-13
Arxiv: https://arxiv.org/abs/2301.05586
GitHub: YOLOv6
Dokümanlar: https:ultralytics
YOLOv6.0, Meituan tarafından geliştirilen ve özel donanımlarda çıkarım hızının öncelikli olduğu endüstriyel uygulamalar için özel olarak tasarlanmış bir nesne algılama çerçevesidir. GPU kullanımını en üst düzeye çıkarmak için gelişmiş teknikler kullanarak hız ve doğruluk arasındaki dengeyi optimize etmeye odaklanır.
Mimari ve Temel Özellikler
YOLOv6 mimarisi, ağın eğitim sırasında karmaşık dallara sahip olmasına izin veren ancak çıkarım sırasında daha basit, daha hızlı bir yapıya dönüşen Rep-Block (yeniden parametrelendirme) yapılarını kullanan, donanıma duyarlı bir tasarıma sahiptir. Ayrıca, ek çıkarım maliyetlerine maruz kalmadan doğruluğu artırmak için kendi kendine damıtma stratejisi kullanır.
Güçlü Yönler
- GPU Çıkarım Hızı: Model, özellikle NVIDIA donanımında GPU performansı için son derece optimize edilmiştir, bu da onu katı gecikme bütçelerine sahip endüstriyel senaryolar için güçlü bir aday haline getirir.
- Niceleme Desteği: YOLOv6 , model niceleme desteğini vurgulayarak, modelleri sınırlı hesaplama hassasiyetine sahip donanımlara dağıtmak için araçlar sağlar.
- Mobil Optimizasyon: YOLOv6Lite gibi varyantlarla çerçeve, mobil ve CPU uç noktalar için uyarlanmış çözümler sunar.
Zayıflıklar
- Sınırlı Görev Kapsamı: YOLOv6 öncelikle nesne algılamaya odaklanmıştır. Ultralytics ekosistemini karakterize eden segmentasyon, poz tahmini ve izleme için yerel, kullanıma hazır destekten yoksundur.
- Kaynak Yoğunluğu: YOLOv8 ile karşılaştırılabilir doğruluk elde etmek için, YOLOv6 modelleri genellikle önemli ölçüde daha fazla parametre ve FLOP gerektirir, bu da eğitim sırasında daha yüksek hesaplama ek yüküne yol açar.
- Topluluk ve Bakım: Açık kaynak olmasına rağmen, ekosistem Ultralytics'e kıyasla daha az aktiftir, bu da sorunların daha yavaş çözülmesine ve daha az topluluk katkılı kaynağa neden olabilir.
YOLOv6 hakkında daha fazla bilgi edinin
Performans Karşılaştırması
Aşağıdaki tabloda COCO veri setindeki performans metriklerinin doğrudan karşılaştırması sunulmaktadır. Bu veriler, azaltılmış model karmaşıklığı ile sürekli olarak yüksek Ortalama Ortalama Kesinlik (mAP) sağlayan Ultralytics YOLOv8'in verimliliğinin altını çizmektedir.
| Model | boyut (piksel) | mAPval 50-95 | Hız CPU ONNX (ms) | Hız T4 TensorRT10 (ms) | parametreler (M) | FLOP'lar (B) |
|---|---|---|---|---|---|---|
| YOLOv8n | 640 | 37.3 | 80.4 | 1.47 | 3.2 | 8.7 |
| YOLOv8s | 640 | 44.9 | 128.4 | 2.66 | 11.2 | 28.6 |
| YOLOv8m | 640 | 50.2 | 234.7 | 5.86 | 25.9 | 78.9 |
| YOLOv8l | 640 | 52.9 | 375.2 | 9.06 | 43.7 | 165.2 |
| YOLOv8x | 640 | 53.9 | 479.1 | 14.37 | 68.2 | 257.8 |
| YOLOv6.0n | 640 | 37.5 | - | 1.17 | 4.7 | 11.4 |
| YOLOv6.0s | 640 | 45.0 | - | 2.66 | 18.5 | 45.3 |
| YOLOv6.0m | 640 | 50.0 | - | 5.28 | 34.9 | 85.8 |
| YOLOv6.0l | 640 | 52.8 | - | 8.95 | 59.6 | 150.7 |
Metriklerin Analizi
- Verimlilik: YOLOv8 üstün parametre verimliliği göstermektedir. Mesela, YOLOv8s sadece 11,2 milyon parametre ile 44,9 mAP elde ederken, YOLOv6.0s neredeyse aynı 45,0 mAP 'ye ulaşmakiçin18,5 milyon parametre (%65daha fazla) gerektirir. Bu da uç cihazlarda daha düşük depolama maliyetleri ve daha hızlı güncellemeler anlamına gelmektedir.
- Hesaplama Yükü: Benzer şekilde, FLOP'lar (Kayan Nokta İşlemleri) açısından, YOLOv8m , YOLOv6.0m'nin 85.8B FLOP'una kıyasla 78.9B FLOP'ta çalışır ve Ultralytics modelini hesaplama açısından daha hafif hale getirirken daha yüksek bir mAP (50.2'ye karşı 50.0) elde eder.
- Hız: YOLOv6.0, özel donanıma duyarlı tasarımı nedeniyle T4 GPU'larda biraz daha yüksek ham çıkarım hızları gösterirken, YOLOv8 mükemmel CPU performansı sunar ONNXGPU'ların kullanılamadığı dağıtımlar için çok önemlidir.
Eğitim ve Kullanılabilirlik
Bu modeller arasındaki belirleyici farklardan biri de geliştirici deneyimidir. Ultralytics , modellerin nasıl eğitildiği ve dağıtıldığı konusunda belirgin olan sürtünmesiz bir iş akışına öncelik verir.
Birleşik İş Akışı
Ultralytics , tüm görevler arasında tutarlı bir API sağlar. Algılama, segmentasyon veya poz tahmini gerçekleştiriyor olsanız da, sözdizimi aynı kalır ve öğrenme eğrisini büyük ölçüde azaltır.
Ultralytics ile Kullanım Kolaylığı
YOLOv8 sadece birkaç satır kod ile bir projeye entegre edilebilir. Python SDK, veri yükleme, büyütme ve eğitim boru hattı kurulumunu otomatik olarak gerçekleştirir.
from ultralytics import YOLO
# Load a model
model = YOLO("yolov8n.pt") # load a pretrained model (recommended for training)
# Train the model
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)
# Run inference on an image
results = model("path/to/image.jpg")
Buna karşılık, YOLOv6 etkili olsa da, genellikle akademik depolara özgü daha fazla manuel yapılandırma ve bağımlılık yönetimi gerektirir, bu da hızlı prototip oluşturma ve MLOps entegrasyonunu yavaşlatabilir.
İdeal Kullanım Senaryoları
Ultralytics YOLOv8 Ne Zaman Seçilmeli
- Çeşitli Uygulamalar: Projeniz sınırlayıcı kutulardan daha fazlasını gerektirdiğinde (nesneleri segmentlere ayırmak veya kilit noktaları tahmin etmek gibi) YOLOv8'in çoklu görev yetenekleri vazgeçilmezdir.
- Uç ve Bulut Dağıtımı: Dışa aktarma modları sayesinde YOLOv8 , cep telefonlarından bulut sunucularına kadar her şeyi kapsayan TFLite, ONNX, CoreML ve TensorRT'ye sorunsuz bir şekilde dağıtılır.
- Hızlı Geliştirme: Hızlı bir şekilde yineleme yapması gereken ekipler için kapsamlı dokümantasyon ve aktif topluluk desteği, arıza süresini ve sorun gidermeyi en aza indirir.
YOLOv6.0 Ne Zaman Seçilmeli
- Belirli Endüstriyel Donanım: Dağıtım ortamınız sıkı bir şekilde kontrol ediliyorsa ve özellikle Rep-Block mimarilerinden yararlanan donanımlar kullanıyorsanız (belirli GPU kurulumları gibi), YOLOv6 marjinal hız kazanımları sunabilir.
- Eski Sistemler: Yeniden düzenlemenin mümkün olmadığı YOLOv6'nın özel girdi/çıktı formatları etrafında oluşturulmuş mevcut boru hatları için.
Sonuç
YOLOv6.0 ise endüstriyel nesne algılama alanında güçlü bir rakip olmaya devam etmektedir, Ultralytics YOLOv8 bilgisayarla görme projelerinin büyük çoğunluğu için daha kapsamlı, verimli ve geleceğe dönük bir çözüm sunar. Daha az parametre ile üstün doğruluk sunma yeteneği, gelişen bir ekosistem ve çoklu görüş görevleri için destek ile birleştiğinde, hem geliştiriciler hem de araştırmacılar için önerilen bir seçim haline gelir.
Bilgisayarla görme teknolojisindeki en son gelişmeleri keşfetmek isteyenler için YOLO11Bu da YOLOv8 tarafından belirlenen verimlilik ve performansı daha da geliştirmektedir. Ayrıca, aşağıdaki gibi transformatör tabanlı modellerle karşılaştırmalar RT-DETR modern algılama mimarileri hakkında daha fazla bilgi sağlayabilir.