推薦系統(tǒng)遇上深度學(xué)習(xí)(一四三)-[快手]一致性終身用戶(hù)行為建模方法TWIN

標(biāo)題:《TWIN: TWo-stage Interest Network for Lifelong User Behavior Modeling in CTR Prediction at Kuaishou》
鏈接:https://arxiv.org/pdf/2302.02352.pdf

今天給大家分享的是快手近期發(fā)表的終身行為序列建模上的工作,當(dāng)前工業(yè)界主流的方法大都是兩階段的方法,如SIM、ETA和SDIM,這些兩階段的方法面臨的主要問(wèn)題是階段一致性問(wèn)題,即一階段篩選出的行為,并不一定是二階段所認(rèn)為的高度相關(guān)的行為。如果一階段不能精確的篩選行為,那么無(wú)論二階段如何設(shè)計(jì)良好的attention機(jī)制,其效果也只能是次優(yōu)的。論文從這個(gè)角度出發(fā),提出了兩階段一致的終身行為序列建模方法,稱(chēng)為T(mén)WIN(TWo-stage Interest Network)。接下來(lái),一起了解一下。

1、背景

從用戶(hù)的行為序列中準(zhǔn)確建模用戶(hù)的興趣,已經(jīng)成為CTR預(yù)估中的一個(gè)重要研究方向。其中一條重要的研究主線就是如何不斷擴(kuò)充用戶(hù)的行為序列長(zhǎng)度,從長(zhǎng)度幾十到幾百,再到幾千最終到終身行為序列建模。用戶(hù)的終身行為序列能夠更有效捕捉用戶(hù)的長(zhǎng)期興趣,但也帶來(lái)了計(jì)算耗時(shí)問(wèn)題。因此業(yè)界大多數(shù)終身行為序列建模的方法采取一種兩階段的范式:GSU和ESU。

General Search Unit (GSU):從終身行為序列中快速挑選一小部分歷史行為,如SIM-Hard按照簡(jiǎn)單的規(guī)則方式,挑選與target item品類(lèi)相同的item;SIM-Soft通過(guò)預(yù)訓(xùn)練的embedding和內(nèi)積進(jìn)行item的篩選;ETA通過(guò)simhash和hamming distance進(jìn)行相關(guān)性的篩選等等。
Exact Search Unit (ESU):通過(guò)高效的Target Attention(TA),建模從GSU篩選出的item與target item的相關(guān)性,得到用戶(hù)的興趣表示。

這種兩階段架構(gòu)的研究重點(diǎn)為如何精確的從長(zhǎng)用戶(hù)行為序列中篩選出少量的item用于第二階段的建模,上述所提及的工作均從相關(guān)性角度對(duì)item抽取,從SIM到ETA,實(shí)現(xiàn)了兩階段的端到端的建模,但論文認(rèn)為,光有端到端是不足夠的,還有很關(guān)鍵的一點(diǎn)是兩階段的一致性,即GSU篩選出的item也必須是ESU認(rèn)為更相關(guān)的。如果GSU不能精確的篩選item,那么無(wú)論ESU如何設(shè)計(jì)良好的attention機(jī)制,其效果也只能是次優(yōu)的。如下圖所示,藍(lán)色線為ESU認(rèn)為最相關(guān)的top100的item,橙色線是SIM-Hard所認(rèn)為的最相關(guān)的100個(gè)item,當(dāng)SIM-Hard篩選100個(gè)時(shí),只包含40個(gè)ESU所認(rèn)為的最相關(guān)item。

為了解決上述提到的一致性問(wèn)題,一種思路是如何提升TA的計(jì)算效率,即從數(shù)百個(gè)序列長(zhǎng)度擴(kuò)展到數(shù)萬(wàn)個(gè)序列長(zhǎng)度。沿著這個(gè)思路出發(fā),論文提出了兩階段一致性的終身行為序列建模方法,稱(chēng)為T(mén)WIN(TWo-stage Interest Network),下一節(jié),將會(huì)對(duì)TWIN進(jìn)行詳細(xì)介紹。

2、方法介紹

2.1 整體結(jié)構(gòu)

TWIN的整體結(jié)構(gòu)如下圖所示:

從圖的右邊可以看到,Embedding層之后,有三部分輸入到后續(xù)的MLP層,分別是:
1)Short-term behavior modeling/TWIN:即論文重點(diǎn)優(yōu)化的一致性終身行為序列建模方法,包含兩個(gè)子模塊,CP-GSU和ESU,這兩部分將在后文進(jìn)行詳細(xì)介紹,這里不再展開(kāi)
2)Short-term behavior modeling:從用戶(hù)最近期的50個(gè)行為中建模用戶(hù)的短期興趣
3)Others Task Modelings:除用戶(hù)行為建模外的一些信息,包含用戶(hù)的一些屬性信息、target item的屬性信息以及一些上下文信息。

接下來(lái),重點(diǎn)介紹TWIN的內(nèi)容。

2.2 TWIN

為了精確建模用戶(hù)的興趣,用戶(hù)行為通常通過(guò)Multi-Head Target Attention(MHTA)進(jìn)行建模,由于MHTA計(jì)算復(fù)雜度較高,為滿足工業(yè)耗時(shí)的要求,MHTA輸入的用戶(hù)行為長(zhǎng)度通常限制在幾百個(gè)。而TWIN解決的關(guān)鍵問(wèn)題是,如何提升MHTA的計(jì)算效率,從數(shù)百個(gè)序列長(zhǎng)度擴(kuò)展到數(shù)萬(wàn)個(gè)序列長(zhǎng)度。為此,論文提出了特征拆分和線性映射的思路。

2.2.1 特征拆分和線性映射

MHTA計(jì)算分析

提升Multi-Head Target Attention計(jì)算效率的一個(gè)思路是能否減少其計(jì)算量,將其中的一些計(jì)算提前算好并進(jìn)行存儲(chǔ)?MHTA涉及到Q、K、V的計(jì)算,以及Q、K的attention的計(jì)算,以及attention和V的計(jì)算幾個(gè)過(guò)程。那么我們來(lái)分析下哪些是線上推理可以減少的計(jì)算過(guò)程。
1)Q的計(jì)算依賴(lài)于target item,這塊肯定是線上推理所必須的,不可減少,但只用計(jì)算一次。
2)K的計(jì)算如果包含一些用戶(hù)相關(guān)的特征如user-item的交叉特征等,是不能減少其線上推理計(jì)算量的,但如果特征中全是item自身的特征,不包含用戶(hù)以及上下文信息,那么這塊是可以提前計(jì)算并進(jìn)行存儲(chǔ)的,線上直接抽取即可。從這個(gè)角度出發(fā),論文提出了特征拆分的思路。
3)V的計(jì)算可以放在attention計(jì)算之后,即放在ESU階段,只對(duì)attention score最高的top行為計(jì)算即可,同時(shí)無(wú)需進(jìn)行特征拆分。
4)attention計(jì)算:內(nèi)積的方式,這部分耗時(shí)其實(shí)和SIM-soft是一樣的
5)attention和V計(jì)算的到用戶(hù)興趣表示:ESU階段計(jì)算,暫不考慮。

從上述分析可以看出,主要的優(yōu)化思路是,通過(guò)特征拆解和線性映射,快速計(jì)算Q和K的attention score。

特征拆分

特征拆分的主要思路是將item的特征拆解為item的固有屬性Kh如item id、作者、主題等和item-user交叉特征Kc如用戶(hù)的觀看時(shí)長(zhǎng)等。對(duì)于固有屬性,可以提前計(jì)算KhWh并進(jìn)行存儲(chǔ),線上推理不再進(jìn)行額外計(jì)算;對(duì)于交叉特征,通過(guò)簡(jiǎn)單的線性映射,作為偏置項(xiàng)加入到最終的attention score中。特征拆分和attention score的計(jì)算如下:

通過(guò)上述的兩部分來(lái)計(jì)算attention score,兼顧了相關(guān)性和用戶(hù)的興趣程度:
1)對(duì)于target item,只能拿到固有屬性信息,而user-item的交互信息屬于穿越特征,線上無(wú)法獲取。因此第一部分只使用固有屬性信息,這可以看作是從相關(guān)性角度計(jì)算attention score,如品類(lèi)、作者是否相同。
2)第二部分偏置項(xiàng)可以看作是從用戶(hù)的興趣程度出發(fā),計(jì)算attention score,如兩個(gè)相關(guān)性相同的視頻(如作者、時(shí)長(zhǎng)、類(lèi)型相同),用戶(hù)觀看時(shí)間長(zhǎng)的視頻是用戶(hù)更加感興趣的,那么優(yōu)先篩選觀看時(shí)長(zhǎng)長(zhǎng)的視頻。

2.2.2 Target Attention

計(jì)算得到attention score之后,可以篩選出top的行為,并計(jì)算最終的用戶(hù)興趣向量表示,該過(guò)程僅計(jì)算top的行為,不需要再對(duì)特征K進(jìn)行拆分。計(jì)算如下:

上述是從單頭的角度進(jìn)行介紹,TWIN最終使用4個(gè)head的MHTA:

TWIN的相關(guān)介紹就到這里,出于篇幅考慮,時(shí)間復(fù)雜度和部署部分就不再進(jìn)行介紹,前文或多或少都已經(jīng)有所提及,感興趣的同學(xué)可以閱讀原文。

3、實(shí)驗(yàn)結(jié)果

最后來(lái)看下實(shí)驗(yàn)結(jié)果,首先是與Base模型的AUC指標(biāo)對(duì)比:

接下來(lái)看下一致性指標(biāo)的對(duì)比,TWIN對(duì)比SIM有了大幅度的提升(好奇為什么沒(méi)有貼ETA的對(duì)比):

好了論文就介紹到這里,整個(gè)論文的思路還是較為清晰,也是給了很多在用戶(hù)行為序列建模上的啟發(fā),感興趣的同學(xué)可以閱讀原文~~

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容