微博机器学习平台云上最佳实践
簡介:?本文講述了微博機器學(xué)習(xí)平臺和深度學(xué)習(xí)平臺的業(yè)務(wù)功能和云上實踐,剖析了阿里云大數(shù)據(jù)在微博這兩大學(xué)習(xí)平臺的架構(gòu)建設(shè)上所起到的作用。
作者:新浪微博數(shù)據(jù)計算平臺系統(tǒng)架構(gòu)師 曹富強
本文講述了微博機器學(xué)習(xí)平臺和深度學(xué)習(xí)平臺的業(yè)務(wù)功能和云上實踐,剖析了阿里云大數(shù)據(jù)在微博這兩大學(xué)習(xí)平臺的架構(gòu)建設(shè)上所起到的作用。
微博介紹
微博是2008年上線的,中國頭部、流行的社交媒體平臺,提供人們在線創(chuàng)作、分享和發(fā)現(xiàn)優(yōu)質(zhì)內(nèi)容的服務(wù),微博的大規(guī)模機器學(xué)習(xí)平臺可支持千億級參數(shù)、百萬QPS調(diào)用。目前微博的日活是2.22億,月活是5.16億。
微博機器學(xué)習(xí)平臺(WML)優(yōu)勢
微博機器學(xué)習(xí)平臺的特點是樣本規(guī)模大,百億級樣本,實時性比較高,是分鐘級,然后模型規(guī)模是百億級,模型實時性根據(jù)不同場景有小時級、分鐘級和秒級。作業(yè)的穩(wěn)定性的話要求是三個9,平臺業(yè)務(wù)多,場景豐富迭代快。
微博機器學(xué)習(xí)平臺(WML)CTR模型
微博機器學(xué)習(xí)平臺的CTR模型經(jīng)過數(shù)字版本的迭代,從1.0的離線機器學(xué)習(xí)到3.0的離線和深度,到5.0的在線機器學(xué)習(xí)、離線機器學(xué)習(xí)和深度機器學(xué)習(xí)結(jié)合。再到目前我們是往在線深度學(xué)習(xí)方向發(fā)展。總體來說經(jīng)過歷史迭代,目前支撐的參數(shù)規(guī)模達千億級,服務(wù)峰值達百萬QPS,模型更新是10分鐘量級。
微博機器學(xué)習(xí)平臺(WML)架構(gòu)
我們看一下微博機器學(xué)習(xí)平臺的架構(gòu),微博機器學(xué)習(xí)平臺為CTR、多媒體等各類機器學(xué)習(xí)和深度學(xué)習(xí)算法,提供從樣本處理、模型訓(xùn)練、服務(wù)部署到模型預(yù)估的一站式服務(wù)。總體的話是基于在線計算集群,離線計算集群和高性能計算集群。我們通過資源的WeiBox調(diào)度框架和WeiFlow工作流引擎,計算平臺的話是WeiLearn框架集成的Hadoop/Spark、Flink/Storm、TensorFlow/Pytorch,提供了諸多豐富的算法。基于這些算法,訓(xùn)練的模型,我們?nèi)氲轿覀僕eiPS模型庫,然后通過WeiServing對外提供在線推理服務(wù)。
微博機器學(xué)習(xí)在阿里云上實踐
我們的阿里云上實踐使用了Flink、MaxCompute、Alink、PAI。基于這些服務(wù)提供了熱門微博、Feed流、綠洲推薦,使用MaxCompute實現(xiàn)在相同規(guī)模下萬億樣本百億特征全量訓(xùn)練,比Hadoop集群提升10倍。支持從天級到分鐘級的實時熱門微博、Feed流業(yè)務(wù)推薦及搜索樣本實施訓(xùn)練、上線,業(yè)務(wù)推薦效果提升10%。基于Flink搭建了實時計算平臺,集成了作業(yè)提交端UI/WeiClient、作業(yè)管理、資源管理、日志系統(tǒng)、監(jiān)控報警系統(tǒng)等各鏈路,作業(yè)規(guī)模上千。整體來說阿里云建設(shè)機器學(xué)習(xí)有幾大優(yōu)勢:支持大規(guī)模處理、算法豐富、平臺成熟運維方便、投入時間直接聚焦到業(yè)務(wù)。
微博深度學(xué)習(xí)平臺(WDL)典型業(yè)務(wù)場景
接下來介紹微博深度學(xué)習(xí)相關(guān)的業(yè)務(wù),目前的話在微博的關(guān)系流、綠洲、新浪視頻推薦、正文推薦流里面都有深度學(xué)習(xí)的應(yīng)用。
微博深度學(xué)習(xí)平臺(WDL)架構(gòu)
基于在線gpu的機器,我們通過K8s和Yarn管理,然后通過WeiArena和el-submit提交任務(wù)。我們的WeiLearn集成了TensorFlow、Pytorch引擎,然后集成了樣本庫讀取和輸出的模型庫。然后WeiServing加載了模型庫,對外提供兩路服務(wù),一個是通過AI服務(wù)直接對外提供AI輸出能力,另外就是我們的計算服務(wù)WeiStorm,集成了數(shù)據(jù)流,調(diào)用WeiServing RPC服務(wù)框架,實時生成多媒體特征,對外提供在線服務(wù)推理。
微博深度學(xué)習(xí)平臺(WDL)多媒體特征生成
微博機器學(xué)習(xí)深度平臺多媒體特征的生成,只有兩條鏈路,第一路是離線的訓(xùn)練,離線訓(xùn)練模型通過數(shù)據(jù)源的處理輸出到樣本庫,然后通過我們WeiServing分布式訓(xùn)練模型調(diào)用,輸出到模型庫,這一路的話是一鍵CICD、分布式訓(xùn)練、支持多種類的模型。另一路是在線推理,在線推理的話消費多媒體實時數(shù)據(jù)流,調(diào)用我們的WeiServingRPC框架,輸出多媒體特征,然后應(yīng)用到業(yè)務(wù),這條鏈路的話,我們通過對賬系統(tǒng)、case追蹤、全鏈路監(jiān)控去做服務(wù)保障,成功率是99.99%,延時是秒級延時。開發(fā)模式是通過UI化、配置化、一鍵部署。
微博深度學(xué)習(xí)平臺(WDL)基本功能
微博深度學(xué)習(xí)平臺產(chǎn)品功能的話,一個是樣本庫,然后分布式訓(xùn)練,模型庫,在線推理服務(wù)和計算服務(wù)。樣本庫的話主要是包含樣本數(shù)據(jù)管理和樣本分布式存儲,對在各節(jié)點上零散的樣本進行統(tǒng)一管理;分布式訓(xùn)練的話,內(nèi)置常用深度學(xué)習(xí)算法并持續(xù)新增成熟的算法,規(guī)范樣本讀取,訓(xùn)練gpu集群的靈活調(diào)度和訓(xùn)練模型的統(tǒng)一存儲;模型庫的話提供分布式系統(tǒng)和本地兩種存儲方式,為在線推理服務(wù)提供模型;在線推理服務(wù),支持Python和C++模型的一鍵部署,實現(xiàn)模型推理的服務(wù)化以及監(jiān)控、告警等。可封裝為HTTP服務(wù),對外直接提供AI的能力,實現(xiàn)AI能力的直接輸出;計算服務(wù),基于內(nèi)部的多媒體分發(fā)系統(tǒng),接入多媒體數(shù)據(jù)流,調(diào)用在線推理服務(wù),實時生成多媒體特征。
微博深度學(xué)習(xí)平臺(WDL)業(yè)務(wù)實踐
微博深度學(xué)習(xí)平臺業(yè)務(wù)實踐,早期的話基于單機訓(xùn)練處理大規(guī)模數(shù)據(jù)時訓(xùn)練周期長,迭代慢,影響業(yè)務(wù)效果。 于是我們提供了多媒體深度學(xué)習(xí)服務(wù)方案,微博深度學(xué)習(xí)平臺就應(yīng)運而生,實現(xiàn)了樣本存儲、離線訓(xùn)練、在線推理及模型存儲一體化功能。最終產(chǎn)生的效果和業(yè)務(wù)價值是:分布式訓(xùn)練極大縮短了訓(xùn)練時間,為快速業(yè)務(wù)迭代提供良好基礎(chǔ);一體化服務(wù)讓我們只需要專注于模型算法優(yōu)化,提高業(yè)務(wù)效率,整體上為業(yè)務(wù)賦能和業(yè)務(wù)承建產(chǎn)生了巨大的推動力。
原文鏈接
本文為阿里云原創(chuàng)內(nèi)容,未經(jīng)允許不得轉(zhuǎn)載。
總結(jié)
以上是生活随笔為你收集整理的微博机器学习平台云上最佳实践的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Spring boot 2.3优雅下线,
- 下一篇: 干货|一文读懂阿里云数据库Autosca