朱明偉
工程與應(yīng)用
網(wǎng)絡(luò)智能化中的AI工程化技術(shù)方案
朱明偉
(中國(guó)移動(dòng)通信集團(tuán)設(shè)計(jì)院有限公司,北京 100080)
網(wǎng)絡(luò)智能化是通信行業(yè)借助AI技術(shù),對(duì)外增強(qiáng)網(wǎng)絡(luò)賦能能力,對(duì)內(nèi)實(shí)現(xiàn)降本增效的重要舉措。從AI工程化的視角系統(tǒng)分析網(wǎng)絡(luò)智能化應(yīng)用落地的難點(diǎn),提出了包括數(shù)據(jù)采集處理、訓(xùn)練計(jì)算資源的管理與任務(wù)調(diào)度、推理部署優(yōu)化在內(nèi)的面向生產(chǎn)環(huán)境的AI工程化技術(shù)方案,探討網(wǎng)絡(luò)智能化生態(tài)發(fā)展的策略。
網(wǎng)絡(luò)智能化;人工智能;云原生;模型壓縮;推理服務(wù)
2012年神經(jīng)網(wǎng)絡(luò)在圖像識(shí)別領(lǐng)域的成功應(yīng)用拉開(kāi)了本輪人工智能熱潮的帷幕,并相繼在語(yǔ)音識(shí)別、自然語(yǔ)言處理等領(lǐng)域取得了突破性發(fā)展,改變了行業(yè)生態(tài)。目前,人工智能技術(shù)正向縱深方向發(fā)展,從互聯(lián)網(wǎng)領(lǐng)域的推薦、廣告、搜索,到科學(xué)計(jì)算領(lǐng)域的分子動(dòng)力學(xué)模擬[1]和蛋白質(zhì)結(jié)構(gòu)預(yù)測(cè)[2],人工智能在越來(lái)越多的場(chǎng)景中推廣和落地。
在通信領(lǐng)域,人工智能的影響力同樣與日俱增。標(biāo)準(zhǔn)化組織、設(shè)備商、運(yùn)營(yíng)商等產(chǎn)業(yè)各界立足自身,積極探索人工智能在通信網(wǎng)絡(luò)的應(yīng)用,為網(wǎng)絡(luò)智能化的落地做出了大量有益的工作。ITU、3GPP、ETSI、CCSA等國(guó)內(nèi)外標(biāo)準(zhǔn)組織設(shè)立相關(guān)課題,從網(wǎng)絡(luò)智能化的體系框架、互通接口、網(wǎng)元、流程、用例等方面進(jìn)行研究[3];華為、中興等通信設(shè)備提供商則以解決方案為突破口,推出諸如華為自動(dòng)駕駛網(wǎng)絡(luò)[4]、中興自主進(jìn)化網(wǎng)絡(luò)[5]等網(wǎng)絡(luò)智能化產(chǎn)品;運(yùn)營(yíng)商則以采購(gòu)建設(shè)廠商AI設(shè)備/服務(wù)與自建AI能力平臺(tái)相結(jié)合的方式,不斷提升自身網(wǎng)絡(luò)智能化水平,如中國(guó)移動(dòng)自主開(kāi)發(fā)的九天人工智能平臺(tái)的智能交互、智慧稽核、網(wǎng)絡(luò)自服務(wù)等AI服務(wù)已大規(guī)模商用[6]。
運(yùn)營(yíng)商網(wǎng)絡(luò)是一個(gè)按照不同地域、不同專業(yè)領(lǐng)域和不同層級(jí)進(jìn)行分布式部署的半自治網(wǎng)絡(luò),網(wǎng)絡(luò)結(jié)構(gòu)極為復(fù)雜,難以對(duì)全網(wǎng)進(jìn)行統(tǒng)一建模。網(wǎng)絡(luò)智能化需要從局部入手,實(shí)現(xiàn)場(chǎng)景化的網(wǎng)絡(luò)智能,并逐步拓展智能化應(yīng)用范圍。
網(wǎng)絡(luò)智能化應(yīng)用場(chǎng)景大致可以分為基礎(chǔ)網(wǎng)絡(luò)、網(wǎng)絡(luò)管理和對(duì)外服務(wù)3類[7]。其中,基礎(chǔ)網(wǎng)絡(luò)智能化的關(guān)注點(diǎn)在網(wǎng)絡(luò)設(shè)備層面,場(chǎng)景包括基站的無(wú)線資源管理和流量預(yù)測(cè)、核心網(wǎng)的用戶策略管理和移動(dòng)性管理、承載網(wǎng)的路由調(diào)度等。這類場(chǎng)景的AI算法往往緊密嵌入網(wǎng)元邏輯功能或業(yè)務(wù)流程中,對(duì)于處理時(shí)延和廠商互通性要求較高。網(wǎng)絡(luò)管理智能化的關(guān)注點(diǎn)在網(wǎng)絡(luò)規(guī)劃運(yùn)維層面,通過(guò)分析網(wǎng)絡(luò)的規(guī)劃、建設(shè)、維護(hù)、優(yōu)化、運(yùn)營(yíng)等各方面的海量數(shù)據(jù),實(shí)現(xiàn)智能化的網(wǎng)絡(luò)/切片參數(shù)配置、故障定位、根因分析等。對(duì)外服務(wù)智能化的關(guān)注點(diǎn)在產(chǎn)品和服務(wù)層面,主要為對(duì)用戶提供智能客服、產(chǎn)品推薦等運(yùn)營(yíng)商特色AI產(chǎn)品,以及圖像分類、語(yǔ)音識(shí)別、自然語(yǔ)言處理(natural language processing,NLP)、光學(xué)字符識(shí)別(optical character recognition,OCR)等通用化AI產(chǎn)品,此類場(chǎng)景對(duì)于通信的領(lǐng)域知識(shí)要求相對(duì)較低。
由上文可知,網(wǎng)絡(luò)智能化應(yīng)用與圖像識(shí)別、NLP等通用AI在業(yè)務(wù)場(chǎng)景上既有共性又有差異。隨著場(chǎng)景廣度和深度的不斷發(fā)展,網(wǎng)絡(luò)智能化需要借鑒通用AI的技術(shù)和經(jīng)驗(yàn)構(gòu)建一套生產(chǎn)級(jí)別AI工程化系統(tǒng)作為各類網(wǎng)絡(luò)智能化應(yīng)用的技術(shù)底座。但由于領(lǐng)域特殊性,網(wǎng)絡(luò)智能化系統(tǒng)的生產(chǎn)級(jí)別落地在數(shù)據(jù)采集和特征抽取、模型訓(xùn)練、模型部署等AI工程化環(huán)節(jié)還存在以下難點(diǎn)。
(1)數(shù)據(jù)采集和特征抽取
運(yùn)營(yíng)商的無(wú)線接入網(wǎng)、核心網(wǎng)、傳輸網(wǎng)、云資源池、運(yùn)維系統(tǒng)、業(yè)務(wù)支撐系統(tǒng)中散布著的海量指標(biāo)、日志、調(diào)用鏈(trace)數(shù)據(jù)及用戶使用網(wǎng)絡(luò)留下的數(shù)據(jù),這些數(shù)據(jù)符合大數(shù)據(jù)的大量(volume)、價(jià)值稀疏(value)、多元(variety)、高速(velocity)、真實(shí)(veracity)的5V特性,同時(shí)具備多維、多邊、多粒度、個(gè)性化等特點(diǎn)[8]。采集這些散布且異構(gòu)的海量數(shù)據(jù)并統(tǒng)一處理存儲(chǔ)的難度很大、成本很高:首先,數(shù)據(jù)質(zhì)量不高,存在多源數(shù)據(jù)易缺失、統(tǒng)計(jì)口徑不一致、大量數(shù)據(jù)沒(méi)有標(biāo)注或標(biāo)注質(zhì)量不一致等問(wèn)題;其次,同一主題的網(wǎng)絡(luò)數(shù)據(jù)具有高維的特點(diǎn),這種高噪聲增加了網(wǎng)絡(luò)智能化特征選擇的難度;第三,不同于圖像識(shí)別和NLP利用神經(jīng)網(wǎng)絡(luò)進(jìn)行特征抽取的方式,網(wǎng)絡(luò)智能化需要根據(jù)場(chǎng)景不同而手工進(jìn)行特征選擇和抽取,增加了特征向量的構(gòu)造難度。
(2)模型訓(xùn)練
網(wǎng)絡(luò)智能化在不同場(chǎng)景下所用的模型各不相同,根據(jù)訓(xùn)練數(shù)據(jù)的不同,總的來(lái)說(shuō)表格類數(shù)據(jù)、小數(shù)據(jù)應(yīng)優(yōu)先采用以集成學(xué)習(xí)模型為代表的機(jī)器學(xué)習(xí)模型進(jìn)行訓(xùn)練,而非結(jié)構(gòu)化數(shù)據(jù)、大數(shù)據(jù)則一般采用深度學(xué)習(xí)算法,其中,網(wǎng)絡(luò)流量預(yù)測(cè)等時(shí)間序列場(chǎng)景常用循環(huán)神經(jīng)網(wǎng)絡(luò)(recurrent neural network,RNN)、長(zhǎng)短期記憶(long short-term memory,LSTM)網(wǎng)絡(luò)等深度學(xué)習(xí)算法,以及梯度提升決策樹(shù)(gradient boosting decision tree,GBDT)、極限梯度提升(extreme gradient boosting,XGBoost)算法、支持向量機(jī)(support vector machine,SVM)等有監(jiān)督機(jī)器學(xué)習(xí)算法,也會(huì)用到線性回歸、移動(dòng)平均等傳統(tǒng)算法;故障檢測(cè)等分類場(chǎng)景中主要使用輕量梯度提升機(jī)(light gradient boosting machine,LightGBM)、XGBoost等集成學(xué)習(xí)算法和多層感知機(jī)(multilayer perceptron,MLP)等深度學(xué)習(xí)算法,也會(huì)用到均值(-means)聚類算法、基于密度的噪聲應(yīng)用空間聚類(density-based spatial clustering of applications with noise,DBSCAN)算法等聚類算法,差分、核密度估計(jì)等傳統(tǒng)算法和決策樹(shù)等簡(jiǎn)單機(jī)器學(xué)習(xí)算法在數(shù)據(jù)分布較為匹配時(shí)也能取得不錯(cuò)效果;對(duì)于智能客服、圖像識(shí)別等通用化AI場(chǎng)景則必須使用卷積神經(jīng)網(wǎng)絡(luò)(convolutional neural network,CNN)、基于變換器的雙向編碼表示(bidirectional encoder representation from transformers,BERT)算法、視覺(jué)變換器(vision transformer,ViT)算法等大型深度學(xué)習(xí)模型。上述各類模型在訓(xùn)練過(guò)程中對(duì)算力資源消耗的差異極大,而且大量訓(xùn)練和推理任務(wù)在云上混合部署,對(duì)云的算力資源管理、多訓(xùn)練任務(wù)調(diào)度能力提出了高要求。
(3)模型部署上線
無(wú)線資源調(diào)度等部分網(wǎng)絡(luò)智能化應(yīng)用對(duì)于模型推理時(shí)延要求高,可低至毫秒乃至微秒級(jí)別,導(dǎo)致此類網(wǎng)絡(luò)智能化應(yīng)用的模型只能部署在網(wǎng)絡(luò)設(shè)備側(cè),而網(wǎng)絡(luò)設(shè)備計(jì)算資源高度異構(gòu),設(shè)備的算力有限,現(xiàn)網(wǎng)網(wǎng)絡(luò)設(shè)備的系統(tǒng)較為封閉,芯片不支持AI模型編譯或者適配效果不好。此外,模型部署上線需要解決模型的持久化、模型服務(wù)的構(gòu)建及模型與網(wǎng)元系統(tǒng)的集成或服務(wù)調(diào)用等一系列問(wèn)題。
面對(duì)以上問(wèn)題,本文按照數(shù)據(jù)準(zhǔn)備—模型訓(xùn)練—模型部署的AI工作流順序,研究和提出一套網(wǎng)絡(luò)智能化的AI工程化技術(shù)方案,并闡述對(duì)于打造網(wǎng)絡(luò)智能化生態(tài)的思考。
高維、海量、治理良好的訓(xùn)練數(shù)據(jù)和實(shí)時(shí)準(zhǔn)確的推理數(shù)據(jù)是網(wǎng)絡(luò)智能化應(yīng)用落地的前提,因此,需要建立包括采集、處理、存儲(chǔ)等功能在內(nèi)的AI數(shù)據(jù)管理平臺(tái),AI數(shù)據(jù)管理平臺(tái)架構(gòu)如圖1所示,統(tǒng)一管理全網(wǎng)與網(wǎng)絡(luò)智能化相關(guān)的歷史數(shù)據(jù)與實(shí)時(shí)數(shù)據(jù)。
不同于通用AI模型訓(xùn)練中常使用數(shù)據(jù)集,網(wǎng)絡(luò)智能化領(lǐng)域的數(shù)據(jù)大多需要從網(wǎng)元和系統(tǒng)運(yùn)行的各類指標(biāo)、埋點(diǎn)日志、接口信令監(jiān)控中采集。目前運(yùn)營(yíng)商普遍通過(guò)數(shù)據(jù)中臺(tái)或數(shù)據(jù)倉(cāng)庫(kù)對(duì)網(wǎng)絡(luò)數(shù)據(jù)進(jìn)行統(tǒng)一管理。為避免重復(fù)建設(shè),以降低成本,網(wǎng)絡(luò)智能化的數(shù)據(jù)采集應(yīng)充分利用已有數(shù)據(jù),所需原始數(shù)據(jù)如果已納入數(shù)據(jù)中臺(tái)或數(shù)倉(cāng)的管理范圍則通過(guò)采集工具從數(shù)據(jù)中臺(tái)或數(shù)倉(cāng)采集;對(duì)于未納入數(shù)據(jù)中臺(tái)或數(shù)倉(cāng)的數(shù)據(jù),IT系統(tǒng)中的指標(biāo)、日志、調(diào)用鏈數(shù)據(jù)通過(guò)消息隊(duì)列推送至平臺(tái),網(wǎng)絡(luò)設(shè)備中的數(shù)據(jù)通過(guò)在網(wǎng)絡(luò)設(shè)備側(cè)的信令采集機(jī)進(jìn)行數(shù)據(jù)采集。訓(xùn)練數(shù)據(jù)并非越多越好,模型的精度在達(dá)到一定程度后,訓(xùn)練數(shù)據(jù)的增長(zhǎng)將越來(lái)越難以帶來(lái)精度的進(jìn)一步提升;另一方面,增加特征參數(shù)不一定能提升模型性能,特征太多反而更易出現(xiàn)過(guò)擬合。因此,為了控制數(shù)據(jù)采集成本,在實(shí)際應(yīng)用中應(yīng)控制采集數(shù)據(jù)的指標(biāo)維度、單指標(biāo)的數(shù)據(jù)采集區(qū)間,從而減少信令采集機(jī)和IT系統(tǒng)監(jiān)控模塊的改造量。
圖1 AI數(shù)據(jù)管理平臺(tái)架構(gòu)
AI數(shù)據(jù)管理平臺(tái)針對(duì)采集數(shù)據(jù)的特點(diǎn),需要對(duì)多源異構(gòu)海量的數(shù)據(jù)進(jìn)行包括數(shù)據(jù)提取、缺失值補(bǔ)齊、多源數(shù)據(jù)的合并/去重/歸一化在內(nèi)的各種處理,對(duì)于無(wú)標(biāo)簽數(shù)據(jù)的標(biāo)注通過(guò)少量標(biāo)簽數(shù)據(jù)結(jié)合算法進(jìn)行標(biāo)簽生成[9],保證數(shù)據(jù)質(zhì)量還需要通過(guò)schema規(guī)則等方法進(jìn)行數(shù)據(jù)校驗(yàn)[10]。目前網(wǎng)絡(luò)智能化多為離線訓(xùn)練、在線推理模式,因此,數(shù)據(jù)管理平臺(tái)既需要對(duì)離線數(shù)據(jù)進(jìn)行批量計(jì)算,也需要對(duì)采集到的實(shí)時(shí)數(shù)據(jù)進(jìn)行增量計(jì)算或流式計(jì)算。為了在保證批量數(shù)據(jù)和實(shí)時(shí)數(shù)據(jù)處理時(shí)效性的同時(shí)簡(jiǎn)化平臺(tái)架構(gòu),平臺(tái)需要采用流批一體的大數(shù)據(jù)計(jì)算引擎進(jìn)行數(shù)據(jù)處理,將消息隊(duì)列中或已入湖的數(shù)據(jù)導(dǎo)入Spark或Flink的工作節(jié)點(diǎn)進(jìn)行計(jì)算。如果部分場(chǎng)景計(jì)算規(guī)則較為簡(jiǎn)單,則可以在消息隊(duì)列中直接計(jì)算,以降低通信時(shí)延。數(shù)據(jù)特征的提取緊接著數(shù)據(jù)處理之后進(jìn)行,選擇和構(gòu)造特征向量和特征向量維數(shù)直接影響模型精度、泛化性、計(jì)算量,目前自動(dòng)機(jī)器學(xué)習(xí)(auto-machine learning,AutoML)方式的特征搜索尚不足以取代人工方法,因此,使用非深度學(xué)習(xí)算法的情況下,網(wǎng)絡(luò)智能化的特征提取主要依靠領(lǐng)域?qū)<抑R(shí)和特征工程經(jīng)驗(yàn)。
海量網(wǎng)絡(luò)數(shù)據(jù)經(jīng)過(guò)處理后需要在AI數(shù)據(jù)管理平臺(tái)中存儲(chǔ),由于網(wǎng)絡(luò)智能化應(yīng)用具有場(chǎng)景化、碎片化、長(zhǎng)尾化特點(diǎn),只有在網(wǎng)絡(luò)智能化場(chǎng)景需求明確時(shí)才能確定對(duì)應(yīng)數(shù)據(jù)處理和特征抽取的方式,難以提前建立數(shù)據(jù)處理模型,因此,平臺(tái)的數(shù)據(jù)存儲(chǔ)應(yīng)采用數(shù)據(jù)湖架構(gòu),使各網(wǎng)絡(luò)智能化場(chǎng)景的數(shù)據(jù)能夠快速入湖存儲(chǔ),以供后續(xù)AI訓(xùn)練或推理任務(wù)讀取。為降低云上部署的在線推理任務(wù)的數(shù)據(jù)讀取時(shí)延,數(shù)據(jù)處理完成后的數(shù)據(jù)不落盤(pán)直接從消息隊(duì)列推送至推理模型。此外,為降低數(shù)據(jù)存儲(chǔ)成本,平臺(tái)的底層存儲(chǔ)應(yīng)綜合采用自有的分布式文件系統(tǒng)、對(duì)象存儲(chǔ),并根據(jù)數(shù)據(jù)治理要求將部分低密級(jí)的冷數(shù)據(jù)轉(zhuǎn)存公有云存儲(chǔ)。
生產(chǎn)級(jí)別的網(wǎng)絡(luò)智能化模型訓(xùn)練需要處理好大規(guī)模計(jì)算資源的管理、訓(xùn)練任務(wù)算力需求異構(gòu)、大量訓(xùn)練任務(wù)的編排調(diào)度等問(wèn)題。將AI計(jì)算框架與云原生技術(shù)結(jié)合,構(gòu)建面向網(wǎng)絡(luò)智能化各場(chǎng)景的統(tǒng)一AI訓(xùn)練平臺(tái),能夠很好地解決這些問(wèn)題。
云原生基于容器輕量、快速、易于遷移的特點(diǎn),依托k8s對(duì)各類資源進(jìn)行定義、調(diào)度、控制和編排,實(shí)現(xiàn)了算力的精細(xì)化管理與高彈性伸縮;同時(shí),k8s的系統(tǒng)設(shè)計(jì)擁有很強(qiáng)的開(kāi)放性,易于擴(kuò)展。隨著近年來(lái)云原生的快速發(fā)展,以其為中心形成了包括容器運(yùn)行時(shí)、存儲(chǔ)、網(wǎng)絡(luò)、安全、服務(wù)網(wǎng)絡(luò)、無(wú)服務(wù)器(serverless)、持續(xù)集成/持續(xù)部署(CI/CD)工具鏈、可觀測(cè)性工具鏈在內(nèi)的云原生生態(tài)圈[11]。云原生極大地提高了IT產(chǎn)業(yè)的開(kāi)發(fā)、測(cè)試、部署、運(yùn)維的工作效率,包括數(shù)據(jù)庫(kù)、消息隊(duì)列在內(nèi)的各類基礎(chǔ)中間件軟件和各種業(yè)務(wù)軟件都已經(jīng)或正在重構(gòu)以適應(yīng)云原生環(huán)境。目前,TensorFlow、PyTorch等主流AI計(jì)算框架都已支持云原生,具備分布式部署能力。
AI訓(xùn)練平臺(tái)架構(gòu)如圖2所示,網(wǎng)絡(luò)智能化的AI訓(xùn)練平臺(tái)采用k8s作為資源管理和任務(wù)調(diào)度的樞紐,硬件方面支持x86、ARM、NVIDIAGPU及專用AI芯片(ASIC),滿足各類機(jī)器學(xué)習(xí)和深度學(xué)習(xí)算法訓(xùn)練的算力需求。平臺(tái)基于云原生AI領(lǐng)域的事實(shí)標(biāo)準(zhǔn)KubeFlow[12],通過(guò)創(chuàng)建操作器(operator)的方式,對(duì)TensorFlow、PyTorch等機(jī)器學(xué)習(xí)框架的訓(xùn)練任務(wù)進(jìn)行自定義資源聲明和資源狀態(tài)控制,并將訓(xùn)練的工作負(fù)載部署在k8s集群的節(jié)點(diǎn)中;平臺(tái)從AI數(shù)據(jù)管理平臺(tái)的存儲(chǔ)中拉取訓(xùn)練數(shù)據(jù)集、測(cè)試數(shù)據(jù)集,寫(xiě)入訓(xùn)練任務(wù)所在k8s節(jié)點(diǎn)的內(nèi)存,并通過(guò)分布式緩存和遠(yuǎn)程直接內(nèi)存訪問(wèn)(remote direct memory access,RDMA)加速數(shù)據(jù)寫(xiě)入速度;平臺(tái)同時(shí)支持面向模型研發(fā)和面向生產(chǎn)部署的模型訓(xùn)練任務(wù),提供各類算法庫(kù)進(jìn)行模型訓(xùn)練和驗(yàn)證,提供推理模型部署工具和超參搜索工具,并通過(guò)工作流編排工具將AI訓(xùn)練流程串聯(lián)起來(lái)。此外,平臺(tái)可通過(guò)Spark操作器同網(wǎng)絡(luò)智能化的AI數(shù)據(jù)管理平臺(tái)的大數(shù)據(jù)計(jì)算體系打通,將網(wǎng)絡(luò)智能化的模型訓(xùn)練任務(wù)與數(shù)據(jù)處理階段的批量計(jì)算任務(wù)混合部署,提高資源池整體利用率。
網(wǎng)絡(luò)智能化的AI訓(xùn)練平臺(tái)需要針對(duì)訓(xùn)練任務(wù)特點(diǎn)對(duì)資源調(diào)度器進(jìn)行功能增強(qiáng)。k8s原生的調(diào)度器是針對(duì)微服務(wù)架構(gòu)設(shè)計(jì)的,適合對(duì)小顆粒度、長(zhǎng)時(shí)間運(yùn)行的互聯(lián)網(wǎng)業(yè)務(wù)進(jìn)行資源調(diào)度,但機(jī)器學(xué)習(xí)訓(xùn)練屬于批處理任務(wù),存在作業(yè)、任務(wù)隊(duì)列、流水線等概念,k8s原生調(diào)度器對(duì)此是不支持的;另一方面,為防止死鎖發(fā)生,滿足多租戶、二次調(diào)度等需求,機(jī)器學(xué)習(xí)訓(xùn)練的調(diào)度需要滿足批量pod調(diào)度、多隊(duì)列調(diào)度、動(dòng)態(tài)調(diào)度、任務(wù)間公平性等能力,原生k8s調(diào)度器同樣不支持。AI訓(xùn)練平臺(tái)架構(gòu)如圖2所示,解決方案有兩個(gè):在k8s集群中部署一套專用批處理調(diào)度器,如volcano調(diào)度器[13],此方案存在一個(gè)集群中的兩套調(diào)度器沖突的問(wèn)題,雖然最新版本中支持了多調(diào)度器混合部署,但實(shí)際部署時(shí)仍建議按調(diào)度作用范圍把集群拆開(kāi);采用k8s原生的調(diào)度器框架(scheduling framework)方案[14],即把k8s原生調(diào)度器插件化,將批處理調(diào)度算法以插件形式整合進(jìn)k8s調(diào)度器。
近年來(lái)各類AI的模型規(guī)模普遍增大,并出現(xiàn)了以預(yù)訓(xùn)練為主要目的超大通用AI模型,以NLP領(lǐng)域的第三代生成式預(yù)訓(xùn)練變換器(generative pretrained transformer 3,GTP-3)模型為例,其最大支持1 750億參數(shù)[15],單張GPU卡的內(nèi)存和算力已遠(yuǎn)無(wú)法滿足此類訓(xùn)練需求,需要多張GPU卡或多個(gè)GPU服務(wù)器進(jìn)行并行訓(xùn)練。網(wǎng)絡(luò)智能化領(lǐng)域中同樣存在大模型訓(xùn)練需求,如無(wú)線網(wǎng)時(shí)序數(shù)據(jù)預(yù)測(cè)的LSTM模型,又如智能客服語(yǔ)義理解和對(duì)話生成的變換器(transformer)模型。為處理好網(wǎng)絡(luò)智能化領(lǐng)域的大模型并行訓(xùn)練問(wèn)題,首先AI訓(xùn)練平臺(tái)需要在支持主流AI訓(xùn)練框架的數(shù)據(jù)并行、模型/流水線并行訓(xùn)練功能的基礎(chǔ)上,結(jié)合網(wǎng)絡(luò)智能化領(lǐng)域知識(shí),不斷完善和豐富混合并行、自動(dòng)并行等復(fù)雜并行的訓(xùn)練策略。其次,平臺(tái)需要優(yōu)化并行訓(xùn)練的節(jié)點(diǎn)彈性伸縮能力,彈性需求在很多并行訓(xùn)練場(chǎng)景中存在,如在GPU資源池資源空閑時(shí)增加訓(xùn)練的GPU卡數(shù)量,又如在部分訓(xùn)練節(jié)點(diǎn)宕機(jī)時(shí)保持訓(xùn)練不中斷,與一般的無(wú)狀態(tài)微服務(wù)不同,并行訓(xùn)練屬于復(fù)雜的有狀態(tài)任務(wù),GPU之間存在大量參數(shù)傳遞,以數(shù)據(jù)并行的環(huán)形全局規(guī)約(ring allreduce)算法為例,其將模型存儲(chǔ)在各個(gè)GPU上,每張GPU卡只對(duì)部分?jǐn)?shù)據(jù)進(jìn)行訓(xùn)練,節(jié)點(diǎn)之間有嚴(yán)格的前后次序,ring allreduce算法中的GPU結(jié)構(gòu)如圖3所示。AI訓(xùn)練平臺(tái)應(yīng)引入Horovod等支持ring allreduce彈性訓(xùn)練[16]的分布式訓(xùn)練框架,為各個(gè)訓(xùn)練任務(wù)的operator設(shè)置動(dòng)態(tài)可調(diào)的訓(xùn)練節(jié)點(diǎn)數(shù)量,進(jìn)一步提高資源池的GPU利用率。
圖2 AI訓(xùn)練平臺(tái)架構(gòu)
圖3 ring allreduce算法中的GPU結(jié)構(gòu)[17]
網(wǎng)絡(luò)智能化的模型部署方案需要考慮以下幾個(gè)因素。
●時(shí)延,即模型推理環(huán)節(jié)消耗的時(shí)間,包括推理的計(jì)算時(shí)延,以及業(yè)務(wù)與推理模型之間的通信時(shí)延。
●模型服務(wù)上線,即在網(wǎng)絡(luò)中部署模型推理服務(wù)。
●數(shù)據(jù)隱私,即推理是否在本地進(jìn)行,或數(shù)據(jù)加密傳遞。
●精度,即推理模型的精度與訓(xùn)練模型相比是否降低。
網(wǎng)絡(luò)管理類的網(wǎng)絡(luò)智能化應(yīng)用一般對(duì)時(shí)效性要求不高,時(shí)效性要求在小時(shí)級(jí)/天級(jí),此類應(yīng)用一般采用在云上部署推理模型,充分利用云資源池算力。對(duì)于毫秒級(jí)和微秒級(jí)的實(shí)時(shí)類網(wǎng)絡(luò)智能化場(chǎng)景,如空口物理層智能算法、核心網(wǎng)的移動(dòng)性管理,必須采用在網(wǎng)元側(cè)部署模型的方案以消除長(zhǎng)距離通信時(shí)延,具體而言,網(wǎng)元側(cè)需要預(yù)先部署推理框架,模型在AI訓(xùn)練平臺(tái)完成訓(xùn)練后下發(fā)至相關(guān)網(wǎng)元,經(jīng)過(guò)編譯后加載到計(jì)算芯片內(nèi)存,在本地對(duì)數(shù)據(jù)進(jìn)行預(yù)測(cè)。需要說(shuō)明的是,部分網(wǎng)絡(luò)智能化場(chǎng)景的數(shù)據(jù)概率分布會(huì)隨時(shí)間推移或地域不同發(fā)生偏移,影響推理模型效果,因此,模型需要周期性重新訓(xùn)練和部署,或按地域部署對(duì)應(yīng)的模型。
網(wǎng)絡(luò)智能化推理模型部署在網(wǎng)元側(cè)時(shí),需要解決有限的網(wǎng)元計(jì)算資源影響模型推理速度的問(wèn)題。模型計(jì)算時(shí)延與模型結(jié)構(gòu)和模型大小直接相關(guān),機(jī)器學(xué)習(xí)模型一般對(duì)算力要求不高,計(jì)算時(shí)延較低,無(wú)須專門(mén)進(jìn)行模型加速處理;如果部署的是深度學(xué)習(xí)模型,則通過(guò)選擇MoblieNet等專門(mén)為資源受限場(chǎng)景設(shè)計(jì)的小模型[18]、模型壓縮、編譯優(yōu)化3種方法減少模型推理對(duì)網(wǎng)絡(luò)設(shè)備有限算力和內(nèi)存的需求,從而降低模型計(jì)算時(shí)延。
模型壓縮主要方法如圖4所示,有以下3類。
(1)模型剪枝
深度學(xué)習(xí)模型中存在權(quán)重接近0的參數(shù),這些參數(shù)對(duì)模型輸出影響不大,因此可對(duì)訓(xùn)練模型中特定層內(nèi)的權(quán)重低于設(shè)定閾值的參數(shù)進(jìn)行裁減[19],減少層間參數(shù)的連接和網(wǎng)絡(luò)規(guī)模,剪枝之后需要對(duì)裁剪后的模型進(jìn)行重新訓(xùn)練。
(2)參數(shù)量化
參數(shù)量化即降低模型參數(shù)精度(如參數(shù)精度從fp32降到int8將使模型大小降為原模型的1/4),減少模型計(jì)算過(guò)程中對(duì)內(nèi)存的訪問(wèn),提升計(jì)算芯片每條指令中的數(shù)值數(shù)量,從而加速模型計(jì)算速度[20]。
(3)知識(shí)蒸餾
通過(guò)調(diào)整算法中的“溫度”超參、進(jìn)行softmax變換[21],并將完成訓(xùn)練的大模型同另一個(gè)小的模型進(jìn)行聯(lián)合訓(xùn)練,較小模型能在大模型的監(jiān)督下獲得大模型的泛化能力,從而得到可用于推理的小模型。
圖4 模型壓縮主要方法
編譯優(yōu)化一方面通過(guò)推理框架中的前端(優(yōu)化器)對(duì)訓(xùn)練后的模型進(jìn)行優(yōu)化[22],如圖4所示,通過(guò)算子融合合并模型中的部分層或相同結(jié)構(gòu)降低模型計(jì)算量和冗余度,從而降低計(jì)算過(guò)程中因訪問(wèn)內(nèi)存導(dǎo)致的計(jì)算芯片等待時(shí)間;另一方面通過(guò)推理框架的后端(編譯器)對(duì)網(wǎng)元側(cè)的專用計(jì)算芯片進(jìn)行適配,優(yōu)化模型在專用硬件上的計(jì)算效率,實(shí)現(xiàn)降低計(jì)算時(shí)延的效果。
模型推理需要與網(wǎng)絡(luò)系統(tǒng)深度融合,推理模型服務(wù)上線運(yùn)行圖如圖5所示,推理模型與數(shù)據(jù)預(yù)處理和后處理功能模塊一起打包為軟件開(kāi)發(fā)工具包(software development kit,SDK)或鏡像上傳到模型倉(cāng)庫(kù),云上集中推理部署工具或網(wǎng)元側(cè)推理部署工具從模型倉(cāng)庫(kù)拉取所需要的SDK或鏡像,并以SDK軟件集成、容器、serverless等形式將推理服務(wù)部署上線[23-24],推理服務(wù)對(duì)外提供API,用戶通過(guò)HTTP/RPC向其發(fā)起服務(wù)請(qǐng)求。推理服務(wù)監(jiān)控模型運(yùn)行狀態(tài),模型精度低于設(shè)定閾值將觸發(fā)新一輪模型訓(xùn)練[25]。
網(wǎng)絡(luò)管理類、對(duì)外服務(wù)類等非時(shí)延敏感型網(wǎng)絡(luò)智能化推理服務(wù)宜采用容器方式在云上集中部署,其中,低頻、突發(fā)、定時(shí)啟動(dòng)等非長(zhǎng)期運(yùn)行的推理服務(wù)可采用serverless的彈性容器或函數(shù)方式部署。與網(wǎng)元業(yè)務(wù)處理邏輯強(qiáng)相關(guān)的時(shí)延敏感型網(wǎng)絡(luò)智能化推理服務(wù)需要在網(wǎng)元內(nèi)部或靠近網(wǎng)元部署,運(yùn)營(yíng)商網(wǎng)絡(luò)設(shè)備上的計(jì)算芯片既有較為通用的x86 CPU、ARM CPU、GPU,也有FPGA、ASIC等專用芯片,編譯器需要針對(duì)不同種類的芯片進(jìn)行定制化適配,使得推理服務(wù)能以SDK方式與網(wǎng)元軟件系統(tǒng)集成,但架構(gòu)封閉難以適配或適配改造成本較高的網(wǎng)元應(yīng)將推理服務(wù)外置部署,即采用網(wǎng)絡(luò)數(shù)據(jù)分析功能(network data analytics function,NWDAF)和無(wú)線網(wǎng)智能控制器(RAN intelligent controller,RIC)等標(biāo)準(zhǔn)組織推動(dòng)的在網(wǎng)元側(cè)構(gòu)建專用AI控制器的方案,專用AI控制器的資源管理應(yīng)采用k3s等輕量級(jí)k8s集群[26]或KubeEdge[27]、OpenYurt[28]等云原生邊緣k8s節(jié)點(diǎn)方案,使得推理服務(wù)能以容器或serverless方式部署并使用相關(guān)推理部署工具,與云上集中部署保持一致的管理和使用體驗(yàn)。
圖5 推理模型服務(wù)上線運(yùn)行圖
此外,對(duì)于推理模型精度這一問(wèn)題,由于推理精度同時(shí)受網(wǎng)絡(luò)智能化業(yè)務(wù)要求、硬件資源、壓縮優(yōu)化方法三者的共同影響,應(yīng)根據(jù)具體情況進(jìn)行平衡。對(duì)于數(shù)據(jù)隱私問(wèn)題,目前可以以數(shù)據(jù)通過(guò)IP承載網(wǎng)等運(yùn)營(yíng)商內(nèi)網(wǎng)傳輸?shù)姆绞浇鉀Q,如后續(xù)有明確需求則需要考慮數(shù)據(jù)加密或聯(lián)邦學(xué)習(xí)等隱私方案,但需要做好安全與性能的平衡。
網(wǎng)絡(luò)智能化想要真正成為運(yùn)營(yíng)商網(wǎng)絡(luò)發(fā)展的原生動(dòng)力,就不只需要數(shù)據(jù)和算力,更需要AI算法的支持,三者缺一不可。AI算法是本輪人工智能熱潮的根本推動(dòng)力,目前其發(fā)展呈現(xiàn)3個(gè)態(tài)勢(shì):AI算法的研究主力軍從以學(xué)術(shù)界為主,發(fā)展到學(xué)術(shù)界和產(chǎn)業(yè)界并重;AI算法紛紛開(kāi)源,極大地提高了研究效率和技術(shù)迭代速度;AI算法與領(lǐng)域知識(shí)更加緊密地結(jié)合,AI在更多行業(yè)得以落地。
網(wǎng)絡(luò)智能化要充分認(rèn)識(shí)和借助這種發(fā)展趨勢(shì),打破CT-IT產(chǎn)業(yè)之間巨大的思維代溝,填補(bǔ)AI產(chǎn)業(yè)界與長(zhǎng)尾化、碎片化的網(wǎng)絡(luò)智能化應(yīng)用場(chǎng)景之間的價(jià)值鴻溝,構(gòu)建一個(gè)健康繁榮的產(chǎn)業(yè)生態(tài)圈。目前,產(chǎn)業(yè)界已有美國(guó)電話電報(bào)公司(AT&T)的Acumos開(kāi)源平臺(tái)在此方面提供了借鑒[29],其支持各主流計(jì)算框架和編程語(yǔ)言、提供可視化模塊化的開(kāi)發(fā)環(huán)境、提供模型庫(kù)和模型商店,降低了AI開(kāi)發(fā)的門(mén)檻,有利于CT行業(yè)的技術(shù)人員使用平臺(tái)進(jìn)行模型訓(xùn)練和數(shù)據(jù)挖掘。
對(duì)于運(yùn)營(yíng)商而言,應(yīng)以自有AI平臺(tái)為基礎(chǔ),為更多用戶和產(chǎn)業(yè)伙伴提供開(kāi)放能力:開(kāi)放網(wǎng)絡(luò)數(shù)據(jù)集,并向網(wǎng)絡(luò)設(shè)備供應(yīng)商、AI硬件提供商、AI軟件開(kāi)源組織、高校研究機(jī)構(gòu)、AI技術(shù)服務(wù)商等合作伙伴及個(gè)人開(kāi)發(fā)者提供真實(shí)網(wǎng)絡(luò)測(cè)試環(huán)境;提供低代碼和圖形化開(kāi)發(fā)環(huán)境,提供模型市場(chǎng)、特征倉(cāng)庫(kù)、詳細(xì)使用文檔、最佳實(shí)踐,推動(dòng)公司內(nèi)部相關(guān)員工提升數(shù)據(jù)分析與AI算法的應(yīng)用能力,推動(dòng)網(wǎng)絡(luò)智能化問(wèn)題以內(nèi)部研發(fā)方式解決;基于模型市場(chǎng)和特征倉(cāng)庫(kù),與產(chǎn)業(yè)各方探索中/高價(jià)值的網(wǎng)絡(luò)智能化場(chǎng)景的“需求挖掘/發(fā)布——內(nèi)、外部協(xié)同開(kāi)發(fā)測(cè)試——上線測(cè)試/運(yùn)行——成果分享”的合理商業(yè)模式。通過(guò)多種手段,將AI產(chǎn)學(xué)界的技術(shù)能力吸引到網(wǎng)絡(luò)智能化領(lǐng)域當(dāng)中,提升CT行業(yè)內(nèi)部的AI應(yīng)用能力,在越來(lái)越多的網(wǎng)絡(luò)設(shè)備、管理系統(tǒng)、業(yè)務(wù)系統(tǒng)中集成AI能力,最終實(shí)現(xiàn)網(wǎng)絡(luò)的泛在智能。
首先,本文針對(duì)網(wǎng)絡(luò)智能化提出了一套AI工程化的技術(shù)解決方案,但目前AI技術(shù)在算法和部署框架等方面的發(fā)展日新月異,各種技術(shù)百花齊放,未來(lái)需要對(duì)方案中每個(gè)環(huán)節(jié)進(jìn)行更加細(xì)致的技術(shù)方案研究和比選。其次,網(wǎng)絡(luò)智能化在數(shù)據(jù)采集側(cè)和部署側(cè)屬于典型的分布式架構(gòu),和邊緣計(jì)算的場(chǎng)景基本重合,目前邊緣計(jì)算也是ICT產(chǎn)業(yè)重要的研究方向,因此網(wǎng)絡(luò)智能化的研究工作應(yīng)充分借鑒邊緣智能領(lǐng)域的經(jīng)驗(yàn)。再次,本文的分析建立在網(wǎng)絡(luò)智能化訓(xùn)練為集中式訓(xùn)練的基礎(chǔ)上,隨著網(wǎng)絡(luò)智能化的不斷發(fā)展,網(wǎng)元側(cè)、網(wǎng)元間閉環(huán)訓(xùn)練的需求會(huì)陸續(xù)浮出水面,因此下一步需要對(duì)遠(yuǎn)程分布式訓(xùn)練、聯(lián)邦學(xué)習(xí)等技術(shù)進(jìn)行研究。再其次,AI的加速技術(shù)不只限于部署環(huán)節(jié),在數(shù)據(jù)側(cè)和訓(xùn)練側(cè)存在著大量可加速空間。最后,進(jìn)一步研究MLOps等AI工程的自動(dòng)化流水線技術(shù)方案,不斷提升網(wǎng)絡(luò)智能化大規(guī)模應(yīng)用的工程效率。從技術(shù)、標(biāo)準(zhǔn)、產(chǎn)業(yè)、應(yīng)用、生態(tài)等方面來(lái)看,網(wǎng)絡(luò)智能化目前仍處于初級(jí)階段,有大量的問(wèn)題等待攻克,有大量的需求等待滿足,需要CT產(chǎn)業(yè)界和AI產(chǎn)學(xué)界更加緊密的合作,不斷提升網(wǎng)絡(luò)智能化水平,為我國(guó)構(gòu)筑更加智能開(kāi)放的信息基礎(chǔ)設(shè)施。
[1] JIA W L, WANG H, CHEN M H, et al. Pushing the limit of molecular dynamics with ab initio accuracy to 100 million atoms with machine learning[J]. arXiv: 2005. 00223, 2020.
[2] JUMPER J, EVANS R, PRITZEL A, et al. Highly accurate protein structure prediction with AlphaFold[J]. Nature, 2021, 596(7873): 583-589.
[3] 歐陽(yáng)曄, 王立磊, 楊愛(ài)東, 等. 通信人工智能的下一個(gè)十年[J]. 電信科學(xué), 2021, 37(3): 1-36.
OUYANG Y, WANG L L, YANG A D, et al. Next decade of telecommunications artificial intelligence[J]. Telecommunications Science, 2021, 37(3): 1-36.
[4] 華為技術(shù)有限公司. 華為自動(dòng)駕駛網(wǎng)絡(luò)解決方案白皮書(shū)[R]. 2020.
Huawei Technologies Co., Ltd.. Huawei's white paper on autonomous driving network solutions[R]. 2020.
[5] 中興通訊股份有限公司. 中興自主進(jìn)化網(wǎng)絡(luò)白皮書(shū)[R]. 2020.
ZTE Technology Co., Ltd.. ZTE’s white paper on autonomous evolution network[R]. 2020.
[6] 鄧超, 王斌, 朱琳, 等. 人工智能在電信運(yùn)營(yíng)中的典型應(yīng)用實(shí)踐[J]. 信息通信技術(shù)與政策, 2019(7): 34-38.
DENG C, WANG B, ZHU L, et al. Typical applications of artificial intelligence in telecom operation[J]. Information and Communications Technology and Policy, 2019(7): 34-38.
[7] 馮俊蘭. 5G自身智能化及賦能智能產(chǎn)業(yè)之路[J]. 電信工程技術(shù)與標(biāo)準(zhǔn)化, 2020, 33(1): 1-8.
FENG J L. Intelligent 5G network and 5G+AI applications[J]. Telecom Engineering Technics and Standardization, 2020, 33(1): 1-8.
[8] 程強(qiáng), 劉姿杉. 數(shù)據(jù)驅(qū)動(dòng)的智能電信網(wǎng)絡(luò)[J]. 中興通訊技術(shù), 2020, 26(5): 53-56.
CHENG Q, LIU Z S. Data empowered intelligent communication networks[J]. ZTE Technology Journal, 2020, 26(5): 53-56.
[9] RATNER A, BACH S H, EHRENBERG H, et al. Snorkel: rapid training data creation with weak supervision[J]. The VLDB Journal: Very Large Data Bases: a Publication of the VLDB Endowment, 2020, 29(2): 709-730.
[10] BRECK E, CAI S Q, NIELSEN E, et al. The ML test score: a rubric for ML production readiness and technical debt reduction[C]//Proceedings of 2017 IEEE International Conference on Big Data (Big Data). Piscataway: IEEE Press, 2017: 1123-1132.
[11] CNCF. Cloud Native Interactive Landscape[EB]. 2021.
[12] Kubeflow. Kubeflow Overview[EB]. 2021.
[13] Github. Volcano[EB]. 2021.
[14] Kubernetes. Scheduling Framework[EB]. 2021.
[15] BROWN T B, MANN B, RYDER N, et al. Language models are few-shot learners[J]. arXiv: 2005. 14165, 2020.
[16] Horovod. Elastic Horovod[EB]. 2021.
[17] GIBIANSKY A. Bringing HPC techniques to deep learning[EB]. 2021.
[18] HOWARD A G, ZHU M L, CHEN B, et al. MobileNets: efficient convolutional neural networks for mobile vision applications[EB]. 2017: arXiv: 1704. 04861, 2017.
[19] HAN S, MAO H Z, DALLY W. Deep compression: compressing deep neural network with pruning, trained quantization and huffman coding[J]. ICLR. 2015.
[20] INTEL. Accelerate lower numerical precision inference with Intel? deep learning boost[EB]. 2021.
[21] HINTON G, VINYALS O, DEAN J. Distilling the knowledge in a neural network[J]. Computer Science, 2015, 14(7):38-39.
[22] LI M Z, LIU Y, LIU X Y, et al. The deep learning compiler: a comprehensive survey[J]. IEEE Transactions on Parallel and Distributed Systems, 2021, 32(3): 708-727.
[23] Github. KFServing: predict on an InferenceService with TensorFlow model[EB]. 2021.
[24] TensorFlow. TFServing:train and serve a TensorFlow model with TensorFlow serving[EB]. 2021.
[25] Google Cloud. MLOps:continuous delivery and automated pipelines in machine learning [EB]. 2021.
[26] Rancher. K3s[EB]. 2021.
[27] GitHub. KubeEdge[EB]. 2021.
[28] Gitee. OpenYurt[EB]. 2021.
[29] 劉騰飛, 李?yuàn)W. Acumos: 一種人工智能開(kāi)放平臺(tái)[J]. 郵電設(shè)計(jì)技術(shù), 2018(12): 46-50.
LIU T F, LI A. Acumos—an artificial intelligence open platform[J]. Designing Techniques of Posts and Telecommunications, 2018(12): 46-50.
AI engineering technology solutions in network intelligence
ZHU Mingwei
China MobileGroup Design Institute Co., Ltd., Beijing 100080, China
Depending on AI technology, network intelligence is becoming an important initiative for communication industry to enhance network empowerment externally, and to achieve cost reduction and efficiency internally. The difficulties implementing network intelligence applications from the perspective of AI engineering were analyzed. The industrial grade AI engineering technical solutions were proposed, including data collection and processing, computing resources management and task scheduling, and inference deployment optimization. The strategies of network intelligence’s ecosystem development were studied.
network intelligence, artificial intelligence, cloud native, model compression, inference service
TP181;TN929.5
A
10.11959/j.issn.1000?0801.2022016
2021?09?08;
2022?01?12
朱明偉(1986?),男,現(xiàn)就職于中國(guó)移動(dòng)通信集團(tuán)設(shè)計(jì)院有限公司,主要研究方向?yàn)?G、邊緣計(jì)算、云原生。