嘘,这是手淘双11 GMV 暴涨的秘密
阿里妹導讀:信息流作為手淘的一大流量入口,對手淘的瀏覽效率轉化和流量分發起到至關重要的作用。在探索如何給用戶推薦其喜歡的商品這條路上,我們首次將端計算大規模應用在手淘客戶端,通過端側豐富的用戶特征數據和觸發點,利用機器學習和深度神經網絡,在端側持續感知用戶意圖,抓住用戶轉瞬即逝的興趣點,并給予用戶及時的結果反饋。通過大半年的不斷改進,手淘信息流端上智能推薦在9月中旬全量,并在雙十一當天對信息流的點擊量和GMV都帶來了大幅的提升。下文將給大家分享我們在探索過程中發現的問題,對其的思考和解決方案。
背景
現狀與解決方案
手淘上以列表推薦形式為主的業務場景有不少,以手淘信息流為例,進入猜你喜歡場景的用戶,興趣點常常是不明確的,用戶瀏覽時往往沒有明確的商品需求,而是在逛的過程中逐漸去發現想買的商品。而推薦系統在用戶逛到買的過程中,往往會下發并呈現不同類型商品讓用戶從中挑選,推薦系統這個過程中會去捕捉用戶的興趣變化,從而推薦出更符合用戶興趣的商品。然而推薦系統能不能做到用戶興趣變化時立刻給出響應呢?推薦系統以往的做法都是通過客戶端請求后觸發云端商品排序,然后將排序好的商品下發給用戶,端側再依次做商品呈現。這樣存在下面兩個問題:
- 云端推薦系統對終端用戶推薦內容調整機會少,往往都在分頁請求時,而簡單請求并不能靈活做內容的增刪改。
- 云端推薦系統不能及時獲取到用戶當前時刻的偏好意圖,快速給出反饋。
我們總結發現,目前推薦系統的弊端是,用戶偏好的變化與推薦系統對用戶感知和對內容的調整時機并不能匹配,會出現推薦的內容并非用戶當前時刻想要的,用戶瀏覽和點擊意愿都會下降。那么怎樣能夠讓推薦系統及時感知到用戶偏好并及時的給出用戶想要的內容呢?
我們先透過現象看本質,以上問題的本質在于推薦系統和用戶交互過程中的實時性差,以及決策系統可調整性差。實時性差體現在兩個方面,推薦系統對終端用戶的感知實時性差以及對用戶的干預實時性差。而決策系統可調整性差,體現在決策系統對用戶內容的調整時機依賴端側的固定規則請求,可調整的內容局限于當前次下發的內容。如果我們能夠解決實時性問題,推薦系統能夠實時感知用戶偏好,并在任何時機實時調整用戶所見內容,推薦的內容可以更符合用戶當前的偏好;如果我們能夠解決決策系統可調整性差問題,推薦系統可以決定合適的時機去調整用戶內容,可以決定用更優的方式去調整具體的內容。那么解決的方案是什么呢?
我們在手淘信息流中引入機器學習和深度神經網絡模型,結合端側用戶特征,在端側持續感知用戶意圖,實時決策并實時反饋結果給用戶,這樣解決了實時性差以及決策系統可調整性差的問題。我們把這個解決方案稱之為端智能。
端智能帶來的改變
端智能的本質是“端”+“智能”。首先“智能”不是一個新鮮的東西,“智能”不管是在云端或終端,解決的問題是通過機器學習數據的內在機制并推理出最終結論;“端”解決的問題是將”智能“工程化并落地到具體的應用場景,“端”有機的整合端側數據以及云端下發內容,決定何時觸發“智能”做決策,最終決定怎樣給用戶以反饋。
端智能帶來的改變,則是讓端上具備了“獨立思考”的能力,這讓部分決策和計算不再依賴于云端,端側可以更實時、更有策略的給出結果。說到實時性,5G時代的到來,其低時延特性極大的降低了端和云的交互時間,但這并不影響我們利用端智能實現更低成本的決策和快速響應,反而對于端智能來說,好處是能和云端結合的更緊密。另外由于在端側能夠秒級感知用戶意圖做出決策,產品和用戶貼的更近了,這催生了更多實時性的玩法,產品將不再局限于要到固定的時機如分頁請求讓云端去給到新的內容反饋,而是思考,當用戶表達出來特定的用戶意圖時,產品應該如何提供與意圖相匹配的內容。
端智能與傳統差異比較
盡管端智能帶來了很多好的改變,但這里依然需要強調一點,并不是說有了端智能就不再需要云智能,怎樣做到云&端協同智能才是未來。
端智能的優勢在于:
- 端側有著豐富的用戶特征和觸點,有著更多的機會和條件去做決策
- 實時性高,在端側處理可節省數據的網絡傳輸時間,節省的時間可用于更快的反饋結果
- 節省資源,在端側處理,利用端側算力和存儲空間,可以節省大量的云端計算和存儲資源
- 隱私性好,從產生數據到消費數據都在端側完成,避免傳輸到云端引起隱私泄露風險
端智能的不足在于:
- 設備資源有限,端側的算力、電力、存儲是有限的,不能做大規模高強度的持續計算。
- 算法規模小,端側算力小,而且單用戶的數據,在算法上并不能做到最優
- 用戶數據有限,端側數據并不適合長期大量存儲,端側可用數據有限
云智能的優勢在于:
- 大數據,云端可以通過長期大量的來自不同人群的數據進行計算
- 設備資源充足,云計算的算力、電力、存儲都可以根據需求進行配置
- 算法規模大,可以通過足夠的大規模模型,計算出最優解
云智能不足在于:
- 響應速度慢,受傳輸帶寬影響,不能穩定提供較高的響應速度
- 用戶感知弱,端側產生的數據同步到云端,數據量限制和傳輸時間的約束都會削弱云端對用戶的感知
從以上云智能和端智能的對比可以看出,端智能適合于依賴端側用戶觸點的小規模低時延的計算,而云智能更適合中長期數據大規模計算。同時,端智能往往需要云端提供的長期特征及內容,而云智能也往往需要端上的特征和豐富的觸發點,兩者優勢互補,才能發揮出更好的效果。
端智能基礎設施建設
高樓起于平地,打造端智能這幢摩天大樓需要很多基礎設施,剝除各種各樣邊角料和錦上添花的東西后,我們認為構成支撐起端智能體系的骨架組成部分主要有數據、端計算、端計算引擎、端智能決策框架、算法研發平臺。其中,端側數據 、端計算、端計算引擎這三塊的作用是實時感知用戶,計算出貼合用戶的結果;端智能決策框架是觸達用戶的通道,通過端上實時智能決策銜接用戶意圖和端計算,最后通過一定的干預手段展現到用戶眼前;算法研發平臺是開發過程主要接觸的平臺,能有效提升研發效率。通過一個簡單的示意圖也許能更好的理解這五大塊:
數據-BehaviX
無論計算是發生在云端還是終端,數據始終是執行所有計算的基本要素之一,端計算的本質也是計算,數據當然也是他的要素之一。在淘寶或者其他阿里系App里我們已經有很多數據沉淀,這些數據包括但不限于商品、商品特征、用戶特征等。這些數據同樣可以作為端計算的輸入來源,但如果只有這些,端計算和云計算相比在數據上似乎沒有什么明顯優勢了,所以我們需要回過頭看下端計算作為端智能的重要部分,他的在數據上的核心優勢是什么?端計算運行在端上,天然能獲取端上的數據,而且是實時獲取。我們希望這部分數據是和已有數據是互補的、對端計算是有價值的,端計算的目的之一是千人千面,端上豐富的用戶特征,能體現當前用戶的實時意圖。所以我們在構建了端側用戶特征數據中心BehaviX。
BehaviX作為整個端智能的數據基礎,提供給算法特征數據作為模型數據輸入源,支持了特征實時同步云端,讓云端能夠秒級感知到端側用戶特征,提供了算法基于端側用戶特征數據做意圖分析的能力。
端智能決策框架-BehaviR
從用戶角度來看,用戶感知到的不是一堆數據和計算而是能夠被感知到的結果,因此,即使計算出來的結果無比貼合用戶意圖,如果無法及時觸達用戶也是無用功。觸達用戶方式多種多樣,我們需要基于實際場景放開手大膽探索,合理的產品設計會讓用戶覺得是在和一個“智能”的App交流,反之,不合理的產品設計會打擾用戶、對用戶造成困擾。從技術角度來說,我們要設計和做的其實是一條觸達通道,通過感知用戶觸點,我們能根據運營規則配置或者本地模型決策出此時要給用戶什么類型的反饋,然后通過下面要講述的端計算能力計算出貼合用戶的結果并展示給用戶,以此將端計算和用戶連接在一起。
端智能決策框架能簡化業務方接入端智能流程,幫助業務方真正做到實時感知、及時干預。
端計算-EdgeRec
端計算簡單理解起來可以認為是跑在端上的一段邏輯,這段邏輯可以是一個預置的Native任務,也可以是一個腳本,當然,在最終我們希望他是一個算法模型。算法模型是目前做到千人千面的有效手段之一,其他優勢不再累述了,詳見下面的友情鏈接。
回到這里的主角EdgeRec-邊緣計算算法,他在在端上實時建模了用戶的異構特征序列,為端上決策提供通用的用戶狀態表達。通過多任務學習,共享通用的用戶狀態表達,在端上建模多種決策模型。另外,邊緣計算算法SDK也提供端上深度學習算法開發的通用解決方案,如:端上深度學習模型庫、端上模型拆分部署、端上模型版本控制、端上樣本生成等。
端計算引擎-Walle&MNN
端計算引擎是端智能體系中重要的一環,是算法模型的基礎環境。無論是iOS還是Android目前都提供了一套環境,但兩端差異性比較大,限制也比較多。構建一套端計算引擎的成本是非常高的,但長遠來看統一兩端引擎、抹平差異是有非常有必要的。Walle和MNN作為當前我們端計算引擎很好地做到了這一點。
Walle是端上整體的Runtime,他為算法的Python腳本、深度模型以及Jarvis的EFC、ESC等特征樣本計算庫提供運行環境,另外也為BehaviX管理的基礎數據提供存儲服務。
MNN 是一個輕量級的深度學習端側推理引擎,核心解決深度神經網絡模型在端側推理運行問題,涵蓋深度神經網絡模型的優化、轉換和推理,其前身為 AliNN。
算法研發平臺:Jarvis
算法模型的研發并不是簡單地在本地IDE寫一份代碼那么簡單,我們通常需要理論調研、算法開發、模型訓練、參數調優、線上驗證等等步驟,本地環境是遠遠不夠的,所以算法研發平臺的存在能幫助算法同學更高效、更專注地進行研發工作。另外,端智能要出結果,一定是多團隊通力合作的結果,多團隊合作僅靠口頭溝通是遠遠不夠的,我們需要一套合理的流程去簡化和規范各項工作,因此,在算法研發平臺的基礎之上我們仍舊需要一個一站式平臺。
Jarvis提供一站式的開發、調試、驗證、AB測試、發布、監控平臺,與算法同學共建一起打造了端上的特征計算、樣本計算等基礎庫。
整體流程圖
我們構建了端智能的五個基礎設施,通過端上調度系統,將整個端智能技術體系串聯起來,總體來說分為用戶觸達和用戶感知部分。用戶觸達部分包括端上調度和端上決策,端上調度提供和業務的直接對接,端上決策由端上調度系統在合適的時候拉起本地算法計算;用戶感知部分則對用戶特征進行標準化端上用戶特征,提供端側計算的數據輸入。
數據效果
從年初信息流端智能立項以來,我們經過最開始的小流量實驗,效果逐漸優化,大半年的不斷探索試錯,信息流端智能于9月中旬在首頁猜你喜歡場景全量。雙十一當天也取得了不錯的業務效果,對商品推薦的準確度提升,信息流GMV和點擊量都大幅提升。其實這只是信息流在端智能的開始,相信后面更深入的優化探索,我們將會取到更好的效果。
總結
從我們以往的經驗來看,端側做的更多的是將云端內容以具體的形式呈現給用戶。當端側也具備了感知用戶意圖并智能做出決策時,端側的能力就不再局限于“呈現”,端側也可以”思考“。業務可以利用端側”思考“能力,將以往在云端解決起來比較困難的問題放到端上去解決,如云端決策實時性問題、大數據量上報云端分析的資源消耗問題;可以結合端側本身的特性,如傳感器、相機、UI呈現等,去思考如何去整合用戶特征、數據、端側算法去大膽嘗試找到新的突破口。
原文鏈接
本文為阿里云原創內容,未經允許不得轉載。
總結
以上是生活随笔為你收集整理的嘘,这是手淘双11 GMV 暴涨的秘密的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 阿里云推出全新内存增强型实例re6,性能
- 下一篇: 训练机器人看脸读“心”,真的靠谱吗?