107
微軟
Facebook、微軟聯合推出ONNX 標準,號稱要解決開發框架碎片化
雷鋒網消息,今日微軟和 Facebook 發布了一個全新的開源項目——ONNX,欲借此打造一個開放的深度學習開發工具生態係統。
ONNX 的全稱為“Open Neural Network Exchange”,即“開放的神經網絡切換”。顧名思義,該項目的目的是讓不同的神經網絡開發框架做到互通互用。目前,Microsoft Cognitive Toolkit,PyTorch 和 Caffe2 已宣布支持 ONNX。
ONNX 所針對的,可以說是深度學習開發生態中最關鍵的問題之一:
開發框架的碎片化。
在任意一個框架上訓練的神經網絡模型,無法直接在另一個框架上用。開發者需要耗費大量時間精力把模型從一個開發平台移植到另一個。
借助 ONNX,開發者能把在 PyTorch 上訓練的模型直接拿到 Caffe2 上進行推理。對於把模型從研究階段推向產品階段,這是一個經常遇到的場景。微軟宣布正積極開發 Microsoft Cognitive Toolkit 的下個版本,將會提供對 ONNX 的支持。
ONNX 的工作原理是:
實時跟蹤某個神經網絡是如何在這些框架上生成的,接著,使用這些信息創建一個通用的計算圖,即符合ONNX 標準的計算圖。這樣做行得通,是因為在計算方麵,這些框架產生的最終結果都非常接近,雖然更高級的表達不同。
ONNX 標準意味著什麼?
PyTorch、Microsoft Cognitive Toolkit 等框架提供的界麵,讓開發者創建、運行用來表示神經網絡的計算圖更加方便。雖然功能相似,但每一個框架都用一套不同的格式表示這些計算圖。雷鋒網獲知,ONNX 的表示方式有兩個核心優勢:
框架之間的互用互通
開發者能更方便地在不同框架間切換,為不同任務選擇最優工具。基本每個框架都會針對某個特定屬性進行優化,比如訓練速度、對網絡架構的支持、能在移動設備上推理等等。在大多數情況下,研發階段最需要的屬性和產品階段是不一樣的。這導致效率的降低,比如選擇不切換到最合適的框架,又或者把模型轉移到另一個框架導致額外的工作,造成進度延遲。使用支持 ONNX 表示方式的框架,則大幅簡化了切換過程,讓開發者的工具選擇更靈活。
優化共享
硬件設備商們推出的對神經網絡性能的優化,將能夠一次性影響到多個開發框架——如果用的是 ONNX 表示方式。如果優化很頻繁,把它們單獨整合到各個框架是個非常耗費時間的事。通過 ONNX 表示方式,更多開發者就能獲取這些優化。
技術概括
ONNX 為可擴展的計算圖模型、內部運算器(Operator)以及標準數據類型提供了定義。在初始階段,Facebook 和微軟會專注於推理(Inference)所需要的各項能力(評估)。
每個計算數據流圖以節點列表的形式組織起來,構成一個非循環的圖。節點有一個或多個的輸入與輸出。每個節點都是對一個運算器的調用。圖還會包含協助記錄其目的、作者等信息的元數據。
運算器在圖的外部實現,但那些內置的運算器可移植到不同的框架上。每個支持 ONNX 的框架將在匹配的數據類型上提供這些運算器的實現。
TensorFlow 的缺席
ONNX 標準能否在深度學習開發者們接受,在很大程度上將取決於它在各個框架上的普及程度。
在雷鋒網看來,目前 ONNX 最大的問題是,最受歡迎的開發框架 TensorFlow 沒有兼容 ONNX 標準。亞馬遜的禦用框架 MXNet 也沒有。Facebook 和微軟都表示,將來會持續有更多框架加入到 ONNX 生態中,但沒有透露 TensorFlow 和 MXNet 是否在計劃中。穀歌和亞馬遜也還沒有對此事表達態度,他們願不願意合作,尚屬未知。
如何使用
初始版 ONNX 的代碼、文件,已在GitHub上開源。Facebook 和微軟表示將會持續改進 ONNX, 將會在不久的將來推出範例、工具、reference implementations 以及模型。
更多關於 ONNX 的信息可訪問Facebook 官方博客。
via微軟,venturebeat
最後更新:2017-10-08 01:54:02
上一篇:
關懷特殊人群:微軟獲包容性產品設計獎
下一篇:
微軟將在十月底至少發布一款全新設備,猜猜會是什麼呢?
獲取insider preview版本出錯 錯誤代碼:0x800bfa07
hhukapi.dll,程序丟失怎麼辦
原來的【文本和其他項目大小調整的高級選項】界麵咋沒了?
無法獲取Insider Preview 內部版本 錯誤代碼 0x800bfa07
Windows 10,Windows Defender\Scans文件夾占用空間過大
windows10 *64 16215更新時下載過程中失敗,代碼 0x80240034
安裝16226.1000更新時出現一些問題,但我們稍後會重試。
注冊表值hklm\software\3fd8f8eac是什麼
defender服務無法自動啟動
Microsoft AntimalwareMicrosoft 反惡意軟件 試圖更新簽名時遇到錯誤。
熱門內容
Android Studio 3.0發布,支持 Kotlin;微軟開源深度學習庫MMLSpark;敏捷開發?真的假的?
微軟Surface Note概念手機,三星Note 8的殺手?
微軟2018財年Q1財報:遊戲業務收入僅增長1%
微軟高管解讀財報:雲計算業務發展良好 為客戶創造巨大價值
聚焦場所體驗與本土文化表達,微軟Microsoft馬其頓辦公設計
微軟也來搞折疊屏手機,有望明年推出,打開秒變平板電腦!
微軟槍車球中“車”的代表,《極限競速7》視頻評測
微軟的Kinect停產了,但它為今天的VR/AR做了很多貢獻
微軟一季度財報:遊戲業務盈利增長顯著
微軟買斷未來15年GE風力電廠能源:供應數據中心