自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

小紅書去中心化內(nèi)容分發(fā)技術(shù)

人工智能
去中心化分發(fā)問題的定義、分析和相應(yīng)的解決辦法;從強化 sideinfo 使用、多模信號全鏈路融合、興趣探索及鏈路保護三個方面,分享小紅書在去中心化分發(fā)方面的一些工作;對未來的展望。

小紅書作為在國內(nèi)因種草而聲名大噪的社區(qū),伴隨用戶規(guī)模的擴大,已逐漸發(fā)展成為多元化的線上社區(qū)。眾多用戶通過筆記來記錄和分享自己的生活方式,當(dāng)前每日可分發(fā)的內(nèi)容多達數(shù)十億,每日新增發(fā)布的內(nèi)容有數(shù)百萬之多,涵蓋圖文與視頻等形式,這些我們稱之為筆記。目前小紅書每日可產(chǎn)生數(shù)百億次的曝光量,每日超過一半的用戶在小紅書內(nèi)產(chǎn)生互動行為,每日搜索查詢量達到億級。就產(chǎn)品形態(tài)而言,小紅書現(xiàn)分為雙列信息流和視頻沉浸流兩種。

一、業(yè)務(wù)背景介紹

1. UGC 社區(qū)

小紅書 UGC 社區(qū)與其他社區(qū)類似,主要由三個重要組成部分構(gòu)成,分別是內(nèi)容、消費用戶和創(chuàng)作者。這三者緊密相連,其中內(nèi)容是作者與用戶之間的橋梁,若具備足夠豐富多樣的內(nèi)容,我們就擁有廣闊的精細化分發(fā)空間。

圖片

中心化分發(fā)問題的本質(zhì)在于曝光越多、活躍度越高的內(nèi)容,往往能獲得更多的分發(fā),致使普通創(chuàng)作者的內(nèi)容分發(fā)效果相對較差。此外,用戶可能也會頻繁看到熱門興趣,導(dǎo)致自身中長尾興趣的內(nèi)容所見相對較少。若要構(gòu)建生態(tài)良好的社區(qū),去中心化分發(fā)問題是需要解決的核心問題。

結(jié)合上述兩點,去中心化分發(fā)應(yīng)從內(nèi)容側(cè)與用戶側(cè)分別解決。對于內(nèi)容側(cè)而言,應(yīng)設(shè)法通過多種方式識別和引入筆記本身的更多信號,而非僅依賴用戶對筆記的行為進行分發(fā)。對于用戶側(cè)來說,應(yīng)設(shè)法對用戶的興趣進行更優(yōu)的挖掘,并在挖掘后予以一定的保護,鼓勵用戶中長尾和小眾興趣的內(nèi)容分發(fā),使用戶的興趣得到更全面的滿足。

2. 核心問題

去中心化分發(fā)本質(zhì)上就是要解決兩個問題,一方面是讓我們的系統(tǒng)學(xué)的更快,一方面是讓我們的系統(tǒng)學(xué)的更好。

  • 學(xué)得快:整個系統(tǒng)鏈路學(xué)得更快,才能更快地捕捉到中長尾內(nèi)容的信號和用戶中長尾的興趣。這對于內(nèi)容冷啟動和用戶冷啟動也非常重要,如果一個新筆記在冷啟動階段就沒有得到很好的分發(fā),那它就很難走到下一個階段。同樣的,如果一個用戶剛剛表現(xiàn)出一個新的興趣或者小眾的興趣,沒有被立刻捕捉到,這個用戶可能就會因為沒有看到自己想看的東西而流失。中長尾內(nèi)容同理,也會導(dǎo)致作者的發(fā)布欲望下降。
  • 學(xué)得好:光是學(xué)的快其實還不夠,因為中長尾興趣和內(nèi)容的分發(fā)最終能不能滿足用戶和作者的要求,還要取決于系統(tǒng)學(xué)的好不好。想要做到這一點,必須要保證系統(tǒng)鏈路的每個環(huán)節(jié)對這些興趣和內(nèi)容都能做有效的透出。如下圖所示,整個推薦系統(tǒng)包括召回、初排、精排、后排這幾個階段,推薦系統(tǒng)的目標是希望擬合用戶真實的興趣分布。在這方面,去中心化其實是個特殊的問題。過去推薦系統(tǒng)的核心動作是通過排序模型優(yōu)化來將用戶的消費指標不斷做高,但用戶消費指標提高不一定意味著整個系統(tǒng)的去中心化分發(fā)變得更好了。下游的供給是來自上游的,如果上游給的內(nèi)容就不好的話那下游怎么排也是排不好的,所以對去中心化分發(fā)這個問題,反而越是上游鏈路越重要。

圖片

舉例來說,曾經(jīng)我在搞圍棋 AI 的時候遇到過一個問題,當(dāng)時我們學(xué)習(xí)了一個 RL Policy,但這個模型經(jīng)常到了 200 步之后就下的非常差。我們對這個模型本身做了很多的調(diào)整,但最后都沒有什么用處。后來我們發(fā)現(xiàn)問題出在 SL Policy 模型上,這個模型是通過人類棋手的監(jiān)督數(shù)據(jù)學(xué)習(xí)而來的,但是對于人類的九段棋手來說,有很多高手在中盤就知道自己輸了,所以經(jīng)常不會下到 200 步以后,導(dǎo)致這樣的數(shù)據(jù)很少,且噪音比較大,那基座就學(xué)不好這個信息,基于這個基座學(xué)習(xí)的下游模型效果也不會好,所以這是一個蠻重要的問題。

3. 高時效推薦系統(tǒng) for“學(xué)的快”

小紅書在 2020 年 Q2 之前,推薦系統(tǒng)的主要模塊都保持在天級更新的狀態(tài)。為此我們經(jīng)過兩年的持續(xù)迭代,通過數(shù)據(jù)流、訓(xùn)練框架、索引框架的改造以及實時計算技術(shù),先后把精排、粗排、召回模塊都做到了分鐘級更新的狀態(tài)。后來我們還進一步將初精排模型的訓(xùn)練也升級到了 gpu 異構(gòu)訓(xùn)練的狀態(tài),就是 cpu worker 和 gpu worker 也是分開的,這個可以進一步提高模型的更新速度。

圖片

4. 鏈路分析 for“學(xué)的好”

經(jīng)過對整個系統(tǒng)鏈路的分析,我們發(fā)現(xiàn)在“學(xué)的好”這個方面,很多模塊都是有優(yōu)化空間的。

  • 召回方面:我們對核心召回渠道做了一個曝光維度的分析,如下圖。橫軸是筆記按照曝光數(shù)的分桶,縱軸是不同召回渠道在不同曝光分桶上的分發(fā)占比。我們在召回方面上線了多目標、一致性、高精度等多路召回,時效性也都到了分鐘級,雖然整個大盤的消費指標是變好的,但數(shù)據(jù)分析顯示主要是在曝光比較高的區(qū)段變好的更多,在曝光比較低的區(qū)段表現(xiàn)仍是不好的,反而是其他的非頭部渠道在曝光比較低的分段區(qū)間表現(xiàn)的更好,而這些渠道多為純 CB 的召回渠道。
  • 排序方面:我們發(fā)現(xiàn)如果我們不做任何干預(yù),自然排名靠前的大多是比較熱門的或者是與用戶歷史興趣高度相似的內(nèi)容,且新筆記排名并不高。
  • 后排方面:高活用戶的歷史興趣存在扎堆的現(xiàn)象,即使通過筆記類目進行打散,也未獲得理想的效果,還會折損消費指標。

圖片

(1)原因分析

  • 在當(dāng)前模型的特征體系中,對筆記 id 本身的依賴過強
  • 過度依賴用戶行為信號,雖然也用了一些內(nèi)容信號,但對內(nèi)容信號的學(xué)習(xí)和利用并不充分,未能有效發(fā)揮內(nèi)容信號的作用
  • 系統(tǒng)反復(fù)自我擬合,導(dǎo)致信息繭房問題

(2)解決思路:從內(nèi)容側(cè)和用戶側(cè)分別來解決,雙向奔赴

  • 特征側(cè),除對筆記 id 特征的學(xué)習(xí)外,強化對 sideinfo 的利用
  • 內(nèi)容側(cè),嘗試進行全鏈路的多模內(nèi)容信號的引入
  • 用戶側(cè),系統(tǒng)性地加強用戶的興趣探索與保護


二、強化 Sideinfo 使用

1. Sideinfo 解耦

考慮到召回是最上游的鏈路,對去中心化問題比較重要,我們首先從召回的角度嘗試優(yōu)化了 sideinfo 的建模方式。在召回模型中,對 sideinfo 的使用通常比較簡單,一方面是直接作為模型最底層的特征輸入,但這樣會導(dǎo)致信號學(xué)習(xí)比較弱,另一方面是 sideinfo 的 embedding 通常會和筆記 id 的 embedding 做 pooling 融合,這樣會導(dǎo)致 sideinfo 信號被淹沒,不同的 sideinfo 之間區(qū)分不清晰。

為解決這個問題,最直接的方式就是將 sideinfo 進行單獨的拆分建模。拆分之后,除原本對用戶 lastn 的序列建模外,還會對 sideinfo 做單獨的序列建模。具體如下圖所示,我們先基于 Q 和 K 分別算出 id 和 sideinfo 維度的 attention score 后再與 V 相乘。此外,為進一步強化 sideinfo 信號的學(xué)習(xí),我們引入殘差的做法,將 sideinfo 與 attention 的輸出結(jié)果相加,進一步提升 sideinfo 在整個模型中的影響力。此方法也推廣到了排序模塊。

圖片

2. 圖模型融合 sideinfo

提到用戶興趣泛化與長尾內(nèi)容泛化,就不得不提到圖模型,圖模型相較傳統(tǒng)算法主要優(yōu)勢就在于其泛化能力和可擴展性,故引入圖模型來強化 sideinfo 的使用是一個很自然的做法。不過如果直接將 sideinfo 作為圖中的節(jié)點加入學(xué)習(xí),難以直接取得理想效果。首先,若為純 content-based 的做法,在推薦系統(tǒng)被行為信號主導(dǎo)的情況下,下游的透出率無法保證。雖然我們可采取一些手段進行干預(yù),例如通過中間鏈路進行保量強制其透出,但做法較為生硬,效果也比較有限。其次,若對圖上的數(shù)據(jù)不做任何干預(yù)直接進行學(xué)習(xí),圖中會存在諸多的 bias,致使圖模型學(xué)習(xí)產(chǎn)生偏差。為此,我們從以下兩個方面進行優(yōu)化。

首先,我們還是要想辦法將用戶的行為數(shù)據(jù)與純 CB 的數(shù)據(jù)進行融合。比較直接的做法就是從圖中的邊入手,我們可以采取 CF 的方法來構(gòu)建圖中筆記到筆記的邊,同時根據(jù)筆記的 sideinfo 構(gòu)建筆記到 sideinfo 的邊,這樣圖中就同時兼具了 CB 與 CF 兩種信號。

然后,在引入了基于 CF 的邊之后,需要面對的一個問題是 CF 本身存在 exposure bias 的問題,即標準 CF 通常比較偏向于出高熱的內(nèi)容,這對中長尾內(nèi)容其實是不友好的。因此我們將標準 CF 算法升級為 swing 算法。在 swing 算法中,如果一個中長尾內(nèi)容被兩個用戶同時看過,而兩個用戶看過的筆記又比較少,即其興趣本身也較為長尾,那么根據(jù) swing 公式的計算原理,不需要經(jīng)過太多次的曝光,這兩個筆記的相似分數(shù)就會比較高,從而以更高的概率被召回。

此外,由于不同的 topic 關(guān)聯(lián)的筆記數(shù)量各異,就會導(dǎo)致少部分的 topic 連接著大部分的筆記,這又會引入 Popularity Bias。為此我們引入因果推斷中的后門準則做法,將 topic 視為 treatment,通過后門準則的消偏概率公式,對 topic 到筆記的邊權(quán)進行調(diào)整,緩解了所謂的 super node 的問題。而圖中除了 super node,還存在 super path,即在圖游走的過程中部分 path 會更頻繁的出現(xiàn),這些 path 都放在一起學(xué)習(xí)也會導(dǎo)致頻率出現(xiàn)較低 path 的信號被湮滅。為此我們又引入了 multiple meta path 的做法,針對不同的 meta path(如t-> t->t、t->n->t、t->n->n、t->t->n等)通過不同的 mlp 網(wǎng)絡(luò)進行學(xué)習(xí)而非共享 mlp。不同的 meta path 對應(yīng)的 mlp 的輸出 concat 之后再作為后續(xù)網(wǎng)絡(luò)的輸入,從而緩解了這個問題。

最后,我們發(fā)現(xiàn)圖的時效性也很重要,對算法效果能否有效地發(fā)揮也有很大的影響。而圖想要做到快速的更新是有挑戰(zhàn)的,業(yè)界很多公司也在做這方面的工作。就我們這個圖來說,圖中包括 CB 和 CF 兩種邊,CB 邊可迅速更新,但 CF 邊是通過 swing  計算得到的,而在小紅書的數(shù)據(jù)體量下,swing 全量計算是需要天級才能完成的。為解決這個問題,我們將 swing 算法從 batch 計算升級為 flink 流式計算,從而解決了這個問題。

圖片

3. sideinfo 在排序中的應(yīng)用

在排序中,sideinfo 主要是在各種 attention 中發(fā)揮作用,attention 分為 hard attention、target attention 和 self attention 幾種。

  • hard attention 方面:通過 target item 的類目或?qū)傩缘?sideinfo 作為 hit 條件,將命中的 lastn 的表征進行融合,同時將 hit 作為統(tǒng)計值特征,與原始的 embedding layer 進行 concat 作為模型特征輸入的一部分。
  • target attention 方面:將 sideinfo 作為 target attention 模塊中的基礎(chǔ)信息來計算不同 lastn 的權(quán)重,然后根據(jù)該權(quán)重對 lastn 的表征進行加權(quán)融合,同時對 sideinfo 做 early Fusion,即將 target item 的 sideinfo 在 attention 之前就與用戶 lastn 的 sideinfo 進行融合,使其學(xué)習(xí)更加充分。
  • self attention 方面:基于 sideinfo 在用戶側(cè)內(nèi)部做 self attention,同時以 sideinfo 構(gòu)建 gate 網(wǎng)絡(luò),來學(xué)習(xí)各自 lastn 的興趣強度。
  • 最后,以上方法相互之間做融合,可取得更好的效果。而對 sideinfo 最極致的使用莫過于最近 meta 發(fā)表的 rankGPT 排序模型。在 rankGPT 中,user 側(cè)除 userid、基礎(chǔ)屬性特征以及 lastn 外,僅保留 sideinfo,其余的統(tǒng)計特征一概不用。在大數(shù)據(jù) + 大模型的方案下,模型的效果最終超越了 meta 的基線模型,并驗證了 scaling law。其實關(guān)于這一點我本人也是比較看好的,在當(dāng)年圍棋AI 的調(diào)研過程中我們就發(fā)現(xiàn) 20+ 特征的版本效果甚至優(yōu)于 50+ 特征的版本。在那之后 AlphaZero 橫空出世,其特征僅寥寥數(shù)個,純靠自身進行 selfplay 學(xué)習(xí),不知rankgpt是否受此啟發(fā)。所以在 sideinfo 這個維度上,我相信類 rankGPT 的方案最終是可以走通的。業(yè)界常說排序模型是特征的藝術(shù),這個說法在未來的某一天可能會被徹底顛覆。

圖片


三、多模信號全鏈路融合

前面討論了 sideinfo 如何建模的問題,接下來我們從 sideinfo 本身的質(zhì)量出發(fā)來強化中長尾內(nèi)容和興趣的分發(fā)。相比類目、keyword、topic 等 sideinfo,多模表征也是 sideinfo 很重要的一種,且蘊含的內(nèi)容信號更為豐富。在這個章節(jié)中我們介紹如何通過多模信號來強化 sideinfo 的表達能力,以及如何通過多種方式將其應(yīng)用于我們的推薦系統(tǒng)。

首先提到一點,小紅書的多模態(tài)技術(shù)已經(jīng)經(jīng)過數(shù)輪迭代,從基于 CB2CF 的對比學(xué)習(xí)方案逐漸演變?yōu)榛诖竽P偷姆桨福?post-pretrain 階段,會引入下游的監(jiān)督信號進行訓(xùn)練,使多模態(tài)表征融合了行為信號,而非純內(nèi)容信號本身。目前小紅書筆記的多模態(tài)表征已廣泛應(yīng)用于小紅書的多個場景。

1. 多模對比學(xué)習(xí)

首先,使用多模信號不一定非要通過加特征的方式,我們試過直接在模型底層加特征,發(fā)現(xiàn)效果比較一般,這個和上面 sideinfo 解耦部分提到的問題類似,因此我們嘗試了對比學(xué)習(xí)的方案來進行多模信號融合。

常規(guī)的對比學(xué)習(xí),通常是對 item 的特征進行劃分或 dropout,對同一個 item 的兩個表征進行對比學(xué)習(xí),以強化中長尾筆記的分發(fā),但該方案并未引入額外的內(nèi)容信號,因此主要還是在依賴行為信號進行學(xué)習(xí)。我們在此基礎(chǔ)上引入多模信號,并將對比學(xué)習(xí)的方案進行升級。我們直接將多模 embedding 與常規(guī)雙塔召回中的 item embedding 進行 alignment。整個方案分為域內(nèi) alignment 和跨域 alignment 兩部分,域內(nèi)是指筆記的 text 和 image 的 embedding 進行內(nèi)部 alignment,跨域是指將筆記 text 和 image 的 embedding 與 item 塔輸出的 item embedding 進行 alignment。加上原本 u2i 模型中 user embedding 與 item embedding 的 alignment,三個 loss 進行聯(lián)合訓(xùn)練,取得了比單純在模型底層添加多模表征更好的效果。此方案參考了 NIPS 2020 deepmind 的一篇工作。

圖片

2. AlignRec 框架

受此上面工作的啟發(fā),我們進一步提出 AlignRec 框架,此框架在上述方案基礎(chǔ)上更進一步,提出一個更通用的多模態(tài)推薦框架。該方案在多個開源數(shù)據(jù)集上達到了 SOTA 效果,目前已被 CIKM 2024 Full Research Paper Track 接收。整個框架分為以下幾個階段,具體見下圖:

圖片

(1)通過 MMEnc 模塊將 text 和 image 的 embedding 內(nèi)部進行對齊與融合,得到 item 在內(nèi)容側(cè)的表征。

(2)對 user 和 item 的行為側(cè)原始表征基于 user 與 item 的行為圖做融合。

(3)內(nèi)容側(cè)的 item 表征會先和行為側(cè)的 item 表征做 Fusion,然后基于內(nèi)容側(cè) item 表征的相似度構(gòu)建圖來對 fusion 后的 item embedding 做 aggregation 得到 item 的內(nèi)容聚合表征,然后 user 側(cè)會根據(jù) user 和 item 的行為圖做聚合,得到 user 在內(nèi)容維度的聚合表征。

(4)user 和 item 的行為聚合表征分別和內(nèi)容融合表征做 alignment 作為輔助 loss。

(5)user 和 item 的行為表征和內(nèi)容表征各自相加,得到 user 和 item 的跨域融合表征并做最終的 alignment。

3. 多模特征交叉

由于多模表征作為特征直接加在模型底層效果微弱,因此我們對多模在底層的使用方式進行了探索,包括召回和排序模塊。

(1)召回方面

  • 在過去我們上線了 pdn 召回,該路召回的亮點是做了 u2i 和 i2i 的聯(lián)合建模,但分析發(fā)現(xiàn)它的內(nèi)容分發(fā)仍然偏向于頭部內(nèi)容。因此,我們對 pdn 召回做了升級。我們將 trigger net 部分改成了 attention 結(jié)構(gòu),同時在 simnet 部分引入了筆記的多模信息,即通過查表的方式得到用戶 lastn 和 target item 的多模表征,作為 simnet cross dnn 的輸入,通過特征交叉的方式在 simnet 的學(xué)習(xí)過程中引入多模信息。升級后的 pdn 對于中長尾內(nèi)容和興趣的分發(fā)效果提升顯著,并帶動了大盤的消費指標。
  • 此外,我們還做了基于多模表征的長序列 swing 算法。前面提到,我們把 swing 升級到流式計算后,由于不能全量計算,只能保留用戶近期的 lastn,導(dǎo)致算法對用戶長期信號的捕捉變?nèi)?。為緩解這個問題,同時考慮到性能,我們做了類似排序 sim 的做法,首先基于多模 embedding 從用戶長期行為序列中檢索出跟 target item 比較相似的 lastn,然后將得到的結(jié)果和原始的 online swing 放在一起同時做訓(xùn)練,對用戶中長尾興趣和長期興趣的捕捉取得了不錯的補充效果。

(2)排序方面

  • 初排方面,考慮到初排的線上性能壓力,直接通過多模表征做相似檢索的性能是難以接受的,所以在初排我們是通過多模 embedding 聚類得到的聚類 id 對 user lastn 做 hard search 來進行多模特征交叉
  • 精排方面,直接用多模 embedding 來做 soft search。我們設(shè)計了 GSU+ESU 的架構(gòu),在離線訓(xùn)練時用戶 lastn 通過本地靜態(tài)表的方式接入筆記的多模 embedding 進行訓(xùn)練,模型導(dǎo)出時會導(dǎo)出成 GSU 和 ESU 兩張子圖在線上分別做部署。GSU 子圖放到線上后,特征引擎通過 RPC 的方式調(diào)用 GSU 服務(wù),GSU 在圖內(nèi)基于 target item 的多模 embedding 對用戶 lastn 的多模 embeddings 做檢索,得到最相似的 topk lastn,然后再將 topk lastn 及其相關(guān)特征送入通過 ESU 子圖做 attention 建模。

圖片

4. 基于多模的后排打散

在業(yè)界通常會有個認知,后排打散通常會帶來消費指標的損失,但我們驗證下來之后發(fā)現(xiàn),多樣性的提高和消費指標的提升其實是不沖突的,如果出現(xiàn)蹺蹺板效應(yīng),那還是因為打散沒有做到個性化的多樣性。

我們在 KDD 2021 上提出了一種解法。該做法包括兩方面,一是加入滑動窗口的概念,二是引入融合行為信號的多模 embedding?;瑒哟翱谟行У亟Y(jié)合了多個窗口,我們把窗口之外的筆記先通過逆 MGS 的方式做向量還原,然后對窗口內(nèi)部筆記的 embedding 重新做 MGS 分解,得到當(dāng)前位置的候選筆記的 embedding,再根據(jù)該 embedding 計算與前面內(nèi)容的相似度,并結(jié)合當(dāng)前內(nèi)容的相關(guān)性分數(shù)最終確定當(dāng)前位置選擇哪個筆記。可以看出,筆記 embedding 的質(zhì)量對這個算法是非常重要的。如果我們基于純 CB 的 embedding,由于 embedding 中沒有行為的信號,直接做打散就會對消費指標帶來負向的影響。因此我們通過對比學(xué)習(xí)的方式,提前得到了融合行為信號的多模 embedding。后來我們對該算法使用的多模 embedding 再次做了升級,又帶來了多樣性和消費指標的雙提升。

圖片


四、興趣探索及鏈路保護

上面介紹了從內(nèi)容側(cè)來解決去中心化分發(fā)問題的一些工作,接下來我們介紹下在用戶側(cè)解決該問題的一些思路。從用戶角度來說,看不到中長尾興趣的內(nèi)容,有很大的原因是因為系統(tǒng)總是在擬合用戶的歷史興趣。想要打破這一點,就需要引入興趣探索和興趣保護的能力。

1. 顯式多興趣

首先還是從召回模塊入手,多興趣模型是召回階段做用戶興趣探索的常用手段之一。我們曾嘗試了一些基于多向量的多興趣做法,包括 mind、comirec 等,但在多樣性和中長尾內(nèi)容分發(fā)方面沒有得到理想的效果。經(jīng)過分析我們發(fā)現(xiàn):其一,若直接基于用戶的 lastn 做聚類,本質(zhì)上還是在完全依賴用戶的歷史興趣做建模,而用戶的潛在興趣在用戶的歷史行為中還比較弱勢,不進行顯式的挖掘很難直接獲取。其二,多興趣不等于多向量,多向量的效果也未必優(yōu)于單向量,還會引發(fā)一些其他問題,例如會導(dǎo)致線上性能壓力升高,限制探索興趣的數(shù)量。其三,多向量的做法還是很難做到精準的個性化,同一用戶的不同向量所代表的興趣難以顯式區(qū)分和解釋,不同用戶的多向量所代表的興趣也難以做到全局概念上的對齊。

為此,我們反其道行之,相較于隱式挖掘多興趣,我們改為顯式挖掘的方式。具體來說,我們先構(gòu)建一個客觀存在的全局興趣集合,這樣興趣集合中的每一個向量都代表著一個相對明確的興趣。然后我們通過檢索的方式,基于用戶 lastn 從這個興趣超集中顯式選取 topk 的興趣。接下來我們預(yù)測用戶的下一個興趣與當(dāng)前所選擇的 topk 興趣向量的相關(guān)系數(shù),然后聚合得到用戶的興趣向量,最終只將該單向量應(yīng)用于線上。這種做法從性能和效果來說都取得了比較理想的效果,且具有更好的可解釋性。

圖片

2. EE 興趣探索

說到興趣探索,就不得不提及 EE。目前工業(yè)界 EE 方面的工作大多都在更靠近用戶的后鏈路展開,因 EE 如果做在前鏈路,受到下游鏈路的影響,最終對用戶的實際影響會受到較大的削弱。然而,對去中心化分發(fā)問題來說只在后鏈路做 EE 是不夠的,如果只是做在后鏈路,那一個很大的問題是若前鏈路下發(fā)的用戶中長尾興趣的內(nèi)容本身就很少,那么探索的天花板就比較低,因此我們需要在前鏈路就設(shè)法通過 EE 將用戶中長尾興趣的內(nèi)容挖掘出來。但僅在上游鏈路完成探索,下游鏈路若沒有有效承接,還是會導(dǎo)致整個 EE 的效率比較低。

為兼顧以上兩個問題,我們提出了一種新的 EE 做法。

  • 首先,我們在召回階段對用戶的召回向量表征加一些高斯噪音擾動,獲取一個新的召回向量,得到相應(yīng)的召回結(jié)果。
  • 然后,我們采用了基于 Evolution Strategy 的策略,將下發(fā)未曝光但在下發(fā)排名較高的當(dāng)次探索內(nèi)容進行保存,參與后續(xù)的召回。在這個過程中,我們將召回模塊作為交叉再生算子,將初排和精排漏斗當(dāng)作遺傳選擇算子。在下一次召回時,會從前n 代最后下發(fā)的頭部筆記中選取未得到曝光的那些探索筆記,作為結(jié)果重新參與召回的再生。

我們發(fā)現(xiàn)這種系統(tǒng)性的 EE 做法,相較于單純在召回階段對向量擾動做 EE,對整個系統(tǒng)在中長尾興趣的內(nèi)容分發(fā)方面產(chǎn)生了更顯著的影響。

圖片

3. 中間鏈路興趣保量

受到 EE 做法的啟發(fā),我們發(fā)現(xiàn)除了興趣探索之外,中間鏈路的興趣保量也很重要,只探索不保護會導(dǎo)致興趣探索最終無疾而終。從召回階段的興趣挖掘,再到最終曝光給用戶,推薦系統(tǒng)中間會經(jīng)歷召回進初排、初排進精排等多個階段。在興趣保護方面,已有的做法大多是通過調(diào)整初精排的融合公式來對那些希望最終能展現(xiàn)給用戶的內(nèi)容做一些提權(quán),但這種做法有兩個比較大的短板。首先這種做法比較黑盒,對系統(tǒng)全局的影響不得而知。其次,某些特殊需求無法通過融合公式的調(diào)整直接做到,比如關(guān)注渠道是對中長尾內(nèi)容和興趣有效分發(fā)的渠道之一,如果我們想要單獨調(diào)整某次下發(fā)中關(guān)注鏈筆記集合的內(nèi)部序,通過全局的融合公式很難做到。

為此,我們構(gòu)建了白盒化的多隊列保量框架,來和黑盒化的融合公式做互補。以初排進精排階段的多隊列為例(召回進初排我們也加入了多隊列框架),我們從多個維度對初排進精排的筆記進行了隊列拆分,每個隊列內(nèi)部可以進行定制化排序,這樣就能解決前面所說的關(guān)注鏈筆記個性化排序無法實現(xiàn)的問題。再者,每個隊列可進行獨立的截斷,目前我們已經(jīng)實現(xiàn)了一套基于 Evolution Strategy 的自動尋參工具,可通過該工具對每個隊列的截斷值進行超參自動尋優(yōu)。

圖片

4. 基于大模型的潛在興趣挖掘與強化

最近一年大模型技術(shù)正在引領(lǐng)一場新的技術(shù)革命,大模型對于大多數(shù)問題的理解能力遠遠超過許多傳統(tǒng)的模型,因此展現(xiàn)出在興趣挖掘方面強大的潛力。鑒于大模型的性能要求很高,直接將其作為在線模塊用于用戶的興趣探索目前并不現(xiàn)實。為此小紅書采取了一種折中的辦法,首先基于 COT 原則設(shè)計了專門的 prompt 構(gòu)造用戶畫像,然后通過小紅書自研的大模型基座 tomato-7B 離線預(yù)估用戶的潛在興趣,將得到的結(jié)果通過 SIMCSE 模型與已有的標簽體系做映射,最終對命中標簽的筆記在后排階段給予助推,從而和前鏈路的興趣探索和興趣保量一起,形成用戶興趣挖掘的閉環(huán)。

圖片


五、未來展望

未來在去中心化問題上仍然存在許多工作可以開展,主要分為以下幾個方面:

  • 生成式推薦:相較于傳統(tǒng)的判別式推薦,生成式推薦具有更強的多樣性和泛化能力,目前生成式召回和排序的工作我們已在探索中,并取得了階段性的結(jié)果。
  • 交互式搜索:基于大模型技術(shù),以多輪對話的方式更全面細致地捕捉用戶意圖和挖掘用戶興趣,返回令用戶有驚喜感的內(nèi)容。
  • 多模態(tài)畫像:將用戶的個人信息和歷史行為輸入預(yù)訓(xùn)練的多模態(tài)大模型得到用戶畫像,通過 token 化技術(shù)提取圖片中的筆記畫像,將用戶畫像和筆記畫像作為推薦各模塊模型的輸入。
  • 多模態(tài)聯(lián)合訓(xùn)練:傳統(tǒng)多模態(tài)推薦通常采取預(yù)訓(xùn)練+finetune 兩階段的做法,可嘗試直接做 end2end 的多模態(tài)和行為聯(lián)合訓(xùn)練,這也是個值得探索的方向。
  • 全域信號聯(lián)合建模:通過搜廣推全域預(yù)訓(xùn)練大模型或全域圖模型,打通全域信號,捕捉用戶在整個 app 上的行動軌跡,更全面地挖掘和學(xué)習(xí)用戶全域興趣。

圖片

今天主要是圍繞去中心化分發(fā)這個話題分享了小紅書在這方面的部分工作,除此以外小紅書還有很多在推廣搜和大模型方面的工作,時間原因不做進一步展開。

責(zé)任編輯:姜華 來源: DataFunTalk
相關(guān)推薦

2014-05-19 10:07:41

Dynamo去中心化

2023-04-07 15:33:09

2023-07-06 09:02:36

2023-10-30 08:00:00

區(qū)塊鏈去中心化

2022-11-30 20:30:18

2021-02-05 10:03:31

區(qū)塊鏈技術(shù)智能

2021-02-24 10:02:19

存儲云存儲去中心化存儲

2024-01-03 07:47:18

CPU規(guī)模化技術(shù)

2023-11-27 19:37:51

CPU云原生

2017-12-25 23:51:24

去中心化交易區(qū)塊鏈

2022-04-26 23:33:33

區(qū)塊鏈去中心化數(shù)據(jù)結(jié)構(gòu)

2018-11-12 12:53:15

2022-01-11 14:05:01

區(qū)塊鏈技術(shù)數(shù)據(jù)

2018-03-26 09:42:42

2025-01-15 11:36:28

2022-05-10 08:27:15

小紅書FlinkK8s

2023-09-07 10:45:38

ChatGPTAI

2022-04-26 15:30:19

元宇宙去中心化Web3

2021-03-08 14:39:53

區(qū)塊鏈加密貨幣金融

2014-12-12 16:34:57

點贊
收藏

51CTO技術(shù)棧公眾號