
摘要:移動智能終端的應用程序中,智能算法的使用場景日益豐富。隨著移動終端性能的逐漸增強,移動終端計算可以有效地彌補云計算的高延遲、弱隱私和算力依賴等問題。但受限于移動設備硬件多樣性,也為終端計算帶來了挑戰。因此,越來越多的應用程序的技術模式采用云邊協同計算的工程體系。本文通過分析移動終端智能、端云協同的工程體系及其在推薦場景下的實例,幫助讀者了解移動端智能應用程序的發展與應用。
關鍵字:移動終端智能;邊緣計算;交互式推薦 ;電子商務
引言
黨的二十大報告“加快構建新發展格局,著力推動高質量發展”部分講道,將人工智能作為新的增長引擎,推動戰略性新興產業融合集群發展。IDC與浪潮信息聯合發布的《2022-2023中國人工智能計算力發展評估報告》[1]中指出,互聯網行業始終是人工智能應用滲透度與技術研發的排頭兵,不乏頭部互聯網企業將自身人工智能的技術對外提供服務,助力其他企業、產業發展人工智能。因此,分析互聯網企業在實踐中的工程設計,對于人工智能在其他領域應用滲透具有重要意義。
1. 云計算與邊緣計算
由于人工智能算法在訓練過程中需要海量數據,數據的量級決定其不能由單一用戶完成,同時由于模型訓練所需的硬件要求的限制,早期智能應用均由云服務進行訓練、推理與響應。由此,導致場景應用過程受限于云端的服務算力,在高并發場景下延遲高,用戶體驗較差。邊緣計算是指在靠近物或數據源頭的一側,采用網絡、計算、存儲、應用核心能力為一體的開放平臺,就近提供智能計算服務。IDC預測2023年,將有20%的邊緣服務器用來處理AI工作負載,70%的企業將在物聯網邊緣運行不同級別的數據處理。在民用場景中,普及率最高的智能移動終端滿足邊緣計算全部條件,為互聯網實踐移動終端邊緣計算提供了有利條件。
2. 移動終端計算的優勢
2.1 降低計算成本,增加云服務效率
截至2021年2月,移動設備接入互聯網比例已高達98.7% 。2021年用于推理的服務器的市場份額占比已經過半,達到56.7%。預計2026年,用于推理的工作負載比重將達到62.2%。不同于科研、中型企業的大規模、高密度人工智能計算,在民用場景中,便捷、低延遲的應用場景愈發普遍。工信部的統計數據顯示,智能手機普及率達到了75%,其作為邊緣計算的載體可以持續分擔民用場景的云端算力緊張,端云智能的細分與協調發展將有效降低成本,提升智能計算的效率。
2.2 計算本地化,時效性增強
當智能算法模型的訓練與部署在云端進行,業務的響應需要通過移動終端向云側服務發起請求,由于模型的推斷需要時間,不可避免地出現響應延遲的問題。如果模型推理在數據生產側進行,就不需要與云端服務通信,對于用戶操作響應延遲會大幅度降低,同時可以滿足終端設備弱網和離線時的應用[2]。
2.3 數據本地化,隱私安全性高
隨著國家《互聯網信息服務算法推薦管理規定》《App違法違規收集使用個人信息行為認定方法》對智能應用市場的管理逐漸加強,愈發提升個人數據的隱私保護。全量上傳用戶終端數據到云端統一計算的模式在業務上具有隱私合規管控風險,通過云端協同,在應用層將終端智能模型下載到本地,本地對用戶數據進行推理計算,具備更高的數據安全性。
3. 端計算的挑戰
3.1 存儲能力的限制
移動端上進行模型的計算涉及引擎SDK、算法模型、數據存儲、模型的轉發與壓縮和模型的管理,云端存儲單位以TB 計算,移動終端設備往往只有幾百GB存儲能力,并且需要裝載數十個應用程序,因此對于端上模型引擎、模型與數據存儲都有明顯的存儲限制。
3.2 算力的限制
AI模型受端上包含CPU、GPU與DSP提供的處理器運算限制,其所支持的模型大小有較高的要求。移動設備的功耗與云端服務器差異極大,因此需對模型進行優化。
3.3 智能設備異構問題。
手機終端智能由硬件與軟件協同提供。硬件層面,在芯片底層提供加速計算硬件單元,加速機器學習和神經網絡常用的矢量和張量計算;軟件層面,通過AI算法模型的接口和SDK等軟件技術,為上層應用提供加速AI推斷過程計算的技術[3]。各芯片廠商選擇支持的深度學習框架、模型算子的差異、手機廠商的軟件封裝差異,需要應用針對不同的手機平臺對相應的SDK或API進行適配,從而限制了當前移動終端側AI應用的快速普及。
4. 端計算與云計算的協同方式
在模型方面,端側資源與算力相對云端有限,無法支持大規模持續計算,無法支持大型模型計算。智能算法模型的訓練需要大量的數據,端側單用戶的數據無法滿足數據量級要求,因此算法的訓練更適合在云端使用離線數據訓練,充分考慮應用場景和移動端設備的情況,需將模型進行壓縮、量化、減枝以及知識蒸餾做到模型壓縮,將模型集成到應用程序中使推理工作在端側通過實時數據執行推理。由此云端協作模式為云上以訓練為主、端上以推理為主,通過模型壓縮將模型小型化后部署到端側運行。隨著移動設備軟硬件的進一步發展,各大互聯網廠商也在端上嘗試訓練,使云側有大模型的訓練和推斷,端側也有小模型的訓練和推斷,云和端之間有模型間學習梯度的通信。在數據方向,端側對于數據進行計算與存儲,將云端需要的數據同步到云端離線數倉,從而實現云端協同智能以及數據一體化。
5. 智能硬件設備的發展
智能終端設備已由智能手機發展到穿戴設備、交通工具、家居設備,多端的端、邊緣與云全場景智能平臺,由此蘋果、安卓和各芯片廠商與整機廠商都在推出與自身硬件配合的全場景機器學習框架。高通于 2022年6月推出支持包括TensorFlow、PyTorch和ONNX在內的,不同AI框架與主流 runtimes的AI軟件棧;華為的昇騰計算基于昇騰系列處理器構建的全棧AI計算基礎設施及應用,包括昇騰Ascend 系列芯片、Atlas系列硬件、CANN芯片使能、MindSpore AI框架、ModelArts、MindX應用;聯發科的 Paddle Lite面向端側場景的輕量化推理引擎,可以實現飛槳模型在x86/ARM平臺下多種OS內的高效部署,同時支持在10種以上的GPU/NPU異構后端進行推理加速和混合調度;小米的MACE同樣支持CPU、GPU與DSP的異構計算加速,支持高通、MTK與澎湃等芯片。芯片廠商針對AI進行硬件的迭代,同時手機廠商通過智能相機、語音助理等系統應用等對于智能場景的探索,逐步提升軟件的支持能力,封裝基礎的SDK提供給應用開發者。
6. 軟件工程體系的完善
基于不同硬件廠商提供的AI支持的指令集或深度學習框架,將真實的業務應用到端上需要模型壓縮、優化、灰度部署與更新等工程能力。在這個方面各軟件廠商都有實踐,其中騰訊、螞蟻金服、字節跳動、美團等都有相關的基礎建設的沉淀,并作為平臺通用能力對外提供,分層架構設計上可劃分為計算框架、智能框架、研發平臺層。
6.1 數據處理層,實現云端數據一體化
為保障端上模型推理的準確和高效,端側需支持流式計算來保證數據加工的實效性。避免即時單一的數據消費限制了應用的場景,由此通過實現KV或SQL Lite等方式進行數據的存儲。為了提升數據存儲的效率,支撐端上的特征工程建設,將多元的數據進行多維度的整合與管理,提供給不同業務以方便高效地消費、共享、定制、復用各自的特征數據。同時數據存儲將過濾用戶信息的數據加工為樣本,為云端模型推理與訓練提供支持。
6.2 計算架構層,兼容多種硬件差異
解決端上算法模型運行的問題并兼顧其在移動端性能、尺寸、功耗上的訴求,適配底層不同的操作系統與硬件芯片,為模型的運算提供統一的環境。例如螞蟻金服的算法研發框架MNN,支持主流模型的文件格式與主流網絡結構,通過自實現算子支持不同模型優化算子體積,實現python虛擬機。字節跳動 Pitaya端上虛擬機PitayaVM,通過對內核和標準庫的剪裁縮小虛擬機的包體積,優化容器計算和編譯時優化等算法提升性能,內置python虛擬機。
6.3 智能框架層,提升應用研發效率
將推理引擎與工程提供封裝給業務的組件,屏蔽其對底層運行環境與原子計算能力的直接感知調用。例如螞蟻金服基于應用范圍和垂直類場景的特性,建設了多媒體引擎、生物識別引擎,沉淀了OCR文字識別、人機交互等算法組件,用于支持端上不同業務場景的調用;提供基于數據分層設計的標準數據服務如埋點、特征處理、數據讀取與存儲;基于上述工具組件在一周內完成研發,例如用于端上異常實施監測的白屏監測方案、基于端側高質量光學字符識別(Optical Character Recognition,OCR)算法能力,在聊天場景中進行實時防范,提示欺詐性的文字和對話,幫助用戶避免被詐騙的反欺詐方案等。
6.4 研發平臺,高頻迭代下的質效保證
提供研發支撐,包括特征開發部署,模型訓練部署以及監控與質量保障。(1)發布管理提供差異化部署服務,同時保障穩定性,做到可灰度、可監控、可回滾,具體包含任務管理、安全發布、監控運維、算法實驗等功能;(2)數據處理面向算法提供標準化、規范化的數據服務,包括數據可視化、數據接入授權、數據使用消費統計等內容;(3)模型優化面向算法提供模型訓練、模型轉換、模型壓縮、模型評測等服務。
7. 云端智能一體化在推薦場景的應用
盡可能短的時間內讓用戶找到自己感興趣的內容,是推薦場景的核心問題。常用的推薦算法有基于神經網絡、深度學習,也有將內容、協同過濾和熱度等算法相結合的混合推薦算法[4],當整個應用部署在云端時,用戶通過移動終端發起檢索請求后,觸發云端執行查詢、多路召回、模型排序與展示信息合并處理,最終返回給客戶端進行渲染呈現。
7.1 云端計算在推薦場景的延遲問題
上述通用流程服務系統會有每秒查詢數的限制,以及網絡通信的耗時、傳輸包體影響,通常會采用分頁請求機制,因此存在列表結果排序更新延遲的問題。從兩個角度分析:(1)決策機會角度:由于推薦列表基于服務端計算得出,推薦策略調整以端云通信頻次調整。出于用戶體驗的考量,一般一次請求獲取的數量是用戶在移動終端可視區域內單次展示數據量的5倍左右,意味用戶需要完成5屏數據的瀏覽,才能被推薦自己感興趣的內容,這使得用戶的特征偏好不能被及時響應。(2)特征時效性角度:用戶實時反饋信號通過Storm、Flink等流處理平臺,以Mini-batch的方式計算后,存入KV特征數據庫供搜索系統模型使用,這種方式往往會有分鐘級的特征延遲,在營銷活動、業務高峰時期延遲更為加劇,降低推薦策略對于用戶偏好的響應。
7.2 移動終端側的用戶感知
因為用戶的行為數據在端側采集即可加工,因此較云側推理采集更豐富且實時性高。例如淘寶的商品列表頁面,而在端側采集的用戶行為有20余種,包括用戶在商品曝光時的動作與進入商品詳情后的動作。在端上的感知相較云上有以下不同:(1)應用負反饋:端上的點擊事件比較稀疏,采用瀏覽而未點擊的行為建立負反饋,為了避免模型被大量的曝光事件所主導,采用將曝光行為序列和商品點擊序列單獨建模;(2)細化特征應用與多個決策:為了能夠將用戶的感知支持多個決策模型,分別對商品特征和動作特征進行encode( 特征編碼)而后funsion(特征融合),便于下游任務對于商品特征進行attention(注意力機制);(3)持久化:加工而得的用戶特征可以在端側持久化,做到隨取隨用,而不會有任何泄露用戶隱私的風險,而脫敏數據可以回傳云端。
7.3 端云協同推薦的發展
7.3.1規則階段
在移動終端上部署輕量的規則引擎,將業務運營的規則抽象化和配置化,在端上實時響應用戶的實時事件流與特征變化做出反饋。配合規則引擎可以有效提升例如“離開”意圖的及時反饋,在“用戶挽留”場景下通過發放優惠、彈窗交互,并通過多次商品的特征捕獲,推斷用戶的比價意圖,當推理模型觸發閾值時向服務端請求更低價的相似商品。
7.3.2模型階段
基于規則構筑的特征工程,驅動模型的推理,改變本地信息流數據的展示順序。快手團隊針對短視頻推薦場景設計的端上模型,已全量應用到生產環境中,影響了日均3.4億的用戶。該模型以用戶長期行為序列作為長期興趣提煉,與用戶實時興趣感知的模型相互補,如表1所示生產環境的A/B實驗數據表明,基于單點貪心排序的重排(Greedy Strategy)相對于沒有端上重排的基線,用戶的有效瀏覽(Efffective View)、點贊(Like)、關注(Follow)等指標數據都有明顯提升,基于上下文感知的生成式重排(Context-aware Re-ranking)在此基礎上又帶來了進一步的提升[5]。目前基于不同算法的端上重排已在手機淘寶、美團外賣等各互聯網信息流場景中廣泛應用。
結語
端智能與云端智能互補,通過在端側進行數據處理與推理計算,提升了應用場景下的運算效率,釋放了云端算力壓力和數據過濾的壓力,同時提升了用戶數據的安全性。在面對終端設備與系統的差異性導致適配技術復雜度的問題時,各大互聯網廠商與手機廠商分別從應用層和系統層建設平臺能力,降低智能模型的云端一體化適配和運維成本,架構設計逐漸趨同,算法正在業務驅動下迭代。互聯網廠商探索基于移動終端構筑聯邦學習模式,其將通過模型共享,進一步縮短訓練過程。相信相似的端云協同的模式也將應用到工業互聯網等其他領域。
參考文獻:
[1]浪潮信息,IDC.2022-2023中國人工智能計算力發展評估報告[EB/OL].(2023-01-04).https://www.wxkol.com/item/3498c29e4d50553e.html.
[2]朱銳,王宏志,崔雙雙,等.面向元宇宙的云邊端協同大數據管理[J].大數據,2023,9(1):63-77.
[3]龐濤,丘海華,潘碧瑩.手機終端人工智能關鍵技術研究[J].電信科學,2020,36(5):145-151.
[4]金子坤.基于電商平臺的智能推薦算法研究[J].辦公自動化,2022,27(1):25-27.
[5]Gong XD,Feng QL,Zhang Y. Real-time Short Video Recommendation on Mobile Devices[C]//In CIKM '22:Proceedings of the 31st ACM International Conference on Information & Knowledge Management.2022:3103–3112. https://dl.acm.org/doi/10.1145/3511808.3557065
作者簡介:李欣悅,本科,就讀于對外經濟貿易大學統計學院在職人員高級課程研修班,工程師,研究方向:客戶端工程化建設與終端智能。