Build 2019 微軟 Azure Machine Learning Services 相關技術更新

Herman Wu
7 min readMay 7, 2019

--

微軟//Build/ 大會已經進行了第一天, 趁記憶猶新把一些Azure Machine Learning 相關的服務更新整理一下:

Azure Machine Learning Services

- AutoML (Automatic Machine Learning)

這幾年資訊領域最火紅的技術之一應該是 Machine Learning (AI). 而各科技大廠的技術火力展示重點領域, Automatic Machine Learning 絕對佔有一席之地, 如H2O 的AutoML, Google的Cloud AutoML, 開源的 auto-sklearn, autoKeras 以及本篇接下來介紹的微軟 AutoML.

微軟的AutoML 屬於 Azure Machine Learning Services 的其中一個服務, 這個服務在去年九月底Ingite 大會中正式Preview. 這個服務的原型架構是基於2017微軟研究院發表的Paper, 透過collaborative filtering, Bayesian optimization, probabilistic matrix factorization 等的一些技術從大量的機器學習訓練中學習如何挑選適合的Feature Enginee跟機器學習演算法。

Azure AutoML 在運作時需要透過雲端ML資料庫去分析目前模型訓練的結果, 並決定下一步要做那些調整不過這中間過程中並不需要將使用者原始資料送到雲端, 而是把每個階段模型訓練的結果配合資料的特性資訊選擇下一階段(Interation)要使用的Feaure Engineering方式及演算法架構. 繞舌的說就是透過微軟的大量機訓練歷史資料庫,藉由機器學習來協助開發者進行機器學習.

由於Azure AutoML 可以透過Python SDK 來呼叫與操作, 因此可以很方便的在筆者平常使用編輯器VSCode 上直接呼叫使用.

或者也可以在JupyterNotebook 上使用:

由於Azure AutoML 是Azure Machine Learning Services 的一環, 因此所有的訓練資料與結果都直接在Azure Machine Learning Service結合,統一的管理與顯示。

同時也可以針對個別階段的訓練去了解模型的各項參數設定與模型預測績效。

Azure AutoML 主要目的減少開發機器學習所需的時間與門檻, 在這次 //Build/ 大會上更近一步的簡化建立機器學習所需要撰寫的程式碼, 推出 “無程式碼(zero-code)”的 AutoML 操作介面。使用者可以直接Azure Machine Learning Service 的介面上, 直接上傳資料。

然後透過Web介面設定所有的AutoML 參數, 就可以透過微軟AutoML服務來訓練模型, 訓練與測試各式模型, 找出適合的演算法與效果較好的Feature Engineering方式, 在毋需大量人力調教的狀況下, 得到一個優化過的預測模型。

除了公布 “無程式碼(zero-code)”的 AutoML 新功能外, 微軟在上個月份(April) 其實已經陸陸續續宣布把AutoML這個技術延伸到下面產品中:

此外在近期的更新中, Azure AutoML 也新增了 Timer Series Prediction, 同時在可選用的ML模型上也加入了XGBooot 演算法。

- Azure Machine Learning visual interface

另外這次Azure Machine Learning Services 也宣布把過去Azure Machine Learning Studio 的拖拉式介面帶到 Azure Machine Learning Services 中, 叫做 Azure Machine Learning visual interface . 讓喜歡視覺化開發介面的使用者, 一樣可以藉由圖形拖拉的方式設定與訓練機器學習模型.

- Cloud-based Notebook Server

當然青菜蘿蔔各有所好, 除了滿足喜歡圖形介面的使用者外, 針對喜歡指令/API介面的開發者來說, 這次AML Services 也加上了新的 Cloud-based Notebook Server 功能。由於許多資料科學家/資料工程人員的工作環境都在Jupyter Notebook Server上, 每次使用VM只是為了要有Jupyter Notebook環境可以使用。所以這次微軟也直接在AML Services 介面上直接加上Notebook VM功能。讓這類VM的管理與使用更加的方便與直覺。

機器學習的DevOp — MLOps

這次//Build/也把Azure 上資料科學專案中的DevOps流程正式命名為MLOps. MLOps結合Azure DevOps 服務與 AML Service, 讓資料科學團隊的成員也可以對機器學習專案做好像版控, 上架,效能監控, 服務管理等一般軟體專案會採用的軟體工程管理步驟。

這樣的Audit與佈署管理需求在大企業及中大型專案特別的需要。AML CLI 也在這新增了Azure DevOps extension讓兩個服務結合更完整。

FPGA, ONNX, MLFlow, Azure Open Datasets

其他近期Azure Machine Learning 相關的宣布包括:

參考資訊:

--

--

Herman Wu
Herman Wu

Written by Herman Wu

Senior Software Engineer @Microsoft

No responses yet