"Tüm Çerezleri Kabul Et" seçeneğine tıklayarak, sitede gezinmeyi geliştirmek, site kullanımını analiz etmek ve pazarlama çabalarımıza yardımcı olmak için cihazınızda çerezlerin saklanmasını kabul edersiniz. Daha fazla bilgi
Çerez Ayarları
"Tüm Çerezleri Kabul Et" seçeneğine tıklayarak, sitede gezinmeyi geliştirmek, site kullanımını analiz etmek ve pazarlama çabalarımıza yardımcı olmak için cihazınızda çerezlerin saklanmasını kabul edersiniz. Daha fazla bilgi
Neural Magic'in DeepSparse'u ile Ultralytics YOLOv5 model eğitimi ve dağıtımını, CPU'larda GPU sınıfı performans için güçlendirin. Daha hızlı, ölçeklenebilir YOLOv5 dağıtımları elde edin.
YOLOv5 modellerinizin eğitimini ve dağıtımını hızlandırmak mı istiyorsunuz? Sizi teminat altına aldık! En yeni ortağımız Neural Magic'i sunuyoruz. Neural Magic, en yüksek model performansını ve iş akışı basitliğini vurgulayan yazılım araçları sağladığı için, YOLOv5 dağıtım sürecini daha da iyileştirmek için bir çözüm sunmak üzere bir araya gelmemiz çok doğal.
DeepSparse, Neural Magic'in CPU çıkarım çalışma zamanıdır ve ticari donanımda olağanüstü performans sunmak için sinir ağları içindeki seyreklik ve düşük hassasiyetli aritmetikten yararlanır. Örneğin, ONNX Runtime temeliyle karşılaştırıldığında, DeepSparse aynı makinede çalışan YOLOv5s için 5,8 kat hızlanma sunar!
Derin öğrenme iş yükleriniz, ilk kez donanım hızlandırıcılarının karmaşıklığı ve maliyetleri olmadan üretimin performans taleplerini karşılayabilir. Basitçe söylemek gerekirse, DeepSparse size GPU'ların performansını ve yazılımın basitliğini sunar:
Esnek Dağıtımlar: Herhangi bir donanım sağlayıcısıyla bulut, veri merkezi ve uç noktalarda tutarlı bir şekilde çalıştırın
Sonsuz Ölçeklenebilirlik: Standart Kubernetes ile yatay olarak, 100'lerce çekirdeğe dikey olarak veya sunucusuz ile tamamen soyutlanmış şekilde ölçeklendirin
Kolay Entegrasyon: Modelinizi bir uygulamaya entegre etmek ve üretimde izlemek için temiz API'ler kullanın
Standart CPU'larda GPU Sınıfı Performans Elde Edin
DeepSparse, performans hızlandırması elde etmek için model seyreltikliğinden yararlanır.
Budama ve niceleme yoluyla seyreltme, yüksek doğruluğu korurken bir ağı yürütmek için gereken boyut ve hesaplama miktarında önemli ölçüde azalma sağlar. DeepSparse, sıfır ile çarpma-toplamaları atlayarak ve ileri geçişteki hesaplama miktarını azaltarak seyreltme konusunda duyarlıdır. Seyrek hesaplama belleğe bağlı olduğundan, DeepSparse ağı derinlemesine yürütür ve sorunu önbelleğe sığan dikey hesaplama şeritleri olan Tensor Sütunlarına ayırır.
Sıkıştırılmış hesaplamaya sahip seyrek ağlar, önbellekte derinlemesine yürütülerek DeepSparse'ın CPU'larda GPU sınıfı performans sunmasını sağlar!
Özel Veriler Üzerinde Eğitilmiş YOLOv5'in Seyrek Bir Sürümünü Oluşturun
Neural Magic'in açık kaynaklı model deposu SparseZoo, her YOLOv5 modelinin önceden seyreltilmiş kontrol noktalarını içerir. Ultralytics ile entegre edilmiş olan SparseML'yi kullanarak, tek bir CLI komutuyla seyrek bir kontrol noktasını verileriniz üzerinde ince ayar yapabilirsiniz.
DeepSparse ile YOLOv5'i Dağıtın
DeepSparse'ı Kurun
DeepSparse'ı kurmak için aşağıdakileri çalıştırın. Python ile sanal bir ortam kullanmanızı öneririz.
pip install deepsparse[server,yolo,onnxruntime]
Bir ONNX Dosyası Toplayın
DeepSparse, ONNX formatındaki bir modeli aşağıdaki şekillerde kabul eder:
Bir ONNX modeline yerel bir yol
SparseZoo'daki bir modeli tanımlayan bir SparseZoo saplaması
Standart yoğun YOLOv5s'yi, aşağıdaki SparseZoo saplamalarıyla tanımlanan budanmış-nicemlenmiş YOLOv5s ile karşılaştıracağız:
Ardışık düzenler, çalışma zamanı etrafında ön işleme ve çıktı son işlemeyi sararak, DeepSparse'ı bir uygulamaya eklemek için temiz bir arayüz sağlar. DeepSparse-Ultralytics entegrasyonu, ham görüntüleri kabul eden ve sınırlayıcı kutuları çıktı olarak veren kullanıma hazır bir Ardışık Düzen içerir.
Bir Ardışık Düzen oluşturun ve çıkarım çalıştırın:
from deepsparse import Pipeline
# yerel dosya sistemindeki resimlerin listesi images = ["basilica.jpg"]
# resimler üzerinde çıkarım yap, sınırlayıcı kutuları + sınıfları al pipeline_outputs = yolo_pipeline(images=images, iou_thres=0.6, conf_thres=0.001) print(pipeline_outputs)
Bulutta çalışıyorsanız, open-cv'nin libGL.so.1'i bulamadığına dair bir hata alabilirsiniz. Ubuntu'da aşağıdakini çalıştırmak onu yükler:
apt-get install libgl1-mesa-glx
HTTP Sunucusu
DeepSparse Sunucusu, popüler FastAPI web çatısı ve Uvicorn web sunucusu üzerinde çalışır. Tek bir CLI komutuyla, DeepSparse ile kolayca bir model hizmeti uç noktası kurabilirsiniz. Sunucu, YOLOv5 ile nesne algılama dahil olmak üzere DeepSparse'dan herhangi bir Pipeline'ı destekler ve uç noktaya ham görüntüler göndermenize ve sınırlayıcı kutuları almanıza olanak tanır.
Kırpılmış-nicelenmiş YOLOv5s ile Sunucuyu başlatın:
Motorun disk üzerinde açıklamalı bir fotoğraf kaydetmesi için annotate komutunu da kullanabilirsiniz. Canlı web kamerası akışınızı açıklamak için --source 0'ı deneyin!
Ultralytics olarak, YOLOv5 gibi harika açık kaynaklı araçlarımızın araştırma ve geliştirme çalışmalarını finanse etmemize ve bunları herkes için ücretsiz tutmamıza yardımcı olmaları için diğer startup'larla ticari ortaklıklar kuruyoruz. Bu makale, bu ortaklara ait bağlı kuruluş bağlantıları içerebilir.