當前位置:
首頁 > 新聞 > 微軟開源ONNX Runtime,想用什麼深度學習框架任你選!

微軟開源ONNX Runtime,想用什麼深度學習框架任你選!

新智元報道

來源:Azure

編輯:大明

【新智元導讀】微軟宣布將多平台通用ONNX機器學習引擎開源,此舉將讓機器學習框架,向著機器學習框架的標準化和性能優化方向邁進了一大步。此前,為了推進AI框架標準化,更好地支持PyTorch和TensorFlow等框架,微軟甚至降低了對自家CNTK框架的宣傳調門,可謂「用心良苦」。

當地時間12月4日,微軟在GitHub上宣布ONNX Runtime開源? 。

ONNX Runtime是適用於Linux,Windows和Mac上ONNX格式的機器學習模型的高性能推理引擎。

ONNX 是微軟與Facebook和AWS共同開發的深度學習和傳統機器學習模型的開放格式。ONNX格式是開放式生態系統的基礎,使人工智慧技術更易於訪問,而且可以為不同人群創造價值:

開發人員可以為自己機器學習任務選擇合適的框架,框架作者可以集中精力推出創新,提高框架的性能。對於硬體供應商來說,也可以簡化神經網路計算的複雜度,實現優化演算法。

過去20多年來,微軟一直在進行人工智慧研究,並將機器學習和深度神經網路整合到旗下眾多產品和服務中。由於團隊使用許多不同的培訓框架並針對不同的部署選項,因此確實需要統一這些分散的解決方案,以便快速,簡單地操作模型。

此次開源的ONNX Runtime為這個問題提供了解決方案。該工具為數據科學家在選擇的框架內訓練和調整模型提供了更高的靈活性,並在雲端和產品設計中以高性能打造這些模型。

ONNX引擎是Windows ML組件的關鍵部分。微軟正在將這種機器學習界面納入到Windows 10系統中,讓開發人員在自己的Windows應用程序上使用訓練過的機器學習模型。 Windows ML推理引擎可以在Windows設備上對這些模型進行本地評估,開發人員無需將模型放到雲中運行。

ONNX Runtime有什麼用?

ONNX是微軟公開推出的首款推理機,完整支持ONNX 1.2和 ONNX機器學習的更高版本。這意味著ONNX Runtime直接隨著ONNX的標準進步,實現對一大批AI模型和技術突破的支持。

微軟的團隊在使用ONNX Runtime來改善在Bing搜索、廣告、Office產品套件等核心業務中的評分延時,提高運行效率。而對於由其他工具轉而使用ONNX的模型,其平均表現提升了2倍。此外,微軟的其他一些服務,如Windows ML 和ML.net等,也納入了ONNX Runtime支持的業務之中。

ONNX Runtime在設計上是輕量級和模塊化的,CPU的構建只有幾M位元組。可擴展架構、優化硬體加速器,降低計算延時,提升計算效率。

英偉達、英特爾、高通等巨頭紛紛支持

很多業界領先的企業都在積極將自己的技術與ONNX Runtime實現集成和整合,使自己的服務能夠完整支持ONNX規範,同時實現性能的最優化。

微軟和英特爾正在合作,將nGraph編譯器集成為ONNX Runtime的執行提供程序。nGraph編譯器能夠通過應用非設備特定和設備特定的優化來實現現有和未來的硬體加速。與原生框架相比,使用nGraph Compiler執行CPU推理任務可將性能提升45倍。

英偉達正在努力將TensorRT與ONNX Runtime實現整合,為在英偉達的GPU上部署快速增長的模型和應用程序提供簡便的工作流程,同時實現最佳性能。

NVIDIA TensorRT包括一個高性能的推理優化器和運行時,可以在推薦器,自然語言處理和圖像/視頻處理等應用程序中以最小的延遲提供極高的吞吐量。

ONNX的另一個早期支持者是高通,也支持ONNX Runtime。高通AI業務高級主管Gary Brotman表示:「ONNX Runtime的推出和開源是微軟提升跨設備類別框架的互操作性,實現標準化和性能優化的積極一步,我們希望開發人員歡迎在驍龍移動平台上支持ONNX Runtime。

業內領先的物聯網晶元製造商恩智浦(NXP)最近也宣布支持ONNX Runtime。「我們希望,用戶在眾多機器學習框架中進行選擇時能夠擁有最大的靈活性和自由度。」

恩智浦AI技術中心負責人Markus Levy表示。「我們很高興能夠通過支持微軟在我們的平台上發布ONNX Runtime,讓機器學習開發者客戶群能夠享受ONNX帶來的好處。」

如何使用ONNX Runtime

首先,你需要建立一個ONNX模型。沒有ONNX模型?沒問題。ONNX的優點就是能夠通過眾多工具實現框架的互操作性? 。你可以直接從ONNX Model Zoo獲得ResNet和TinyYOLO等熱門模型的預訓練版本。

你還可以使用Azure Custom Vision Cognitive Service創建自己的自定義計算機視覺模型。 如果已經擁有TensorFlow、Keras、Scikit-Learn或CoreML格式的模型,可以使用我們的開源轉換器(ONNX MLTools和TF2 ONNX)進行轉換。

可以使用Azure機器學習服務訓練新模型並保存為ONNX格式。

要使用ONNX Runtime,只需安裝所需平台和所選語言的軟體包,或者從源代碼創建。ONNX Runtime支持? CPU?和? GPU?(CUDA)? 以及兼容Linux、Windows和Mac上的Python、C#和C介面。具體的安裝說明可以在GitHub中獲取。

你可以直接從源或預編譯的二進位文件將ONNX Runtime集成到代碼中,一種簡單的操作方法是使用Azure機器學習為應用程序部署服務,以待調用。

參考鏈接:

https://www.zdnet.com/article/microsoft-open-sources-the-inference-engine-at-the-heart-of-its-windows-machine-learning-platform/

Github:

https://github.com/microsoft/onnxruntime

【加入社群】

新智元 AI 技術 + 產業社群招募中,歡迎對 AI 技術 + 產業落地感興趣的同學,加小助手微信號:aiera2015_2入群;通過審核後我們將邀請進群,加入社群後務必修改群備註(姓名 - 公司 - 職位;專業群審核較嚴,敬請諒解)。


喜歡這篇文章嗎?立刻分享出去讓更多人知道吧!

本站內容充實豐富,博大精深,小編精選每日熱門資訊,隨時更新,點擊「搶先收到最新資訊」瀏覽吧!


請您繼續閱讀更多來自 新智元 的精彩文章:

福布斯2019 AI趨勢大預測:語音圖像技術突飛猛進,要像信任醫生一樣信任AI
20億美元分手費已付,高通收購恩智浦能否起死回生?

TAG:新智元 |