百度視頻推薦跨域多目標預估與融合的實踐和思考

一、百度視頻背景介紹
1、統(tǒng)一產品形態(tài)

一方面,百度 APP 的所有視頻場景已經升級成統(tǒng)一的沉浸式(上下滑)交互形態(tài);另一方面,基于百度統(tǒng)一的大模型,我們打通了所有場景的數據和推薦體驗。交互和數據的統(tǒng)一可以更好地實現(xiàn)生態(tài)共贏,促進百度視頻的長遠發(fā)展。
為了更好地培養(yǎng)用戶對視頻的消費習慣,我們還打造了一個視頻消費的一級入口(底部導航欄入口)。大家如果有興趣可以去下載百度 APP,有好的建議和 badcase 隨時歡迎反饋給我們。
2、搜+推雙引擎滿足用戶需求
值得一提的是,百度是做搜索起家,搜索的使用率極高,在推薦場景中需要更好地使用搜索的數據,通過”搜+推”雙引擎來滿足用戶的需求。搜索主要是“人找內容”,用戶會明確地輸入自己的需求,而推薦是“內容找人”。將搜索的信號和推薦的信號進行跨域整合,做到更好的推搜融合,這也是百度的優(yōu)勢之一。

二、推薦系統(tǒng)概述
1、推薦系統(tǒng)解決的問題

考慮到不少聽眾非推薦背景,簡單介紹下推薦要解決的問題。推薦平臺有三個player:
- 用戶:在這里探索世界、發(fā)現(xiàn)新的感知。
- 創(chuàng)作者:平臺推薦的基礎,為平臺提供內容供給;平臺為其提供廣闊的空間,激發(fā)他們無限的靈感和創(chuàng)作。
- 廣告主:提供平臺生存下去的資金支持,大部分平臺都是以廣告為生。
推薦平臺希望實現(xiàn)生產、消費和收入的良性循環(huán),推薦系統(tǒng)作為平臺的核心部件,主要解決兩方面的問題:
- 優(yōu)勝劣汰的內容選擇機制(B 端):優(yōu)質的內容如何獲得更多的分發(fā),留住優(yōu)質的創(chuàng)作者。
- 極致的用戶消費體驗(C 端):只有用戶訴求得到滿足了,才能促進規(guī)模上的持續(xù)提升。
這是推薦系統(tǒng)的兩個使命,我們后面設計目標的時候也會綜合考慮這兩個方面。
2、推薦系統(tǒng)概覽

推薦系統(tǒng)的流程大致如下:審核后的資源會先推送到存儲 meta 信息的統(tǒng)一正排庫;推薦系統(tǒng)收到請求后,先通過圖引擎、多目標召回等,召回相關資源;召回之后會經過兩輪排序,分別為粗排和精排,再經過多目標的融合模型,選出一些與用戶強相關的內容;最后通過多樣性感知、序列建模、流量分配機制等策略,生成一個視頻列表,下發(fā)到用戶的手機。
接下來的分享將主要集中在精排的目標設計和模型的融合上。
三、多目標的設計和建模
首先介紹視頻推薦的多目標設計。
1、目標設計的思考

先請大家思考一下視頻沉浸式的場景下,如何設計推薦系統(tǒng)的目標呢?
傳統(tǒng)的推薦系統(tǒng)中,通過點擊內容或者視頻進行消費,用戶用點擊行為明確表達了對這條資源的喜歡。因此在傳統(tǒng)的推薦場景下,點擊是非常重要的信號,是一個明確且簡單的反饋。但是在沉浸式的場景下缺乏明確的反饋,用戶的喜歡通過“隱藏”的行為表現(xiàn)出來,消費時長成為沉浸式推薦場景非常重要的信號。

除了上述消費時長以外,還需要考慮用戶在系統(tǒng)中主動留下的行為,比如關注、評論、分享、點贊。但這類行為數據相比播放數據是非常稀疏的,可能只有千分之一這個量級。
除了這些交互信號以外,在百度 APP 的推薦里面還有一部分很重要的數據就是搜索信號,在百度 70% 的用戶既會消費推薦信息流,又會用搜索,因此推薦系統(tǒng)也需要刻畫用戶搜索域的滿意度信號。
除了 C 端讓用戶更滿意的消費信號以外,B 端的創(chuàng)作者則需要一套優(yōu)勝劣汰的機制,實現(xiàn)劣質作者的篩選,激發(fā)優(yōu)質作者的持續(xù)創(chuàng)作潛力,才能實現(xiàn)生產和消費的良性循環(huán)。
2、目標設計考慮的維度

從推薦系統(tǒng)角度看,用戶就是樣本標注員,用戶有一些明確的正向表達,比如播放、點贊、收藏、評論等行為;還有一些明確的負向表達,比如 Dislike、負向評論、舉報等等。除了明確表達,用戶還會有一些隱式的表達,比如通過完播、播放時長、作者頁消費、閱讀相關推薦等表達出的喜歡,或是通過短播、快速跳出等表達出的不喜歡。因此在設計目標的時候,要全方面地思考,平衡明確的信號和隱式的信號,避免設計出一個“偏科”的推薦系統(tǒng)。
3、綜合滿意度建模

除了上述基礎目標,我們還會設計一些高階的目標,不再是簡單地使用用戶的反饋。舉個例子,如上圖右側所示,我們上線了基于用戶滿意度反饋的模型。第一階段,通過完播、時長這種稠密的信號,利用簡單的規(guī)則或者模型去擬合用戶的滿意反饋,得到一個比較稠密的用戶滿意度 label。第二階段,基于這個 label 建一個滿意度模型,利用推搜全域大模型產生的 Embedding、文心底層 Embedding,以及用戶畫像和行為序列特征建模,以評估推薦域相對于搜索域的滿意度增益。如果某個興趣點用戶在搜索里消費過了,推薦系統(tǒng)可以基于該滿意度模型推薦出更優(yōu)質的內容,這樣就可以使搜推融合更加平滑,將搜索的興趣更好地遷移到 Feed。
4、長期價值建模(Long Term Value)

前文介紹的是如何預估當前內容的播放時長和互動,將用戶的歷史消費行為作為樣本或者特征,預測即將推出的內容是正反饋還是負反饋,以及是否會有互動和消費的滿意情況。
進一步思考,用戶未來消費的內容與當前消費的這條內容是否存在關系?比如用戶當前看的是郭德綱的視頻,如果接下來第 N 天還消費了于謙的視頻,于謙視頻是否是由郭德綱視頻“激發(fā)”的呢?未來興趣點的消費是否可以認為是當前興趣點的“延續(xù)”呢?結果是肯定的。因此我們在系統(tǒng)中引入了 LTV 的體系,將未來長期價值的內容歸因到當前的視頻推薦上來。

假設 V0 是當前視頻的價值,V1,V2,… Vn 是用戶未來消費的視頻,假設 V2 和 Vn 是滿意的消費,并且是 V0 的一個延續(xù),就可以將其歸因到V0 。
歸因方式有多種,根據百度 Feed 的業(yè)務場景,歸因包括以下三大塊:
- 功能的歸因:如通過相關推薦看了掛載的資源,那么這部分資源消費信號可以歸因到 V0 上來。
- 召回關聯(lián)的歸因:如召回階段是通過 itemCF 等隱式召回的。
- 相關性關聯(lián):如通過多模態(tài) embedding 或者推薦大模型的 embedding 可以衡量資源之間的相關性,比如 Vn 和 V0 有比較高的相關性得分,就可以把 Vn 的價值歸因到 V0 上來。
當然這個歸因是有權重的,我們通過距離 V0 的時間間隔,和 V0 的相關性等因子來調節(jié)用戶未來消費視頻的歸因權重,從而得到當前視頻 V0 的長期價值。有了長期價值目標后,學習就比較簡單了,首先是目標的歸一化,然后直接建模即可。

簡單總結一下,基于對業(yè)務現(xiàn)狀的抽象和梳理,我們設計推薦系統(tǒng)目標時候會從下面三個方向入手:
- 多目標,首先進行基礎物理目標建模,接下來是一些高階目標的建模,刻畫全場景的滿意度,同時還需要對生態(tài)進行調控。
- 刻畫未來的價值。
- 除了資源維度還可以考慮其他維度,例如作者維度的建模。
總之,推薦系統(tǒng)的目標要從多角度、各個發(fā)展方向綜合地去考慮。
5、百度 Feed 模型技術變革聯(lián)動體驗進化

百度推薦場景發(fā)展到現(xiàn)在的三大場景:
- 「推薦」信息流:已經存在了很多年。
- 『發(fā)現(xiàn)』場景:相比之下,主 Feed 偏信息資訊,『發(fā)現(xiàn)』則更輕松活潑,貼近生活。
- 「沉浸式」場景:純視頻形態(tài)的消費流。
隨著百度產品的演變,排序目標的預估也是逐步演進的。從一開始的單域的主目標到多域多目標,再到現(xiàn)在綜合建模的全域綜合多目標,把多域的樣本整合到一起,充分共享信息。下面就來介紹全域的綜合建模。
6、跨域多目標建模

首先來看下業(yè)界都做了哪些工作,無論是 MMoE、PLE,還是阿里在做的 STAR 網絡、PEPNet 等這些結構,還有谷歌、騰訊等公司都在不遺余力地根據自己的業(yè)務設計各種各樣的網絡結構,希望在異構場景下共享更多有用的信息。其主要解兩大問題:
- 跨域信號的遷移問題,如何在兩個不同的域之間更好地遷移,實現(xiàn)跨域信息共享。
- 多目標之間負遷移的問題,即多目標的蹺蹺板效應。
同樣百度推薦系統(tǒng)也面臨這兩個問題。

百度的場景下子域目標眾多,且各目標之間的相關性較低,這容易導致多目標之間發(fā)生負遷移。為了解決這問題,需要分析不同目標間的 PNR,并找出它們之間的相關性差異。即異構場景下如何刻畫用戶信息,以及如何實現(xiàn)異構信息的遷移,是模型結構需要去解決的問題。
結合百度的業(yè)務,我們利用 Gating 結構設計了跨域分層多目標網絡結構,主要分三層:首先是個性化 common 網絡,作為底座;第二層是跨域的信息提取 GCG 網絡;最后一層是子域的多目標網絡,這樣就可以在共享信息的同時,對每一個域都有一個多目標的預估。
這套方案與單域多目標相比有著顯著提升,初次上線 AUC 約提升 3-9 個千分。如上圖右下角所示,獲取用戶特征在多個域的 embedding,做了一個 TSNE 降維后,除了搜 C 和二跳這兩個比較接近以外,其它兩個場景的區(qū)分還是比較明顯的,說明模型可以學到場景間的差異。搜 C 和二跳兩個場景區(qū)別不大也是合理的,都是視頻場景,用戶的交互和興趣也都差別不大。

百度業(yè)務場景有 40 多個物理目標,還有 4 個大的子域,6 種形態(tài),包括視頻、圖文、動態(tài)、小程序等。我們希望模型在眾多復雜業(yè)務中都能有較好的表現(xiàn)。簡單介紹一下模型結構。第一層是 common 網絡,作為分域的底座,篩選各個場景中多目標的滿意樣本,通過 gate 網絡實現(xiàn)個性化 embedding 映射。第二層是域間信息的提取,將域內獨有的特征和個性化共享特征通過 CGC 網絡實現(xiàn)。兩者共同構建了跨域的信息提取,其好處是既保留了域內的信息豐富度,同時又提取出了異構場景的共享信息。第三層是子域的多目標建模。這塊我們還有對應的論文在發(fā)表中,對細節(jié)感興趣的朋友可以看論文。
四、多目標融合

百度多目標融合的演進過程與業(yè)界也較為接近,首先是先驗知識融合,簡單直接,但是比較耗費人力。接著我們升級到了 LTR,效果明顯,但弊端是業(yè)務變化的時候需要頻繁調整,同時偏序關系也會隨著業(yè)務和用戶分層的變化而變化。之后我們也使用過多目標融合價值模型,采用序列最優(yōu)的方法,短期使用后,就升級到了正在使用的方法—ES(Evolution Strategy)進化學習。

要使用 ES,首先要定義一個 Reward,即北極星指標。百度的 Reward 是 Session 的深度(時長+步長)和互動,時長和步長對應的業(yè)務指標是時長和視頻播放量,這兩個指標反映的是 LT,也就是用戶的留存。除此以外,還有互動信息,代表了用戶在 APP 中資產的沉淀,比如關注作者的行為,其實是期望這個作者再有更新后能夠找到。無論是提升消費條數還是互動個數,都是希望用戶更長遠地使用這個 APP。
我們的第一版是一個簡單的啟發(fā)式的模型,當前線上的 ES 會做更高階的計算,例如引入分場景、分人群等信息。




























