DAMO-YOLO ve YOLOv9#
Gerçek zamanlı nesne algılama dünyası baş döndürücü bir hızla gelişmeye devam ediyor. Mühendislik ekipleri ve araştırmacılar doğruluk, çıkarım hızı ve hesaplama verimliliği arasında mükemmel dengeyi yakalamaya çalışırken araştırma topluluğundan iki dikkat çekici mimari öne çıktı: DAMO-YOLO ve YOLOv9. Her iki model de bilgisayarlı görüde mümkün olanın sınırlarını zorlamayı amaçlayan önemli mimari yenilikler sunuyor.
Bu ayrıntılı teknik kılavuz, bu iki modeli benzersiz mimari yaklaşımlarını, eğitim yöntemlerini ve gerçek dünyadaki dağıtım yeteneklerini karşılaştırarak derinlemesine analiz ediyor. Ayrıca daha geniş yazılım ekosisteminin modern AI geliştirmedeki kritik rolünü inceleyecek, Ultralytics Platform gibi entegre platformların ve YOLO26 gibi yeni nesil modellerin avantajlarını vurgulayacağız.
Yönetici Özeti: Doğru Mimarinin Seçilmesi#
Her iki model de derin öğrenme araştırmalarında önemli kilometre taşlarını temsil etse de biraz farklı dağıtım felsefelerine hitap ediyor.
DAMO-YOLO, belirli performans profillerini en üst düzeye çıkarmak için kapsamlı Neural Architecture Search (NAS) kullanımından yararlanılabilen ortamlarda öne çıkarak özelleştirilmiş uç dağıtımı için ilgi çekici bir çalışma sunuyor. Buna karşılık YOLOv9, derin öğrenmedeki bilgi darboğazlarını çözmeye yoğunlaşıyor ve son derece yüksek parametre verimliliği sağlıyor.
Bununla birlikte üretime hazır dağıtımlar için mühendislik ekipleri sürekli olarak birleşik Ultralytics ekosisteminden yararlanılmasını öneriyor. Yeni projeler için en yeni YOLO26 modeli, en iyi iki özelliği bir araya getiriyor: son teknoloji doğruluğu ve karmaşık son işleme gereksinimini ortadan kaldıran yerel uçtan uca tasarım.
DAMO-YOLO ve YOLOv9 güçlü akademik modeller olsa da bunları üretimde dağıtmak çoğu zaman kapsamlı özel mühendislik çalışmaları gerektirir. Ultralytics YOLO26 kullanmak, sade ve bakımı kolay bir API ile en gelişmiş performansa erişim sağlar.
Teknik Özellikler ve Yazarlık#
Bu modellerin kökenlerini ve geliştirme odaklarını anlamak, kendilerine özgü güçlü yönleri hakkında önemli bir bağlam sağlar.
DAMO-YOLO#
Alibaba Group'taki araştırmacılar tarafından geliştirilen DAMO-YOLO, otomatik mimari oluşturmaya ve verimli özellik birleştirmeye yoğunlaşır.
- Yazarlar: Xianzhe Xu, Yiqi Jiang, Weihua Chen, Yilun Huang, Yuan Zhang ve Xiuyu Sun
- Kuruluş: Alibaba Group
- Yayın Tarihi: 23 Kasım 2022
- Arxiv Makalesi: DAMO-YOLO Araştırma Makalesi
- Resmi GitHub: tinyvision/DAMO-YOLO Deposu
- Belgeler: DAMO-YOLO README
DAMO-YOLO hakkında daha fazla bilgi edin
YOLOv9#
Derin evrişimli ağlardaki bilgi kaybına çözüm olarak sunulan YOLOv9, eğitim sırasında gradyanların korunmasının teorik sınırlarını zorluyor.
- Yazarlar: Chien-Yao Wang ve Hong-Yuan Mark Liao
- Kuruluş: Institute of Information Science, Academia Sinica, Taiwan
- Yayın Tarihi: 21 Şubat 2024
- Arxiv Makalesi: YOLOv9 Araştırma Makalesi
- Resmi GitHub: WongKinYiu/yolov9 Deposu
- Belgeler: YOLOv9 Ultralytics Belgeleri
YOLOv9 hakkında daha fazla bilgi edin
Mimari Yenilikler#
DAMO-YOLO: Neural Architecture Search ile Geliştirildi#
DAMO-YOLO, yoğun şekilde özelleştirilmiş ve makine tarafından oluşturulmuş bileşenleriyle farklılaşır. Omurgası, özellikle farklı donanımlarda düşük gecikmeli çıkarımı hedefleyen Neural Architecture Search (NAS) kullanılarak oluşturulur.
Mimari, hesaplama yükünü aşırı artırmadan çok ölçekli nesne algılamayı geliştiren, özellik birleştirme için verimli bir RepGFPN (Yeniden Parametrelendirilmiş Genelleştirilmiş Özellik Piramidi Ağı) kullanır. Ayrıca algılama başlığını sadeleştirmek için ZeroHead tasarımından yararlanır ve eğitim sırasında gelişmiş bir damıtma süreciyle birlikte etiket ataması için AlignedOTA kullanır. Bu teknikler hızlı çıkarım sağlasa da çok aşamalı damıtma süreci genellikle yüksek VRAM ve uzun eğitim süreleri gerektirir.
YOLOv9: Bilgi Darboğazını Çözmek#
YOLOv9, derin ağlardaki temel bir sorunu ele alır: giriş verilerindeki bilgilerin ardışık katmanlardan geçerken kademeli olarak kaybolması.
Buna karşı koymak için yazarlar, derin katmanlar için kritik ayrıntıları korumak ve ağırlık güncellemeleri için son derece güvenilir gradyanlar üretmek üzere tasarlanmış yardımcı bir denetim çerçevesi olan Programmable Gradient Information (PGI) yaklaşımını sundu. PGI'ye, GELAN (Genelleştirilmiş Verimli Katman Birleştirme Ağı) mimarisi eşlik eder. GELAN, CSPNet ve ELAN'ın güçlü yönlerini birleştirerek parametre verimliliğini optimize eder, bilgi akışını en üst düzeye çıkarırken Floating Point Operations (FLOPs) değerini kesin biçimde en aza indirir.
Performans Analizi ve Metrikler#
Performans değerlendirildiğinde her iki model de COCO gibi standart kıyaslamalarda güçlü mean Average Precision (mAP) değerleri gösterir. YOLOv9, eşdeğer model boyutlarında daha yüksek mutlak doğruluk elde eder ve zorlu veri kümelerinde yüksek aslına uygunluğu korumak için PGI mimarisinden yararlanır.
| Model | boyut (piksel) | mAPval 50-95 | Hız CPU ONNX (ms) | Hız T4 TensorRT10 (ms) | parametre (M) | FLOPs (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 |
| YOLOv9t | 640 | 38.3 | - | 2.3 | 2.0 | 7.7 |
| YOLOv9s | 640 | 46.8 | - | 3.54 | 7.1 | 26.4 |
| YOLOv9m | 640 | 51.4 | - | 6.43 | 20.0 | 76.3 |
| YOLOv9c | 640 | 53.0 | - | 7.16 | 25.3 | 102.1 |
| YOLOv9e | 640 | 55.6 | - | 16.77 | 57.3 | 189.0 |
Yukarıda gösterildiği gibi YOLOv9-E en yüksek doğruluğa ulaşırken daha küçük DAMO-YOLO ve YOLOv9 varyantları TensorRT optimizasyonları sayesinde son derece rekabetçi çıkarım hızlarını korur.
Eğitim Yöntemleri ve Ekosistem#
Ham mimari önemli olsa da bir modelin ekosisteminin belirlediği kullanılabilirlik ve eğitim verimliliği, gerçek dünya uygulamaları için büyük önem taşır.
DAMO-YOLO'nun bilgi damıtımına dayanması, bilgiyi hedefteki "öğrenci" modele aktarmadan önce çoğu zaman hantal bir "öğretmen" modelinin eğitilmesini gerektirir. Bu geleneksel araştırma yaklaşımı bellek gereksinimlerini ve eğitim döngüsü sürelerini önemli ölçüde artırır. Benzer şekilde, özgün YOLOv9 deposu çevik geliştirmeyi yavaşlatabilen karmaşık yapılandırma dosyalarında gezinmeyi gerektirir.
Buna karşılık modelleri Ultralytics Platformuna entegre etmek geliştirici deneyimini tamamen dönüştürür. Ultralytics Python paketi, hazır kod yükünü soyutlayarak ekiplerin veri artırma, hiperparametre ayarlama ve model dışa aktarma işlemlerini zahmetsizce gerçekleştirmesine olanak tanır.
Gerçek Dünya Uygulamaları ve Kullanım Alanları#
Farklı mimariler, kaynak gereksinimlerine ve doğruluk profillerine bağlı olarak doğal biçimde belirli sektörlerde öne çıkar.
- Edge AI'da DAMO-YOLO: NAS optimize edilmiş omurgaları sayesinde DAMO-YOLO, temel üretim kalite kontrolü gibi özel ASIC dağıtımlarında donanıma özgü yeniden parametrelendirmenin katı bir zorunluluk olduğu gömülü sistemlerde sıklıkla incelenir.
- Hassas Analitikte YOLOv9: Yüksek parametre verimliliği ve PGI destekli gradyan koruması sayesinde YOLOv9, hava görüntülerini analiz etme veya kalabalık perakende ortamlarında küçük nesneleri izleme gibi yoğun nesne algılama senaryoları için mükemmeldir.
Kullanım Alanları ve Öneriler#
DAMO-YOLO ve YOLOv9 arasındaki seçim, özel proje gereksinimlerine, dağıtım kısıtlamalarına ve ekosistem tercihlerine bağlıdır.
DAMO-YOLO Ne Zaman Seçilmeli?#
DAMO-YOLO şu durumlar için güçlü bir seçenektir:
- Yüksek İş Hacimli Video Analitiği: Batch-1 iş hacminin temel ölçüt olduğu sabit NVIDIA GPU altyapısında yüksek FPS'li video akışlarını işleme.
- Endüstriyel Üretim Hatları: Montaj hatlarında gerçek zamanlı kalite denetimi gibi özel donanım üzerinde katı GPU gecikme kısıtlarının bulunduğu senaryolar.
- Sinir Ağı Mimarisi Araması Araştırmaları: Otomatik mimari aramasının (MAE-NAS) ve verimli yeniden parametrelendirilmiş omurgaların algılama performansı üzerindeki etkilerini inceleme.
YOLOv9 Ne Zaman Seçilmeli?#
YOLOv9 şu durumlar için önerilir:
- Bilgi Darboğazı Araştırması: Programmable Gradient Information (PGI) ve Generalized Efficient Layer Aggregation Network (GELAN) mimarilerini inceleyen akademik projeler.
- Gradyan Akışı Optimizasyonu Çalışmaları: Eğitim sırasında derin ağ katmanlarındaki bilgi kaybını anlamaya ve azaltmaya odaklanan araştırmalar.
- Yüksek Doğruluklu Algılama Karşılaştırmaları: YOLOv9'un güçlü COCO benchmark performansının mimari karşılaştırmalar için referans noktası olarak gerekli olduğu senaryolar.
Ultralytics (YOLO26) Ne Zaman Seçilmeli?#
Yeni projelerin çoğu için Ultralytics YOLO26, performans ve geliştirici deneyiminin en iyi birleşimini sunar:
- NMS'siz Uç Dağıtımı: Maksimum Olmayan Bastırma son işleme karmaşıklığı olmadan tutarlı ve düşük gecikmeli çıkarım gerektiren uygulamalar.
- Yalnızca CPU Kullanılan Ortamlar: Özel GPU hızlandırması olmayan ve YOLO26'nın %43'e varan daha hızlı CPU çıkarımının belirleyici bir avantaj sağladığı cihazlar.
- Küçük Nesne Algılama: ProgLoss ve STAL'ın küçük nesnelerde doğruluğu önemli ölçüde artırdığı hava drone görüntüleri veya IoT sensör analizi gibi zorlu senaryolar.
Ultralytics Avantajı: YOLO26'ya Geçiş#
Eski mimarileri karşılaştıran kullanıcılar için modern Ultralytics ekosistemine, özellikle en yeni YOLO26 modellerine geçiş, benzersiz bir avantaj sağlar.
YOLO26, Uçtan Uca NMS'siz Tasarımı sayesinde dağıtım ortamını temelden değiştirir. Non-Maximum Suppression (NMS) son işlemesini tamamen ortadan kaldırarak daha hızlı ve çok daha sade dağıtım mimarileri sunar. Distribution Focal Loss (DFL) bileşeninin kaldırılmasıyla birlikte YOLO26, uç ve düşük güç tüketimli cihazlarla daha üstün uyumluluk sağlar.
Ayrıca YOLO26, LLM eğitimindeki yeniliklerden esinlenen Stochastic Gradient Descent ve Muon optimizasyonlarının hibriti olan devrim niteliğindeki MuSGD Optimizer'ı içerir. Bu yaklaşım, Transformer ağırlıklı alternatiflere kıyasla dikkat çekici ölçüde düşük bellek kullanımı sağlarken son derece kararlı bir eğitim yakınsaması sunar.
Sezgisel Ultralytics API sayesinde, yerleşik deney takibiyle son teknoloji bir YOLO26 modelini yalnızca birkaç satır Python koduyla eğitebilirsin.
from ultralytics import YOLO
# Load the latest NMS-free YOLO26 model
model = YOLO("yolo26n.pt")
# Train on your custom dataset efficiently
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)
# Export the trained model to ONNX format
model.export(format="onnx")Gelişmiş örnek bölütleme, son derece hassas poz tahmini veya standart BBox algılama gerektirmen fark etmeksizin Ultralytics çerçevesinin esnekliği, ekibinin derin öğrenme ortamlarını yapılandırmaya daha az, güçlü AI çözümlerini dağıtmaya ise daha fazla zaman ayırmasını sağlar. Geliştirilmiş küçük nesne tanıma için ProgLoss + STAL gibi özel görev iyileştirmeleriyle YOLO26, yeni nesil görüntü uygulamaları için en üstün seçenek olarak öne çıkar.