天天看點

經曆3次雙11大考的淘系端智能背後的技術實踐

近幾年,關注端智能方向的公司越來越多,一些頭部公司在端智能上有了新的探索,并且取得了不錯的效果,端智能逐漸成為驅動移動 App 業務創新的核⼼推動⼒之⼀。在推進端智能的過程中,會遇到哪些挑戰?核心解決思路是什麼?近日,InfoQ 有幸邀請到阿裡巴巴淘系技術部資深技術專家呂承飛(花名呂行),請他聊一聊端智能在淘系的應用,以及雙十一背後的那些技術挑戰。他還将在 12 月 6-7 日的 QCon 全球軟體開發大會(深圳站)“雲端一體化移動開發”專題中進行《淘系端智能技術建設和業務創新》的分享,敬請關注。

以下是采訪實錄:

InfoQ:呂行老師您好,非常榮幸能夠采訪您。您從 2017 年開始探索端側智能方向,這 3 年來,您認為端智能的發展有哪些變化?

呂行: 宏觀層面,端智能應用從探索嘗試到逐漸展開,在未來,必定會成為商業應用以及業務創新的核心技術推動力之一。具體來看,業界端智能的發展可以從以下三個角度來看:

從技術角度看,解決的問題是逐漸遞進的。 從最初模型運作基礎問題,再到效率和規模應用問題,具體包括:算法模型如何在端側運作?算法模型如何快速疊代部署?如何降低端 AI 技術門檻實作普及應用?

從算法角度看,端側算法不斷成熟和完善。 從最初的人臉檢測,到人體姿态、手勢、OCR 等逐漸成熟。除視覺模型外,像搜尋推薦深度模型、語音 ASR 模型和 NLP 模型在端側運作也逐漸變得可能,比如:我們今年基于 MNN 實作了移動端實時語音識别方案,并且在雙 11 淘寶直播"一猜到底"活動中取得很好的業務效果。

從應用角度看,整體應用範圍不斷拓展和深入。 從最初單點場景比如淘寶拍立淘場景,到多 App 和多場景全面鋪開,不完全統計,阿裡基于 MNN 的端智能應用已經超過 30 個。

InfoQ:淘系端智能的發展主要經曆了哪幾個階段?

經曆3次雙11大考的淘系端智能背後的技術實踐

呂行: 淘系端側 AI 應用流程如上所示,每個節點都存在諸多問題,過去 3 年我們一直在解決中,主要經曆了以下 3 個階段:

端側推理引擎階段:端智能首先要解決算法模型在端側運作問題,否則一切無從談起,推理引擎就是端智能應用皇冠上的明珠,這個階段我們做了端側推理引擎 MNN,實作模型在端側高效運作。

算法模型服務階段:端智能要在業務落地除了算法模型運作之外,前後還涉及模型轉換、更新釋出、版本管理、運維監控等工作,這個階段我們做了端 AI 服務端解決算法模型釋出更新問題。特别地,算法任務除模型外,還涉及前後處理代碼,是以我們建構了基于 PythonVM 的算法任務運作時容器,讓算法同學編寫 Python 任務實作快速疊代。

端 AI 研發範式階段:端智能規模化應用過程中需要體系化解決研發疊代全鍊路問題。一方面,端智能應用落地需要算法開發和移動開發通力協作,但是兩者之間天然存在 GAP,完全依賴口頭溝通,協作效率存在較大問題;另一方面,AI 應用場景具有長尾和碎片化特征,諸多場景因為缺少專業算法支援導緻沒有落地,而且由于缺少統一技術建設導緻已被應用的方案難以沉澱和複用;是以,我們建構『端 AI 研發範式』,具體由 MNN 工作台、MNN 運作時、端 AI 服務端構成。其核心思想:一是解耦算法和移動開發,讓算法開發獨立疊代;二是降低 AI 門檻,讓 AI 成為普通開發的有力武器解決業務問題。我将在本次 QCon 會議分享相關内容細節。

InfoQ:淘系技術在推進端智能落地過程中,遇到過哪些困難,您認為最大的挑戰是什麼?最終是如何解決的?

呂行: 淘系豐富的業務場景曆來是培育創新技術的沃土,端智能的整體技術和應用實踐一直走在行業前列,我們有開源推理引擎 MNN 還有開放的 MNN 工作台等。目前淘系已經有 25+ 應用場景,65+ 算法模型在日常運作,每天推理運作次數超過百億次,覆寫商品搜尋推薦、使用者觸達、拍立淘、直播等核心場景,經曆 3 次雙 11 考驗并取得巨大業務價值。整體應用可以大緻分成如下幾類:

視覺類,主要在拍立淘、淘寶直播、拍攝工具、評價等場景應用。

推薦類,主要在首頁資訊流、購後、詳情等各種推薦場景。

觸達類,主要在 Push、消息、各業務彈框等場景應用。

語音類,主要在淘寶直播、智能降噪等場景應用。

到目前為止,最大挑戰還是推理引擎 MNN 的挑戰,比如:

移動端裝置和系統碎片化;

移動端算力和資源有限;

視覺、語音等多樣化的算法模型

……

如何解決上述挑戰,這裡我就不細說了,我會在 QCon 深圳 2020 會議上重點分享其核心解決思路。

InfoQ:在剛剛過去的雙 11 中,端智能在實際應用過程中有哪些突出表現?可以結合實際案例來展開聊聊嗎?

呂行: 端智能已經逐漸從嘗試應用變成驅動業務創新的核心推動力之一,在雙 11 的熱點業務場景都能看到相關應用。今年大熱的直播場景也有不少應用。依托于淘系自研的 MNN,淘寶直播間推出 “語音猜價格”挑戰,觀衆在直播間也能實作語音互動,動動嘴就可以響應主播發出的猜産品價格的任務。端智能極大的提升了直播内容的互動可玩性和内容了解準确性。

基于端 AI 技術實作精準的使用者感覺能力,雙 11 流量高峰階段,充分發揮端側的算力和資料優勢,大幅提升主動觸達使用者的體驗和效果,僅在 11 月 1 日當天,端側 AI 決策運作了 277 億次。

通過對使用者行為的實時感覺和意圖識别做商品清單重排和智能重新整理,在淘系資訊流等場景大規模應用,DPV 和 GMV 都獲得了較大提升。

InfoQ:可以簡單聊聊 MNN 的下一步計劃嗎?

呂行: 其實推理引擎 MNN 的本質是做這樣一件事情,即實作 [不同種類模型] 在 [不同異構裝置] 上 [最高效運作]。這裡有三個關鍵點,我們持續在演進和探索。

支援不同種類模型,從支援 CV、Data 算法模型到支援 ASR、NLP 算法模型,最近 MNN 在控制流、動态圖等方面都有了很多完善和更新,新支援 Transformer 等網絡模型。

支援不同異構裝置,從支援用戶端 CPU ARMv7/64/v8.2 到 GPU OpenCL/Vulkan/Metal 等都不斷在演進和完善,MNN 也開始支援服務端 Intel x86/NVIDIA GPU 推理,提供雲 - 端一體的統一推理服務。針對每個異構裝置都需要實作和優化所有 OP 導緻開發成本過高問題,我們創新性提出幾何計算架構方案,将 OP 數目收斂到約 20 個核心算子,做到低成本覆寫各個異構後端,MNN 應該是行業覆寫異構後端最多支援算子最全的推理引擎。

實作最高效運作,高性能一直是 MNN 核心優勢之一,在行業也有廣泛認同。具體優化思路包括離線的模型壓縮、圖融合等方式進行優化,線上的通過彙編、SIMD/ 并行化、矩陣算法、排程等方式進行優化。另外,MNN 與 PAI 合作實作訓練、量化到 MNN 部署雲端一體化方案,新增稀疏剪枝、Overflow-Aware 量化等壓縮方案。

MNN 在上述三個方向會持續演進,但從整個端智能應用鍊路來看,MNN 隻是解決算法模型在端側高效運作的單點問題。目前,我們正從 MNN 單點技術往端智能技術體系化和産品化方向邁進,如前所述建構端 AI 研發範式,通過 MNN 工作台解決算法模型部署過程中的轉換、優化、調試、釋出等問題,甚至做到讓算法開發獨立疊代。MNN 工作台目前正在免費對外公測中,有興趣同學可以通路我們官網 www.mnn.zone 下載下傳體驗。

InfoQ:您認為未來移動領域還有哪些值得關注的技術方向?

呂行: 技術進展跟業務發展還是強相關的,随着直播業務快速發展,多媒體技術應該有比較多發展,我自己更多關注端智能相關的一些東西:

AR+ 端 AI+3D

我覺得這幾個技術結合可以做出很多有意思的應用,其中 AR 提供了虛實結合的場景能力,端側 AI 提供 AR 中的互動能⼒,3D 模型 /AR 素材提供内容供給,5G 網絡提供了大資源包的網絡傳輸能⼒。目前這幾個技術都不算成熟,比如難以實作低成本且高品質 3D 模組化。另外,手機也不是 AR 應用最适合的載體,可以期待一下後續消費級的 AR 眼鏡。

端雲協同的智能

目前雲端做訓練,用戶端做推理,端雲結合還比較淺層。我們也在做端上訓練的探索,以及建構一套分布式的端雲協同智能系統,實作使用者個性化了解,保護資料隐私,以及節省雲端成本。

受訪嘉賓

呂承飛,花名呂行,阿裡巴巴資深無線開發專家,在移動開發,超級 App 架構,端側 AI 等方面有深入思考和實踐經驗。2011 年畢業加入百度,經曆百度輸入法 0 到 1 研發過程。2013 年加入淘系,經曆手機淘寶超級 App 技術演化完整過程,主導淘寶 iOS 架構更新、架構治理、穩定性和性能等相關工作。2017 年開始端側智能方向探索,建構開源端側推理引擎 MNN,端計算架構 Walle,AR 技術架構和美妝 AR 等創新應用。