YOLOv10 - YOLOv7 Karşılaştırması: Gerçek Zamanlı Nesne Algılama Mimarisine Yönelik Gelişmeler
YOLO (You Only Look Once) ailesinin evrimi, gerçek zamanlı uygulamalar için hızı ve doğruluğu dengeleyerek bilgisayar görüşünün sınırlarını sürekli olarak zorlamıştır. Bu karşılaştırma, Tsinghua Üniversitesi'ndeki araştırmacılar tarafından yayınlanan son teknoloji bir model olan YOLOv10 ile Academia Sinica tarafından geliştirilen oldukça etkili bir model olan YOLOv7 arasındaki mimari değişimleri ve performans farklılıklarını incelemektedir. Her iki model de nesne algılama alanına önemli katkılarda bulunmuş olsa da, performans hedeflerine ulaşmak için farklı stratejiler kullanmaktadır.
Model Mimarilerinin Evrimi
YOLOv7'den YOLOv10'a geçiş, sinir ağlarının son işlemeyi ve özellik entegrasyonunu nasıl ele aldığı konusunda bir paradigma değişimini işaret etmektedir.
YOLOv10: NMS'siz Devrim
YOLOv10, 23 Mayıs 2024'te Ao Wang, Hui Chen ve Tsinghua Üniversitesi'nden diğerleri tarafından yayınlanmış olup, çığır açan bir NMS'siz eğitim stratejisi sunmaktadır. Geleneksel olarak, nesne algılayıcıları, çıkarım gecikmesinde bir darboğaz yaratabilen yinelenen sınırlayıcı kutuları filtrelemek için Non-Maximum Suppression (NMS)'a güvenir.
YOLOv10, modelin benzersiz nesne örneklerini doğrudan tahmin etmesini sağlayan NMS'siz eğitim için Tutarlı Çift Atamaları kullanır. Bütünsel verimlilik-doğruluk odaklı model tasarımı ile birleştiğinde, hesaplama yedekliliğini azaltmak için hafif sınıflandırma başlığı ve uzamsal-kanal ayrıştırılmış alt örnekleme dahil olmak üzere çeşitli bileşenleri optimize eder.
YOLOv10 hakkında daha fazla bilgi edinin
YOLOv7: Eğitilebilir Ücretsiz Avantajlar Paketi için Optimize Edildi
YOLOv7, 6 Temmuz 2022'de Academia Sinica'dan Chien-Yao Wang, Alexey Bochkovskiy ve Hong-Yuan Mark Liao tarafından yayınlandı ve çıkarım maliyetini artırmadan eğitim sürecini optimize etmeye odaklanıyor. Gradyan yolunu kontrol ederek ağın öğrenme yeteneğini geliştiren Genişletilmiş Verimli Katman Toplama Ağı (E-ELAN)'nı tanıttı.
YOLOv7, çıkarım hızını etkilemeden eğitim sırasında doğruluğu artıran yöntemler olan "Bedava Hediyeler Çantası'ndan" ve parametreleri verimli bir şekilde birleştiren model ölçekleme tekniklerinden büyük ölçüde yararlanır. Oldukça etkili olmakla birlikte, geleneksel NMS işlem sonrası işlemeye olan bağımlılığı, uçtan uca gecikme süresinin genellikle daha yeni NMS içermeyen mimarilerden daha yüksek olduğu anlamına gelir.
YOLOv7 hakkında daha fazla bilgi edinin
Teknik Performans Karşılaştırması
Bu modelleri değerlendirirken, verimlilik ve ham algılama yeteneği ile ilgili belirgin kalıplar ortaya çıkmaktadır. YOLOv10 genellikle daha üstün verimlilik sunar ve YOLOv7'ye kıyasla önemli ölçüde daha az parametre ve daha hızlı çıkarım süreleri ile benzer veya daha iyi mAP (Ortalama Ortalama Hassasiyet) elde eder.
Aşağıdaki tablo, COCO veri kümesindeki temel metrikleri özetlemektedir.
| Model | boyut (piksel) | mAPval 50-95 | Hız CPU ONNX (ms) | Hız T4 TensorRT10 (ms) | parametreler (M) | FLOP'lar (B) |
|---|---|---|---|---|---|---|
| YOLOv10n | 640 | 39.5 | - | 1.56 | 2.3 | 6.7 |
| YOLOv10s | 640 | 46.7 | - | 2.66 | 7.2 | 21.6 |
| YOLOv10m | 640 | 51.3 | - | 5.48 | 15.4 | 59.1 |
| YOLOv10b | 640 | 52.7 | - | 6.54 | 24.4 | 92.0 |
| YOLOv10l | 640 | 53.3 | - | 8.33 | 29.5 | 120.3 |
| YOLOv10x | 640 | 54.4 | - | 12.2 | 56.9 | 160.4 |
| YOLOv7l | 640 | 51.4 | - | 6.84 | 36.9 | 104.7 |
| YOLOv7x | 640 | 53.1 | - | 11.57 | 71.3 | 189.9 |
Verimlilik İçgörüsü
Veriler, YOLOv10'un kaynak kısıtlı ortamlardaki kritik bir avantajını vurgulamaktadır. YOLOv10m, YOLOv7l (%51,4 mAP) ile neredeyse aynı doğruluğu (%51,3 mAP) elde eder, ancak bunu parametrelerin yarısından daha azıyla (15,4M'ye karşı 36,9M) ve önemli ölçüde daha düşük FLOPs ile (59,1B'ye karşı 104,7B) yapar.
Gecikme ve Verim
YOLOv10'un NMS adımını kaldırması, genellikle kalabalık sahnelerde görülen gecikme varyansını önemli ölçüde azaltır. Her milisaniyenin önemli olduğu otonom araçlar veya drone gözetimi gibi uygulamalarda, YOLOv10'un öngörülebilir çıkarım süresi, güvenlik açısından kritik bir avantaj sağlar. YOLOv7, üst düzey GPU'larda verimlilik açısından rekabetçi olmaya devam ediyor, ancak karşılaştırılabilir sonuçlar elde etmek için daha fazla bellek ve işlem gücü tüketiyor.
Kullanım Alanları ve Uygulamalar
Mimari farklılıklar, her model için ideal dağıtım senaryolarını belirler.
YOLOv10 için İdeal Senaryolar
- Uç Yapay Zeka: Düşük parametre sayısı ve FLOP'ları nedeniyle YOLOv10, Raspberry Pi veya NVIDIA Jetson gibi cihazlar için mükemmeldir.
- Gerçek Zamanlı Video Analitiği: Yüksek çıkarım hızı, trafik yönetimi ve perakende analitiği için yüksek FPS işlemeyi destekler.
- Robotik: Daha düşük gecikme süresi, robot navigasyonu ve manipülasyon görevleri için daha hızlı tepki süreleri anlamına gelir.
YOLOv7 için İdeal Senaryolar
- Eski Sistemler: YOLOv7 kod tabanıyla zaten entegre edilmiş projeler, yeniden düzenlemeye gerek kalmadan onu koruyacak kadar kararlı bulabilir.
- Genel Amaçlı Algılama: VRAM'in bol olduğu sunucu tarafı dağıtımları için YOLOv7'nin daha büyük modelleri hala sağlam algılama yetenekleri sunar, ancak YOLO11 gibi daha yeni alternatiflere göre daha az verimlidir.
Ultralytics'in Avantajı
Her iki model de güçlü olsa da, Ultralytics ekosistemini kullanmak, geliştiriciler ve araştırmacılar için belirgin faydalar sunar. Ultralytics çerçevesi, eğitim, doğrulama ve dağıtım için arayüzü standartlaştırarak modeller arasında geçiş yapmayı ve performansı kıyaslamayı önemli ölçüde kolaylaştırır.
Kullanım Kolaylığı ve Eğitim Verimliliği
Derin öğrenmedeki en önemli engellerden biri, eğitim hatlarının karmaşıklığıdır. YOLOv10 ve YOLO11 dahil olmak üzere Ultralytics modelleri, veri artırmayı, hiperparametre ayarlamayı ve dışa aktarmayı otomatik olarak işleyen kolaylaştırılmış bir Python API'si kullanır.
- Basit API: Birkaç satır kodda bir model eğitin.
- Bellek Verimliliği: Ultralytics optimizasyonları genellikle ham uygulamalara kıyasla eğitim sırasında daha düşük CUDA bellek kullanımına neden olur.
- Önceden Eğitilmiş Ağırlıklar: ImageNet ve COCO üzerindeki yüksek kaliteli önceden eğitilmiş modellere erişim, transfer öğrenimini hızlandırır.
Görevler Arası Çok Yönlülük
Modern Ultralytics modelleri, basit sınırlayıcı kutu tespiti ötesine geçer. Aynı çerçeve içinde Örnek Bölütleme, Poz Tahmini, Yönlendirilmiş Nesne Tespiti (OBB) ve Sınıflandırma'yı destekler. Bu çok yönlülük, eski bağımsız depolara göre önemli bir avantajdır.
Kod Örneği: Ultralytics ile YOLOv10 Çalıştırma
Aşağıdaki örnek, önceden eğitilmiş bir YOLOv10 modelini yüklemek ve çıkarım çalıştırmak için Ultralytics API'sini kullanmanın basitliğini göstermektedir. Bu kullanım kolaylığı, genellikle YOLOv7 gibi eski mimariler için gereken daha manuel kurulumla tezat oluşturmaktadır.
from ultralytics import YOLO
# Load a pre-trained YOLOv10n model
model = YOLO("yolov10n.pt")
# Run inference on an image
results = model("path/to/image.jpg")
# Display the results
results[0].show()
Sonuç ve Öneri
Yeni projeler için YOLOv10 veya daha da gelişmiş YOLO11 önerilen seçimlerdir. YOLOv10'un NMS'siz mimarisi, hız ve doğruluğun üstün bir dengesini sunarak, onu modern uç bilişim ihtiyaçları için son derece uyarlanabilir hale getirir. Önceki nesillerin gecikme darboğazlarını giderirken, hesaplama ayak izini azaltır.
Her ne kadar YOLOv7 bilgisayarla görme tarihinde saygın bir kilometre taşı olmaya devam etse de, mimarisi günümüz standartlarına göre daha az verimlidir. En iyi performansı, uzun vadeli bakımı ve dağıtım kolaylığını arayan geliştiriciler, sürekli güncellemeleri ve geniş araç desteği ileUltralytics ekosistemini, görsel yapay zeka çözümleri oluşturmak için en verimli ortam olarak göreceklerdir.
Daha Fazlasını Keşfet
- YOLOv10 - YOLOv8 Karşılaştırması
- YOLOv10 - YOLOv9 Karşılaştırması
- YOLO11: Gerçek Zamanlı Algılamada En Son Gelişme
- Modelleri TensorRT'ye Aktarma Rehberi