Neural Magic'in DeepSparse Motoru ile YOLO26 Çıkarımlarını Optimize Etme
When deploying object detection models like Ultralytics YOLO26 on various hardware, you can bump into unique issues like optimization. This is where YOLO26's integration with Neural Magic's DeepSparse Engine steps in. It transforms the way YOLO26 models are executed and enables GPU-level performance directly on CPUs.
Bu kılavuz, YOLO26'yı Neural Magic'in DeepSparse'ını kullanarak nasıl dağıtacağını, çıkarımları nasıl çalıştıracağını ve optimize edildiğinden emin olmak için performansı nasıl karşılaştıracağını gösterir.
Neural Magic, Ocak 2025'te Red Hat tarafından satın alındı ve deepsparse, sparseml, sparsezoo ve sparsify kütüphanelerinin topluluk sürümlerini kullanımdan kaldırıyor. Daha fazla bilgi için, sparseml GitHub deposundaki Benioku dosyasında yayınlanan duyuruya bakabilirsin.
Neural Magic'in DeepSparse'ı
Neural Magic'in DeepSparse'ı, sinir ağlarının CPU'lar üzerinde yürütülmesini optimize etmek için tasarlanmış bir çıkarım çalışma zamanıdır. Doğruluğu korurken hesaplama gereksinimlerini önemli ölçüde azaltmak için seyreklik (sparsity), budama (pruning) ve nicemleme (quantization) gibi gelişmiş teknikler uygular. DeepSparse, çeşitli cihazlarda verimli ve ölçeklenebilir sinir ağı yürütme için çevik bir çözüm sunar.
Neural Magic'in DeepSparse'ını YOLO26 ile Entegre Etmenin Faydaları
YOLO26'yı DeepSparse kullanarak nasıl dağıtacağını incelemeye başlamadan önce, DeepSparse kullanmanın faydalarını anlayalım. Bazı temel avantajlar şunlardır:
- Geliştirilmiş Çıkarım Hızı: (YOLO11n üzerinde) 525 FPS'ye kadar ulaşır ve YOLO'nun çıkarım yeteneklerini geleneksel yöntemlere kıyasla önemli ölçüde hızlandırır.
- Optimize Edilmiş Model Verimliliği: YOLO26'nın verimliliğini artırmak için budama ve nicemleme kullanır, doğruluğu korurken model boyutunu ve hesaplama gereksinimlerini azaltır.
-
Standart CPU'larda Yüksek Performans: CPU'larda GPU benzeri performans sunarak çeşitli uygulamalar için daha erişilebilir ve uygun maliyetli bir seçenek sağlar.
-
Kolaylaştırılmış Entegrasyon ve Dağıtım: Görüntü ve video açıklama özellikleri dahil olmak üzere YOLO26'nın uygulamalara kolay entegrasyonu için kullanıcı dostu araçlar sunar.
-
Çeşitli Model Tipleri İçin Destek: Hem standart hem de seyreklik açısından optimize edilmiş YOLO26 modelleriyle uyumludur ve dağıtım esnekliğini artırır.
-
Uygun Maliyetli ve Ölçeklenebilir Çözüm: Operasyonel giderleri düşürür ve gelişmiş nesne algılama modellerinin ölçeklenebilir dağıtımını sunar.
Neural Magic'in DeepSparse Teknolojisi Nasıl Çalışır?
Neural Magic'in DeepSparse teknolojisi, insan beyninin sinir ağı hesaplamasındaki verimliliğinden ilham almıştır. Beyinden alınan iki temel ilkeyi şu şekilde benimser:
-
Seyreklik (Sparsity): Seyrekleştirme süreci, derin öğrenme ağlarından gereksiz bilgilerin budanmasını içerir ve doğruluktan ödün vermeden daha küçük ve daha hızlı modellere yol açar. Bu teknik, ağın boyutunu ve hesaplama ihtiyaçlarını önemli ölçüde azaltır.
-
Referans Yerelliği (Locality of Reference): DeepSparse, ağı Tensor Sütunlarına bölen benzersiz bir yürütme yöntemi kullanır. Bu sütunlar, tamamen CPU'nun önbelleğine sığacak şekilde derinlemesine yürütülür. Bu yaklaşım, beyin verimliliğini taklit ederek veri hareketini en aza indirir ve CPU'nun önbellek kullanımını en üst düzeye çıkarır.
Özel Bir Veri Kümesi Üzerinde Eğitilmiş Bir YOLO26 Seyrek Sürümünü Oluşturma
Neural Magic tarafından geliştirilen açık kaynaklı bir model deposu olan SparseZoo, önceden seyrekleştirilmiş YOLO26 model kontrol noktalarından oluşan bir koleksiyon sunar. Ultralytics ile sorunsuz bir şekilde entegre olan SparseML sayesinde kullanıcılar, bu seyrek kontrol noktalarını basit bir komut satırı arayüzü kullanarak kendi özel veri kümelerinde zahmetsizce ince ayarlayabilirler.
Daha fazla ayrıntı için Neural Magic'in SparseML YOLO26 belgelerine göz at.
Kullanım: DeepSparse kullanarak YOLO26 dağıtımı
Deploying YOLO26 with Neural Magic's DeepSparse involves a few straightforward steps. Before diving into the usage instructions, be sure to check out the range of YOLO26 models offered by Ultralytics. This will help you choose the most appropriate model for your project requirements. Here's how you can get started.
Adım 1: Kurulum
Gerekli paketleri yüklemek için şunu çalıştır:
# Install the required packages
pip install deepsparse[yolov8]Adım 2: YOLO26'yı ONNX Formatına Aktarma
DeepSparse Motoru, YOLO26 modellerini ONNX formatında gerektirir. Modelini bu formata aktarmak, DeepSparse ile uyumluluk için çok önemlidir. YOLO26 modellerini dışa aktarmak için aşağıdaki komutu kullan:
# Export YOLO26 model to ONNX format
yolo task=detect mode=export model=yolo26n.pt format=onnx opset=13Bu komut, yolo26n.onnx modelini diskine kaydedecektir.
Adım 3: Dağıtım ve Çıkarımları Çalıştırma
YOLO26 modelin ONNX formatındayken, DeepSparse kullanarak çıkarımları dağıtabilir ve çalıştırabilirsin. Bu, sezgisel Python API'leri ile kolayca yapılabilir:
from deepsparse import Pipeline
# Specify the path to your YOLO26 ONNX model
model_path = "path/to/yolo26n.onnx"
# Set up the DeepSparse Pipeline
yolo_pipeline = Pipeline.create(task="yolov8", model_path=model_path)
# Run the model on your images
images = ["path/to/image.jpg"]
pipeline_outputs = yolo_pipeline(images=images)Adım 4: Performansı Karşılaştırma
YOLO26 modelinin DeepSparse üzerinde en iyi şekilde çalıştığından emin olmak önemlidir. İşleme hızını (throughput) ve gecikmeyi analiz etmek için modelinin performansını karşılaştırabilirsin:
# Benchmark performance
deepsparse.benchmark model_path="path/to/yolo26n.onnx" --scenario=sync --input_shapes="[1,3,640,640]"Adım 5: Ek Özellikler
DeepSparse, YOLO26'nın uygulamalara pratik entegrasyonu için görüntü açıklama ve veri kümesi değerlendirmesi gibi ek özellikler sağlar.
# For image annotation
deepsparse.yolov8.annotate --source "path/to/image.jpg" --model_filepath "path/to/yolo26n.onnx"
# For evaluating model performance on a dataset
deepsparse.yolov8.eval --model_path "path/to/yolo26n.onnx"Açıklama (annotate) komutunu çalıştırmak, belirttiğin görüntüyü işler, nesneleri algılar ve açıklama eklenmiş görüntüyü sınırlayıcı kutular ve sınıflandırmalarla kaydeder. Açıklamalı görüntü, bir annotation-results klasöründe saklanacaktır. Bu, modelin algılama yeteneklerinin görsel bir temsilini sağlamaya yardımcı olur.
Eval komutunu çalıştırdıktan sonra, kesinlik, duyarlılık ve mAP (ortalama Hassasiyet) gibi ayrıntılı çıktı metrikleri alacaksın. Bu, modelinin veri kümesindeki performansının kapsamlı bir görünümünü sağlar ve özellikle yüksek doğruluk ve verimlilik sağlamak için YOLO26 modellerini belirli kullanım durumları için ince ayarlamak ve optimize etmek için kullanışlıdır.
Özet
Bu kılavuz, Ultralytics'in YOLO26'sını Neural Magic'in DeepSparse Motoru ile entegre etmeyi inceledi. Bu entegrasyonun YOLO26'nın CPU platformlarındaki performansını nasıl artırdığını, GPU seviyesinde verimlilik ve gelişmiş sinir ağı seyreklik teknikleri sunduğunu vurguladı.
Daha fazla ayrıntılı bilgi ve gelişmiş kullanım için Neural Magic tarafından hazırlanan DeepSparse belgelerini ziyaret et. Ayrıca YOLO26 entegrasyon kılavuzunu inceleyebilir ve YouTube'da bir izleme oturumu izleyebilirsin.
Ayrıca, çeşitli YOLO26 entegrasyonları hakkında daha geniş bir anlayış için, diğer heyecan verici entegrasyon olanaklarını keşfedebileceğin Ultralytics entegrasyon kılavuzu sayfasını ziyaret et.
SSS
Neural Magic'in DeepSparse Motoru nedir ve YOLO26 performansını nasıl optimize eder?
Neural Magic'in DeepSparse Motoru, seyreklik, budama ve nicemleme gibi gelişmiş teknikler aracılığıyla sinir ağlarının CPU'larda yürütülmesini optimize etmek için tasarlanmış bir çıkarım çalışma zamanıdır. DeepSparse'ı YOLO26 ile entegre ederek, standart CPU'larda GPU benzeri performans elde edebilir, doğruluğu korurken çıkarım hızını, model verimliliğini ve genel performansı önemli ölçüde artırabilirsin. Daha fazla ayrıntı için Neural Magic'in DeepSparse bölümüne göz at.
YOLO26'yı Neural Magic'in DeepSparse'ını kullanarak dağıtmak için gerekli paketleri nasıl kurabilirim?
YOLO26'yı Neural Magic'in DeepSparse'ı ile dağıtmak için gereken paketleri kurmak basittir. Bunları CLI kullanarak kolayca kurabilirsin. Çalıştırman gereken komut şudur:
pip install deepsparse[yolov8]Kurulduktan sonra, ortamını ayarlamak ve DeepSparse'ı YOLO26 ile kullanmaya başlamak için Kurulum bölümünde sağlanan adımları izle.
YOLO26 modellerini DeepSparse ile kullanım için ONNX formatına nasıl dönüştürürüm?
YOLO26 modellerini, DeepSparse ile uyumluluk için gereken ONNX formatına dönüştürmek için aşağıdaki CLI komutunu kullanabilirsin:
yolo task=detect mode=export model=yolo26n.pt format=onnx opset=13Bu komut, YOLO26 modelini (yolo26n.pt), DeepSparse Motoru tarafından kullanılabilecek bir formata (yolo26n.onnx) aktaracaktır. Model dışa aktarma hakkında daha fazla bilgiyi Model Dışa Aktarma bölümünde bulabilirsin.
DeepSparse Motoru üzerinde YOLO26 performansını nasıl karşılaştırırım?
DeepSparse üzerinde YOLO26 performansını karşılaştırmak, modelinin optimize edildiğinden emin olmak için işleme hızını ve gecikmeyi analiz etmene yardımcı olur. Bir kıyaslama çalıştırmak için aşağıdaki CLI komutunu kullanabilirsin:
deepsparse.benchmark model_path="path/to/yolo26n.onnx" --scenario=sync --input_shapes="[1,3,640,640]"Bu komut sana hayati performans metrikleri sağlayacaktır. Daha fazla ayrıntı için Performans Karşılaştırma bölümüne bak.
Nesne algılama görevleri için neden Neural Magic'in DeepSparse'ını YOLO26 ile kullanmalıyım?
Neural Magic'in DeepSparse'ını YOLO26 ile entegre etmenin birkaç faydası vardır:
- Geliştirilmiş Çıkarım Hızı: (YOLO11n üzerinde) 525 FPS'ye kadar ulaşır ve bu, DeepSparse'ın optimizasyon yeteneklerini kanıtlar.
- Optimize Edilmiş Model Verimliliği: Doğruluğu korurken model boyutunu ve hesaplama ihtiyaçlarını azaltmak için seyreklik, budama ve nicemleme teknikleri kullanır.
- Standart CPU'larda Yüksek Performans: Uygun maliyetli CPU donanımı üzerinde GPU benzeri performans sunar.
- Kolaylaştırılmış Entegrasyon: Kolay dağıtım ve entegrasyon için kullanıcı dostu araçlar.
- Esneklik: Hem standart hem de seyreklik açısından optimize edilmiş YOLO26 modellerini destekler.
- Uygun Maliyetli: Verimli kaynak kullanımı yoluyla operasyonel giderleri düşürür.
Bu avantajların derinlemesine incelenmesi için Neural Magic'in DeepSparse'ını YOLO26 ile Entegre Etmenin Faydaları bölümünü ziyaret et.