近日,由國際電信聯(lián)盟(ITU)主辦、中興通訊聯(lián)合鵬程實驗室、Linux基金會等單位承辦的AI for Good峰會第二場線上研討會成功舉辦。本次研討會的主題是“開源,加速人工智能技術(shù)創(chuàng)新”,國內(nèi)外多位AI開源領(lǐng)域的專家和大家分享了各種由開源推動的AI最佳實踐,包括來自Linux基金會人工智能和數(shù)據(jù)基金會(LF AI & Data)的執(zhí)行董事Ibrahim Haddad、前TAC主席Jim Spohrer,以及來自O(shè)penI、PaddlePaddle、柴火創(chuàng)客、OpenVINO、Milvus等多個AI開源社區(qū)的代表。中興通訊高級開源工程師、Adlik開源項目的TSC主席袁麗雅發(fā)表了題為《Adlik,讓人工智能觸手可及》的演講。
【Adlik背景】
Adlik是中興通訊在LF AI & Data牽頭發(fā)起的一項開源項目,旨在解決在深度學(xué)習(xí)模型落地過程中的挑戰(zhàn)性問題,實現(xiàn)深度學(xué)習(xí)模型在特定硬件環(huán)境的部署、做到高效推理。袁麗雅提到,在這個過程中,模型訓(xùn)練只是第一步,如何根據(jù)應(yīng)用場景確定硬件部署環(huán)境、如何確定各種不同環(huán)境下的模型部署和推理方案、如何完成復(fù)雜的調(diào)優(yōu)工作以滿足性能需求,每一個步驟對于模型的實際應(yīng)用都至關(guān)重要。Adlik項目的誕生正是為了掃除這整個流程中的絆腳石。
Adlik作為一個深度學(xué)習(xí)推理工具鏈項目,可以為深度學(xué)習(xí)模型提供從訓(xùn)練完成,到部署到特定硬件并提供應(yīng)用服務(wù)的端到端支持,其應(yīng)用目的就是為了將模型從研發(fā)狀態(tài)快速部署到生產(chǎn)應(yīng)用環(huán)境。Adlik可以和多種推理引擎協(xié)作,支持多款硬件,提供統(tǒng)一對外推理接口,并提供多種靈活的部署方案,以及工程化的自適應(yīng)參數(shù)優(yōu)化方案,為用戶提供快速、高性能的應(yīng)用服務(wù)提供助力。
【Adlik架構(gòu)】
Adlik在架構(gòu)上,可以分為模型優(yōu)化器模塊(Optimizer),模型編譯器模塊(Compiler)和推理引擎模塊(Inference Engine)。在模型訓(xùn)練完畢、應(yīng)用場景確定之后,用戶即可通過Adlik 模型優(yōu)化器處理,生產(chǎn)優(yōu)化后的模型,然后通過模型編譯模塊,完成模型格式轉(zhuǎn)換,生成最終推理引擎支持的模型格式,最終完成在云邊端等多種環(huán)境中的定制化部署,在最大化資源利用率的前提下,實現(xiàn)最佳的推理性能。
Adlik模型優(yōu)化器支持剪枝、量化、知識蒸餾等多種模型優(yōu)化、壓縮技術(shù),以ResNet-50為例,經(jīng)優(yōu)化器組合優(yōu)化后,在模型的準(zhǔn)確率基本不變的情況下,時延縮短為原來的1/4,計算量下降為原來的1/3,模型大小縮小為原來的1/12。
Adlik模型編譯器通過DAG圖的方式實現(xiàn)模型端到端的自動最優(yōu)編譯,另外通過常量折疊、層融合、步長優(yōu)化等技術(shù)減少計算量、內(nèi)存讀寫時間,進(jìn)一步提升推理速度。在最新的版本中,Adlik基于升級優(yōu)化的TVM自動搜索,能大幅加快調(diào)度參數(shù)的搜索過程。
Adlik推理引擎為深度學(xué)習(xí)或機(jī)器學(xué)習(xí)模型自動匹配加載插件式的推理運行時,實現(xiàn)模型的版本管理、運行調(diào)度,為人工智能應(yīng)用提供滿足性能要求的推理服務(wù)。在x86 cpu硬件執(zhí)行DL模型推理的標(biāo)準(zhǔn)測試中,對標(biāo)原始模型提升最大10倍的推理性能。
【Adlik展望】
Adlik項目目前已經(jīng)發(fā)布了三個版本,已走進(jìn)深水區(qū),正在不斷探索更加自動化的模型優(yōu)化部署技術(shù)。比如說Adlik最近投入了對神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)搜索的研究,近期將發(fā)布ZenNAS的加強(qiáng)版,基于原始阿里的ZenNAS框架做了一些優(yōu)化,能大大加速網(wǎng)絡(luò)搜索的過程!斑@個工作將Adlik工作流的起點往前挪了一步,也使Adlik加速模型落地的步伐往前邁了一步”。袁麗雅表示。此外Adlik還會基于增強(qiáng)學(xué)習(xí)對模型編譯器中算子的調(diào)度流程進(jìn)一步優(yōu)化,實現(xiàn)基于設(shè)備特性的最佳調(diào)度。
“更廣泛的AI應(yīng)用場景、更簡單的操作、更優(yōu)化的性能一直是Adlik技術(shù)演進(jìn)過程中的原則”。 最后,袁麗雅描述了Adlik的終極目標(biāo):“讓模型部署不再成為人工智能的應(yīng)用瓶頸,讓人工智能更觸手可及!