嘉賓:季愛軍
編輯:李慧文
在移動設備硬件能力不斷升級的時代下,我們見證了端側技術日新月異的迭代?,F在,我們不僅能在傳統(tǒng) iOS、安卓技術體系下開發(fā)移動 App,還能在端智能、AR/VR、音視頻、跨端等技術方向上不斷優(yōu)化 App 產品。2021 年得物 App 依托豐富的業(yè)務場景,不斷進行技術創(chuàng)新,在端側智能上取得了不錯的業(yè)務結果,因此我們邀請了得物 App 無線技術總監(jiān) 季愛軍(Alpha),他也是 ArchSummit 全球架構師峰會(上海)【移動端開發(fā)技術實踐】專題的出品人,請他分享得物 App 端側智能化的經驗。
InfoQ:先和大家聊聊您現在的工作的主要內容吧?得物 App 為什么要做端智能?
季愛軍:在得物 App 我主要負責整個移動端技術團隊的建設工作和社區(qū)和增長投放業(yè)務線的技術支持工作,也負責帶領團隊進行了 3D、AR、游戲、音視頻、端智能等方向的技術創(chuàng)新探索工作。
其中端智能一直是我的工作重點之一。端智能指利用端側算力部署機器學習算法模型和推理從而在端側完成過去只能在云端完成的一些業(yè)務能力,在實時性、隱私保護、離線場景等方面具有得天獨厚的優(yōu)勢。在過去兩年中我們依賴端智能能力完成了 3D 商品數字化展示功能、AR 商品試穿功能、自研 AR 尺碼測量功能等等創(chuàng)新實踐。
得物做端智能核心目標在業(yè)務層面主要還是滿足業(yè)務場景需要和用戶需求,給用戶帶來更好的體驗。得物的業(yè)務本身涉及了移動互聯(lián)網最受歡迎的兩個場景社區(qū)和電商,在社區(qū)中我們用端智能能力給用戶帶來更好的視效體驗,在電商業(yè)務中給業(yè)務數據帶來正向提升。另外在其他業(yè)務中我們使用端智能技術來給用戶提供更多創(chuàng)新的體驗服務,比如 3D 鑒別卡、節(jié)日活動、趣味玩法等。
技術層面上我們也會使用端智能解決過去傳統(tǒng)方案比較難處理或者處理起來性能比較差的問題,比如在二維碼掃描、白屏檢測、身份證認證等。但總體來說端智能對于得物來說只是一種技術解決方案,因為對業(yè)務對用戶有利,所以得物選擇了它。
InfoQ:去年得物 App 在端智能化取得了突出進展,作為該項目的技術負責人,能否請您回顧一下,得物 App 端智能化的建設過程,這個過程中是否有哪些架構演進,演進的背景是怎樣?
季愛軍:得物的端智能建設過程我覺得是一個一步步積累的過程,我們在架構設計技術方案選擇上都是相對比較謹慎的,而且也充分參考了同學在過去工作經歷中的經驗。
首先說最基礎的是引擎層推理能力。支持端側推理的優(yōu)秀引擎框架已有很多,比如手淘的 MNN、Tensorflow Lite、蘋果 MLKit 等。我們主要的工作是選型:MNN 和 TS 都支持跨平臺,相比起來,MNN 支持開源性能更加優(yōu)秀,而 MLKit 由系統(tǒng)提供擁有無需占用 App 包體的優(yōu)勢。
在早期得物 App 優(yōu)先選擇的是系統(tǒng)提供的引擎框架,團隊更多的精力放在了引擎能力之上的工程落地部分,最近在 AR 尺碼測量技術方案中我們開始使用了 MNN,方便跨平臺的實現和優(yōu)化算法模型。
再說模型訓練環(huán)節(jié)。這個環(huán)節(jié),樣本數據平臺和模型訓練的部分是相對比較通用的,一些簡單的算法場景比如一些分類模型、識別模型等上述的引擎框架提供了非常便捷的工具給端側的同學來使用,而一些人臉識別、腳部識別模型的開發(fā)工作還是會交給更重要的算法同學來進行。另外還有一個比較重要的是模型的下發(fā)平臺,負責管理和更新相關算法能力模型,與端側 App 進行交互。
端智能框架體系中所涉及的技術鏈路中最為寬泛的其實是圍繞著 AI 算法能力之上的工程能力,將端智能架構體系包括 AI 算法上的工程能力完整落地到業(yè)務場景中知易行難,關鍵在于不斷積累技術能力,在積累的技術能力基礎上,來陸續(xù)搭建和豐富整體框架能力:比如視頻超分能力需要前期自研視頻播放器,商品 3D 展示、AR 試穿效果能力建立在自研渲染引擎自研基礎上,AR 尺碼測量推薦建立在高精度的腳部建模基礎上等等。這個過程得物 App 用了兩年。
得物 App 端智能框架體系
InfoQ:完成了端智能化的得物 App ,解決了業(yè)務的哪些問題呢?
季愛軍:前面也提到得物的業(yè)務場景是比較豐富的。首先我們有潮流社區(qū)服務,其次我們的交易服務也是目前國內非常受歡迎的平臺。在這兩個業(yè)務場景中端智能的落地場景非常多。我們熟悉的社區(qū)內容發(fā)布工具中就非常依賴圖像算法能力,另外在交易業(yè)務中不管是端側推薦優(yōu)化以及商品圖搜能力等都依賴端智能能力。端智能給用戶帶來的業(yè)務體驗,包括很多實時的智能化服務在過去是無法實現的。
目前得物重點在音視頻特效、AR 試穿、圖搜、數字化商品、虛擬人等場景下使用了端智能能力。這里可以重點介紹下得物的 AR 試穿。
AR 試穿雖然已經是一個業(yè)內比較普及的功能,但在過去很多電商平臺期望通過 AR 能力提升商品的交易轉化率但并不成功。得物卻在 AR 試穿上能夠在用戶體驗和業(yè)務數據指標上都拿到了結果。
在這里其實得物有幾個業(yè)務優(yōu)勢:首先得物的用戶都是年輕人,他們非常有個性,追求體驗,富有好奇心,接受新事物能力強,其次得物的商品都是大家特別喜愛的尖貨潮品,購買決策較長,對于購買鏈路的輔助工具和信息的需求大。目前在購買用戶中 AR 試穿的使用滲透率是非常高的,商品的收藏率和轉化率也有成倍增加。
另外相對其他平臺得物還有一個有非常大的優(yōu)勢,得物的平臺交易模式要求每一件商品都需要開箱查驗,這個特點使得我們是唯一一個能夠接觸到所有商品實物的電商平臺,這意味著我們不需要進行采購就能夠覆蓋大部分的商品 3D 數字化,能夠建設生產自己的流水線并進行嚴格的品控。從拍攝采集到數字化到局部調整都是得物 App 自建的技術和團隊,相比其他平臺可控性更高。此外,在客戶端的展示和試穿技術方案實現上,我們也配合生產定制化地去優(yōu)化了效果。這也是為什么眾多友商和得物的商品數量和精度效果都相差很多的原因。
目前得物已經建設了能夠批量生產的 3D 數字商品生產流水線。我們的流水線覆蓋了近 2W+ 雙球鞋,其中 1W+ 雙支持試穿,這是全球規(guī)模最大精度最高的試穿服務。
當然,在其他業(yè)務場景下得物端智能也取得了不錯的結果,比如上面提到的畫質增強服務。大部分視頻畫質增強服務都是在云端離線處理完之后進行統(tǒng)一分發(fā)的,但在直播場景下云端的離線服務并不能滿足這個要求。我們使用了畫質增強后,帶寬消耗和觀感上都有了不錯的優(yōu)化。
另外目前我們還在開發(fā) AR 尺碼測量技術,能夠利用 AR 技術高精度的測量用戶的腳部數據以幫助用戶選擇更合腳的鞋款,這個方向的努力我認為是能真正幫助到用戶和我們自己的業(yè)務的,也是我認為技術特別有價值的地方。
InfoQ:相比云側,端側存在計算資源少、數據量少、數據孤島等問題,得物 App 是怎么解決這些問題的呢?
季愛軍:端側計算資源始終是局限端智能落地場景的重要問題,算法模型的選擇、剪裁和優(yōu)化都至關重要,適當地根據業(yè)務場景需要調整精度要求降低一定的技術指標也是可取的。另外可以根據用戶不同的設備硬件條件下發(fā)不同大小的算法模型以實現不同機型上的流暢運行,選擇能充分利用 NPU 等硬件元件的引擎。
實際上,得物 App 還調研過邊緣計算,但因為邊緣計算成本太高不適合業(yè)務場景落地而暫時沒有部署起來。
而數據量少和數據孤島的問題我感覺問題不大:目前 4G/5G 下網速已經不是問題,Wi-Fi 覆蓋情況也理想,端云數據交互通暢。
暢通的數據交互將會持續(xù)賦能端智能的發(fā)展?,F階段的大部分端智能是建立在端側推理的基礎上的,其實端側距用戶更近,可獲取更多用戶個性化的數據,也是可以承擔模型增量訓練優(yōu)化的任務的。而在更實時和大數據的端云交互后這樣的業(yè)務場景落地會越來越多,比如說商品個性化推薦。
InfoQ:得物 App 在端側是如何選擇算法的? 如何建設端側引擎的?
季愛軍:在端側選擇算法模型不得不重點關注性能因素。復雜的算法模型在端側無法運行,耗電、耗時等資源消耗問題大,也難以滿足業(yè)務需求。比如 AR 試穿以及在 AR 尺碼測量中的腳部關鍵點識別和姿態(tài)預估算法,都需要保證在 20ms 甚至更短的時間內完成每一幀圖像的識別計算,否則就會影響每秒 30 幀的體驗。
而在引擎的建設上我們在系統(tǒng)提供的 MLKit 框架之上,最近也引入了三方 MNN 的推理引擎來結合業(yè)務特點部署算法模型,包括人臉識別、背景分割、NLP 等等。這些模型能力構建了我們端智能核心算法能力層,它們會在不同的場景下排列組合支持業(yè)務需求。而且它們也是動態(tài)下發(fā)的,在用戶沒有進入特定場景下不會占用用戶資源。
目前得物已經有超過 15 個端側模型能力,包括通用型的人臉識別、背景分割、OCR 等,也包括特定業(yè)務場景定制的白屏檢測、鑒別卡檢測等,在不同的業(yè)務場景共同運行以支持特定需求。
另外在選擇合適的算法模型之后,客戶端的工程同學也需要根據算法的特點以及業(yè)務場景的情況調整調用頻率和輸入數據以提高計算性能,達到效果和體驗的平衡。
InfoQ:得物 App 端智能化有什么經驗可以分享嗎?
季愛軍:得物端智能化的過程是非常謹慎的,在做新的嘗試時總會充分考慮技術方案落地在業(yè)務中所帶來的價值,并沒有去做太多高風險研究項目,而是一步步地去嘗試通過努力可以拿到結果的小項目。
比如最早我們在嘗試某些端智能場景落地時會外采一些技術方案。該方案可能不能完全滿足我們的業(yè)務需求但是不影響我們去測試業(yè)務價值。確認了業(yè)務價值,累積了技術力量后,我們會再逐漸將其修改為自研的方案。比如我們最近自研的 AR 尺碼測量就是如此。
事實上,我覺得在端智能化過程中,要堅持去做技術積累去嘗試自研創(chuàng)新,但切忌憋大招。
InfoQ:可否分享一下未來得物 App 在端上的規(guī)劃?
季愛軍:未來,得物的端側會繼續(xù)把重心放在比如說 AR 試穿、AR 尺碼測量等方向上,將會構建最完整的潮流尖貨 3D 數字商品庫,也會提供最高精度的在線試穿試戴服務。
此外得物還憑借著用戶和商品內容、技術基礎的優(yōu)勢,率先嘗試了虛擬穿搭方向 App 奇遇世界,它具備了角色捏臉、扮演以及服飾穿搭的能力,但與穿搭游戲的區(qū)別是它的所有的虛擬商品都是 1:1 真實還原現實商品的,為未來技術方向發(fā)展做準備,感興趣的同學也可以去體驗一下。
InfoQ:從您的經驗來看,端側智能化架構設計核心需要關注的方面?
季愛軍:端側智能化需要關注的方面可以分幾個階段來說:
首先是基礎鏈路構建部署階段,將云端的樣本數據管理、模型訓練壓縮剪裁能力構建起來,在這個階段可以尋找相對通用的算法能力,比如人臉識別、商品分類等等,也可以尋找一些簡單場景的算法能力。此時需要關注的端側模型推理部署的性能及效果指標,尤其是在模型壓縮剪裁前后的影響,另外也有團隊會更加深入的去研究如何利用硬件能力或設計自定義算子提升模型推理性能等,總結而言這個階段如何保證模型穩(wěn)定高效的在端側運行起來是最重要的。
其次是工程化階段,這個階段所要涉及的技術方向就比較多,常見的有渲染引擎、音視頻、圖形學算法等等。這個階段需要關注更加專業(yè)的細節(jié),比如我們常見的人臉美顏能力,基礎的算法模型僅僅提供了人臉關鍵點能力并不會直接輸出美顏結果,而美顏處理需要的能力包括了基于關鍵點的磨皮算法、圖像變形算法、顏色濾鏡算法等等,甚至想要更好的效果還需要對面部進行 3D 建模和特效渲染能力等,在很多端智能場景中算法模型能力提供基礎數據能力,而工程化落地過程同樣重要且復雜,工作量和專業(yè)度往往也是非常大,需要中長期建設相關技術能力,這個階段更需要關注的是基于算法模型的團隊工程能力。
最后是業(yè)務創(chuàng)新實踐階段,端智能的價值一定需要合適的業(yè)務場景來承接,一個好的業(yè)務創(chuàng)新實踐是技術價值得到充分體現,同時業(yè)務效果上也都到大家的認可。這個階段考驗的是團隊對業(yè)務的理解和對技術方案的把控,如我們正在研發(fā)的 AR 尺碼推薦能力,在技術層面實現 AR 測量和尺碼推薦能力之后,如何冷啟動這個服務其實花了我們更多的時間來討論和思考,這里面其實有非常多的策略和邏輯,且這些策略邏輯也會直接影響你的技術實現方案。總結來說這個階段需要更多的思考業(yè)務和技術的結合點。
InfoQ:隨著移動設備硬件能力的不斷進化升級,端側技術迭代日新月異,您認為在端側未來有哪些值得關注的技術方向呢?未來的移動端開發(fā)者們需要哪些必不可少的能力呢?
季愛軍:端側硬件能力的提升使得過去我們在端上不能做的事情都有了可能性,我認為除了端智能之外未來還會有越來越重端側的技術方案落地,比如去中心化趨勢下的一些熱門技術方向都非常重端側。這些技術落地都需要移動端的研發(fā)同學即具備基礎的工程開發(fā)能力,又有一些的算法基礎,還需要對 3D 渲染、音視頻、游戲等技術方向有所了解,三板斧都得硬。
此外,前些年有人說移動端會越來越薄,也有人說某個跨端技術方案會一統(tǒng)天下。我認為這里說的可能都只是傳統(tǒng)的 App 開發(fā),但未來的端應用必然會越來越復雜越來越強大越來越智能,充分利用端側硬件的計算能力,所以移動端的開發(fā)者一定需要保持持續(xù)學習的技術心態(tài),不斷尋找技術實踐的機會成長。
嘉賓介紹
季愛軍(Alpha),得物 App 無線技術總監(jiān)。2012 年加入百度,一直從事移動端相關技術創(chuàng)新工作,擅長 iOS/Android、Flutter、音視頻、AR/VR 等技術方向;2019 年加入得物 App,任職無線平臺技術負責人,負責移動端基礎能力建設,并擔任社區(qū)及增長業(yè)務線技術 PM 職責。
在得物 App 兩年多時間組建了超 200 人的移動端職能團隊,完成了移動研發(fā)平臺建設、APM 監(jiān)控體系打造、容器化工程架構演進等基礎工作,并帶領團隊在 3D 商品、AR 試穿、AR 尺碼測量、虛擬 IP 等創(chuàng)新體驗方向大膽實踐,塑造了用戶得物 Z 世代技術體驗前沿形象。
活動推薦
在 ArchSummit 全球架構師峰會即將落地上海,季愛軍(Alpha)擔當專題【移動端開發(fā)技術實踐】的出品人,該專題下會邀請一線技術專家來聊聊在移動端的研發(fā)技術實踐,例如跨端、客戶端、AR、VR 等細分領域里的實踐思考和結果收益,掃描下方二維碼即可了解更多。
了解更多軟件開發(fā)與相關領域知識,點擊訪問 InfoQ 官網:https://www.infoq.cn/,獲取更多精彩內容!
好了,這篇文章的內容發(fā)貨聯(lián)盟就和大家分享到這里,如果大家網絡推廣引流創(chuàng)業(yè)感興趣,可以添加微信:80709525 備注:發(fā)貨聯(lián)盟引流學習; 我拉你進直播課程學習群,每周135晚上都是有實戰(zhàn)干貨的推廣引流技術課程免費分享!