YOLOv7 ve YOLOv10#
Bilgisayarlı görü alanı son birkaç yılda dikkate değer ilerlemeler kaydetti; YOLO (You Only Look Once) model ailesi gerçek zamanlı nesne algılamada öncü oldu. Bilgisayarlı görü projelerin için doğru mimariyi seçmek, mevcut seçenekleri derinlemesine anlamayı gerektirir. Bu kapsamlı teknik karşılaştırmada, iki dönüm noktası niteliğindeki mimari arasındaki temel farklılıkları inceleyeceğiz: YOLOv7 ve YOLOv10.
Modellere Giriş#
Her iki model de yapay zekâ tarihinde önemli dönüm noktalarını temsil ediyor, ancak nesne algılama sorunlarını çözmek için temelden farklı yaklaşımlar benimsiyor.
YOLOv7: Ücretsiz Avantajlar Çantasının Öncüsü#
6 Temmuz 2022'de Academia Sinica Bilgi Bilimleri Enstitüsü araştırmacıları Chien-Yao Wang, Alexey Bochkovskiy ve Hong-Yuan Mark Liao tarafından yayımlanan YOLOv7, sinir ağlarının nasıl optimize edildiği konusunda bir paradigma değişikliği başlattı. Akademik makalesinde ayrıntıları verilen ve resmî GitHub deposunda barındırılan özgün araştırma; mimari yeniden parametrelendirmeye ve eğitilebilir bir "ücretsiz avantajlar paketi" yaklaşımına yoğun biçimde odaklandı.
YOLOv7, özgün gradyan yolunu bozmadan ağın çeşitli özellikleri öğrenmesine rehberlik etmek için genişletilmiş verimli katman toplama ağı (E-ELAN) kullanıyor. Bu özellikleriyle akademik araştırma kıyaslamaları ve standart üst düzey GPU'lara büyük ölçüde bağımlı sistemler için sağlam bir seçenek sunuyor.
YOLOv7 hakkında daha fazla bilgi edin
YOLOv10: Gerçek Zamanlı Uçtan Uca Algılama#
Tsinghua Üniversitesi'nden Ao Wang ve ekibi tarafından geliştirilen YOLOv10, 23 Mayıs 2024'te yayımlandı. arXiv yayınında ve Tsinghua GitHub deposunda ayrıntıları açıklandığı üzere bu model, nesne algılamadaki uzun süredir devam eden bir darboğazı ortadan kaldırıyor: Maksimum Olmayan Bastırma (NMS).
YOLOv10, NMS içermeyen eğitim için tutarlı ikili atamalar sunarak son işleme işlem hattını temelden değiştirdi. Bütünsel, verimlilik ve doğruluğu temel alan bir model tasarım stratejisi benimseyen YOLOv10, hesaplama tekrarlarını azaltıyor. Böylece son derece düşük gecikme gerektiren uç cihazlara özel olarak uyarlanmış bir mimari ortaya çıkıyor.
YOLOv10 hakkında daha fazla bilgi edin
Performans ve Metrik Karşılaştırması#
Model performansını değerlendirirken doğruluk, hız ve hesaplama yükü arasındaki ödünleşimleri incelemek kritik önem taşır. Aşağıdaki tablo, bu modellerin farklı boyutlarının birbiriyle nasıl karşılaştırıldığını gösteriyor.
| Model | boyut (piksel) | mAPval 50-95 | Hız CPU ONNX (ms) | Hız T4 TensorRT10 (ms) | parametre (M) | FLOPs (B) |
|---|---|---|---|---|---|---|
| YOLOv7l | 640 | 51.4 | - | 6.84 | 36.9 | 104.7 |
| YOLOv7x | 640 | 53.1 | - | 11.57 | 71.3 | 189.9 |
| YOLOv10n | 640 | 38.5 | - | 1.84 | 2.3 | 6.7 |
| YOLOv10s | 640 | 46.3 | - | 2.49 | 7.2 | 21.6 |
| YOLOv10m | 640 | 51.1 | - | 4.74 | 15.4 | 59.1 |
| YOLOv10b | 640 | 52.5 | - | 5.74 | 19.1 | 92.0 |
| YOLOv10l | 640 | 53.2 | - | 7.28 | 24.4 | 120.3 |
| YOLOv10x | 640 | 54.4 | - | 10.70 | 29.5 | 160.4 |
Ödünleşimlerin Analizi#
Yukarıdaki ölçütler, nesiller arasındaki belirgin farkı ortaya koyuyor. YOLOv7x %53,1 gibi güçlü bir mAPval değerine ulaşırken 71,3M parametre ve 189,9B FLOP gerektiriyor. Buna karşılık YOLOv10l, doğrulukta bu değeri aşıyor (%53,2 mAP); üstelik yaklaşık üçte bir kadar parametreye (24,4M) ve önemli ölçüde daha az FLOP'a (120,3B) ihtiyaç duyuyor. Ayrıca yüksek düzeyde optimize edilmiş YOLOv10n, 1,84 ms gibi şaşırtıcı bir çıkarım hızına ulaşarak gerçek zamanlı video analitiği ve mobil uygulamalar için ideal hâle geliyor.
Gerçek Dünya Kullanım Senaryoları#
Bu modeller arasındaki mimari farklılıklar, her model için en uygun kullanım alanlarını belirliyor.
YOLOv7 Ne Zaman Kullanılmalı#
Zengin özellik temsili sayesinde YOLOv7, son derece karmaşık ortamlarda öne çıkıyor. Yoğun kent bölgelerinde trafik akışını izleme, uydu görüntülerini analiz etme veya ağır üretim otomasyonunda kusurları belirleme gibi kullanım alanları, YOLOv7'nin sağlam yapısal yeniden parametrelendirmesinden yararlanıyor. Ayrıca belirli PyTorch 1.12 işlem hatlarıyla derinlemesine bütünleşmiş eski sistemlerde de sıklıkla tercih ediliyor.
YOLOv10 Ne Zaman Kullanılmalı#
YOLOv10'un NMS içermeyen hafif tasarımı, kısıtlı ortamlarda öne çıkıyor. NVIDIA Jetson Nano veya Raspberry Pi gibi uç bilişim cihazlarında kullanılması önemle tavsiye edilir. Düşük gecikmeli performansı, spor analitiği, otonom drone navigasyonu ve konveyör bantlarında yüksek hızlı robotik ayıklama gibi hızlı uygulamalar için idealdir.
Ultralytics Ekosisteminin Avantajı#
Her iki modelin de güçlü akademik kökleri olsa da YOLOv10'un gerçek potansiyeli, birleşik Ultralytics Platformu içinde kullanıldığında ortaya çıkar. Bilgisayarlı görü modellerini sıfırdan geliştirmek son derece zordur; ancak Ultralytics ekosistemi, makine öğrenimi mühendislerine eşsiz bir deneyim sunar.
- Kullanım Kolaylığı: Ultralytics Python API'si birleşik bir arayüz sunuyor. Tipik akademik depolarla ilişkili karmaşık bağımlılık sorunlarından kaçınarak modelleri yalnızca birkaç satır kodla eğitebilir, doğrulayabilir ve dışa aktarabilirsin.
- İyi Bakımı Yapılan Ekosistem: Ultralytics, temel kodun etkin biçimde geliştirildiğini garanti ediyor. Kullanıcılar günlük kaydı için Weights & Biases veya hızlı web demoları için Gradio gibi popüler makine öğrenimi araçlarıyla sorunsuz bütünleşmelerden yararlanıyor.
- Bellek Gereksinimleri: Transformer tabanlı nesne algılayıcılar eğitim sırasında çoğu zaman çok büyük miktarda CUDA belleği tüketir. Buna karşılık Ultralytics YOLO modelleri çok daha az bellek gerektirerek tüketici sınıfı donanımlarda çok daha büyük toplu iş boyutlarına olanak tanır.
- Çok yönlülük: Ultralytics işlem hattı standart sınırlayıcı kutularla sınırlı değildir. Poz kestirimini, örnek segmentasyonunu ve YOLO11 ile YOLOv8 gibi desteklenen model ailelerinde yönlendirilmiş sınırlayıcı kutuları sorunsuz biçimde destekler.
Kolaylaştırılmış Eğitim Örneği#
Ultralytics ile bir eğitim işlem hattı çalıştırmak son derece kolaydır. YOLOv10'un NMS içermeyen hızından veya desteklenen başka bir modelden yararlanıyor olsan da söz dizimi değişmez (Ultralytics paketinin YOLOv7 eğitimini desteklemediğini unutma):
from ultralytics import YOLO
# Tercih edilen modeli yükle (ör. YOLOv10 Nano)
model = YOLO("yolov10n.pt")
# Modeli COCO8 veri kümesinde eğit
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)
# Örnek bir görüntü üzerinde çıkarım tahmini çalıştır
predictions = model.predict("https://ultralytics.com/images/bus.jpg")
# ONNX gibi uç cihazlara uygun bir biçime aktar
model.export(format="onnx")Kullanım Alanları ve Öneriler#
YOLOv7 ile YOLOv10 arasında seçim yapmak, projenin özel gereksinimlerine, dağıtım kısıtlarına ve ekosistem tercihlerine bağlıdır.
YOLOv7 Ne Zaman Seçilmeli#
YOLOv7 şu durumlar için güçlü bir seçenektir:
- Akademik Kıyaslama: 2022 dönemi son teknoloji sonuçlarını yeniden üretmek veya E-ELAN ile eğitilebilir ücretsiz avantajlar paketi tekniklerinin etkilerini incelemek.
- Yeniden Parametreleştirme Araştırması: Planlanan yeniden parametreleştirilmiş evrişimleri ve bileşik model ölçeklendirme stratejilerini araştırmak.
- Mevcut Özel İşlem Hatları: YOLOv7'nin belirli mimarisi etrafında oluşturulmuş ve kolayca yeniden düzenlenemeyen, kapsamlı biçimde özelleştirilmiş işlem hatlarına sahip projeler.
YOLOv10'u Ne Zaman Seçmeli?#
YOLOv10 şu durumlarda önerilir:
- NMS Olmadan Gerçek Zamanlı Algılama: Maksimum Olmayan Bastırma olmadan uçtan uca algılamadan yararlanan ve dağıtım karmaşıklığını azaltan uygulamalar.
- Hız ve Doğruluk Arasında Dengeli Ödünleşimler: Çeşitli model ölçeklerinde çıkarım hızı ile algılama doğruluğu arasında güçlü bir denge gerektiren projeler.
- Tutarlı Gecikme Gerektiren Uygulamalar: Robotik veya otonom sistemler gibi öngörülebilir çıkarım sürelerinin kritik olduğu dağıtım senaryoları.
Ultralytics'i (YOLO26) Ne Zaman Seçmeli#
Yeni projelerin çoğu için Ultralytics YOLO26, performans ve geliştirici deneyiminin en iyi bileşimini sunar:
- NMS Olmadan Uç Dağıtımı: Maksimum Olmayan Bastırma son işleminin karmaşıklığı olmadan tutarlı ve düşük gecikmeli çıkarım gerektiren uygulamalar.
- Yalnızca CPU Kullanılan Ortamlar: YOLO26'nın CPU'da %43'e varan daha hızlı çıkarımının belirleyici bir avantaj sağladığı, özel GPU hızlandırması bulunmayan cihazlar.
- Küçük Nesne Algılama: ProgLoss ve STAL'ın çok küçük nesnelerde doğruluğu önemli ölçüde artırdığı havadan drone görüntüleri veya IoT sensör analizi gibi zorlu senaryolar.
Gelecek: YOLO26 ile Tanış#
YOLOv7 ve YOLOv10 etkileyici dönüm noktaları olsa da yapay zekânın sınırları sürekli ilerliyor. Ocak 2026'da yayımlanan Ultralytics YOLO26, uç ve bulut dağıtım senaryolarının tümünde verimlilik ve doğruluk açısından tartışmasız yeni standarttır.
Bugün yeni bir bilgisayarlı görü projesine başlıyorsan önerilen mimari YOLO26'dır. Birkaç çığır açıcı yeniliği bünyesine katarak önceki modellerin mirasını ileri taşıyor:
- Uçtan Uca, NMS İçermeyen Tasarım: YOLOv10'dan ilham alan YOLO26'nın isteğe bağlı bire bir başlığı (
nms=False), NMS son işlemesini atlayarak belirleyici gerçek zamanlı robotik için son derece düşük gecikmeli çıkarım sağlıyor. - CPU Çıkarımında %43'e Varan Hız Artışı: Dağılım Odaklı Kayıp (DFL) modülünü stratejik olarak kaldıran YOLO26, GPU içermeyen uç bilişim donanımındaki çalışmayı önemli ölçüde hızlandırıyor ve IoT cihazları için güçlü bir çözüm sunuyor.
- MuSGD Optimizasyon Algoritması: Büyük dil modeli eğitimindeki güncel yeniliklerden ilham alan YOLO26, SGD ve Muon'un hibritini bünyesine katarak eğitim yollarını kararlı hâle getiriyor ve daha hızlı yakınsamayı garanti ediyor.
- ProgLoss + STAL: Bu gelişmiş kayıp fonksiyonları, küçük nesneleri tanımada kayda değer iyileşmeler sağlayarak eski YOLO nesillerinin tarihsel bir zayıflığını gideriyor.
- Eşsiz Çok Yönlülük: YOLO26; poz takibi için Artık Log-Olabilirlik Kestirimi (RLE) ve hava görüntülerinde hassas OBB algılama için özel açı kayıpları gibi yerel, göreve özgü optimizasyonlar içeriyor.
Hız, doğruluk ve dağıtım kolaylığı arasında en iyi dengeyi arayan mühendisler için eski modellerden YOLO26'ya geçiş, anında ve ölçülebilir bir rekabet avantajı sağlar.