Ultralytics YOLO27:

YOLOv4: Yüksek Hızlı ve Hassas Nesne Algılama#

Ultralytics'in YOLOv4 dokümantasyon sayfasına hoş geldin. YOLOv4, 2020 yılında Alexey Bochkovskiy tarafından kullanıma sunulan, son teknoloji ürünü gerçek zamanlı bir nesne algılayıcıdır ve https://github.com/AlexeyAB/darknet adresinde bulunur. YOLOv4, hız ve doğruluk arasında en uygun dengeyi sağlamak üzere tasarlanmıştır; bu da onu birçok uygulama için mükemmel bir seçenek hâline getirir.

YOLOv4 mimari diyagramı YOLOv4 mimari diyagramı. YOLOv4'ün omurga, boyun ve baş bileşenlerini ve gerçek zamanlı en iyi nesne algılama için birbirine bağlı katmanlarını içeren karmaşık ağ tasarımını gösterir.

Giriş#

YOLOv4, You Only Look Once sürüm 4 anlamına gelir. YOLOv3 gibi önceki YOLO sürümlerinin ve diğer nesne algılama modellerinin sınırlamalarını gidermek üzere geliştirilmiş gerçek zamanlı bir nesne algılama modelidir. Diğer evrişimli sinir ağı (CNN) tabanlı nesne algılayıcıların aksine YOLOv4, yalnızca öneri sistemleri için değil, aynı zamanda bağımsız süreç yönetimi ve insan girdisinin azaltılması için de kullanılabilir. Geleneksel grafik işlem birimleri (GPUs) üzerinde çalışması, uygun maliyetle yaygın kullanım olanağı sağlar ve eğitim için yalnızca tek bir GPU gerektirirken geleneksel bir GPU üzerinde gerçek zamanlı çalışacak şekilde tasarlanmıştır.

Mimari#

YOLOv4, performansını optimize etmek için birlikte çalışan çeşitli yenilikçi özelliklerden yararlanır. Bunlar arasında Weighted-Residual-Connections (WRC), Cross-Stage-Partial-connections (CSP), Cross mini-Batch Normalization (CmBN), Self-adversarial-training (SAT), Mish-activation, Mosaic veri artırma, DropBlock düzenlileştirmesi ve CIoU kaybı bulunur. Bu özellikler, son teknoloji sonuçlar elde etmek üzere bir araya getirilmiştir.

Tipik bir nesne algılama modeli; girdi, omurga, boyun ve baş olmak üzere çeşitli parçalardan oluşur. YOLOv4'ün omurgası ImageNet üzerinde önceden eğitilir ve nesnelerin sınıflarını ve sınırlayıcı kutularını tahmin etmek için kullanılır. Omurga; VGG, ResNet, ResNeXt veya DenseNet gibi çeşitli modellerden biri olabilir. Algılayıcının boyun kısmı, farklı aşamalardaki özellik haritalarını toplamak için kullanılır ve genellikle birkaç aşağıdan yukarıya ve birkaç yukarıdan aşağıya yol içerir. Baş kısmı ise son nesne algılama ve sınıflandırmalarını gerçekleştirmek için kullanılır.

Ücretsiz Avantajlar Paketi#

YOLOv4, çıkarım maliyetini artırmadan eğitim sırasında modelin doğruluğunu geliştiren teknikler olan "ücretsiz avantajlar paketi" olarak bilinen yöntemlerden de yararlanır. Veri artırma, nesne algılamada kullanılan ve modelin sağlamlığını geliştirmek için girdi görüntülerinin çeşitliliğini artıran yaygın bir ücretsiz avantajlar paketi tekniğidir. Veri artırma örnekleri arasında fotometrik bozulmalar (bir görüntünün parlaklığını, kontrastını, tonunu, doygunluğunu ve gürültüsünü ayarlama) ve geometrik bozulmalar (rastgele ölçekleme, kırpma, çevirme ve döndürme ekleme) bulunur. Bu teknikler, modelin farklı görüntü türlerine daha iyi genelleme yapmasına yardımcı olur.

Özellikler ve Performans#

YOLOv4, nesne algılamada en uygun hız ve doğruluk için tasarlanmıştır. YOLOv4 mimarisi, omurga olarak CSPDarknet53, boyun olarak PANet ve algılama başı olarak YOLOv3 içerir. Bu tasarım, YOLOv4'ün nesne algılamayı etkileyici bir hızda gerçekleştirmesini sağlayarak onu gerçek zamanlı uygulamalar için uygun hâle getirir. YOLOv4, COCO gibi nesne algılama karşılaştırmalarında son teknoloji sonuçlara ulaşarak doğruluk açısından da öne çıkar.

YOLOv5 ve YOLOv7 gibi YOLO ailesindeki diğer modellerle karşılaştırıldığında YOLOv4, hız ve doğruluk arasındaki dengede güçlü konumunu korur. Daha yeni modeller belirli avantajlar sunabilse de YOLOv4'ün mimari yenilikleri, gerçek zamanlı performans gerektiren birçok uygulama için onu hâlâ geçerli kılmaktadır.

Kullanım Örnekleri#

YOLOv4, Darknet tabanlı bir modeldir ve Ultralytics Python paketi tarafından yerel olarak desteklenmez: ultralytics/assets üzerinde yayımlanmış yolov4.pt önceden eğitilmiş ağırlıkları ve ultralytics/cfg/models/v4/ YAML dosyaları yoktur. Bu sayfa mimari bir referans olarak tutulmaktadır. YOLOv4'ü çalıştırmak isteyen kullanıcılar, kurulum ve kullanım talimatları için doğrudan YOLOv4 GitHub deposuna başvurmalıdır.

YOLOv4'ü kullanmak için uygulayabileceğin tipik adımlara kısaca göz atalım:

  1. YOLOv4 GitHub deposunu ziyaret et: https://github.com/AlexeyAB/darknet.

  2. Kurulum için README dosyasında verilen talimatları izle. Bu genellikle deponun klonlanmasını, gerekli bağımlılıkların yüklenmesini ve gerekli ortam değişkenlerinin ayarlanmasını içerir.

  3. Kurulum tamamlandıktan sonra, depoda verilen kullanım talimatlarına göre modeli eğitebilir ve kullanabilirsin. Bu genellikle veri kümeni hazırlamayı, model parametrelerini yapılandırmayı, modeli eğitmeyi ve ardından eğitilmiş modeli nesne algılama gerçekleştirmek için kullanmayı içerir.

Belirli adımların kullanım alanına ve YOLOv4 deposunun mevcut durumuna göre değişebileceğini unutma. Bu nedenle doğrudan YOLOv4 GitHub deposunda verilen talimatlara başvurman önemle önerilir.

Ultralytics çerçevesi içinde eğitim ve çıkarım için YOLO11 veya YOLO26 sayfalarına bak.

Sonuç#

YOLOv4, hız ve doğruluk arasında denge kuran güçlü ve verimli bir nesne algılama modelidir. Eğitim sırasında benzersiz özelliklerden ve ücretsiz avantajlar paketi tekniklerinden yararlanması, gerçek zamanlı nesne algılama görevlerinde mükemmel performans göstermesini sağlar. YOLOv4, geleneksel bir GPU'ya sahip herkes tarafından eğitilebilir ve kullanılabilir; bu da onu gözetim sistemleri, otonom araçlar ve endüstriyel otomasyon dâhil olmak üzere çok çeşitli uygulamalar için erişilebilir ve pratik kılar.

Projelerinde nesne algılamayı uygulamak isteyenler için YOLOv4, özellikle gerçek zamanlı performans öncelikliyse güçlü bir seçenek olmaya devam eder. Ultralytics şu anda YOLO11 ve YOLO26 gibi daha yeni YOLO sürümlerini desteklemeye odaklansa da YOLOv4'te sunulan mimari yenilikler, bu sonraki modellerin geliştirilmesini etkilemiştir.

Atıflar ve Teşekkürler#

Gerçek zamanlı nesne algılama alanına önemli katkılarından dolayı YOLOv4 yazarlarını anmak isteriz:

Alıntı
@misc{bochkovskiy2020yolov4,
      title={YOLOv4: Optimal Speed and Accuracy of Object Detection},
      author={Alexey Bochkovskiy and Chien-Yao Wang and Hong-Yuan Mark Liao},
      year={2020},
      eprint={2004.10934},
      archivePrefix={arXiv},
      primaryClass={cs.CV}
}

Özgün YOLOv4 makalesine arXiv üzerinden ulaşabilirsin. Yazarlar çalışmalarını kamuya açık hâle getirmiş ve kod tabanına GitHub üzerinden erişim sağlamıştır. Alanın ilerlemesine katkıda bulunma ve çalışmalarını daha geniş topluluğun erişimine sunma çabalarını takdir ediyoruz.

SSS#

  • "You Only Look Once version 4" ifadesinin kısaltması olan YOLOv4, Alexey Bochkovskiy tarafından 2020'de geliştirilen son teknoloji ürünü gerçek zamanlı bir nesne algılama modelidir. Hız ve doğruluk arasında en uygun dengeyi sağlar ve bu da onu gerçek zamanlı uygulamalar için son derece uygun hâle getirir. YOLOv4'ün mimarisi, son teknoloji sonuçlar elde etmek için Weighted-Residual-Connections (WRC), Cross-Stage-Partial-connections (CSP) ve Self-adversarial-training (SAT) gibi çeşitli yenilikçi özellikleri içerir. Geleneksel GPU'larda verimli şekilde çalışan yüksek performanslı bir model arıyorsan YOLOv4 mükemmel bir seçimdir.

  • YOLOv4'ün mimarisi birkaç temel bileşen içerir: omurga, boyun ve baş. VGG, ResNet veya CSPDarknet53 gibi modellerden oluşabilen omurga, sınıfları ve sınırlayıcı kutuları tahmin etmek üzere önceden eğitilir. PANet kullanan boyun, kapsamlı veri çıkarımı için farklı aşamalardaki özellik haritalarını birbirine bağlar. Son olarak YOLOv3 yapılandırmalarını kullanan baş, son nesne algılamalarını gerçekleştirir. YOLOv4 ayrıca mozaik veri artırma ve DropBlock düzenlileştirmesi gibi "ücretsiz avantajlar paketi" tekniklerini kullanarak hızını ve doğruluğunu daha da optimize eder.

  • "Ücretsiz avantajlar paketi", çıkarım maliyetini artırmadan YOLOv4'ün eğitim doğruluğunu geliştiren yöntemleri ifade eder. Bu teknikler; fotometrik bozulmalar (parlaklık, kontrast vb. ayarlamaları) ve geometrik bozulmalar (ölçekleme, kırpma, çevirme, döndürme) gibi çeşitli veri artırma biçimlerini içerir. Girdi görüntülerinin çeşitliliğini artıran bu artırmalar, YOLOv4'ün farklı görüntü türlerine daha iyi genelleme yapmasına yardımcı olur; böylece gerçek zamanlı performansından ödün vermeden sağlamlığını ve doğruluğunu artırır.

  • YOLOv4, hem hızı hem de doğruluğu optimize etmek üzere tasarlanmıştır; bu da onu hızlı ve güvenilir performans gerektiren gerçek zamanlı nesne algılama görevleri için ideal hâle getirir. Geleneksel GPU'larda verimli şekilde çalışır ve hem eğitim hem de çıkarım için yalnızca bir GPU gerektirir. Bu durum onu öneri sistemlerinden bağımsız süreç yönetimine kadar çeşitli uygulamalar için erişilebilir ve pratik kılar; kapsamlı donanım kurulumlarına duyulan ihtiyacı azaltır ve gerçek zamanlı nesne algılama için uygun maliyetli bir çözüm sunar.

  • YOLOv4'ü kullanmaya başlamak için resmî YOLOv4 GitHub deposunu ziyaret etmelisin. Genellikle deponun klonlanmasını, bağımlılıkların yüklenmesini ve ortam değişkenlerinin ayarlanmasını içeren README dosyasındaki kurulum talimatlarını izle. Kurulumdan sonra veri kümeni hazırlayarak, model parametrelerini yapılandırarak ve verilen kullanım talimatlarını izleyerek modeli eğitebilirsin. Ultralytics şu anda YOLOv4'ü desteklemediğinden en güncel ve ayrıntılı yönlendirme için doğrudan YOLOv4 GitHub sayfasına başvurman önerilir.

Yorumlar