近兩年人工智能技術(shù)發(fā)展迅速,以Google開(kāi)源的TensorFlow為代表的各種深度學(xué)習(xí)框架層出不窮。為了能讓國(guó)內(nèi)人工智能技術(shù)更好的落地,并且人工智能也是大數(shù)據(jù)分析的主要方法,作為大數(shù)據(jù)協(xié)同安全技術(shù)國(guó)家工程實(shí)驗(yàn)室牽頭公司的360,其系統(tǒng)部大數(shù)據(jù)團(tuán)隊(duì)與人工智能研究院基于長(zhǎng)期的研究和實(shí)踐成果,開(kāi)發(fā)了基于Hadoop大數(shù)據(jù)能力的人工智能平臺(tái)XLearning。大數(shù)據(jù)協(xié)同安全技術(shù)國(guó)家工程實(shí)驗(yàn)室是國(guó)家發(fā)改委批準(zhǔn)建設(shè)的國(guó)家級(jí)大數(shù)據(jù)安全研究創(chuàng)新平臺(tái),是大數(shù)據(jù)領(lǐng)域唯一的由民營(yíng)企業(yè)承擔(dān)的國(guó)家工程實(shí)驗(yàn)室。該實(shí)驗(yàn)室目前由360公司牽頭,主要負(fù)責(zé)大數(shù)據(jù)基礎(chǔ)架構(gòu)、安全防護(hù)和應(yīng)用領(lǐng)域方面的研究。
360 XLearning項(xiàng)目負(fù)責(zé)人李遠(yuǎn)策表示, XLearning對(duì)于開(kāi)發(fā)者意義重大,因?yàn)橥袠I(yè)公司都會(huì)有類似開(kāi)發(fā)需求,XLearning則可以幫助他們實(shí)現(xiàn)調(diào)度的統(tǒng)一和服務(wù)器資源的復(fù)用。隨著平臺(tái)算法庫(kù)的不斷增容和優(yōu)化,開(kāi)發(fā)者工作難度將大大降低。他們將有更多精力,用于功能的實(shí)現(xiàn)和代碼的優(yōu)化。此外,除了人工智能平臺(tái)XLearning之外,360在大數(shù)據(jù)開(kāi)源技術(shù)領(lǐng)域也不斷創(chuàng)新,如Poseidon系統(tǒng)、pika系統(tǒng)等均是360在大數(shù)據(jù)領(lǐng)域的獨(dú)創(chuàng)開(kāi)源技術(shù)。
圖1: 大數(shù)據(jù)協(xié)同安全技術(shù)國(guó)家工程實(shí)驗(yàn)室
(官網(wǎng)地址:http://nelab-bdst.org.cn/)
(官方微信名稱:大數(shù)據(jù)協(xié)同安全國(guó)家工程實(shí)驗(yàn)室)
圖2: 360深度學(xué)習(xí)調(diào)度平臺(tái)XLearning
(XLearning項(xiàng)目開(kāi)源地址https://github.com/Qihoo360/XLearning)
XLearning平臺(tái)將大數(shù)據(jù)與深度學(xué)習(xí)相融合,基于Hadoop Yarn完成了TensorFlow、MXNet、Caffe、Theano、PyTorch、Keras、XGBoost等常用深度學(xué)習(xí)框架的集成,是典型的“AI on Hadoop”的實(shí)現(xiàn)。XLearning從今年4月份正式開(kāi)發(fā)上線運(yùn)行,經(jīng)多次版本迭代更新,為各學(xué)習(xí)框架的使用者提供了統(tǒng)一、穩(wěn)定的調(diào)度平臺(tái),實(shí)現(xiàn)了資源共享,極大的提高了資源利用率,并且具有良好的擴(kuò)展性和兼容性。
圖3:XLearning架構(gòu)
其中,Client是XLearning客戶端,負(fù)責(zé)啟動(dòng)作業(yè)及獲取作業(yè)執(zhí)行狀態(tài); ApplicationMaster主要負(fù)責(zé)輸入數(shù)據(jù)分片、啟動(dòng)及管理Container、執(zhí)行日志保存等; Container是作業(yè)的實(shí)際執(zhí)行者,負(fù)責(zé)啟動(dòng)Worker或PS(Parameter Server)進(jìn)程,監(jiān)控并向AM匯報(bào)進(jìn)程狀態(tài),上傳作業(yè)的輸出等。對(duì)于TensorFlow類型作業(yè),還負(fù)責(zé)啟動(dòng)Tensoard服務(wù)。
XLearning雖然架構(gòu)簡(jiǎn)潔,但具有豐富的功能方便用戶進(jìn)行模型訓(xùn)練,并依托于Yarn提供有作業(yè)資源的統(tǒng)一管理。首先,Xlearning平臺(tái)支持TensorFlow、MXNet分布式和單機(jī)模式,支持所有的單機(jī)模式的深度學(xué)習(xí)框架,如Caffe、Theano、PyTorch等;其次,XLearning提供多種模式用于數(shù)據(jù)的輸入、輸出,包括數(shù)據(jù)的流式讀寫、直接HDFS讀寫等,可根據(jù)作業(yè)處理的數(shù)據(jù)量與集群機(jī)器硬盤容量,視情況決定所采用的讀寫方式;再者,為方便用戶查看作業(yè)信息,XLearning提供可視化界面用于展示作業(yè)執(zhí)行進(jìn)度和輸出日志等內(nèi)容;另外,XLearning還支持TensorFlow分布式模式的ClusterSpec自動(dòng)分配構(gòu)建,單機(jī)模式和其他深度學(xué)習(xí)框架代碼不用做任何修改即可遷移到XLearning上,便于用戶快速使用;最后,利用深度學(xué)習(xí)框架本身的Checkpoint機(jī)制和直接讀寫HDFS數(shù)據(jù)功能,XLearning方便用戶實(shí)現(xiàn)訓(xùn)練恢復(fù)繼續(xù)執(zhí)行。
作為國(guó)內(nèi)人工智能領(lǐng)域的先行者,360公司以平臺(tái)開(kāi)源的形式,實(shí)現(xiàn)了行業(yè)已有資源的集成和優(yōu)化。相信未來(lái),以360公司牽頭的大數(shù)據(jù)安全協(xié)同技術(shù)國(guó)家工程實(shí)驗(yàn)室將為提升我國(guó)網(wǎng)絡(luò)安全和大數(shù)據(jù)人工智能產(chǎn)業(yè)和學(xué)界的整體水平貢獻(xiàn)更多力量。