DAMO-YOLO ve YOLOv10: Verimli Gerçek Zamanlı Nesne Algılamanın Evrimi
Bilgisayar görüşü alanı, gerçek zamanlı nesne algılama mimarilerinde hızlı bir evrime tanık olmuştur. DAMO-YOLO ve YOLOv10 karşılaştırıldığında, model tasarımında iki farklı felsefe gözlemliyoruz: otomatik mimari arama ve uçtan uca NMS içermeyen optimizasyon. Her ikisi de doğruluk ve hız sınırlarını zorlarken, temel yapıları ve ideal kullanım durumları önemli ölçüde farklılık gösterir.
DAMO-YOLO: Büyük Ölçekte Sinirsel Mimari Arama
Alibaba Group tarafından geliştirilen DAMO-YOLO, yapısal verimlilik için otomatik keşiften yararlanmaya odaklanan güçlü bir dedektör olarak ortaya çıktı.
- Yazarlar: Xianzhe Xu, Yiqi Jiang, Weihua Chen, Yilun Huang, Yuan Zhang ve Xiuyu Sun
- Tarih: 23 Kasım 2022
- Arxiv:2211.15444v2
- GitHub:tinyvision/DAMO-YOLO
Mimari Öne Çıkanlar
DAMO-YOLO, performans ve gecikmeyi dengelemek için büyük ölçüde Sinirsel Mimari Arama (NAS) yöntemine dayanır. MAE-NAS olarak adlandırılan backbone'u, optimal katman derinliğini ve genişliğini bulmak için katı hesaplama bütçeleri altında çok amaçlı evrimsel arama kullanır.
Ölçekler arası özellik birleştirmeyi yönetmek için model, verimli bir RepGFPN (Yeniden Parametrelendirilmiş Genelleştirilmiş Özellik Piramit Ağı) kullanır. Bu 'heavy-neck' tasarımı, karmaşık uzamsal hiyerarşileri çıkarmada özellikle ustadır ve hava görüntüsü analizi gibi senaryolarda faydalı olmasını sağlar. Ek olarak, DAMO-YOLO, nihai tahmin katmanlarının karmaşıklığını büyük ölçüde azaltan ve eğitim sırasında sağlam bir damıtma geliştirme sürecine dayanan, modernleştirilmiş bir algılama başlığı olan ZeroHead'i tanıtır.
Damıtma Eğitimi
DAMO-YOLO genellikle çok aşamalı bir bilgi damıtma süreci kullanır. Daha yüksek mAP (ortalama Hassasiyet Ortalaması) elde eden ancak gerekli GPU hesaplama süresini önemli ölçüde artıran daha küçük "öğrenci" modeli yönlendirmek için daha ağır bir "öğretmen" modelinin eğitilmesini gerektirir.
DAMO-YOLO hakkında daha fazla bilgi edinin
YOLOv10: Uçtan Uca Nesne Algılamada Öncü
Bir buçuk yıl sonra piyasaya sürülen YOLOv10, çıkarım sırasında Non-Maximum Suppression (NMS) ihtiyacını tamamen ortadan kaldırarak bir paradigma değişimi başlattı.
- Yazarlar: Ao Wang, Hui Chen, Lihao Liu, ve diğerleri.
- Kuruluş:Tsinghua Üniversitesi
- Tarih: 23 Mayıs 2024
- Arxiv:2405.14458
- Belgeler:Ultralytics YOLOv10
Mimari Öne Çıkanlar
YOLOv10'un öne çıkan özelliği, NMS içermeyen eğitim için tutarlı ikili atamalarıdır. Geleneksel dedektörler, tek bir nesne için birden fazla örtüşen sınırlayıcı kutu tahmin eder ve kopyaları filtrelemek için NMS gerektirir. Bu son işlem adımı, özellikle kenar cihazlarda bir darboğaz oluşturur. YOLOv10, modelin nesne başına doğal olarak tek, doğru bir sınırlayıcı kutu tahmin etmesine izin vererek bu sorunu çözer.
Yazarlar ayrıca bütünsel bir verimlilik-doğruluk odaklı model tasarımına odaklandılar. Mevcut mimarilerdeki hesaplama fazlalığını dikkatlice analiz ederek, FLOPs ve parametre sayısını azaltmak için backbone ve head'i optimize ettiler. Bu hafif tasarım, YOLOv10'un TensorRT veya OpenVINO gibi formatlara dışa aktarıldığında olağanüstü çıkarım gecikmesi sunmasını sağlar.
YOLOv10 hakkında daha fazla bilgi edinin.
Performans ve Kıyaslamalar
Aşağıdaki tablo, COCO veri kümesi üzerindeki ham performans metriklerini göstermektedir. Her sütundaki en iyi genel değerler kalın olarak vurgulanmıştır.
| 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 |
| 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 |
DAMO-YOLO doğruluk açısından kendi yerini korurken, YOLOv10 sürekli olarak daha düşük gecikme süresi ve önemli ölçüde daha küçük model ağırlıkları sunar. Örneğin, YOLOv10s, DAMO-YOLOs'tan (46.0%) biraz daha yüksek bir mAP (46.7%) elde ederken, parametrelerin yarısından daha azını (7.2M'ye karşı 16.3M) kullanır. Daha düşük bellek gereksinimleri, YOLOv10'u gömülü sistemler için olağanüstü çok yönlü bir seçim haline getirir.
Eğitim Verimliliği ve Kullanılabilirlik
Akademik araştırmadan üretime geçişte, kullanım kolaylığı büyük önem taşır. DAMO-YOLO'nun çok aşamalı damıtma süreci ve karmaşık NAS konfigürasyonları, mühendislik ekipleri için dik öğrenme eğrileri oluşturabilir.
Tersine, YOLOv10, Ultralytics Python SDK'sına tamamen entegre olmasından büyük ölçüde faydalanır. Özel bir model eğitmek, minimum düzeyde standart kod gerektirir. Ultralytics, veri artırma, hiperparametre ayarlama ve deney takibini otomatik olarak yönetir.
from ultralytics import YOLO
# Load a pretrained YOLOv10 nano model
model = YOLO("yolov10n.pt")
# Train on a custom dataset with built-in validation
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)
# Run inference on an image seamlessly
prediction = model("path/to/image.jpg")
prediction[0].show()
Hızlı Prototipleme
Ultralytics ekosistemini kullanmak, geliştiricilerin yalnızca birkaç satır kodla bir prototipten tamamen dışa aktarılmış ONNX modeline geçmesini sağlar ve eski çerçevelerin gerektirdiği karmaşık ortam kurulumlarını atlar.
Gerçek Dünya Kullanım Durumları
- Akıllı Perakendecilik (DAMO-YOLO): DAMO-YOLO'nun doğruluğu, müşteri davranışını analiz eden, GPU'ların bol olduğu ve gerçek zamanlı NMS darboğazlarının yönetilebilir olduğu yüksek yoğunluklu sunucu ortamları için oldukça uygundur.
- Otonom Araçlar (YOLOv10): NMS içermeyen mimari, otonom sürüş güvenlik sistemleri için kritik olan deterministik, öngörülebilir gecikmeyi garanti eder.
- Endüstriyel Otomasyon (YOLOv10): Hızlı hareket eden montaj hatlarındaki kusurları tespit etmek, büyük VRAM tüketmeden gerçek zamanlı çıkarım hızlarını maksimize eden modeller gerektirir, bu da YOLOv10'u kenar dağıtımı için önde gelen bir aday yapar.
Kullanım Durumları ve Öneriler
DAMO-YOLO ve YOLOv10 arasında seçim yapmak, projenizin özel gereksinimlerine, dağıtım kısıtlamalarına ve ekosistem tercihlerinize bağlıdır.
Ne Zaman DAMO-YOLO Seçmeli
DAMO-YOLO şunlar için güçlü bir seçimdir:
- Yüksek Verimli Video Analizi: Batch-1 veriminin birincil metrik olduğu sabit NVIDIA GPU altyapısında yüksek FPS video akışlarını işleme.
- Endüstriyel Üretim Hatları: Montaj hatlarında gerçek zamanlı kalite denetimi gibi özel donanımlarda katı GPU gecikme kısıtlamaları olan senaryolar.
- Sinirsel Mimari Arama Araştırması: Otomatik mimari aramanın (MAE-NAS) ve verimli yeniden parametrelendirilmiş backboneların algılama performansı üzerindeki etkilerini inceleme.
YOLOv10 Ne Zaman Tercih Edilmeli?
YOLOv10 şunlar için önerilir:
- NMS-Serbest Gerçek Zamanlı Algılama: Non-Maximum Suppression olmadan uçtan uca algılamadan faydalanan, dağıtım karmaşıklığını azaltan uygulamalar.
- Dengeli Hız-Doğruluk Dengelemeleri: Çeşitli model ölçeklerinde çıkarım hızı ve algılama doğruluğu arasında güçlü bir denge gerektiren projeler.
- Tutarlı Gecikme Süreli Uygulamalar: Tahmin edilebilir çıkarım sürelerinin kritik olduğu dağıtım senaryoları, örneğin robotik veya otonom sistemler.
Ultralytics (YOLO26) Ne Zaman Seçilmeli
Çoğu yeni proje için Ultralytics YOLO26, performans ve geliştirici deneyiminin en iyi kombinasyonunu sunar:
- NMS-Free Uç Dağıtım: Non-Maximum Suppression (NMS) son işlem karmaşıklığı olmadan tutarlı, düşük gecikmeli çıkarım gerektiren uygulamalar.
- Yalnızca CPU Ortamları: Özel GPU hızlandırması olmayan cihazlarda, YOLO26'nın %43'e kadar daha hızlı CPU çıkarımı belirleyici bir avantaj sağlar.
- Küçük Nesne Algılama: ProgLoss ve STAL'ın küçük nesneler üzerindeki doğruluğu önemli ölçüde artırdığı hava drone görüntüleri veya IoT sensör analizi gibi zorlu senaryolar.
Yeni Nesil: Ultralytics YOLO26 Sahneye Çıkıyor
YOLOv10, NMS-serbest algılama için zemin hazırlasa da, teknoloji hızla gelişti. Modern uygulamalar için Ultralytics YOLO26 modeli, önceki nesillerin en iyilerini alıp üretim için iyileştirerek eşsiz performans ve kullanılabilirlik sunar.
YOLO26, uç cihazlarda daha basit dağıtım hatları için NMS son işleme adımını ortadan kaldıran, tamamen yerel uçtan uca bir tasarıma sahiptir. Ayrıca, Distribution Focal Loss (DFL) kaldırılması, düşük güçlü uç yapay zeka donanımlarıyla uyumluluğu önemli ölçüde artırmıştır.
Eğitim tarafında, YOLO26, Büyük Dil Modeli (LLM) eğitim tekniklerinden esinlenen hibrit bir MuSGD Optimizer sunar. Bu, daha kararlı eğitim ve daha hızlı yakınsama sağlar. ProgLoss + STAL kayıp fonksiyonlarıyla birleştiğinde, YOLO26 küçük nesne tanımada dikkat çekici iyileşmeler gösterir; bu da yaban hayatı koruma ve drone operasyonları için kritik bir özelliktir.
En önemlisi, YOLO26 sadece bir nesne algılayıcı değildir. Residual Log-Likelihood Estimation (RLE) kullanarak Örnek Segmentasyon, Poz Tahmini ve Yönlü Sınırlayıcı Kutular (OBB) için özel açı kayıplarını yerel olarak destekleyerek genel olarak göreve özel iyileştirmeler sunar. Öncüllerine göre %43'e kadar daha hızlı CPU çıkarımı ile çevik mühendislik ekipleri için kesin bir tercihtir.
YOLO26 modellerinin merkezi yönetimi, etiketlemesi ve bulut eğitimi için Ultralytics Platformu, tüm bilgisayar görüşü yaşam döngüsünü kolaylaştıran sezgisel bir arayüz sunar.
Diğer güncel gelişmeleri keşfetmek isteyen geliştiriciler, farklı mimari çözümler gerektiren senaryolar için Ultralytics YOLO11 veya transformatör tabanlı RT-DETR çerçevesini de değerlendirebilirler.