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

 

Netron'a hızlı bakış



Netron'a hızlı bakış

Videoda sunum yapan kişi, makine öğrenimi modellerini görüntülemeye ve analiz etmeye yönelik bir araç olan Netron'a genel bir bakış sunar. Netron çeşitli biçimleri destekler ve birden çok platforma kurulabilir. Sunum yapan kişi, Netron'un nasıl başlatılacağını ve çeşitli örnek modeller arasında gezinerek aracın yeteneklerini ve sınırlamalarını vurgulayarak gösterir. Netron, daha basit ağ mimarilerini keşfetmek için yararlı olsa da sunucu, daha karmaşık modelleri görselleştirmek için ek özelliklerden yararlanabileceğini öne sürüyor. Genel olarak sunum yapan kişi, makine öğrenimi modellerini incelemek ve anlamak için yararlı bir araç olarak Netron'u önerir.

Quick look into Netron
Quick look into Netron
  • 2022.05.02
  • www.youtube.com
We look into the machine learning network viewer Netron.Github repository:https://github.com/lutzroeder/netronPlease follow me on Twitterhttps://twitter.com/...
 

Netron, sinir ağı, derin öğrenme ve makine öğrenimi modellerini görüntülemek için bir araçtır





 

Netron - Ağ Görselleştirme Aracı | Makine Öğrenimi | Veri Sihri



Netron - Ağ Görselleştirme Aracı | Makine Öğrenimi | Veri Sihri

Netron, kullanıcıların derin öğrenme modellerinin yapısını ve parametrelerini görsel olarak keşfetmelerine ve incelemelerine yardımcı olan bir Python kitaplığıdır. Analiz için örnek modeller sağlayan ve basit bir kurulum sürecine sahip açık kaynaklı bir kitaplıktır. Kullanıcılar yalnızca iki satırlık bir kodla Netron'u kurabilir ve sinir ağı yapısını, aktivasyon fonksiyonlarını, havuzlama katmanlarını, evrişimli katmanları ve belirli bir makine öğrenimi modelinin her katmanında geçirilen tüm nitelikleri görselleştirmek için kullanabilir. Netron, kullanıcıların görselleştirmeleri PNG dosyaları olarak dışa aktarmasına ve farklı özellikleri ve seçenekleri keşfetmesine olanak tanıyan, kullanımı kolay bir arayüz sağlar.

  • 00:00:00 Bu bölümde, derin öğrenme modellerinin iç yapısını görselleştirmemize yardımcı olan bir python kütüphanesi olan Netron'u öğreniyoruz. Belirli bir modelde kullanılan belirli sinir ağı katmanlarını ve parametrelerini incelemek için Netron'u kullanabiliriz. Netron, analiz için örnek modeller sağlayan ve basit bir kurulum sürecine sahip açık kaynaklı bir kitaplıktır. Kurulduktan sonra, kullanıcılar Netron kitaplığını içe aktarabilir ve bir makine öğrenimi model dosyasına geçmek için "başlat" yöntemini kullanabilir. Netron daha sonra model yapısının görsel bir temsilini oluşturarak kullanıcıların her katmanı ve parametrelerini görsel olarak keşfetmesine olanak tanır.

  • 00:05:00 Videonun bu bölümünde sunucu, makine öğrenimi modelleri için bir ağ görselleştirme aracı olan Netron'un nasıl kullanılacağını gösteriyor. Araç, sinir ağı yapısını, aktivasyon fonksiyonlarını, havuzlama katmanlarını, evrişimli katmanları ve belirli bir makine öğrenimi modelinin her katmanında geçirilen tüm nitelikleri görselleştirebilir. Yalnızca iki satırlık bir kodla, araç yerel bir makineye kurulabilir veya netron.app web sitesinden çevrimiçi olarak erişilebilir. Kullanıcılar, görselleştirmeleri PNG dosyaları olarak dışa aktarabilir ve aracın arayüzünde bulunan farklı özellikleri ve seçenekleri keşfedebilir.
 

PyTorch, TensorFlow, Keras, ONNX, TensorRT, OpenVINO, AI Model Dosya Dönüştürme



[Eğitim Videosu] PyTorch, TensorFlow, Keras, ONNX, TensorRT, OpenVINO, AI Model Dosya Dönüştürme

Videodaki konuşmacı, PyTorch, TensorFlow, Keras, ONNX, TensorRT ve OpenVINO gibi farklı yapay zeka çerçevelerinin avantajlarını ve ödünleşimlerini tartışıyor ve eğitim ve veri dönüştürme için tercih edilen çerçeve olarak PyTorch'u öneriyor. Konuşmacı, PyTorch modellerinin ONNX'e ve ardından TensorRT veya OpenVINO'ya dönüştürülmesi de dahil olmak üzere dönüştürme sürecini açıklıyor ve TensorFlow PB dosyası ve Cafe kullanımına karşı uyarıda bulunuyor. Konuşmacı ayrıca, kayan nokta formatını düzgün bir şekilde ayarlamanın önemini tartışıyor ve çoğu model için FP 32'nin kullanılmasını tavsiye ediyor. Video, model dönüştürme örnekleri sunar ve izleyicileri daha eğitici videolar için resmi web sitesini ziyaret etmeye teşvik eder.

  • 00:00:00 Bu bölümde konuşmacı, PyTorch, TensorFlow, Keras ve Cafe dahil olmak üzere farklı yapay zeka çerçevelerini tartışıyor ve şirketlerinin modeli tekrar kontrol ettikleri bir ONNX dosyası olarak kaydetmek için PyTorch'u kullanmayı tercih ettikleri yöntemi açıklıyor. ONNX Runtime kullanarak veri seti ile. Test başarılı olursa ONNX modelini TensorRT ve OpenVINO formatlarına dönüştürürler. Konuşmacı, TensorFlow PB dosyasının ve Cafe'nin kullanılmasına karşı uyarıda bulunur ve bunun yerine eğitim için orijinal verilerle Python ve PyTorch kullanılmasını önerir. Son olarak, konuşmacı bazen çıkarım motorlarının düzgün bir şekilde ayarlanması için kayan noktanın gerekli olduğundan bahseder.

  • 00:05:00 Bu bölümde, konuşmacı kayan nokta biçimi seçiminin model dönüştürmenin hızını ve kesinliğini nasıl etkilediğini tartışıyor. FP 16'yı kullanmanın hızı artırabileceğini ancak daha az hassasiyete yol açabileceğini, FP 64'ü kullanmanın ise daha yavaş hız ancak daha yüksek hassasiyetle sonuçlandığını açıklıyor. Konuşmacı, çoğu model için FP 32'nin kullanılmasını önerir ve tıbbi görüntü analizi için FP 32 ve FP 64 gibi belirli veri kümeleri türleri için farklı biçimlerin nasıl kullanılabileceğini tartışır. Ayrıca, bir modeli FP 32'den FP 16'ya dönüştürmenin, modelin hassasiyetini artırmak için FP 16 ile kalibrasyon, silme veya yeniden eğitim kullanılarak hafifletilebilecek hassasiyet kaybına yol açabileceğini açıklıyor.

  • 00:10:00 Videonun bu bölümünde konuşmacı, PyTorch, TensorFlow, Keras, ONNX, TensorRT ve OpenVINO gibi farklı yapay zeka çerçevelerini kullanırken hız, kesinlik ve veri bilgileri arasındaki dengeleri tartışıyor. Konuşmacı, PyTorch kullanılmasını ve sağlanan bir çözüm kullanılarak modellerin PyTorch'tan ONNX'e dönüştürülmesini önerir. Ardından, sağlanan başka bir çözümü kullanarak modellerin ONNX'ten TensorRT'ye nasıl dönüştürüleceğini açıklarlar. Konuşmacı, Jupiter Lab'de kodu çalıştırarak dönüştürme sürecini gösterir ve dönüştürülen model dosyalarının nasıl bulunacağını gösterir.

  • 00:15:00 Videonun bu bölümünde konuşmacı, AI modellerini PyTorch'tan ONNX'e ve ardından TensorRT veya OpenVINO'ya dönüştürmenin kolaylığını tartışıyor ve bunun basit bir süreç olduğunu vurguluyor. Ancak, TensorFlow veya Keras kullananlar için konuşmacı, model dönüştürmeleri yapmak daha kolay olacağından veri kümesini yeniden eğitmek için PyTorch kullanılmasını önerir. Model dosyası verileri yalnızca parametreleri içerdiğinden ve H5 parametreler dosyasını içe aktarmadan önce ağ mimarisinin oluşturulmasına ihtiyaç duyulduğu için konuşmacı Keras kullanımında sorunlar olabileceği konusunda uyarır. Konuşmacı, bu tür sorunlara nihai çözümün Café olduğunu öne sürüyor, ancak Café geliştiricileri Café 2'ye taşındığından ve onu sürdürecek kimse olmadığından, konuşmacı ana yapay zeka çerçevesi olarak PyTorch kullanılmasını öneriyor.

  • 00:20:00 Bu bölümde, konuşmacı PyTorch kullanmanın avantajlarını ve yüksek hızı ve iyileştirilmiş mimarisi sayesinde taşımanın kolaylığını tartışıyor. Konuşmacı ayrıca bir v3 ağırlık modelini OpenVINO AIA modeline dönüştürmek için bir çözümün ve nesne algılama için en güçlü çözüm olan Euro v4'ün kullanımına ilişkin bir örnek sunar. Örneği kullanmak için, dönüştürme için iki dosya gereklidir, bir Euro v4 CPP ağırlık dosyası ve bir Euro v4 CFG ağ yapılandırma dosyası. Dönüştürmeden sonra, sonuçları doğrulamak için çıkarım görüntüsünde kullanılmak üzere bir Haitatsu PTH dosyası oluşturulur. Konuşmacı, AI eğitimini yapmak için Python kullanılmasını ve ardından ONNX'e ve ardından TensorRT veya OpenVINO'ya dönüştürülmesini önerir. Son olarak konuşmacı, izleyicileri daha eğitici videolar için resmi web sitesini ziyaret etmeye ve her hafta video listesini almak için ücretsiz üye olmaya teşvik ediyor.
 

Makine öğrenimi projelerini daha az deneme yanılma ile daha hızlı tamamlamak için Zetane'de ONNX'i nasıl kullanıyoruz?



Makine öğrenimi projelerini daha az deneme yanılma ile daha hızlı tamamlamak için Zetane'de ONNX'i nasıl kullanıyoruz?

Zetane Systems'in kurucu ortağı ve CTO'su Patrick Saitama, yapay zekanın kara kutu sorunuyla ilgili sorunları ele almak için şirketinin yeni ürününde ONNX kullanmanın değerini tartışıyor. Zetane'nin motoru, ONNX modellerinin keşfedilmesine ve incelenmesine izin vererek, modelin verilerle etkileşimi hakkında bilgi sağlar ve kalitesini iyileştirmek için daha kararlı stratejilere yol açar. Verilen örnek, Zetane motorunun radyo katmanını inceleyerek ve engelsiz olarak etiketlenmiş daha fazla tünel görüntüsü ekleyerek otonom bir tren modelinde hata ayıklamaya nasıl yardımcı olduğunu göstermektedir. Zetane ayrıca iç tensörleri dinamik olarak incelemek ve daha sonra araştırmak üzere modelin anlık görüntülerini almak için araçlar içerir. Ek olarak, Zetane'nin yeni motoru, YOLOv3 gibi daha büyük modellerin kurulmasına izin verir.

  • 00:00:00 Zetane Systems'in kurucu ortağı ve CTO'su Patrick Saitama, geliştirme döngü sürenizi kısaltmak ve varsayımları azaltmak için ONNX'ten nasıl daha fazla değer elde edebileceğinizi tartışıyor. Merkezi Montreal'de bulunan şirketi Zetane Systems, kısa bir süre önce sektörden bağımsız olan ve yapay zekanın kara kutu sorunuyla ilgili bazı sorunları ele almayı amaçlayan yeni bir ürün piyasaya sürdü. Girdi verilerini ONNX modellerine ileterek ve ardından modelleri Zetane motorunda yansıtarak, hata ayıklamak için her bir operatör düğümünde bulunan tüm tensörlerin yanı sıra mimarisi ve hesaplama grafiği de dahil olmak üzere modeller keşfedilebilir ve incelenebilir. ve modeli optimize edin.

  • 00:05:00 Konuşmacı, Zetane'de ONNX kullanmanın modele ve onun verilerle etkileşimine ilişkin daha derin içgörülere nasıl olanak tanıdığını ve bunun da modelin kalitesini iyileştirmek için daha belirleyici stratejilere nasıl yol açtığını tartışıyor. Verilen örnek, otonom bir tren modelidir ve sürekli motordaki radyo katmanına bakıldığında, modelin tüneli bir engel olarak algıladığını ve bunun da engelsiz olarak etiketlenmiş daha fazla tünel görüntüsünün eklenmesine yol açtığını gösterir. Zetane ayrıca iç tensörleri dinamik olarak incelemek ve daha sonra araştırmak ve iyileştirmek için belirli anlarda modelin anlık görüntülerini almak için araçlar içerir. Ek olarak, YOLOv3 gibi daha büyük modellerin kurulumuna izin veren alıkoyma motoru yakın zamanda piyasaya sürüldü.
 

ONNX Runtime'daki Yenilikler



ONNX Runtime'daki Yenilikler

Bu konuşma, ONNX Runtime 1.10-1.12 sürümlerinin önemli performans iyileştirmeleri, özellikleri ve mobil ve web dahil platformlar hakkında ayrıntılar dahil olmak üzere önemli noktalarını paylaşacaktır. Ryan Hill son 4 yıldır Yapay Zeka Çerçeveleri ekibinde çalışıyor ve burada çoğunlukla operatör çekirdekleri, C API'leri ve dinamik olarak yüklenen yürütme sağlayıcıları üzerinde çalıştı. Bundan önce, en çok görülen işinin slayt gösterisi slayt geçişlerinin çoğu olduğu Office PowerPoint ekibinde çalıştı. Eğlenmek için en son C++ özelliklerini kullanmayı ve dahili derleyici hatalarını bulmayı seviyor.

Videoda, yazılım mühendisi Ryan Hill, birden fazla CPU mimarisini hedefleyebilen, yaygın olarak kullanılan platformlar arası bir çalışma zamanı olan ONNX Runtime'ın çeşitli özelliklerini ve güncellemelerini tartışıyor. ONNX Runtime'a eklenen, op çekirdeklerini doğrudan çağırma yeteneği ve devrik optimize edici ve küçük boyutlu optimizasyon gibi performans geliştirmeleri gibi en son özellikleri vurgulamaktadır. Hill ayrıca, çeşitli donanımlarda en iyi performansı sağlayan ONNX Runtime yürütme sağlayıcılarından ve çalışma zamanında NHWC dönüşümünü destekleyen mobil paketlerin piyasaya sürülmesinden de bahsediyor. Video ayrıca düzene duyarlı operatör desteğini, platformlar arası uygulamalar için Xamarin desteğini, ONNX Runtime web'i ve metin dönüştürmeleri ve matematiksel işlemler dahil olmak üzere model öncesi işleme çalışmasına odaklanan ve şu anda şu anda NLP, vizyon ve metin alanları.

  • 00:00:00 Bu bölümde, ONNX Runtime üzerinde yaklaşık dört yıldır çalışan bir yazılım mühendisi olan Ryan Hill, ONNX Runtime'ın özelliklerini ve yeni sürümlerini tartışıyor. ONNX Runtime'ın birden çok CPU mimarisini hedefleyebilen ve çeşitli programlama dilleri için dil bağlamaları olan bir çapraz platform, çalışma zamanı olduğunun altını çiziyor. Üretimde 160'tan fazla modele sahip olan Microsoft dahil olmak üzere birçok endüstri tarafından yaygın olarak kullanılmaktadır. Ryan ayrıca, bir model çalıştırma çağrısının dışından op çekirdeklerini doğrudan çağırabilme ve model çıkarımı için harici başlatıcıları bayt dizileri olarak besleme yeteneği gibi en son sürümlerde eklenen yeni özelliklerden de bahsediyor. Ek olarak, Ryan en son sürümün devrik optimize edici ve küçük boyutlu bir optimizasyon özelliği gibi performans geliştirmelerinden bahsediyor. Son olarak, ONNX Runtime'ın çeşitli donanımlarda optimum performans göstermesini sağlayan yürütme sağlayıcılarını ve artık çalışma zamanında NHWC dönüştürmeyi destekleyen mobil paketlerinin sürümünü vurguluyor.

  • 00:05:00 Bu bölümde video, düzene duyarlı operatör desteği ve Android ve iOS'ta platformlar arası uygulamalar için Xamarin desteği dahil olmak üzere ONNX Runtime'daki yeni özellikleri ve güncellemeleri ele alıyor. Ek olarak, ONNX Runtime web, daha hızlı olan ve daha az bellek kullanan, web derlemesinde derlenmiş tek bir C++ kod tabanı sunar ve artık model ön-son-işleme çalışmasına odaklanan ve kullanıcıların yapmasına izin veren bir ONNX Runtime uzantı kitaplığı vardır bu tamamen model çalıştırma çağrısı içinde çalışır. Kitaplık, metin dönüştürmeleri, matematiksel işlemler içerir ve şu anda NLP, vizyon ve metin alanlarına odaklanır. Microsoft Office ekibi şu anda bu uzantı kitaplığını kullanıyor.
 

v1.12.0 ONNX Çalışma Zamanı - Sürüm İncelemesi



v1.12.0 ONNX Çalışma Zamanı - Sürüm İncelemesi

ONNX Runtime'ın (ORT) v1.12.0 sürümü, çıkarım yapmaya odaklanır ancak aynı zamanda Hugging Face Optimum entegrasyonu ile birçok Hugging Face modelinin hızlanmasıyla sonuçlanan eğitime sürekli yatırımları içerir. Yeni özellikler, özel operasyonlarda yerel ORT operasyonlarını kullanma ve bir grafik oluşturmadan doğrudan bir yerel veya çalışma zamanı operatörüne çağrı yapma becerisini içerir. Sürüm ayrıca .NET 6 ve Çoklu Platform Uygulama Kullanıcı Arabirimi (MAUI) desteği ve Android'de Neural Processing Unit ve iOS'ta Core ML gibi belirli platformlar için yürütme sağlayıcıları içerir. Çıkarım sırasında bellek tahsisleri azaltılarak ve gereksiz günlük kaydı ortadan kaldırılarak performans iyileştirmeleri yapıldı. Önbellek konumunu ve iş parçacığı havuzu kullanımını geliştirmek için gelecekteki iyileştirmeler planlanmaktadır.

  • 00:00:00 Bu bölümde, ONNX Runtime'ın 1.12 sürümünün yeni özellikleri ve güncellemeleri ele alınmaktadır. Bunlar, .net standart 1.1 desteğinin kullanımdan kaldırılmasını ve ONNX ofset 17 desteğinin eklenmesini ve xml ofset 3'ü içerir. Yeni özelliklerden biri, ayrı bir grafik oluşturmadan bireysel operasyonları başlatma yeteneği ve çıkarım için harici başlatıcıları besleme desteğidir. de eklendi. Diğer güncellemeler arasında python 310 desteği ve python ve java kitaplıklarında mac m1 desteğinin etkinleştirilmesi ve ayrıca c-sharp paketine .net 6 maui desteğinin eklenmesi yer alır. performans ve nicelemede de iyileştirmeler yapıldı ve mobil ve web senaryoları için daha fazla çekirdek eklemeye yönelik devam eden çalışmalarla Qualcomm Snappy ve kaza paketi ep için genel altyapı dahil olmak üzere yeni yürütme sağlayıcıları tanıtıldı.

  • 00:05:00 Bu bölümde, konuşmacı ONNX Runtime'da (ORT) yapılan güncellemeleri tartışıyor ve öncelikli olarak çıkarım yapmaya odaklanıldığından bahsediyor. Ancak, büyük modellerin eğitimini hızlandırmak için ORT eğitimine yatırımlar devam etmektedir. Hugging Face Optimum ile son entegrasyon, birkaç Hugging Face modelinin hızlanmasıyla sonuçlandı. Konuşmacı daha sonra, kullanıcıların özel operasyonlarda yerel ONNX Çalışma Zamanı operasyonlarını kullanmasına izin veren yeni bir özelliği tartışan Randy'yi tanıtır. Randy, bu özelliğin, ONNX Runtime'ın güçlü matris hesaplama yeteneklerini kullanarak özel operatörleri daha performanslı ve çok yönlü hale getirmeye yönelik müşteri taleplerinden geldiğini açıklıyor.

  • 00:10:00 Bu bölümde konuşmacı, müşterilerin bir grafik veya benzeri bir şey oluşturmadan doğrudan yerel veya çalışma zamanı operatörünü aramasına olanak tanıyan ve matris hesaplama işlevlerini yürütmeyi çok daha kolaylaştıran yeni bir özelliği tartışıyor. Bu özellik topluluğa önerildi çünkü başka bir müşteri grubu ses işleme üzerinde çalışıyordu ve ifade yönetimini gerçekleştirmek istiyorlardı, yani bazı geçmiş girdileri veya çıktıları önbelleğe almak, bunları en son girdiyle birleştirmek ve operatörü birleştirilmiş değiştirilmiş bir şekilde beslemek istiyorlardı. giriş. Bunu daha önce başarmak zordu, ancak yeni özellikle müşteriler, ekstre yönetimini yapmak için ONNX Runtime'ın yerel operatörünün etrafına bir sarmalayıcı ekleyebilir, hayatlarını kolaylaştırabilir ve amaçlarına ulaşabilirler. Bu özelliğin nasıl kullanılacağına ilişkin örnekler topluluk web sitesinde mevcuttur.

  • 00:15:00 Bu bölümde, ONNX Runtime Mobile'ın lideri Scott McKay, ONNX Runtime'ın v1.12.0 sürümünde eklenen yeni özellikleri tartışıyor. Sürüm, geliştiricilerin Android, iOS, macOS, Windows ve Linux üzerinde çalışabilen tek bir paylaşılan kod tabanı kullanarak bir uygulama oluşturmasına olanak tanıyan .NET 6 ve Çoklu Platform Uygulama Kullanıcı Arayüzü (MAUI) desteği içerir. ONNX Çalışma Zamanı ayrıca, model yürütme hızını ve güç verimliliğini optimize edebilen Android'de Neural Processing Unit ve iOS'ta Core ML gibi belirli platformlar için yürütme sağlayıcıları içerir. McKay, geliştiricilerin tüm bu çerçevelerde ONNX Çalışma Zamanı kitaplığıyla etkileşim kurmak için aynı C# bağlantılarını kullanabileceğini, ancak cihaz ekran boyutlarındaki farklılıkları işlemek ve görüntüleri işlemek için platforma özgü bazı kodlar gerekebileceğini açıklıyor. ONNX Runtime'ı bir .NET 6 projesine eklemek için geliştiriciler, modeli yürütmek için C++ uygulamasını ve yerel ile etkileşim kurmak için C# bağlamalarını sağlayan microsoft.ml.onnxruntime paketini ve microsoft.ml.onnxruntime.managed paketini kullanabilir. kütüphane.

  • 00:20:00 Bu bölümde konuşmacı, kullanıcıların yeni kitaplıkları nasıl kullanacaklarını öğrenmeleri için örneklerin kullanılabilirliğini tartışır. Yeni sürümün işlevselliğini göstermek için örnek bir Xamarin uygulamasına sahip bir Github deposu var. Ek olarak ekip, tasarımı benzer olacak bir Maui uygulamasını içerecek şekilde uygulamayı güncelleyecek. Son olarak, yeni Maui desteği çok faydalı olacağından ve örnekler mükemmel olacağından, izleyiciler derinlemesine bir eğitime ilgi gösteriyor. Aşağıdaki konuşmacı, ONNX Çalışma Zamanı ekibinin genişletilebilirliğinin ardındaki konsepti açıklıyor ve yürütme sağlayıcıları hakkında güncellemeler sağlıyor. Bu bölümün güncellemesi, yürütme sağlayıcı arabirimi aracılığıyla donanımla tümleştirmeye odaklanmaktadır. Bu sürümde, ekip iş yüklerinden çıkarım yapmaya odaklandı ve Nvidia, Intel ve Qualcomm gibi tedarikçilerle işbirliği birçok iyileştirme sağladı. Geliştirmelerden biri, TensorRT ile birden çok alt grafiğe erişme yükünü azaltan yürütme bağlam belleğini paylaşma seçeneğidir. Başka bir optimizasyon, motorları önceden oluşturmanın çıkarım zamanında motorları yeniden oluşturma süresini azalttığı motor önbelleğe alma desteğiyle ilgilidir.

  • 00:25:00 Bu bölümde, v1.12.0 ONNX Runtime'ın sürüm incelemesi, özellikle Qualcomm tarafından Snapdragon Neural Processing Engine'in kısaltması olan Snappy adlı yürütme sağlayıcısı ele alınmaktadır. Bu, Qualcomm'un mobil Snapdragon SOC'lerde AI iş yüklerini hızlandırmak için kullanılan çalışma zamanıdır. Snappy desteği yepyeni ve geçen ayki Microsoft Build konferansında duyurulmuştu. Intel, Snappy desteğinin yanı sıra OpenVINO etkin ONNX Runtime ile PyPI üzerinde barındırılan Python paketleri oluşturmaya da başladı. Bu, geliştiricilerin kurulumunu kolaylaştırır ve dinamik giriş şekillerine sahip modeller için daha iyi destek sağlar. Belgelere ve örneklere bağlantılar da sürüm notlarında sağlanır.

  • 00:30:00 Bu bölümde, Microsoft'ta baş yazılım mühendisi olan Dmitry Smith, ONNX Runtime'ın 1.12.0 sürümünde yapılan performans iyileştirmelerini tartışıyor. Müşteriler, daha düşük CPU gecikme süresi ve çıkarım için kullanım talep ederek Microsoft'a başvurdu ve bu da iyileştirmelere yol açtı. Ekip, kodun yazılma biçiminde yapılan değişikliklerle, çıkarım sırasında bellek tahsislerini azaltmaya ve gereksiz günlüğe kaydetmeyi ortadan kaldırmaya odaklandı. İyileştirmeler, bazı senaryolarda gecikme süresinin iki veya daha fazla kat azalmasına neden oldu ve önbellek konumunu ve iş parçacığı havuzu kullanımını geliştirme gibi daha fazla iyileştirmeler, gelecek sürümler için planlanıyor.
 

v1.13 ONNX Çalışma Zamanı - Sürüm İncelemesi



v1.13 ONNX Çalışma Zamanı - Sürüm İncelemesi

ONNX çalışma zamanının 1.13 sürümü, güvenlik yamaları, hata düzeltmeleri ve performans geliştirmeleri ile yakın zamanda piyasaya sürüldü. Güncelleme, GPU niceleme için Transformer modellerini optimize etmeye odaklanır ve cihazdan bağımsız olan ve 150'den fazla operatörü destekleyen doğrudan makine öğrenimi yürütme sağlayıcıları için destek ekler. Ek olarak sürüm, XNN paketi gibi yeni EPS ile uyumluluk için ORT mobil altyapısına yönelik güncellemeler içerir. Transformer tabanlı modellerin performansını iyileştirmek için nicelemenin kullanımı, nicelenmiş BERT modelini çalıştırmak için CUDA yürütme sağlayıcısının optimizasyonu ve ONNX çalışma zamanı yürütme motorunu optimize ederken doğruluğu en üst düzeye çıkarmak için nicemlenmiş bilinçli eğitimin kullanılmasıyla da tartışılmaktadır.

  • 00:00:00 Bu bölümde konuşmacı, güvenlik yamaları, hata düzeltmeleri ve performans iyileştirmeleri içeren ONNX çalışma zamanının yakın zamanda yayınlanan 1.13 sürümünü tartışıyor. Güncelleme, GPU niceleme için Transformer modellerini optimize etmeye odaklandı ve doğrudan makine öğrenimi yürütme sağlayıcıları için destek ekledi. İkincisi, 150'den fazla farklı operatörü destekleyen ve cihazdan bağımsız olan bir makine öğrenimi API'sidir. Konuşmacı ayrıca Huawei'nin Ascend 310 donanımını desteklemek için katkıda bulunduğu yeni can EP yürütme sağlayıcısından da bahsediyor. Ayrıca ORT mobil altyapısında güncellemeler yapılarak XNN paketi gibi yeni EPS ile uyumlu hale getirilmiştir.

  • 00:05:00 Bu bölümde, konuşmacılar ONNX çalışma zamanı sürümü v1.13'ü ve bunun DirectX 12'ye kadar destekleyen herhangi bir GPU ile nasıl çalıştığını tartışarak Windows makineleri için optimize etmeyi kolaylaştırır. Ayrıca sürüm 1.12'deki ONNX ofsetlerindeki yeni operatörleri ve güncellemeleri tartışıyorlar. Konuşmacılar, yeni sürümün, ONNX çalışma zamanında yürütme sağlayıcısından yararlanmayı kolaylaştırmak için farklı model mimarileri için desteği nasıl genişlettiğini vurguluyor. Ayrıca, yeni yürütme sağlayıcısı Excellent Impact'i ve el yazısıyla yazılmış çekirdeklerin bulunmadığı mobil aygıtlardaki performans boşluklarını nasıl doldurduğunu tartışıyorlar. Özellik şu anda Android için etkinleştirilmiştir, ancak ekip bir sonraki sürümde iOS ve Xamarin veya Maui derlemeleri için destek eklemeyi amaçlamaktadır. Son olarak, BERT model niceleme için optimizasyonlar adı verilen yayındaki yeni özelliği tartışıyorlar.

  • 00:10:00 Bu bölümde konuşmacı, BERT gibi Transformer tabanlı modellerin performansını iyileştirmek için nicelemenin kullanımını tartışıyor. CUDA yürütme sağlayıcısını nicelleştirilmiş BERT modelini çalıştırmak için nasıl optimize ettiklerini ve ONNX çalışma zamanı yürütme motorunu optimize ederken doğruluğu en üst düzeye çıkarmak için nicelleştirilmiş bilinçli eğitimin kullanımını açıklıyorlar. Konuşmacı, BERT modelinin nicelleştirilmiş bilinçli eğitiminin nasıl yapılacağına ve daha fazla optimizasyon için ONNX çalışma zamanında mevcut araçlarla modeli dışa aktarmaya ilişkin örnekler sağlar. ONNX çalışma zamanı, nicelleştirilmiş farkındalık eğitimini daha iyi destekleyerek, maksimum doğruluğu korurken daha fazla performans optimizasyonu sağlayabilir. Kullanıcı modeli dışa aktarmak için örnekleri izledikten sonra, ONNX çalışma zamanının yeni sürümünde bulunan çevrimdışı araçların modeli daha iyi hız için optimize edebileceğini belirtiyorlar.
 

ONNX Çalışma Zamanı (ORT) nedir?



ONNX Çalışma Zamanı (ORT) nedir?

ONNX Runtime (ORT), makine öğrenimi çıkarımını optimize eden ve hızlandıran, kullanıcıların modellerini desteklenen herhangi bir makine öğrenimi kitaplığında eğitmesine, ONNX formatına dışa aktarmasına ve çıkarımı tercih ettikleri dilde gerçekleştirmesine olanak tanıyan bir kitaplıktır. Konuşmacı, ONNX Runtime ile PyTorch kullanarak çıkarım gerçekleştirme örneğini vurgular ve kullanıcıların tercih ettikleri kurulum için gereken farklı API'leri ve araçları keşfetmek için ONNXRuntime.ai'yi ziyaret edebileceklerine dikkat çeker.

 

2020 ONNX Yol Haritası Tartışması #1 20200903



2020 ONNX Yol Haritası Tartışması #1 20200903

Halkın katkılarına açık olan ONNX yol haritası belgesi bu videoda önemli bir konu. Tartışma, gelişen veriler, ön işleme ve ONNX'i QFLO gibi yatay ardışık düzenlere genişletme dahil olmak üzere bir makine öğrenimi ardışık düzeninde ONNX'i genişletmeyi kapsar. Katkıda bulunanlar tarafından yapılan öneriler, veri çerçevelerinin desteklenmesini ve ön işleme için yeni operatörlerin benimsenmesini içerir. Konuşmacılar ayrıca ONNX'in desteğini genişletmek ve diğer kitaplıklar arasında birlikte çalışabilirliği garanti etmek için Python veri API standardının benimsenmesini tartışıyorlar. Ayrıca konuşmacılar, kullanıcılar için makine öğrenimi geliştirmeyi kolaylaştırmak amacıyla ONNX'i Kubernetes ve Kubeflow'a entegre etmeyi tartışıyor. Grup, teklifin etkisini değerlendirmeye devam etmeyi planlıyor ve yol haritası veya yönlendirme komitesi aracılığıyla geri bildirim almaktan memnuniyet duyuyor.

  • 00:00:00 Bu bölümde konuşmacı, kamuoyunun katkılarına açık olan ONNX yol haritası belgesini tartışır ve bu katkıların değişikliklerin uygulanmasındaki önemini vurgular. Konuşmacı, 14 Ekim'de yapılması planlanan bir topluluk toplantısıyla birlikte haftalık olarak altı yol haritası tartışması yapılacağından bahsediyor. Tartışma üç ana bölüme ayrılmıştır ve ikinci bölüm ONNX'i bir makine öğrenimi ardışık düzenine genişletmeye odaklanmaktadır. Spesifik olarak tartışma, gelişen verileri ve ön işlemeyi ve ONNX'i QFLO gibi yatay boru hatlarına genişletmeyi kapsar. Konuşmacı ayrıca, veri çerçevelerini desteklemek ve ön işleme için yeni operatörleri benimsemek gibi katkıda bulunanlar tarafından yapılan bazı önerileri özetler.

  • 00:05:00 Bu bölümde tartışma, ONNX yol haritasına ve ses spektrogram işlemeyi destekleme ve veri düzeni desteğini genişletme gibi çeşitli önerilere odaklanır. Konuşma ayrıca, ONNX'in makine öğrenimi boru hattı üzerindeki etkisinin önerilen uzantısını ve ONNX içindeki veri çerçevelerini desteklemenin potansiyel faydalarını da kapsar. Katılımcılar, Python Veri API Konsorsiyumu'nun dizi ve veri çerçevesi birlikte çalışabilirliği için bir veri API standardı oluşturma çabalarına ilişkin görüşlerini paylaşan bir üye ile görüşlerini ifade eder. Grup, ONNX'in bu alanlardaki yeteneklerini genişletmenin iyi bir şey olduğu ve daha geniş endüstri girişimleriyle uyumlu olduğu konusunda hemfikir görünüyor.

  • 00:10:00 Bu bölümde konuşmacılar, ONNX desteğini genişletmenin ve aynı standarttaki diğer tüm kitaplıklar arasında birlikte çalışabilirliği garanti etmenin bir yolu olarak Python veri API standardının benimsenmesini tartışıyor. Konuşmacı, standardın benimsenmesinin model değişimini kolaylaştıracağını ve zaman çizelgesini daha büyük konsorsiyumla uyumlu hale getirmenin kullanıcıların ONNX kullanması için daha iyi olacağını söylüyor. Ayrıca ONNX ile veri çerçevesi gibi geleneksel veri yapısı arasındaki farkı ve aynı standardın diğer kütüphaneler tarafından benimsenmesi ihtiyacını tartışırlar.

  • 00:15:00, son kullanıcılar için makine öğrenimi geliştirmeyi kolaylaştırmak için ONNX'i Kuflow boru hattına entegre edebilir. Chen, uçtan uca makine öğrenimi geliştirmeyi düzenlemek için tüm bileşenlerin birlikte çalıştığı bir işlem hattı kavramından bahseder. Kuflow, son kullanıcılara sorunsuz bir deneyim sağlamak için model ve veri içeriğini altyapıyla birleştirir. Chen, kullanımını genişletmek ve makine öğrenimi geliştiricilerinin işini kolaylaştırmak için ONNX'in bu ardışık düzene nasıl entegre edilebileceğini araştırıyor.

  • 00:20:00 Bu bölümde konuşmacılar, Kubernetes ve Kubeflow kullanan kullanıcıların altyapıları ve ortamları için ONNX'ten yararlanmalarını kolaylaştırma fikrini tartışıyor. Amaç, model hayvanat bahçesinden modeller almak ve ONNX kullanarak uçtan uca bir ardışık düzen oluşturmak için erişimi kolay bir API geliştirmektir. Konuşmacılar, Kubeflow'daki bir makine öğrenimi sürecinin çıkarım bölümünü açıklamak için ONNX'i kullandıkları bir örneği sergiliyor ve veri işleme ve dağıtılmış eğitim dahil olmak üzere daha fazla adımı kapsayacak şekilde ONNX bileşenlerini geliştirmeye yönelik fikirleri özetliyor. Buradaki fikir, Kubernetes'in gücünden yararlanırken aynı zamanda makine öğrenimi sürecindeki daha fazla adımı ele almaktır.

  • 00:25:00 Bu bölümde konuşmacılar, QFlow'u ONNX işine sahip olacak şekilde genişleterek dağıtılmış eğitimi etkinleştirecek ve model eğitimi bölümüne geçmek için veri işleme ve dönüştürmeyi ekleyecek. ONNX çalışma zamanının kendisi, bugün PyTorch'un trafo modellerini eğitmeyi desteklemektedir, ancak ONNX model eğitimiyle ilgili hala ilerleme kaydedilmesi gerekmektedir. Konuşmacılar, verilerin modeller için nasıl önceden işlenmesi ve dönüştürülmesi gerektiğini görmek için model hayvanat bahçesindeki modellerle başlamayı öneriyor, ancak bunun yalnızca ONNX çekirdek projesinin içinde olmadığını ve bileşenleri tanımlamak için daha yüksek düzeyli bir çerçeve gerektirdiğini unutmayın. CoolFlow gibi.

  • 00:30:00 Bu bölümde, katılımcılar ONNX yol haritası için yapılan bir öneriyi tartışır ve slaytları belgeye bağlamayı önerir. Grup, sonraki toplantılarda teklifin etkisini değerlendirmeye devam etmeyi planlıyor ve uygulama üzerinde daha fazla kapanış yapmayı umuyor. Ayrıca geri bildirimleri memnuniyetle karşılarlar ve kullanıcıları yol haritası veya yönlendirme komitesi aracılığıyla göndermeye teşvik ederler. Tartışma bir veda ve gelecekteki toplantılara davet ile sona erer.