為AI程序員減負!微軟來源深度學習庫SynapseML,支持可擴展的智能
本周三,微軟宣布開源一個簡單、多語言的、大規(guī)模并行的機器學習庫SynapseML(以前稱為MMLSpark),以幫助開發(fā)人員簡化機器學習開發(fā)與部署。
即使對于最有經驗的開發(fā)人員來說,構建機器學習管道也會很困難。對于初學者來說,組合來自不同生態(tài)系統(tǒng)的工具需要大量代碼,而且許多框架在設計時并沒有考慮到服務器集群。數(shù)據(jù)科學團隊在使用更多機器學習模型方面也面臨越來越大的壓力。
微軟表示,借助SynapseML,開發(fā)人員可以構建可擴展的智能系統(tǒng)來解決跨領域的挑戰(zhàn),包括文本分析、翻譯和語音處理。
SynapseML使開發(fā)人員能夠將超過45種不同的最先進機器學習服務直接嵌入到他們的系統(tǒng)和數(shù)據(jù)庫中。
其最新版本增加了對分布式表單識別、對話轉錄和翻譯的支持,這些即用型算法可以解析各種文檔、實時轉錄多個對話者的聲音和翻譯100多種不同的語言。
▲開源機器學習庫SynapseML界面
開源鏈接為: https://github.com/microsoft/SynapseML
一、五年沉淀,SynapseML直擊AI落地痛點
SynapseML的構建基于微軟強大的Spark(計算引擎)生態(tài)系統(tǒng),包括工業(yè)大數(shù)據(jù)處理領域的“網(wǎng)紅”計算引擎Apache Spark、SparkML等。
SynapseML為Spark生態(tài)系統(tǒng)添加了許多深度學習和數(shù)據(jù)科學工具,包括Spark機器學習構建流程以及其他深度學習工具的無縫集成。這些工具可為各種數(shù)據(jù)源提供強大且高度可擴展的預測和分析模型。
SynapseML庫可用于Azure Synapse Analytics工具上,該工具能夠按照算法運行需求或根據(jù)開發(fā)人員提前配置的資源,為AI模型收集、處理數(shù)據(jù)。
“在過去的五年中,我們一直致力于改進和穩(wěn)定用于生產工作負載的SynapseML庫。使用Azure Synapse Analytics的開發(fā)人員將很高興得知SynapseML現(xiàn)在在這項服務上普遍可用,并提供企業(yè)服務。”微軟軟件工程師Mark Hamilton在一篇博客文章中寫道。
AI技術的使用和分析能力逐漸增強,但大約87%的數(shù)據(jù)科學項目仍未產業(yè)化落地。根據(jù)美國AI算法交易服務平臺Algorithmia最近的調查,22%的公司需要一到三個月的時間來部署模型以實現(xiàn)業(yè)務價值,而18%的公司需要三個月以上的時間。
SynapseML將現(xiàn)有的機器學習框架和微軟開發(fā)的算法打包,統(tǒng)一放到一個API中,以此來解決數(shù)據(jù)項目無法落地的挑戰(zhàn),該API可用在Python、R、Scala和Java中。SynapseML使開發(fā)人員能夠幫助需要多個框架的使用案例實現(xiàn)組合,例如創(chuàng)建搜索引擎,同時在可調整大小的計算機集群上訓練和評估模型。
二、無監(jiān)督學習功能,可填補研究空白
正如微軟在該項目的網(wǎng)站上所解釋的那樣:“SynapseML中的工具允許用戶制作跨越多個機器學習生態(tài)系統(tǒng)的強大且高度可擴展的模型。SynapseML還為Spark生態(tài)系統(tǒng)帶來了新的網(wǎng)絡功能。通過HTTP on Spark項目,用戶可以將任何Web服務嵌入到他們的SparkML模型中,并使用他們的Spark集群進行大規(guī)模的工作。”
▲引擎庫SynapseML架構
SynapseML還集成了開放神經網(wǎng)絡交換 (ONNX),這是一個由微軟和Meta(原Facebook)共同開發(fā)的框架,可以在運行時使用來自不同機器學習生態(tài)系統(tǒng)的模型。通過集成,開發(fā)人員只需幾行代碼即可執(zhí)行各種經典機器學習模型。
該API具有“無監(jiān)督學習AI”的功能,包括用于理解數(shù)據(jù)集不平衡的功能,例如種族或性別等敏感數(shù)據(jù)集特征是否被過度解讀或無法識別,而無需標記訓練數(shù)據(jù)和模型的可解釋性,也就是說明為什么模型會做出某些預測以及如何改進訓練數(shù)據(jù)集。
SynapseML引入可以用于個性化推薦的Vowpal Wabbit框架,以及強化學習的新算法模型contextual bandit,幫助開發(fā)人員訓練AI模型。
在不需要標記數(shù)據(jù)集的情況下,無監(jiān)督學習可以幫助填補某些領域知識的空白。例如,F(xiàn)acebook最近發(fā)布的無監(jiān)督模型SEER,可以在10億張圖像上進行訓練,并能在一系列計算機視覺基準測試中取得較優(yōu)秀的結果。
然而,無監(jiān)督學習并不能消除系統(tǒng)預測中存在偏差或缺陷的可能性。一些專家認為,消除這些偏差可能需要對無監(jiān)督模型進行專門培訓,并使用額外的、較小的數(shù)據(jù)集來消除偏差。
“我們的目標是讓開發(fā)人員免于擔心分布式實現(xiàn)細節(jié)的麻煩,并能夠將它們部署到各種數(shù)據(jù)庫、集群和編程語言中,而無需更改開發(fā)人員的代碼。”Hamilton補充道。
結語:開源引擎庫,促進算法落地
伴隨著科技發(fā)展突飛猛進,AI所引發(fā)的技術革命也在飛速發(fā)展,包括機器學習等領域的AI研究在性能、效率上不斷升級的同時,其算法落地仍面臨困境,無法大規(guī)模投入使用。
微軟此次開源SynapseML庫,不斷改進機器學習算法,將現(xiàn)有的機器學習框架和微軟開發(fā)的算法統(tǒng)一,提高AI的數(shù)據(jù)處理和分析能力,進一步促進AI技術發(fā)展。