İçeriğe geç

Ultralytics YOLO ile Model Kıyaslama

Ultralytics YOLO ekosistemi ve entegrasyonları

Karşılaştırma Görselleştirmesi

Tarayıcıyı Yenile

Olası çerez sorunları nedeniyle grafikleri doğru görüntülemek için sayfayı yenilemeniz gerekebilir.

Giriş

Modeliniz eğitildikten ve doğrulandıktan sonra, bir sonraki mantıksal adım, performansını çeşitli gerçek dünya senaryolarında değerlendirmektir. Ultralytics YOLO11'deki kıyaslama modu, modelinizin hızını ve doğruluğunu bir dizi dışa aktarma formatında değerlendirmek için sağlam bir çerçeve sağlayarak bu amaca hizmet eder.



İzle: Ultralytics YOLO11 Modellerini Kıyaslama | Model Performansı Farklı Donanımlarda Nasıl Karşılaştırılır?

Kıyaslama Neden Çok Önemli?

  • Bilinçli Kararlar: Hız ve doğruluk arasındaki ödünleşimler hakkında bilgi edinin.
  • Kaynak Tahsisi: Farklı dışa aktarma biçimlerinin farklı donanımlarda nasıl performans gösterdiğini anlayın.
  • Optimizasyon: Belirli kullanım durumunuz için hangi dışa aktarma biçiminin en iyi performansı sunduğunu öğrenin.
  • Maliyet Verimliliği: Kıyaslama sonuçlarına göre donanım kaynaklarını daha verimli kullanın.

Kıyaslama Modunda Temel Metrikler

Desteklenen Dışa Aktarma Biçimleri

  • ONNX: Optimum CPU performansı için
  • TensorRT: Maksimum GPU verimliliği için
  • OpenVINO: Intel donanım optimizasyonu için
  • CoreML, TensorFlow SavedModel ve Daha Fazlası: Çeşitli dağıtım ihtiyaçları için.

İpucu

  • 3 kata kadar CPU hızlandırması için ONNX veya OpenVINO'ya aktarın.
  • 5 kata kadar GPU hızlandırması için TensorRT'ye aktarın.

Kullanım Örnekleri

ONNX, TensorRT vb. dahil olmak üzere desteklenen tüm dışa aktarma biçimlerinde YOLO11n kıyaslamalarını çalıştırın. Dışa aktarma argümanlarının tam listesi için aşağıdaki Argümanlar bölümüne bakın.

Örnek

from ultralytics.utils.benchmarks import benchmark

# Benchmark on GPU
benchmark(model="yolo11n.pt", data="coco8.yaml", imgsz=640, half=False, device=0)

# Benchmark specific export format
benchmark(model="yolo11n.pt", data="coco8.yaml", imgsz=640, format="onnx")
yolo benchmark model=yolo11n.pt data='coco8.yaml' imgsz=640 half=False device=0

# Benchmark specific export format
yolo benchmark model=yolo11n.pt data='coco8.yaml' imgsz=640 format=onnx

Argümanlar

Gibi argümanlar model, data, imgsz, half, device, verbose ve format kullanıcılara kıyaslamaları kendi özel ihtiyaçlarına göre ince ayar yapma ve farklı dışa aktarma biçimlerinin performansını kolayca karşılaştırma esnekliği sağlar.

Anahtar Varsayılan Değer Açıklama
model None Model dosyasının yolunu belirtir. Her ikisini de kabul eder .pt ve .yaml biçimler, örneğin, "yolo11n.pt" önceden eğitilmiş modeller veya yapılandırma dosyaları için.
data None Genellikle yollar ve ayarlar dahil olmak üzere, kıyaslama için veri kümesini tanımlayan bir YAML dosyasının yolu doğrulama verilerinin yolları. Örnek: "coco8.yaml".
imgsz 640 Model için girdi görüntü boyutu. Kare görüntüler için tek bir tamsayı veya bir demet olabilir (width, height) kare olmayanlar için, örneğin, (640, 480).
half False FP16 (yarı duyarlıklı) çıkarımı etkinleştirir, bellek kullanımını azaltır ve uyumlu donanımda hızı artırabilir. Kullanım half=True etkinleştirmek için.
int8 False Desteklenen cihazlarda, özellikle uç cihazlarda daha da optimize edilmiş performans için INT8 nicelemesini etkinleştirir. Ayarla int8=True kullanmak için.
device None Karşılaştırma için kullanılan işlem cihazlarını tanımlar, örneğin "cpu" veya "cuda:0".
verbose False Günlük çıktısındaki ayrıntı düzeyini kontrol eder. Ayarla verbose=True ayrıntılı günlükler için.
format '' Modeli tek bir dışa aktarma formatında kıyaslayın. örneğin format=onnx

Dışa Aktarma Biçimleri

Kıyaslamalar, aşağıda listelenen tüm olası dışa aktarma formatlarında otomatik olarak çalışmaya çalışacaktır. Alternatif olarak, kullanarak belirli bir format için kıyaslamalar çalıştırabilirsiniz. format aşağıda belirtilen biçimlerden herhangi birini kabul eden argüman.

Format format Argüman Model Meta Veri Argümanlar
PyTorch - yolo11n.pt -
TorchScript torchscript yolo11n.torchscript imgsz, half, optimize, nms, batch, device
ONNX onnx yolo11n.onnx imgsz, half, dynamic, simplify, opset, nms, batch, device
OpenVINO openvino yolo11n_openvino_model/ imgsz, half, dynamic, int8, nms, batch, data, fraction, device
TensorRT engine yolo11n.engine imgsz, half, dynamic, simplify, workspace, int8, nms, batch, data, fraction, device
CoreML coreml yolo11n.mlpackage imgsz, half, int8, nms, batch, device
TF SavedModel saved_model yolo11n_saved_model/ imgsz, keras, int8, nms, batch, device
TF GraphDef pb yolo11n.pb imgsz, batch, device
TF Lite tflite yolo11n.tflite imgsz, half, int8, nms, batch, data, fraction, device
TF Edge TPU edgetpu yolo11n_edgetpu.tflite imgsz, device
TF.js tfjs yolo11n_web_model/ imgsz, half, int8, nms, batch, device
PaddlePaddle paddle yolo11n_paddle_model/ imgsz, batch, device
MNN mnn yolo11n.mnn imgsz, batch, int8, half, device
NCNN ncnn yolo11n_ncnn_model/ imgsz, half, batch, device
IMX500 imx yolo11n_imx_model/ imgsz, int8, data, fraction, device
RKNN rknn yolo11n_rknn_model/ imgsz, batch, name, device

Tamamını görün export ayrıntıları Dışa aktar sayfasında bulabilirsiniz.

SSS

Ultralytics kullanarak YOLO11 modelimin performansını nasıl karşılaştırabilirim?

Ultralytics YOLO11, modelinizin farklı dışa aktarma formatlarındaki performansını değerlendirmek için bir Benchmark modu sunar. Bu mod, ortalama Hassasiyet (mAP50-95), doğruluk ve milisaniye cinsinden çıkarım süresi gibi temel metrikler hakkında bilgiler sağlar. Kıyaslama testlerini çalıştırmak için Python veya CLI komutlarını kullanabilirsiniz. Örneğin, bir GPU üzerinde kıyaslama yapmak için:

Örnek

from ultralytics.utils.benchmarks import benchmark

# Benchmark on GPU
benchmark(model="yolo11n.pt", data="coco8.yaml", imgsz=640, half=False, device=0)
yolo benchmark model=yolo11n.pt data='coco8.yaml' imgsz=640 half=False device=0

Benchmark argümanları hakkında daha fazla bilgi için Argümanlar bölümünü ziyaret edin.

YOLO11 modellerini farklı formatlara aktarmanın faydaları nelerdir?

YOLO11 modellerini ONNX, TensorRT ve OpenVINO gibi farklı formatlara aktarmak, dağıtım ortamınıza göre performansı optimize etmenizi sağlar. Örneğin:

  • ONNX: 3 kata kadar CPU hızlandırması sağlar.
  • TensorRT: 5 kata kadar GPU hızlandırması sunar.
  • OpenVINO: Özellikle Intel donanımı için optimize edilmiştir.

Bu formatlar, modellerinizin hem hızını hem de doğruluğunu artırarak, çeşitli gerçek dünya uygulamaları için daha verimli hale getirir. Eksiksiz ayrıntılar için Dışa Aktar sayfasını ziyaret edin.

YOLO11 modellerini değerlendirmede kıyaslama neden çok önemlidir?

YOLO11 modellerinizi kıyaslamak çeşitli nedenlerle önemlidir:

  • Bilinçli Kararlar: Hız ve doğruluk arasındaki ödünleşimleri anlayın.
  • Kaynak Tahsisi: Farklı donanım seçeneklerindeki performansı ölçün.
  • Optimizasyon: Belirli kullanım durumları için hangi dışa aktarma biçiminin en iyi performansı sunduğunu belirleyin.
  • Maliyet Verimliliği: Donanım kullanımını kıyaslama sonuçlarına göre optimize edin.

mAP50-95, En İyi 5 doğruluk ve çıkarım süresi gibi temel metrikler, bu değerlendirmelerin yapılmasına yardımcı olur. Daha fazla bilgi için Temel Metrikler bölümüne bakın.

YOLO11 hangi dışa aktarım formatlarını destekliyor ve bunların avantajları nelerdir?

YOLO11, her biri belirli donanım ve kullanım durumları için uyarlanmış çeşitli dışa aktarma formatlarını destekler:

  • ONNX: CPU performansı için en iyisi.
  • TensorRT: GPU verimliliği için idealdir.
  • OpenVINO: Intel donanımı için optimize edilmiştir.
  • CoreML & TensorFlow: iOS ve genel ML uygulamaları için kullanışlıdır.

Desteklenen formatların ve ilgili avantajlarının tam listesi için Desteklenen Dışa Aktarma Formatları bölümüne göz atın.

YOLO11 kıyaslamalarımda ince ayar yapmak için hangi argümanları kullanabilirim?

Kıyaslama testleri çalıştırırken, belirli ihtiyaçlara uyacak şekilde çeşitli argümanlar özelleştirilebilir:

  • model: Model dosyasının yolu (örneğin, "yolo11n.pt").
  • veri: Veri kümesini tanımlayan bir YAML dosyasının yolu (örneğin, "coco8.yaml").
  • imgsz: Giriş görüntü boyutu, tek bir tamsayı veya bir demet olarak.
  • half: Daha iyi performans için FP16 çıkarımını etkinleştirin.
  • int8: Kenar cihazları için INT8 nicelemesini etkinleştirin.
  • device: Hesaplama cihazını belirtin (örneğin, "cpu", "cuda:0").
  • verbose: Günlük kaydı ayrıntı düzeyini kontrol edin.

Argümanların tam listesi için Argümanlar bölümüne bakın.



📅 1 yıl önce oluşturuldu ✏️ 1 ay önce güncellendi

Yorumlar