İçeriğe geç

YOLO12: Dikkat Merkezli Nesne Algılama

Genel Bakış

YOLO12, önceki YOLO modellerinde kullanılan geleneksel CNN tabanlı yaklaşımlardan ayrılan, ancak birçok uygulama için gerekli olan gerçek zamanlı çıkarım hızını koruyan dikkat merkezli bir mimari sunmaktadır. Bu model, gerçek zamanlı performansı korurken, dikkat mekanizmalarında ve genel ağ mimarisinde yeni metodolojik yenilikler sayesinde son teknoloji ürünü nesne algılama doğruluğuna ulaşmaktadır.



İzle: Ultralytics Paketi ile Nesne Algılama için YOLO12 Nasıl Kullanılır | YOLO12 Hızlı mı Yavaş mı? 🚀

Temel Özellikler

  • Alan Dikkat Mekanizması: Büyük alıcı alanları verimli bir şekilde işleyen yeni bir kendi kendine dikkat yaklaşımı. Özellik haritalarını yatay veya dikey olarak eşit büyüklükte bölgelere ( varsayılan olarak 4) ayırır, karmaşık işlemlerden kaçınır ve büyük bir etkili alıcı alanı korur. Bu, standart kendi kendine dikkat etmeye kıyasla hesaplama maliyetini önemli ölçüde azaltır.
  • Artık Verimli Katman Birleştirme Ağları (R-ELAN): Özellikle büyük ölçekli dikkat merkezli modellerde optimizasyon zorluklarını ele almak için tasarlanmış ELAN tabanlı geliştirilmiş bir özellik toplama modülü. R-ELAN şunları sunar:
    • Ölçeklendirme ile blok düzeyinde artık bağlantılar (katman ölçeklendirmeye benzer).
    • Darboğaz benzeri bir yapı oluşturan yeniden tasarlanmış bir özellik toplama yöntemi.
  • Optimize Edilmiş Dikkat Mimarisi: YOLO12, YOLO çerçevesiyle daha fazla verimlilik ve uyumluluk için standart dikkat mekanizmasını düzenler. Buna şunlar dahildir:
    • Bellek erişim yükünü en aza indirmek için FlashAttention kullanma.
    • Daha temiz ve hızlı bir model için konumsal kodlama kaldırılıyor.
    • Dikkat ve ileri besleme katmanları arasındaki hesaplamayı daha iyi dengelemek için MLP oranını (tipik 4'ten 1,2 veya 2'ye) ayarlamak.
    • Daha iyi optimizasyon için yığılmış blokların derinliğinin azaltılması.
    • Hesaplama verimliliği için konvolüsyon işlemlerinden (uygun olduğunda) yararlanma.
    • Konumsal bilgiyi dolaylı olarak kodlamak için dikkat mekanizmasına 7x7 ayrılabilir bir konvolüsyon ("konum algılayıcı") eklenmesi.
  • Kapsamlı Görev Desteği: YOLO12 bir dizi temel bilgisayarla görme görevini destekler: nesne algılama, örnek segmentasyonu, görüntü sınıflandırma, poz tahmini ve yönlendirilmiş nesne algılama (OBB).
  • Geliştirilmiş Verimlilik: Önceki birçok modele kıyasla daha az parametre ile daha yüksek doğruluk elde ederek hız ve doğruluk arasında gelişmiş bir denge sağlar.
  • Esnek Dağıtım: Uç cihazlardan bulut altyapısına kadar çeşitli platformlarda dağıtım için tasarlanmıştır.

YOLO12 karşılaştırma görselleştirmesi

Desteklenen Görevler ve Modlar

YOLO12 çeşitli bilgisayarla görme görevlerini destekler. Aşağıdaki tabloda görev desteği ve her biri için etkinleştirilen çalışma modları (Çıkarım, Doğrulama, Eğitim ve Dışa Aktarma) gösterilmektedir:

Model Tipi Görev Çıkarım Doğrulama Eğitim İhracat
YOLO12 Algılama
YOLO12-seg Segmentasyon
YOLO12-pose Pose
YOLO12-cls Sınıflandırma
YOLO12-obb OBB

Performans Ölçütleri

YOLO12, önceki en hızlı YOLO modellerine kıyasla hızda bazı ödünleşmelerle birlikte, tüm model ölçeklerinde önemli doğruluk iyileştirmeleri göstermektedir. Aşağıda COCO doğrulama veri setinde nesne tespiti için nicel sonuçlar yer almaktadır:

Algılama Performansı (COCO val2017)

Performans

Model boyut
(piksel)
mAPval
50-95
Hız
CPU ONNX
(ms)
Hız
T4 TensorRT
(ms)
params
(M)
FLOP'lar
(B)
Karşılaştırma
(mAP/Hız)
YOLO12n 640 40.6 - 1.64 2.6 6.5 +%2,1/-%9 (YOLOv10n'a kıyasla)
YOLO12s 640 48.0 - 2.61 9.3 21.4 +%0,1/+%42 (RT-DETRv2'ye kıyasla)
YOLO12m 640 52.5 - 4.86 20.2 67.5 +1,0%/-3% (YOLO11m'ye kıyasla)
YOLO12l 640 53.7 - 6.77 26.4 88.9 +%0,4/-%8 (YOLO11l'e kıyasla)
YOLO12x 640 55.2 - 11.79 59.1 199.0 +%0,6/-%4 (YOLO11x'e kıyasla)
  • Çıkarım hızı, TensorRT FP16 hassasiyetine sahip bir NVIDIA T4 GPU 'da ölçülmüştür.
  • Karşılaştırmalar mAP'deki göreceli iyileşmeyi ve hızdaki yüzde değişimi göstermektedir (pozitif daha hızlı; negatif daha yavaş olduğunu gösterir). Karşılaştırmalar, mevcut olduğu durumlarda YOLOv10, YOLO11 ve RT-DETR için yayınlanmış sonuçlarla yapılmıştır.

Kullanım Örnekleri

Bu bölümde YOLO12 ile eğitim ve çıkarım için örnekler verilmektedir. Bu ve diğer modlar ( Doğrulama ve Dışa Aktarma dahil) hakkında daha kapsamlı belgeler için özel Tahmin Et ve Eğit sayfalarına bakın.

Aşağıdaki örnekler YOLO12 Algılama modellerine (nesne algılama için) odaklanmaktadır. Desteklenen diğer görevler (segmentasyon, sınıflandırma, yönlendirilmiş nesne algılama ve poz tahmini) için ilgili göreve özgü belgelere bakın: Segment, Sınıflandırma, OBB ve Poz.

Örnek

Önceden Eğitilmiş *.pt modelleri (kullanarak PyTorch) ve yapılandırma *.yaml dosyalar şu dosyalara aktarılabilir YOLO() sınıfında bir model örneği oluşturmak için Python:

from ultralytics import YOLO

# Load a COCO-pretrained YOLO12n model
model = YOLO("yolo12n.pt")

# Train the model on the COCO8 example dataset for 100 epochs
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)

# Run inference with the YOLO12n model on the 'bus.jpg' image
results = model("path/to/bus.jpg")

Komut Satırı ArayüzüCLI) komutları da mevcuttur:

# Load a COCO-pretrained YOLO12n model and train on the COCO8 example dataset for 100 epochs
yolo train model=yolo12n.pt data=coco8.yaml epochs=100 imgsz=640

# Load a COCO-pretrained YOLO12n model and run inference on the 'bus.jpg' image
yolo predict model=yolo12n.pt source=path/to/bus.jpg

Önemli İyileştirmeler

  1. Geliştirilmiş Özellik Çıkarımı:

    • Alan Dikkati: Büyük alıcı alanları verimli bir şekilde ele alarak hesaplama maliyetini azaltır.
    • Optimize Edilmiş Denge: Dikkat ve ileri beslemeli ağ hesaplamaları arasında geliştirilmiş denge.
    • R-ELAN: R-ELAN mimarisini kullanarak özellik toplamayı geliştirir.
  2. Optimizasyon Yenilikleri:

    • Artık Bağlantılar: Özellikle büyük modellerde eğitimi stabilize etmek için ölçeklendirme ile artık bağlantılar sunar.
    • Geliştirilmiş Özellik Entegrasyonu: R-ELAN içinde özellik entegrasyonu için geliştirilmiş bir yöntem uygular.
    • FlashAttention: Bellek erişim ek yükünü azaltmak için FlashAttention'ı içerir.
  3. Mimari Verimlilik:

    • Azaltılmış Parametreler: Önceki birçok modele kıyasla doğruluğu korurken veya geliştirirken daha düşük parametre sayısına ulaşır.
    • Kolaylaştırılmış Dikkat: Konumsal kodlamadan kaçınarak basitleştirilmiş bir dikkat uygulaması kullanır.
    • Optimize Edilmiş MLP Oranları: Hesaplama kaynaklarını daha etkin bir şekilde tahsis etmek için MLP oranlarını ayarlar.

Gereksinimler

Ultralytics YOLO12 uygulaması, varsayılan olarak FlashAttention gerektirmez. Ancak, FlashAttention isteğe bağlı olarak derlenebilir ve YOLO12 ile kullanılabilir. FlashAttention'ı derlemek için aşağıdaki NVIDIA GPU'lardan birine ihtiyaç vardır:

Atıflar ve Teşekkür

Araştırmanızda YOLO12'yi kullanırsanız, lütfen Buffalo Üniversitesi ve Çin Bilimler Akademisi Üniversitesi tarafından yapılan orijinal çalışmaya atıfta bulunun:

@article{tian2025yolov12,
  title={YOLOv12: Attention-Centric Real-Time Object Detectors},
  author={Tian, Yunjie and Ye, Qixiang and Doermann, David},
  journal={arXiv preprint arXiv:2502.12524},
  year={2025}
}

@software{yolo12,
  author = {Tian, Yunjie and Ye, Qixiang and Doermann, David},
  title = {YOLOv12: Attention-Centric Real-Time Object Detectors},
  year = {2025},
  url = {https://github.com/sunsmarterjie/yolov12},
  license = {AGPL-3.0}
}

SSS

YOLO12 yüksek doğruluğu korurken gerçek zamanlı nesne algılamayı nasıl başarıyor?

YOLO12, hız ve doğruluğu dengelemek için birkaç önemli yenilik içermektedir. Alan Dikkati mekanizması, büyük alıcı alanları verimli bir şekilde işleyerek standart öz dikkatle karşılaştırıldığında hesaplama maliyetini düşürür. Artık Verimli Katman Toplama Ağları (R-ELAN) özellik toplamayı iyileştirerek daha büyük dikkat merkezli modellerdeki optimizasyon zorluklarını ele alır. FlashAttention kullanımı ve konumsal kodlamanın kaldırılması da dahil olmak üzere Optimize Edilmiş Dikkat Mimarisi verimliliği daha da artırır. Bu özellikler, YOLO12'nin birçok uygulama için çok önemli olan gerçek zamanlı çıkarım hızını korurken son teknoloji ürünü doğruluğa ulaşmasını sağlar.

YOLO12 hangi bilgisayarla görme görevlerini destekliyor?

YOLO12, çok çeşitli temel bilgisayarla görme görevlerini destekleyen çok yönlü bir modeldir. Nesne algılama, örnek segmentasyonu, görüntü sınıflandırma, poz tahmini ve yönlendirilmiş nesne algılama (OBB) konularında üstündür(ayrıntılara bakın). Bu kapsamlı görev desteği, YOLO12'yi robotik ve otonom sürüşten tıbbi görüntüleme ve endüstriyel denetime kadar çeşitli uygulamalar için güçlü bir araç haline getirir. Bu görevlerin her biri Çıkarım, Doğrulama, Eğitim ve Dışa Aktarma modlarında gerçekleştirilebilir.

YOLO12 diğer YOLO modelleri ve RT-DETR gibi rakipleriyle nasıl karşılaştırılır?

YOLO12, YOLOv10 ve YOLO11 gibi önceki YOLO modellerine kıyasla tüm model ölçeklerinde, önceki en hızlı modellere kıyasla hızda bazı ödünleşmelerle birlikte önemli doğruluk iyileştirmeleri göstermektedir. Örneğin, YOLO12n, COCO val2017 veri setinde YOLOv10n'ye göre +%2,1 ve YOLO11n'ye göre +%1,2 mAP iyileştirmesi elde etmiştir. gibi modellerle karşılaştırıldığında RT-DETRYOLO12s, %1,5 mAP iyileştirmesi ve %42 gibi önemli bir hız artışı sunuyor. Bu metrikler YOLO12'nin doğruluk ve verimlilik arasındaki güçlü dengesini vurgulamaktadır. Ayrıntılı karşılaştırmalar için performans ölçümleri bölümüne bakın.

YOLO12'yi çalıştırmak, özellikle de FlashAttention'ı kullanmak için donanım gereksinimleri nelerdir?

Varsayılan olarak, Ultralytics YOLO12 uygulaması FlashAttention gerektirmez. Bununla birlikte, FlashAttention isteğe bağlı olarak derlenebilir ve bellek erişim ek yükünü en aza indirmek için YOLO12 ile kullanılabilir. FlashAttention'ı derlemek için aşağıdaki NVIDIA GPU'lardan birine ihtiyaç vardır: Turing GPU'lar (örn. T4, Quadro RTX serisi), Ampere GPU'lar (örn. RTX30 serisi, A30/40/100), Ada Lovelace GPU'lar (örn. RTX40 serisi) veya Hopper GPU'lar (örn. H100/H200). Bu esneklik, kullanıcıların donanım kaynakları izin verdiğinde FlashAttention'ın avantajlarından yararlanmasına olanak tanır.

YOLO12 için kullanım örneklerini ve daha ayrıntılı belgeleri nerede bulabilirim?

Bu sayfa eğitim ve çıkarım için temel kullanım örnekleri sunmaktadır. Doğrulama ve Dışa Aktarma da dahil olmak üzere bu ve diğer modlarla ilgili kapsamlı belgeler için özel Tahmin Et ve Eğit sayfalarına bakın. Göreve özgü bilgiler için (segmentasyon, sınıflandırma, yönlendirilmiş nesne algılama ve poz tahmini) ilgili belgelere bakın: Segment, Sınıflandırma, OBB ve Poz. Bu kaynaklar, YOLO12'yi çeşitli senaryolarda etkili bir şekilde kullanmak için derinlemesine rehberlik sağlar.

📅1 ay önce oluşturuldu ✏️ 25 gün önce güncellendi

Yorumlar