?

基于跨視圖對比學習的知識感知推薦系統

2024-02-02 09:29鄢凡力胥小波趙容梅孫思雨琚生根
工程科學與技術 2024年1期
關鍵詞:視圖全局意圖

鄢凡力,胥小波,趙容梅,孫思雨,琚生根*

(1.四川大學計算機學院,四川成都 610065;2.中國電子科技集團公司第三十研究所,四川成都 610225)

隨著技術飛速發展,海量信息在網絡上生成,信息嚴重過載。推薦模型作為一種有效的信息過濾機制被廣泛應用,其能根據用戶需求從海量數據中篩選出有用內容,并推薦給用戶[1]。提高推薦系統的精度對商家、電商平臺和用戶具有重要的商業和使用價值[2]。傳統的推薦方法,如協同過濾(CF)[3–5],依賴于歷史用戶交互數據[6]對用戶、物品相似性進行分析,從而實現推薦[7]。但是對于新出現的用戶和物品,其歷史交互數據通常是非常稀缺的,也就是存在冷啟動問題[8]。為了解決冷啟動問題,一個被廣泛采用的方法是引入知識圖譜[9]。知識圖譜具有豐富的實體和相關關系信息,能夠增強模型可解釋性?;谥R圖譜的推薦系統也被稱為知識感知推薦(KGR)[10–12]。早期的KGR研究使用不同的知識圖嵌入(KGE)[13–14]模型來預訓練實體嵌入以進行物品表示學習。近年來,有學者提出了基于連接的方法,該方法可以進一步分為基于路徑的方法[15–17]和基于圖神經網絡(GNN)[18–21]的方法?;诼窂降姆椒ㄍㄟ^捕獲知識圖譜的長程結構來豐富用戶與物品之間的交互,而基于GNN的方法則利用節點鄰居上的局部聚合信息來生成節點表示,并將多跳鄰居集成到節點表示中。雖然基于GNN的模型有效,但它們存在用戶–物品交互稀疏性的固有缺陷[22],這意味著在實際推薦過程中會出現標簽不足的問題。

對比學習是一種能很好解決以上問題的方案。作為自監督學習的經典方法,對比學習實現了從無標簽樣本數據中學習嵌入的目標[23]。具體地,對比學習通過最大化負樣本之間的距離、最小化正樣本之間的距離來訓練模型,從而實現了無顯式標簽的訓練。

盡管基于對比學習的方法對于解決監督信號稀疏問題是有效的,但是現有的方法還存在以下兩個問題[24]:

1)現有的方法普遍使用圖卷積直接聚合節點的鄰居信息,在面對復雜網絡中稠密的節點時,無法排除其中不必要鄰居節點的干擾信息。

2)現有的方法對用戶–物品–實體的全局視圖進行處理時忽略了局部特征;同時,在全局視圖上使用多跳信息聚合后,堆疊的多個神經網絡層可能使得整個圖的節點過于平滑。

為了解決以上兩個問題,提出了基于跨視圖對比學習的知識感知系統(know ledge–aw are recommender system w ith cross–views contrastive learning,KRSCCL),以充分利用知識感知推薦系統中的用戶–物品交互,實現推薦。

模型首先基于全局和局部兩個視圖生成不同的用戶、物品節點,全局視圖使用關系圖注意力網絡聚合重要信息,局部視圖使用輕量級圖卷積網絡(Light–GCN)逐層聚合。然后,對兩個視圖下的節點表示進行對比學習優化,得到最終的節點表示來進行預測和推薦。

主要貢獻如下:

1)使用關系圖注意力網絡有選擇地在鄰居節點上采集信息,以顯式和端到端的方式實現關系建模。

2)從用戶–物品–實體圖中考慮了兩種視圖,包括全局視圖、局部視圖。然后,對這兩個視圖進行對比學習,實現表示增強。

3)在3個基線數據集上進行了廣泛的實驗。結果證明了KRSCCL的優勢,這表明了跨視圖對比學習和關系圖注意力網絡的有效性。

1 相關工作

1.1 基于GNN的知識感知推薦

基于知識圖譜的推薦系統,也稱為知識感知推薦,將用戶和物品視為知識圖譜中的頂點,并根據交互關系相連。因此,基于GNN的方法非常適合、并已廣泛應用于知識感知推薦領域;該方法通過GNN的信息聚合機制,將多跳鄰居的信息聚合到節點中,建模知識圖譜的遠程連接。Wang等[19]提出的圖卷積網絡推薦系統和Wang等[25]提出的標簽平滑推薦系統首先利用GCN迭代聚合物品的鄰域信息來得到物品嵌入。Wang等[20]提出的注意力網絡推薦系統以端到端的方式對知識圖譜注意力網絡中的連接進行建模,利用GCN遞歸地傳播來自節點鄰居的嵌入。Wang等[21]提出的意圖推薦系統通過對關系進行建模,提出意圖的概念,形成用戶–意圖–物品–實體的信息傳遞路徑。盡管這些方法在有監督學習方面表現出色,但它們必須依賴于稀疏的交互數據集,這限制了推薦效果的提升。

1.2 基于對比學習的方法

對比學習方法可通過拉近錨樣本和正樣本間距離、遠離錨樣本和負樣本間距離來學習節點表示方式。谷歌提出的多任務自監督學習大規模項目推薦框架[26]嘗試通過數據增強的方法將同一物品變成兩種不同的輸入,并得到兩個嵌入,借助自監督損失函數,提升模型對物品特征的判別能力。在傳統的基于協同過濾的推薦方法中,Wu等[27]提出的自監督對比學習模型將用戶–物品–實體圖擴展(或損壞)為視圖,對原始圖和損壞圖進行用戶–物品交互的對比學習。Shuai等[28]提出的評論感知模型利用評論構建了一個具有特征增強邊的評論感知的用戶–物品圖,并從節點和邊兩個角度建模并進行對比學習。這些方法通過對比學習,挖掘了更加深層次的信息,但缺乏一種結合細粒度方式的方法。

2 模型

提出了KRSCCL模型,如圖1所示,模型包含5個模塊:1)使用關系圖注意力網絡聚合用戶–物品–實體信息的全局視圖模塊;2)使用輕量級圖卷積網絡聚合用戶–物品信息的局部視圖模塊;3)基于全局、局部兩個視圖的對比學習模塊;4)對用戶、物品表示進行貝葉斯個性化排序(BPR)的預測推薦模塊;5)實現多任務聯合訓練的優化模塊。

2.1 全局視圖

全局視圖包含所有用戶、物品和實體節點以及它們之間的關系,提供了所有可用信息。KRSCCL在全局視圖中構建了關系圖注意力網絡,有選擇地聚合節點之間的信息,并引入了意圖[21]來增強用戶的表示能力。

2.1.1知識圖感知

為了充分利用知識圖譜信息[29–31],本文提出了一種全局視圖下的知識圖感知模塊,通過1階鄰居節點表示更新節點表示。將不同節點之間的關系視為不同的嵌入表示,通過對每個物品節點和其連接實體節點之間的關系進行建模,該模型可以學習到每個關系的權重,進而實現節點信息的聚合。

圖2為關系圖注意力的一個實例,展示了不同節點之間的關系具有不同權重。圖2中:節點“Cast Away”和“Forrest Gump”通過“U.S.”和“Tom Hanks”聯系起來,每一條邊表示的關系α代表節點之間具有不同關系,不同α具有不同的權重數值;α6為“Cast Away”的出品國家是“U.S.”,α4為“Forrest Gump”的出品國家是“U.S.”?!癠.S.”對連接的兩個節點表示的電影具有不同影響力,α4和α6具有不同權重。

圖1 KRSCCL模型視圖Fig.1 Illustration of the proposed KRSCCL model

圖2 關系圖注意力實例Fig.2 Example of relation graph attention

綜上,KRSCCL建立了一種在知識圖譜上的消息聚合機制,用于連接物品及其連接實體,并通過注意力機制生成物品的嵌入。公式如下:

式(1)~(2)中,e v為實體v的初始嵌入,r i,v為物品i關于實體v不同關系的嵌入,Ni為物品i相鄰實體集合,ζ(v,r i,v)為知識聚合過程中實體v和特定關系r i,v相關性,為物品i的初始嵌入,為物品i在全局視圖(global view)下的最終表示,LeakyReLU為用以處理非線性變換的激活函數。

2.1.2節點表示生成

在全局視圖中,KRSCCL通過兩種不同方式分別生成用戶和物品表示。

在生成用戶表示時,引入意圖p的概念,意圖反映用戶在選擇物品時的偏好,被用于衡量用戶對于不同的物品維度的關注程度[21]。例如,一個用戶可能更關心某個物品的價格和品牌,而不是其他維度,比如物品的顏色和生產日期。意圖p可以看作是一種對用戶偏好的編碼方式,公式如下所示:

式(3)~(4)中,e p為意圖p的嵌入,e r為關系r的嵌入,γ(r,p)為一個注意力分數來量化關系r重要性,wrp是關系r和意圖p的可訓練權重,R為所有種類的關系集合,r'為R中的關系。

要注意的是,意圖p并不是單個用戶獨有的,而是所有用戶共同訓練的結果。意圖p的數量和每個意圖下r的數量是人為規定的,多數人會基于相同的意圖做出物品的選擇,而對于某一個意圖只需要考慮占比重最大的幾個關系。意圖表示彼此之間應該盡可能不同。因此,應該最大化意圖距離相關性cor(),距離函數有很多選擇,如余弦距離或歐氏距離[32],采用如下表示:

式(5)~(6)中,p'為和意圖p不同的其他意圖,cov()為兩個意圖表示的距離協方差,var()為意圖表示的距離方差,LIND為增加意圖獨立性的損失函數。通過如下公式得到用戶u的最終表示:

式(7)~(8)中,β(u,p)為用戶u關于意圖p的注意力分數,P為所有意圖,Nu為用戶u的所有相鄰物品的集合,|Nu|為用戶u所有相鄰物品的數量。

和文獻[21]不同的是,KRSCCL不采用多層聚合的方式,KRSCCL只有1跳。原因是圖注意力和圖卷積網絡的不同,多層聚合會對關系注意力造成干擾,使實驗效果下降。

2.2 局部視圖

過去的模型僅考慮全局視圖下用戶–物品–實體節點的信息,無法很好地反映用戶和物品之間的局部關系。為了更全面地進行對比學習,受到文獻[33–35]的啟發,本文提出了細粒度的局部視圖。

在局部級別的用戶–物品視圖中使用Ligh t–GCN[36]來學習用戶和物品表示。Light–GCN是一種遞歸執行k次聚合的模型,可以有效地捕捉用戶–物品交互的遠程連接信息。不需要特征變換和非線性激活函數,Light–GCN使用簡單的消息傳遞和聚合機制,且計算高效[34]。在第k層中,Light–GCN的聚合過程如下所示:

2.3 跨視圖對比學習

得到全局和局部節點后,為了進一步挖掘兩個視圖的特征信息,KRSCCL對兩個視圖的節點使用對比學習。以物品節點為例,全局和局部視圖分別產生了物品表示和。為了找到正、負和錨樣本,兩個視圖內的節點對可以分成3類:同一視圖不同位置節點對、不同視圖不同位置節點對和不同視圖同一位置節點對,分別對應圖1的藍色、紫色和橙色。例如,不同視圖同一位置節點對()表示從兩個視角看同一個事物的不同內容。因此,這樣的節點對應視為正樣本。相反,對于同一視圖不同位置節點對(),i≠i'和不同視圖不同位置節點對(),i≠i',它們所指向的是不同的事物,因此視為負樣本。受文獻[37–38]的啟發,將這些正、負和錨樣本帶入對比學習中,物品對比損失 Li的公式如下:

式中,s為余弦相似度計算,τ為溫度參數,為全局視圖下物品i的嵌入,為在global全局視圖下和物品i位置不同的物品i'的嵌入,為在局部視圖下物品i的嵌入。

同理,KRSCCL使用類似的方法對用戶節點進行跨視圖對比學習。在分別得到用戶和物品的對比學習損失 Lu和 Li后,最終對比學習損失 LCL如下:

2.4 模型預測

在全局視圖下,KRSCCL通過關系圖注意力網絡得到全局級用戶表示和全局級物品表示;在局部視圖下,通過輕量級圖卷積網絡得到局部級用戶表示和局部級物品表示。然后,對圖內和圖間節點對進行對比學習,對節點表示進行優化。

2.5 模型優化

為了將推薦、對比學習等任務結合起來,KRSCCL使用了多任務訓練策略來優化整個模型。對于推薦任務,采用BPR損失[39]LBPR來重構歷史數據,使用戶對歷史交互過的物品預測得分高于未交互過的物品。這種方法可以增強模型對用戶歷史行為的理解,從而更準確地推薦相關物品。

式中:O為觀察到的訓練數據集,包含交互樣本O+和隨機挑選的樣本O–;σ()為sigmoid函數;i+為O+中的正樣本物品;i–為O–中的負樣本物品。通過將全局和局部層面的對比損失、BPR損失和意圖獨立性損失相結合,最小化以下損失 L來學習模型參數:

式中,Θ是模型參數集,δ為平衡對比損失和BPR損失的超參數,β為控制意圖獨立性權重的超參數, λ為控制正則化項權重的超參數。

3 實 驗

為了驗證本文模型的效果,進行了廣泛的實驗,回答以下研究問題:

1)相對于最先進的基線模型,本文模型在推薦任務上表現如何?

2)本文模型不同模塊如何影響其性能表現?

3)不同的超參數設置如何影響本文模型的性能表現?

3.1 數據集及評估指標

3.1.1數據集描述

在評估模型有效性方面,使用了3個不同領域的公開數據集:Book–Crossing、MovieLens–1M和Last.FM。這些數據集分別來自書籍、電影和音樂領域,并且具有不同的規模和稀疏性,數據集統計見表1。

表1 數據集內容Tab.1 Statistics of datasets

Book–Crossing收集自書籍交叉社區,該社區由對各種書籍的評級(范圍從0到10)組成。

MovieLens–1M為電影推薦的數據集,包含大約100萬個顯式評分,來自6036個用戶和2445個物品。

Last.FM為一個從Last.FM 在線音樂系統中收集的音樂收聽數據集,擁有約2000名用戶。

作者采用RippleNet[40]方法,對3個數據集進行了統一處理,并將其構建成了用戶–關系–物品的3元組形式。為了構建知識圖譜子集,按照3元組格式的要求,將每個子知識圖視為整個KG的子集,并且僅保留置信度大于0.9的3元組。在給定子知識圖的情況下,使用所有有效電影、書籍、音樂的名稱與3元組尾部進行匹配,以獲取它們的ID。接下來,將物品ID與所有3元組的頭部進行匹配,并從子知識圖中選擇所有匹配良好的3元組。

表1中的稀疏度分別是由交互在用戶–物品交互矩陣中的占比和3元組在物品–實體交互矩陣中的占比計算得來??梢钥闯鲭娪?、音樂、書籍3個數據集稀疏度依次下降。

3.1.2評估指標

使用訓練過的模型對測試集中的每個交互進行預測,并以點擊通過率(CTR)預測作為實驗的評估標準。為了評估CTR預測的性能,采用了兩個廣泛使用的指標,即ROC曲線下方的面積(AUC,記為SAUC)和F1分數。這些指標通常用于評估2分類模型的性能,其中,AUC反映了模型在不同閾值下分類正例和負例的能力,而F1分數則綜合考慮了準確率和召回率的表現,能夠更全面地評估模型的性能。AUC越接近1、F1分數越高,代表模型的性能越好。

3.2 基線模型

為了證明提出的KRSCCL的有效性,本文將KRSCCL與4種類型的推薦系統模型進行了比較,分別是:基于CF的模型(BPRMF)、基于嵌入的模型(CKE,RippleNet)、基于路徑的模型(PER)和基于GNN的模型(KGCN,KGNN–LS,KGAT,KGIN,CG–KGR):

BPRMF是一個典型的基于CF的模型,使用成對矩陣分解隱式反饋優化BPR損失。

CKE是一種基于嵌入的模型,將結構、文本和視覺知識結合在一個框架中。

PER是一種典型的基于路徑的模型,它提取基于元路徑的特征來表示用戶和物品之間的連通性。

KGCN是一種基于GNN的模型,通過迭代集成鄰近信息來豐富物品嵌入。

KGNN–LS是一個基于GNN的模型,通過GNN和標簽平滑正則化豐富了物品嵌入。

KGAT是一種基于GNN的模型,通過注意機制迭代地集成用戶–物品–實體圖上的鄰居,以獲得用戶、物品表示。

KGIN是一種基于GNN的模型,它在用戶意圖的粒度上分離用戶–物品交互,并在提出的用戶意圖–實體圖上執行GNN。

CG–KGR是最新的基于GNN的模型,使用GNN將協作信號融合為知識聚合。

3.3 性能比較

表2為上述所有模型的實驗結果。把KRSCCL和最優基線模型的實驗結果(表2中帶*數值)進行比較,有以下觀察的現象與結論。

KRSCCL在兩個數據集上表現良好,高于所有基線模型,在Book–Crossing上僅次于最優基線模型;在M ovieLens–1M數據集上,其AUC和F1分別高于最優基線模型1.51%和2.00%;在Last.FM數據集上,其AUC和F1分別高于最優基線模型2.35%和5.12%;不過在Book–Crossing數據集上提升不明顯,僅在F1上高于最優基線模型,而在AUC上明顯弱于CG–KGR。

表2 在AUC和F1上的預測結果比較Tab.2 Results of AUC and F1 in CTR prediction

分析認為提出模型性能普遍較好的原因是:1)對于數據更加稠密(電影、音樂)的數據集,KRSCCL的關系注意力網絡能有選擇地從鄰居節點獲取信息,減少了不重要信息的噪聲干擾;2)通過對全局和局部兩個視圖的對比學習能更好地挖掘數據信息,兼顧粗粒度和細粒度的信息,生成更強的節點表示。

分析認為KRSCCL在Book–Crossing數據集效果不如最優基線模型的原因主要是KRSCCL的關系注意力網絡的多跳聚合能力不如圖卷積網絡。在數據集特別稀疏的情況下,應該直接將數據集信息全部聚合,而不是有選擇性地聚合。這樣做不會顯著增加計算時間,但是會有效提升性能。由于關系注意力網絡在稀疏數據集(Book–Crossing數據集)上的表現不佳,導致KRSCCL的性能效果上的表現不佳。解決這一問題將是后續工作的重點。

3.4 消融實驗

圖3為KRSCCL、KGIN及KRSCCL的兩個變體(WKGA、WACL)在AUC和F1上的表現,展示了模型中主要模塊對最終性能的貢獻。在WKGA變體中,去除了全局視圖中的知識圖感知模塊KGA,物品–實體通過最簡單的方式進行保留;在WACL變體中,去除了跨視圖對比學習模塊ACL。

由圖3可知:

1)WKGA變體顯著降低了模型的性能,是效果最差的變體,這證明挖掘圖結構信息對于知識感知推薦的重要性。同時,該模塊也是整個模型唯一利用知識圖譜的模塊,說明了引入知識圖譜的重要性。

2)在WKGA變體的3個數據集中,MovieLens–1M數據集下降不明顯,而其他數據集出現顯著下降。這可能是因為MovieLens–1M數據集最稠密,本身就包含豐富的信息。此時,模型仍然保留ACL模塊,使用了對比學習,從粗粒度和細粒度角度挖掘數據集本身信息,仍然可以生成效果不錯的節點表示。

3)在WACL變體中,可以看出兩個指標均有下降,這證明了ACL模塊的重要性。相比于Book–Crossing數據集,另外兩個數據集下降不明顯,這說明在稀疏數據集上ACL模塊更加重要。這可能是由于在數據稀疏的情況下,更加需要深度挖掘圖信息,而對比學習在這個過程中起到了關鍵作用,能更加有效利用現有數據生成出更強節點表示。

4)從圖3中可以直觀地看出,WACL變體仍然在3個數據集的多數指標上高于KGIN模型。這可能是因為KRSCCL在面對知識圖譜異構網絡中復雜節點和關系時,排除了不必要信息的干擾,只對重要信息進行了聚合。所以在稠密數據集上,取得了非常好的實驗結果。

圖3 消融實驗結果Fig.3 Effect of ablation study

3.5 超參實驗

3.5.1局部圖聚合深度的影響

為了探究局部圖聚合深度對LightGCN模塊的影響,在卷積層數范圍為{1,2,3,4,5}的模型進行了實驗。圖4為MovieLens–1M、Last.FM和Book–Crossing數據集上的性能比較結果。在3個數據集上,當層數分別為4、3、3時,KRSCCL呈現出最佳性能。實驗發現:1)隨著聚合層數的增加,模型效果逐步提升,但達到最優層數后再增加將導致效果急劇下降;2)在較稀疏的數據集Book–Crossing和Last.FM上,選擇較小的聚合層數也能取得優秀的效果,而在交互最稀疏的MovieLens–1M數據集中需要更深層次的聚合。

圖4 局部視圖聚合深度的影響Fig.4 Effect of local view aggregation depth

和全局視圖相比,只含有用戶–物品交互信息的局部視圖中的信息更為重要,因此,對其進行更深層次的聚合能夠取得更好的效果。但是,當聚合層數過多時,冗余信息會疊加,抵消有效信息的增益,導致效果下降。但是在稀疏數據集上,則獲取更多信息更重要。

3.5.2對比損失權重?的影響

在式(16)定義的總體損失中,權重參數?可以平衡BPR損失和對比損失的影響。為了分析系數?的影響,在0.05~0.15的范圍內容改變?,建立不同?下的模型,圖5為?是不同值時模型的AUC分數。由圖5可知:一個合適的?可以有效地提高對比學習的表現。隨著?增大,BPR損失占比越來越大,當?為0.1時,模型表現最佳。但是?繼續增大,效果不再能繼續提高,甚至有所下降。也就是說,當?為0.1時,BPR損失和對比損失處于最佳的平衡狀態。

圖5 權重?的影響Fig.5 Effect of the weight?

3.6 節點聚類可視化

在全局視圖下進行多層圖卷積時,節點的區分力下降,節點的表示向量更加趨同,這導致了以GCN為基礎的后續學習任務變得困難,即過平滑問題。為解決這一問題,本文采用了圖注意力網絡有選擇地聚合信息,并引入局部視圖強調1階鄰居信息。通過使用T–SNE對200個物品節點的嵌入進行降維,并將其映射到2維空間中觀察。圖6為在KRSCCL及其去除局部視圖后的變體中,用戶節點在2維空間中的聚類效果。由圖6可知:用戶節點在圖6(a)呈現出較為分散的聚類效果,相較于在去除局部視圖后(圖6(b))更具差異性,這表明,KRSCCL成功地緩解了過平滑問題。

圖6 用戶節點聚類可視化Fig.6 User nodes clustering visualisation

4 結 論

本文提出了一個KRSCCL模型,該模型專注于對比學習任務中的關系感知推薦,通過自監督的方式提高用戶和物品的表示學習質量。同時,該模型結合關系注意力網絡,旨在解決在知識感知推薦中圖神經網絡模型的鄰居節點聚合和細粒度信息發掘的問題。

因此,未來的研究將繼續探索推薦中的自監督學習,以揭示數據實例之間的內部關系,并著重處理好冷啟動問題。引入因果概念,如因果效應推理和反事實推理到知識感知推薦中,來發現和放大偏差[43]。

猜你喜歡
視圖全局意圖
原始意圖、對抗主義和非解釋主義
Cahn-Hilliard-Brinkman系統的全局吸引子
陸游詩寫意圖(國畫)
量子Navier-Stokes方程弱解的全局存在性
制定法解釋與立法意圖的反事實檢驗
落子山東,意在全局
5.3 視圖與投影
視圖
Y—20重型運輸機多視圖
SA2型76毫米車載高炮多視圖
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合