深度學習框架SINGA升級爲Apache頂級項目

Apache軟件基金會(ASF)最近宣佈,分佈式深度學習框架SINGA升級爲頂級項目(TLP,top-level project)。這表明了SINGA項目所達到的成熟度和穩定性。SINGA已經得到了銀行、醫療健康等多行業中企業的應用。

SINGA最早由新加坡國立大學研究人員開發,並於2015年三月 進入ASF孵化器。SINGA提供了一種在機器集羣中分佈式訓練深度學習模型的計算框架,降低了模型訓練所需的時間。SINGA不僅僅是一種學術研究平臺,而且已在花旗集團、世邦魏理仕等多家企業得到了商業應用,並在健康醫療行業得到多處應用,例如爲糖尿病前期患者提供幫助的應用

深度學習模型所取得的成功,是由大規模數據集的使用所驅動的。例如包括成千上萬圖像的ImageNet、具有上百萬參數的複雜模型等。谷歌的自然語言模型BERT具有近3億個參數,是在近30億個單詞上訓練得到的。但是,完成這種訓練通常需要數個小時,甚至數天時間。爲加速訓練過程,研究人員引入了並行處理技術,將計算任務分佈到計算集羣的多臺設備上。SINGA研究團隊負責人黃銘鈞教授指出:

深度學習必須擴展到分佈式計算,因爲…深度學習模型通常規模巨大,並需要在大型數據集上訓練。如果使用單個GPU,通常需要數百天時間。

分佈式深度學習有兩種並行策略。一種是數據並行,即多臺機器分別處理不同的輸入數據子集;另一種是模型並行,即多臺機器分別訓練神經網絡模型的不同部分。SINGA同時支持上述兩種策略,也支持兩種策略的組合使用。爲協調集羣機器間的工作,並行策略將引入額外的通信和同步開銷。SINGA實現了多種優化技術,力圖降低上述開銷。

SINGA升級爲TLP項目,表明該項目已經通過了包括軟件質量和社區等在內的多個里程碑 。理論上看,成爲TLP項目將會得到更多解決方案的考慮。但採納該軟件的一個可能障礙,就是SINGA設計人員選擇了實現自身的API,並未基於Kera等現有API去建模神經網絡。與之不同,Uber開源的Horovod計算框架支持開發人員導出現有模型到目前廣爲使用的兩個深度學習框架,即TensorFlowPyTorch。尤其是PyTorch,近期得到大量研究論文採用。

ASF還支持了多個頂級分佈式機器學習數據處理項目,例如SparkIgnite。SINGA的獨特之處在於,它是專門針對大規模神經學習模型而設計的。同時,ASF也是另一個深度學習框架MXNet的孵化器。和TensorFlow和PyTorch一樣,MXNet依然在孵化器階段。儘管AWS在2016下半年就內定其深度學習框架爲MXNet,但是MXNet依然並未得到廣泛使用。據KDNugget調查顯示,MXNet的使用率僅在不高於2%左右波動

Apache SINGA 2.0版於2019年四月發佈,源代碼SINGA Jira項目的可追蹤問題列表提供在GitHub上。據ASF介紹,SINGA即將推出的特性包括“實現5G邊緣設備上深度學習的SINGA-lite,以及易於非深度AI背景領域專家開展AI計算的SINGA-easy”。

原文鏈接:

Deep-Learning Framework SINGA Graduates to Top-Level Apache Project

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章