港大開源推薦系統(tǒng)新范式RLMRec!大模型加持,準(zhǔn)確提煉用戶/商品文本畫像
推薦系統(tǒng)在深度學(xué)習(xí)和圖神經(jīng)網(wǎng)絡(luò)的影響下已經(jīng)取得了重大進(jìn)步,尤其擅長于捕捉復(fù)雜的用戶-物品關(guān)系。
然而,現(xiàn)有基于圖神經(jīng)網(wǎng)絡(luò)(GNNs)的推薦算法普遍僅依賴于ID數(shù)據(jù)構(gòu)造的結(jié)構(gòu)化拓?fù)湫畔ⅲ瑢?dǎo)致其大量存在于推薦數(shù)據(jù)集中與用戶和物品相關(guān)的原始文本數(shù)據(jù),因此,其學(xué)習(xí)到的表示不夠信息豐富。
此外,協(xié)同過濾中運(yùn)用到的隱式反饋(Implicit Feedback)數(shù)據(jù)存在有潛在的噪聲和偏差,其對深度模型在用戶偏好學(xué)習(xí)的有效性也提出了挑戰(zhàn)。
目前,如何將大語言模型(LLMs)與傳統(tǒng)的基于ID數(shù)據(jù)的推薦算法相互結(jié)合,已經(jīng)受到了學(xué)界以及工業(yè)界的廣泛關(guān)注。但是,仍然存在有許多困難,例如算法的可擴(kuò)展性,語言模型的輸入限制(僅文本模態(tài)以及輸入長度限制),使其大語言模型無法在實(shí)際運(yùn)用的推薦系統(tǒng)中有效提供幫助。
為了應(yīng)對這些限制,來自香港大學(xué)等機(jī)構(gòu)的研究人員提出了一種利用大語言模型來促進(jìn)現(xiàn)有推薦算法表征學(xué)習(xí)的框架RLMRec,并且在實(shí)驗(yàn)中將其與現(xiàn)有的最先進(jìn)的推薦算法相結(jié)合,在真實(shí)數(shù)據(jù)集中進(jìn)一步提升了算法的推薦性能。
論文地址:https://arxiv.org/abs/2310.15950
代碼地址:https://github.com/HKUDS/RLMRec
具體而言,該范式通過利用大語言模型從文本角度挖掘用戶行為偏好以及商品語義特征,并且利用最大化互信息的方式將文本信號和來自于圖神經(jīng)網(wǎng)絡(luò)的協(xié)同信號增強(qiáng)對齊,從而有效促進(jìn)算法學(xué)習(xí)到的表征質(zhì)量。
基于RLMRec,我們分別基于了對比式學(xué)習(xí)和生成式學(xué)習(xí)構(gòu)建了RLMRec-Con和RLMRec-Gen兩套范式。這兩套范式在不同的測試場景下展現(xiàn)出了不同的優(yōu)點(diǎn),因此可以靈活的運(yùn)用于不同的實(shí)際場景。
理論角度緩解協(xié)同信號中的噪聲
在基于圖神經(jīng)網(wǎng)絡(luò)的協(xié)同過濾推薦算法中,其基于協(xié)同信號,會為每一個用戶/商品學(xué)習(xí)到一個表征。
我們稱之為基于協(xié)同信號的表征,從用戶的角度,其反應(yīng)了用戶對于商品的偏好;從商品的角度,其反應(yīng)了它吸引的用戶群體。然而,由于協(xié)同信號中可能存在的噪聲(例如誤點(diǎn)擊、流行度偏差等等),表征中不可避免的受到了噪聲(noise)的影響。
我們不妨設(shè)在推薦的視角下,對推薦存粹有益的潛在信號為,那么表征則同時由與潛在噪聲生成??紤]到協(xié)同數(shù)據(jù)中并不存在文本語義信息,因此在本文中,我們將其作為突破口,考慮利用文本語義信號(semantic information)來緩解這一現(xiàn)象。
我們不妨設(shè)對于每一個用戶/商品,我們都擁有一個基于文本語義而產(chǎn)生的表征,其基于的原始文本本身能夠準(zhǔn)確地反應(yīng)了用戶喜好的商品類別,和商品所吸引的用戶群體,因此中也包含了來自于潛在信號的信息,但是同時也包括了一些與推薦無關(guān)的信號(例如表征中可能體現(xiàn)的語法等語言屬性)。因此我們可以構(gòu)建如下的概率圖模型。
為了能夠提高協(xié)同過濾算法所學(xué)習(xí)到的表征e的質(zhì)量,我們構(gòu)建的如下的學(xué)習(xí)目標(biāo)
直觀上將,我們希望能夠最大化協(xié)同信號表征e與文本信號表征s以及潛在信號z直接的關(guān)聯(lián),從而使得表征e中包含更多有益的信息以增強(qiáng)推薦的性能。
通過理論推導(dǎo),最大化上述目標(biāo)等價于最大化表征e和表征s之間的互信息I(e, s),并且最終可以轉(zhuǎn)換成優(yōu)化如下目標(biāo)
其中f是密度函數(shù),體現(xiàn)了二者的相似程度。上述的表征學(xué)習(xí)過程可以形象化地體現(xiàn)為如下過程:
在優(yōu)化的過程中,我們不斷增加協(xié)同信號表征e與文本信號表征s中重疊的部分,從而不斷的減少噪聲在協(xié)同信號表征中的占比,從而獲得高質(zhì)量的特征學(xué)習(xí)結(jié)果,以促進(jìn)推薦性能提高。
為了真正實(shí)現(xiàn)上述的理論推導(dǎo)后的優(yōu)化目標(biāo),我們?nèi)匀挥袃牲c(diǎn)挑戰(zhàn):
1. 如何通過文本有效的用戶/商品真實(shí)的交互偏好以獲得高質(zhì)量的文本語義表征;
2. 如何實(shí)現(xiàn)密度函數(shù)f從而高效地優(yōu)化我們的學(xué)習(xí)目標(biāo)。
我們將在接下來的兩節(jié)中分別闡述如何解決上述這兩點(diǎn)挑戰(zhàn)。
準(zhǔn)確提煉用戶/商品文本畫像
為了獲得文本信號表征,我們首先需要擁有文本模態(tài)上對于用戶和商品的準(zhǔn)確畫像描述,其需要是無偏差的,從而能夠反應(yīng)出用戶和商品真實(shí)的偏好。我們希望用戶畫像能夠有效的反應(yīng)出其喜好什么類別的商品,并且商品畫像能夠反應(yīng)出其會吸引什么樣的用戶群體。
在真實(shí)的推薦數(shù)據(jù)集中(例如Yelp、Amazon-book)存在有許多的對于原始文本數(shù)據(jù),例如商品描述、用戶評論等等,但是這些原始文本數(shù)據(jù)同樣存在這大量的噪音,例如在Steam數(shù)據(jù)集中,玩家對于電子游戲的評論會存在有大量的非語義符號。
噪音的存在使得我們在以往難以利用上這些文本數(shù)據(jù)。幸運(yùn)的是,隨著大語言模型的發(fā)展,其高效的文本總結(jié)能力和自然語言處理能力是我們能夠達(dá)成這一目標(biāo)。
在本節(jié)中,我們基于大語言模型(LLMs)和思維鏈(Chain-of-Thought)的思想,提出了一種從商品到用戶的文本畫像構(gòu)建路徑。其能夠保證在現(xiàn)有的數(shù)據(jù)下,準(zhǔn)確無誤無偏的反應(yīng)出用戶和商品的交互偏好,以便于我們獲得高質(zhì)量的文本語義表征。
簡單來說,我們先基于用戶的反饋或是商品的自身描述,基于大語言模型的知識先對商品的畫像進(jìn)行總結(jié),并且要求其提供思考的過程,基于此,我們可以首先獲得基于商品的無偏文本畫像。
其次我們將用戶對商品的反饋以及商品文本畫像相結(jié)合,輸入給大語言模型,使其總結(jié)用戶畫像,因?yàn)橛脩舻姆答佒邪擞脩舻恼鎸?shí)喜好,因此語言模型能夠準(zhǔn)確的把握住用戶的真實(shí)喜好,從而產(chǎn)生準(zhǔn)確的文本畫像。
最后,我們利用先進(jìn)的文本嵌入模型將文本畫像轉(zhuǎn)化為文本表征表征,上述過程的示意圖如下(在論文的附錄中,我們對生成過程進(jìn)行了具體的案例描述)
對比式/生成式建模密度函數(shù)
密度函數(shù)的輸出是一個實(shí)數(shù),反應(yīng)了輸入的兩個表征的之間的相似程度。對于該函數(shù)的建模越有效越精確,就可以更好的實(shí)現(xiàn)互信息最大化,從而實(shí)現(xiàn)協(xié)同信號表征和文本語義信號表征之間的對齊。
在本文中我們考慮兩種不同的建模方法,從而實(shí)現(xiàn)了兩種不同的對齊方式。
第一種是對比式對齊(Contrastive Alignment,RLMRec-Con),其具體建模形式如下
簡單來說,我們將文本語義表征通過網(wǎng)絡(luò)進(jìn)行縮放,使其與協(xié)同信號表征具有相同的維度,而后用余弦相似度來計(jì)算它們之間的相似程度。
結(jié)合之前的優(yōu)化函數(shù),實(shí)際上這與對比學(xué)習(xí)的過程十分相似,因此我們稱之為對比式對齊。形象化的來說,在該過程中,兩個表征雙向奔赴,不斷互相對齊彼此。
第二種是生成式對齊(Generative Alignment,RLMRec-Gen),其具體形式如下
簡單來說,我們是基于生成式掩膜子編碼器(Generative Masked Auto-encoder)的思想,將部分節(jié)點(diǎn)的原始特征進(jìn)行掩蓋,然后將推薦算法編碼出來的這些節(jié)點(diǎn)的特征進(jìn)行縮放,使其具有和文本語義表征相同的維度,而后進(jìn)行對齊。
形象化的來說,在該過程中,協(xié)同表征向文本語義表征單向逼近,生成式地重構(gòu)對方,從而實(shí)現(xiàn)對齊。
我們在后續(xù)的實(shí)驗(yàn)過程中,探尋了兩種方法(RLMRec-Con和RLMRec-Gen)在不同的場景下的優(yōu)勢。
實(shí)驗(yàn)驗(yàn)證
我們在三個公開數(shù)據(jù)集(Yelp,Amazon-book,Steam)上,使用現(xiàn)有的先進(jìn)協(xié)同過濾算法(GCCF、LightGCN、SGL、SimGCL、DCCF和AutoCF)作為基準(zhǔn)模型,配合RLMRec進(jìn)行了性能的驗(yàn)證。通過多次隨機(jī)試驗(yàn)求均值,我們發(fā)現(xiàn)RLMRec可以有效且顯著地進(jìn)一步提升現(xiàn)有推薦算法的性能。
從結(jié)果中可以看出。對比式學(xué)習(xí)(RLMRec-Con)所帶來的性能提升,相較于生成式學(xué)習(xí)(RLMRec-Gen)更加顯著,但是對于自身就是生成式建模的推薦算法(AutoCF)而言,生成式學(xué)習(xí)帶來的性能提升更多,由此可見使用兩種方式需要應(yīng)算法而制宜。
進(jìn)一步的,為了探尋是否真的是文本信號的引入提高了推薦的性能(而非是框架的設(shè)計(jì)),我們將用戶/商品的協(xié)同信號和文本信號之間的對應(yīng)關(guān)系進(jìn)行了打亂(Shuffle),從而造成錯誤的信號對應(yīng)關(guān)系,并進(jìn)行了性能試驗(yàn)如下
從結(jié)果中可以看出,在打亂了信號對應(yīng)關(guān)系中,錯誤的文本語義的引入會導(dǎo)致表征學(xué)習(xí)無法正常進(jìn)行,即協(xié)同信號表征無法有效的向語義表征逼近(停留在原地),因此性能相對顯著下降。
同時我們也利用了不同的語義嵌入模型(Instructor、Contriever)來生成語義表征,我們發(fā)現(xiàn)越好的語義嵌入模型生成的語義表征能夠更好的增益RLMRec。
其次,我們進(jìn)行了噪音試驗(yàn),通過隨機(jī)加上不同程度的噪聲,來探討RLMRec對噪聲的抵抗能力,結(jié)果如下
從結(jié)果中可以看出,不論在什么程度的噪聲下,在RLMRec框架下訓(xùn)練獲得的表征能夠相對于基線模型有更好的性能,同時對比式對齊能夠抵御噪聲的能力更強(qiáng),我們認(rèn)為這是因?yàn)樯a(chǎn)式對齊由于存在有掩膜(Mask)的操作,在特征層面上已經(jīng)引入了一部分噪聲,因此應(yīng)對結(jié)構(gòu)化噪聲的能力有所下降,不過相對于基線模型,都是有增益的。
進(jìn)一步的,我們探討了RLMRec的兩種范式能否應(yīng)用于預(yù)訓(xùn)練(Pre-training)?;诖?,我們將Yelp數(shù)據(jù)集中從2012-2017年的數(shù)據(jù)作為預(yù)訓(xùn)練數(shù)據(jù),2018-2019年的數(shù)據(jù)作為微調(diào)(fine-tune)數(shù)據(jù),并最終測試性能,結(jié)果如下
從結(jié)果中我們發(fā)現(xiàn),在預(yù)訓(xùn)練的場景下,生成式對齊RLMRec-Gen一致的具有更優(yōu)的性能,我們認(rèn)為這是因?yàn)橥ㄟ^生成式建模中的掩膜(Mask)操作,能夠有效防止過擬合,從而構(gòu)成一種約束,因此所獲的的參數(shù)能夠有效遷移至新的數(shù)據(jù)上,這也與近年來通過生成式預(yù)訓(xùn)練語言模型的范式不謀而合。
最后,我們進(jìn)行了樣例研究(Case Study)
我們針對一個用戶計(jì)算了與其距離較遠(yuǎn)(在Graph上大于3跳)的所有用戶的特征相似度,并且基于此從高到低排序。
我們發(fā)現(xiàn)即使是兩個用戶擁有相同的偏好,但是傳統(tǒng)的推薦算法獲得的表征,無法有效的體現(xiàn)出他們之間的相似性,這是因?yàn)樗麄兊木嚯x大于圖網(wǎng)絡(luò)的層數(shù),因此無法互相監(jiān)督。
通過在RLMRec中引入了文本信號信息,具有相同偏好的用戶表征被有效的拉近,從而他們的表征相似度也得到了提高,這從一定程度上說明通過引入文本信號來優(yōu)化用戶/商品表征學(xué)習(xí),能夠從全局的視角對具有相似偏好的用戶/商品進(jìn)行有益的對齊,從而提高表征學(xué)習(xí)的質(zhì)量最終提高推薦性能。
結(jié)語
在本文中我們提出了一種模型無關(guān)的基于大語言模型的推薦系統(tǒng)表征學(xué)習(xí)范式,通過合理的設(shè)計(jì),利用大語言模型從海量原始文本數(shù)據(jù)中挖掘的純凈的文本語義信號,從而對協(xié)同信號表征進(jìn)行優(yōu)化,最終促進(jìn)的最先進(jìn)推薦算法性能的提升。
我們在GitHub上對數(shù)據(jù)集和代碼進(jìn)行了開源,希望我們清洗后的具有文本標(biāo)注的推薦數(shù)據(jù)集以及所提出的范式RLMRec能夠促進(jìn)大語言模型和推薦系統(tǒng)的進(jìn)一步融合。
最后,其實(shí)RLMRec的思想不單單能運(yùn)用在推薦算法中,我們也在別的場景下進(jìn)行了實(shí)踐,在百度的搜索算法框架下,我們將RLMRec中的對比式對齊的思想進(jìn)行了測試,在搜索推薦的精度上也獲得了有益的提升,實(shí)現(xiàn)了算法的有效落地。