Ticaret için ONNX'i öğrenme - sayfa 15

 

Uç ve Bulutta Hibrit Çıkarım için ONNX Çalışma Zamanı Azure EP



Uç ve Bulutta Hibrit Çıkarım için ONNX Çalışma Zamanı Azure EP

ONNX Runtime ekibi, cihaz bağlantı sorunlarını ortadan kaldıran ve geliştiricilerin optimize ettikleri bulut modeline geçmelerine olanak tanıyan Azure EP ile geliştiricilerin hem uç hem de bulut bilgi işlem için tek bir API kullanmasını sağlayan hibrit dünyaya ilk adımlarını attı. , maliyet tasarrufu ve gecikmeyi azaltır. Bu yeni özellik, geliştiricilerin uygulama mantığını güncellemelerine ve Azure EP aracılığıyla hangi yolu seçeceklerini seçmelerine olanak tanıyarak daha fazla yetenek ve güç sunar. Ekip, alt sunucuların ve nesne algılama modellerinin devreye alınmasının yanı sıra uç noktanın nasıl test edileceğini ve Onnx Runtime Azure'un nasıl kolayca yapılandırılacağını gösteriyor. Sunum yapan kişiler ayrıca yerel ve uzak işleme arasında geçiş yapma becerisini ve daha düşük ve daha yüksek performanslı modeller de dahil olmak üzere potansiyel kullanım durumlarını tartışırlar. ONNX Runtime Azure EP, önceden yüklenebilir ve dağıtım için gerekli paketlerle kolayca yapılandırılabilir, bu da yazılımın kullanım kolaylığına katkıda bulunur.

  • 00:00:00 Bu bölümde, Azure EP, ONNX çalışma zamanı ekibinin geliştiricilerin hem uç hem de bulut bilgi işlem için tek bir API kullanmasını sağlayan hibrit dünyaya ilk adımı olarak tanıtılıyor. Bunu yaparak, geliştiricilerin cihaz bağlantısı konusunda endişelenmelerine gerek kalmayacak ve optimize ettikleri ve orada kullandıkları bulut modeline geçerek maliyet ve gecikmeden tasarruf edebilirler. Bu yeni özellik, geliştiricilerin uygulama mantığını güncellemelerine ve Azure EP aracılığıyla hangi yolu izleyeceklerini seçmelerine olanak tanıyarak onlara daha fazla yetenek ve güç sağlar. Genel olarak, ONNX çalışma zamanı ekibi, geliştirici topluluğundan gelenleri ve bu yeni özelliğin nasıl uygulandığını görmekten heyecan duyuyor.

  • 00:05:00 Bu bölümde, yeni ONNX Runtime (ORT) sürüm 1.14'e katkıda bulunanlardan Randy Schrey, sürümle birlikte gelen harika özelliklerden bazılarını gösteriyor. İlk olarak, modeller için sunucu tarafı görevi gören Azure Machine Learning adlı bir uç noktayı gösteriyor. Ayrıca, uç noktalar sağlamak için kullanılan, Nvidia tarafından bölünen Triton sunucusundan ve etkileyici performansından ve kararlılığından bahsediyor. Schrey, bir çocuk sunucusunun nasıl dağıtılacağını gösterir ve modelin adını, sürümünü ve konumunu belirtmek de dahil olmak üzere nasıl göründüğüne dair genel bir bakış sunar. Ayrıca, bir Triton sunucusu kurulurken izlenmesi gereken klasör yapısını vurgular ve modelin girdi ve çıktıyı nasıl aldığını açıklayan yapılandırma dosyasını gösterir.

  • 00:10:00 Bu bölümde konuşmacı, nesne algılama modellerini dağıtmak için klasörlerinin yapısını tartışır ve Triton sunucusunun dağıtım için modeli nasıl bulabileceğini açıklar. Ayrıca Azure'da sunulan modellerin tüketilmesiyle ilgili bir soruyu yanıtlıyorlar ve sunucu tarafı olarak yalnızca Triton sunucusunu desteklediğini belirterek Trtis'in Azure üzerinden mevcut sınırlamalarından bahsediyorlar. Konuşmacı daha sonra uç noktanın test edilmesini, Onnx Runtime Azure'u basit bir şekilde kurma sürecini ve istemci tarafından çevrimiçi uç nokta ile çalışmak üzere Uç ve Bulutta Hibrit Çıkarım için Onnx Runtime Azure'u nasıl kullanabileceklerini tartışır. Konuşmacı bir betik sağlar ve Onnx Runtime Azure kullanarak bir modeli yüklemek ve kullanmak için gereken bazı yapılandırmaları açıklar.

  • 00:15:00 Bu bölümde sunum yapan kişiler, uçta ve bulutta hibrit çıkarım için ONNX Runtime Azure EP'nin nasıl kullanılacağını gösterir. Koddaki tek bir parametreyi değiştirerek yerel ve uzak işleme arasında geçiş yapma yeteneği ile kimlik doğrulama anahtarının nasıl yapılandırılacağını ve çıkarımın nasıl yürütüleceğini gösterirler. Düşük performanslı ve yüksek performanslı modeller arasında seçim yapma gibi potansiyel kullanım durumlarını tartışıyorlar ve mevcut önizleme sürümünün Triton çıkarım sunucusu gerektirmesine rağmen, planın gelecekte her tür dağıtım sunucusunu desteklemek olduğunu belirtiyorlar.

  • 00:20:00 Bu bölümde, ONNX Runtime Azure EP'nin önceden yüklenebileceği ve dağıtım için gerekli paketlerle kolayca yapılandırılabileceği anlatılmaktadır. Bu özellik, yazılımın dağıtım ve kullanım kolaylığına katkıda bulunur.
 

Bir ONNX Modelinin Pratik Eğitim Sonrası Niceleme



Bir ONNX Modelinin Pratik Eğitim Sonrası Niceleme

Video, bir TensorFlow modelinin boyutunu bir ONNX nicelemeli modele indirgemek için nicelemenin nasıl uygulanacağını tartışır. ONNX modeli, boyut olarak önemli ölçüde daha küçüktür ve bir CPU üzerinde daha hızlı çalıştırılabilir. Yazar, dinamik nicelemenin nasıl uygulanacağına ve CPU hızının nasıl kontrol edileceğine ilişkin kod parçacıkları ve talimatlar sağlar.

Video, doğrulukta düşüşe yol açabileceğini kabul ederken, daha hızlı ve daha hafif hale getirmek için bir makine öğrenimi modelini niceleme sürecini gösterir. ONNX ve TensorFlow modelleri nicelleştirilmiş bir modelle karşılaştırıldı ve ikincisinin daha hızlı ve daha hafif olduğu görüldü. Ancak kuantize model, GPU kullanımından diğer modeller kadar fayda sağlamaz. Kuantize modelin doğruluğu daha sonra değerlendirilir ve sadece hafif bir düşüş olduğu bulunur. ONNX modellerini görselleştirme süreci de Loot Rodas Neutron uygulamasının kullanımıyla tartışılıyor. Genel süreç, doğrulukta minimum kayıpla model boyutunun bir gigabayttan 83 megabayta düşürülmesine neden olur.

 

QONNX: ONNX'te keyfi-kesinlikte nicelenmiş NN'leri temsil etmek için bir teklif



QONNX: ONNX'te keyfi-kesinlikte nicelenmiş NN'leri temsil etmek için bir teklif

Konuşmacı, kablosuz iletişimdeki uygulamasının bir örneği ile düşük hassasiyetli nicelemeyi tartışıyor. ONNX'te rastgele-kesinlikte nicelenmiş sinir ağlarını temsil etmek için bir lehçe olan QONNX'i öneriyorlar. QONNX, niceleme gösterimini basitleştirir, daha geniş bir senaryo setine genişletir ve farklı yuvarlama türleri ve ikili niceleme için seçenekler sunar. FPGA'larda dağıtım için kullanılıyor ve Brevitas Python niceleme kitaplığına entegre edildi ve NQCDQ sonraki sürüme entegre edilmek üzere ayarlandı.

  • 00:00:00 Bu bölümde konuşmacı, 8 bitin altında niceleme anlamına gelen düşük kesinlikli niceleme kavramından bahsediyor. Hoparlör, kablosuz iletişim için bir modülasyon sınıflandırma görevinde düşük hassasiyetli nicelemenin nasıl kullanıldığına ve niceleme farkında eğitim sayesinde azaltılmış gecikmeyle yüksek verim elde edilmesine bir örnek sağlar. Konuşmacı, tekdüze nicelemenin temellerini açıklıyor ve nicemlenmiş ve dekuantize edilmiş düğümler arasındaki tamsayı sınırları üzerinden ekstra bir işlev olarak kırpmayı kullanan düşük hassasiyetli sinir ağları için ONNX'in temsil gücünün genişletilmesini öneriyor. Bununla birlikte, konuşmacı, bu yaklaşımın, 8 bitlik çıktıya sahip kuantize doğrusal operatörlerle sınırlı olmak ve farklı yuvarlama türlerini benimseyememek dahil olmak üzere sınırlamaları olduğunu kabul eder.

  • 00:05:00 Bu bölümde, konuşmacı, ONNX'te gelişigüzel-kesinlikli nicemlenmiş sinir ağlarını temsil etmek için bir lehçe olan QONNX'i tanıtıyor. QONNX, sahte niceleme için bir dizi işlemi tek bir düğümde birleştirerek niceleme temsilini basitleştirirken aynı zamanda daha geniş bir senaryo setine genişletir. Farklı yuvarlama türleri, yayın bit girişleri ve ikili niceleme için seçenekler sunar. ONNX çalışma zamanı ve önceden eğitilmiş düşük hassasiyetli modellerle entegre olan QONNX ile başa çıkmak için mevcut çeşitli araçlarla, hızlı makine öğrenimi çabasının bir parçası olarak FPGA'lara dağıtım için formattan yararlanılıyor. QONNX, Brevitas Python niceleme kitaplığına zaten entegre edilmiştir ve NQCDQ, bir sonraki sürüme entegre edilmek üzere ayarlanmıştır.
 

GRCon20 - ONNX ile GNU Radyosunda derin öğrenme çıkarımı



GRCon20 - ONNX ile GNU Radyosunda derin öğrenme çıkarımı

Video, derin öğrenmeyi radyo frekansı alanında esnek, açık kaynaklı bir çözüm olarak entegre etmek için açık bir format olarak ONNX'i kullanmayı tartışıyor. Konuşmacı, hem GNU Radyosu hem de ONNX için Python arayüzlerini kullanan yeni modülleri GR DNN DN4'ü sunar ve yeteneklerini GNU Radyosu tarafından üretilen simüle edilmiş veriler üzerinde eğitilmiş derin bir evrişimli sinir ağı modeli kullanan bir otomatik modülasyon sınıflandırması örneğiyle gösterir. Ayrıca, BGG16 modeliyle SDR verileri üzerinde derin öğrenmeyi sınıflandırma için kullanmanın gerekliliklerini ve zorluklarını tartışıyorlar ve çıkarımı iyileştirmek ve gerçek zamanlı sonuçlara ulaşmak için GPU gibi donanım hızlandırmanın kullanılmasını öneriyorlar. Proje açık kaynaklıdır ve işbirliği teşvik edilir.

  • 00:00:00 Videonun bu bölümünde Oscar Rodriguez, ONNX ile GNU Radyosunda derin öğrenme çıkarımıyla yaptığı çalışmaları tartışıyor. Projelerinin ana hedefi, derin öğrenmeyi radyo frekansı alanına esnek ve açık kaynaklı bir çözüm olarak entegre etmekti. Uyumsuz derin öğrenme çerçeveleri sorununu çözerek, farklı çerçeveler arasında makine öğreniminin birlikte çalışabilirliğine izin veren açık bir format olduğu için ONNX'i seçtiler. Ancak, modelleri ONNX'e uyarlamanın bir maliyeti vardır ve belirli işlemlerde operasyonel kullanılabilirlik sorunları olabilir, ancak ONNX'in Microsoft tarafından aktif olarak geliştirilmesi ve desteklenmesi gerçeğiyle bu durum hafifletilebilir. Nihayetinde ONNX, kullanıcının modeli ile farklı derin öğrenme çerçeveleri arasında bir soyutlama katmanı sağlar.

  • 00:05:00 bölümü, makine öğrenimi modellerinin ONNX bloğunda kullanım için ortak bir biçime dönüştürülmeden önce TensorFlow ve PyTorch gibi çeşitli çerçevelerde tasarlanmasına ve eğitilmesine olanak tanıyan ONNX'in kullanımını tartışıyor. ONNX, derin öğrenme modellerinde yaygın olarak kullanılan bir dizi temel işlemi tanımlar ve çalışma zamanı, çeşitli yazılım ve donanım hızlandırmaları için arabirimler ve destek sağlar. Çalışma zamanı ayrıca, mevcut hızlandırıcılara dayalı olarak farklı yürütme sağlayıcılarına operasyonlar atayan modelin bir grafik gösterimini oluşturur.

  • 00:10:00 Bu bölümde konuşmacı, tüm ONNX işlemleri bu platformda uygulandığı sürece yeni donanım platformlarının desteklenmesine izin veren ONNX'teki yürütme sağlayıcılarının genişletilebilirliğini tartışıyor. Daha sonra hem GNU Radio hem de ONNX için Python arayüzlerini kullanan yeni modülleri GR DNN DN4'ü tanıtırlar. Senkronizasyon modülü, girdileri modelin beklenen formatına uyarlar, modeli dönüştürülen verilerle uydurur ve ardından çıktıyı tekrar tek boyutlu bir formata dönüştürür. Modül ayrıca ONNX'te desteklenen farklı yürütme sağlayıcılarının seçilmesine de izin verir. Konuşmacı, GR DNN DN4'ün yeteneklerini, GNU Radio tarafından üretilen simüle edilmiş veriler üzerinde eğitilmiş derin bir evrişimli sinir ağı modeli kullanan bir otomatik modülasyon sınıflandırması örneğiyle göstermeye devam ediyor.

  • 00:15:00 Bu bölümde, konuşmacı BGG16 modeli ile SDR verileri üzerinde sınıflandırma için derin öğrenmeyi kullanmayı tartışıyor. Modelin girişinin, SDR cihazının çıkışına uyarlanması gereken 128 IQ değerinden oluşan bir vektör gerektirdiğini açıklıyorlar. Ayrıca, derin öğrenme çıkarımının hesaplama açısından yoğun olduğunu ve performansın modelin karmaşıklığına bağlı olduğunu belirtiyorlar. Konuşmacı, GPU gibi donanım hızlandırmanın kullanılmasının çıkarımı iyileştirebileceğini ve gerçek zamanlı sonuçlara ulaşabileceğini öne sürerek sözlerini bitiriyor.

  • 00:20:00 Bu bölümde, konuşmacı, derin öğrenme modeli temsili için standart bir format kullanarak ve çeşitli hızlandırma yöntemlerini destekleyen, derin öğrenme çıkarımını ve yazılım tanımlı radyoyu (SDR) entegre edebilen yeni bir radyo uygulamasını tartışıyor. Konuşmacı, modülün otomatik modülasyon sınıflandırması için nasıl kullanılabileceğini ve donanım hızlandırmasıyla gerçek zamanlı çıkarım elde edilebileceğini gösterir. Konuşmacı ayrıca, modülün farklı derin öğrenme modelleri türleri için daha esnek hale getirilmesi ve blok içinde ön işleme işlevselliğinin dahil edilmesi dahil olmak üzere modülde yapılacak gelecekteki iyileştirmeleri tartışır. Proje açık kaynaklıdır ve işbirliği teşvik edilmektedir.
Neden: