孫瑞雪 紀淑娟 梁永全
摘 要:互補產(chǎn)品推薦旨在為用戶提供經(jīng)常一起購買的產(chǎn)品,以滿足共同的需求?,F(xiàn)有的互補產(chǎn)品推薦方法大多考慮對產(chǎn)品的內(nèi)容特性(視覺和文本內(nèi)容)建模,而沒有考慮用戶購買產(chǎn)品的偏好。為此設計了一種融合用戶偏好的互補產(chǎn)品推薦模型(complementary product recommendation models that integrate user preferences,CPRUP)。該模型首先計算產(chǎn)品之間圖像和文本特征的互補關系;然后將知識圖譜與注意力機制相結合,基于nhop鄰居挖掘用戶歷史購買產(chǎn)品之間的相關性,提出一種基于知識圖譜的用戶表征來提取用戶對互補產(chǎn)品的偏好;最后基于神經(jīng)網(wǎng)絡實現(xiàn)互補關系與用戶偏好的共同學習。使用Amazon數(shù)據(jù)集進行實驗,提出的 CPRUP模型與次優(yōu)基線模型相比,ACC提升了5%,precision提升了4%,表明CPRUP模型可以更準確地為用戶推薦互補產(chǎn)品。
關鍵詞:用戶偏好;互補產(chǎn)品;注意力機制;知識圖譜
中圖分類號:TP393?? 文獻標志碼:A?? 文章編號:1001-3695(2023)12-016-3628-08
doi:10.19734/j.issn.10013695.2023.04.0164
User representation based on knowledge graph and its application in complementary product recommendation
Abstract:Complementary product recommendation aims to provide users with products that are often purchased together to meet common needs.Existing complementary product recommendation methods mainly consider modeling the content characteristics (visual and textual content) of products,but do not consider the preferences of users when purchasing products.This paper designed a complementary product recommendation model that integrated user preferences,termed as CPRUP.The model firstly computed the complementarity of image and text features between products; then it combined knowledge graph with attention mechanism,mined the correlation between users historical purchased products based on nhop neighbors,and proposed a user representation based on knowledge graph to extract user preferences for complementary products.Finally,it implemented joint learning of complementarity and user preferences based on neural networks.Experiments on the Amazon dataset show that the proposed CPRUP model has increased the ACC by 5% and the precision by 4% compared to the suboptimal baseline model,which indicates that the CPRUP model can more accurately recommend complementary products to users.
Key words:user preference;complementary products;attention mechanism;knowledge graph
0 引言
互補產(chǎn)品推薦(complementary product recommendation,CPR)通??梢詭椭脩艨焖僬业较嚓P的需求產(chǎn)品,形成電子商務服務的重要組成部分。例如當用戶購買了一臺新電腦時,CPR會推薦電腦包和鍵盤等商品與電腦配套使用。由于這些產(chǎn)品總是配套購買,更準確的互補產(chǎn)品推薦能夠及時滿足用戶的潛在需求,在提高用戶滿意度的同時,也提高了電子商務平臺的收益。但隨著大數(shù)據(jù)時代的到來,產(chǎn)品數(shù)量不斷增長,產(chǎn)品種類越來越繁雜,很難明確找到與其互補的產(chǎn)品。在Amazon 數(shù)據(jù)集的electronics類別中抽取 50萬件商品樣本發(fā)現(xiàn),只有20%明確提到與其他商品的互補性[1,2],在書籍、電影和時尚等類別中提及的情況更少,因此對互補產(chǎn)品推薦工作的研究充滿挑戰(zhàn)性。
在過去的幾年里,人們研究和設計了許多互補產(chǎn)品推薦方法,其中大多數(shù)關注使用不同的方法建模產(chǎn)品的內(nèi)容特性,例如潛在的狄利克雷分配(LDA)[1]和變分自動編碼器(VAE)[3]。McAuley等人[1]展示了如何通過將產(chǎn)品圖像投射到一個共同的視覺風格空間來推薦裙子和鞋子等互補的時尚產(chǎn)品。Zhang等人[4]通過結合多個來源的互補關系,在質(zhì)量感知互補產(chǎn)品推薦框架中實現(xiàn)產(chǎn)品風格和功能互補的結合。但是這些方法只是從產(chǎn)品角度建模進行互補產(chǎn)品推薦,忽略了用戶購買互補產(chǎn)品的潛在偏好。
由于現(xiàn)有工作忽視了用戶購買產(chǎn)品的偏好,在CPR中,用戶偏好具有重要的作用,因為用戶可能不會選擇嚴格意義上最接近的互補產(chǎn)品,而是通過融入自己的偏好來選擇互補產(chǎn)品。因此本文將用戶偏好融入互補產(chǎn)品推薦中,但將面臨以下挑戰(zhàn):
a)數(shù)據(jù)稀疏性問題。由于用戶購買產(chǎn)品數(shù)量有限,難以從少量的數(shù)據(jù)中準確提取用戶偏好。
b)忽略nhop鄰居與用戶之間的關系。在以往的知識圖譜推薦方法中,通常通過合并知識圖譜中的一組相關實體來豐富用戶表征,但這種方法沒有探討合并實體集與用戶之間的關系,對提取的用戶偏好存在偏差。(a)對于某個用戶,一個實體在涉及不同關系時可能表現(xiàn)出不同的特征;(b)對于不同實體集中的實體,對用戶的重要性也不同。
c)如何平衡互補關系與用戶偏好問題。在獲得產(chǎn)品圖像、文本互補關系與用戶偏好后,怎樣平衡用戶偏好與產(chǎn)品之間的互補關系。
由于將用戶偏好融入互補產(chǎn)品推薦中會存在上述問題,所以本文設計了一種新的互補產(chǎn)品推薦模型,如圖1所示。由于知識圖譜解決數(shù)據(jù)稀疏性問題越來越受到關注,所以本文通過使用知識圖譜可以獲得大量實體來推斷用戶偏好,更具體地說,首先將要合并的實體初始化為用戶購買的產(chǎn)品,然后沿著知識圖譜中的關系從近到遠傳播,以引入豐富的實體。其次,由于TransR分為實體空間和關系空間,關系投影可以使實際有關系的頭實體和尾實體相互靠近,所以通過將每個實體投影到其連接的關系空間中來表示,可以解決一個實體在涉及不同關系時特征不同的問題。此外,注意力機制可以賦予數(shù)據(jù)不同部分以不同的重要性。因此為了描述不同實體集中實體的不同重要性,利用自注意力機制[5]學習每一跳鄰居的適當重要性,然后通過注意力機制[6]提取用戶偏好,與互補產(chǎn)品嵌入相結合,得到用戶的偏好項。最后,通過神經(jīng)網(wǎng)絡對互補關系和用戶偏好共同學習進行互補產(chǎn)品推薦。
該模型的貢獻可以概括為:
a)模型將用戶偏好融入互補產(chǎn)品推薦中,在知識圖譜中通過全面探索用戶和nhop鄰居之間的關系,更準確地獲得用戶偏好。
b)將實體投影到關系空間獲得實體表示,并利用自注意力機制賦予不同實體不同的權重。這樣,CPRUP能夠為每個用戶找出nhop鄰居中最相關的部分,從而作出更好的互補產(chǎn)品預測。
c)在Amazon真實數(shù)據(jù)集中進行實驗,結果表明模型性能優(yōu)于其他基線模型。
1 相關工作
目前對互補產(chǎn)品推薦有很多研究工作。基于研究方法的不同,互補產(chǎn)品推薦方法可以分為以下四類。
1.1 基于圖像信息的方法
McAuley等人[7]假設存在一個潛在的風格空間,其中互補產(chǎn)品在風格空間中的距離更接近,然后使用低秩馬氏變換將產(chǎn)品映射到一個潛在的空間并計算距離。Veit等人[8]提出了一個新的學習框架,該框架的主要思想是學習從產(chǎn)品圖像到表達兼容性的潛在空間的特征轉(zhuǎn)換,對于特征轉(zhuǎn)換,文中使用的是暹羅卷積神經(jīng)網(wǎng)絡架構。Iwata等人[9]使用一個主題模型來學習坐標信息,其中包括時尚產(chǎn)品之間的內(nèi)在關系,所提出的主題模型是每個時尚產(chǎn)品區(qū)域的圖像的概率生成模型,學習到的坐標信息用于推薦坐標。Wang等人[10]利用卷積神經(jīng)網(wǎng)絡的層次結構,比較不同層次的特征,從而考慮從低層次(如顏色、紋理)到高水平(如風格)等不同方面的兼容性。Shih等人[11]提出對一個查詢圖像制作多個投影點在BiLSTM上構建了一個自動編碼器,學習服裝的風格嵌入,這與控制圖像標題[12]的風格思想相似。
1.2 基于文本信息的方法
McAuley等人[1]將其表述為一個有監(jiān)督的鏈接預測任務,首先得到產(chǎn)品評論的文本信息,然后學習互補產(chǎn)品的語義。Liu等人[13]在分離的嵌入空間中建模產(chǎn)品的可替換性和互補性,從而進一步捕獲不同圖結構和項目語義之間的相互影響。Zhang等人[14]基于神經(jīng)網(wǎng)絡的框架集成了在線評論的文本信息和非文本信息來挖掘產(chǎn)品關系,將產(chǎn)品嵌入轉(zhuǎn)換為語義特征,結合產(chǎn)品評論的其他非文本因素來捕獲互補和替換關系的語義。Wang等人[2]首先通過在一般語義空間中學習產(chǎn)品嵌入向量來預測任何一對產(chǎn)品之間是否存在有向聯(lián)系。然后為每個關系定義一個潛在向量,并將原始乘積表示映射到相應的關系空間中,該空間可以區(qū)分有向鏈接的類型,例如替代或互補。Xu等人[15]使用具有雙產(chǎn)品嵌入的知識感知學習,通過多任務學習將上下文知識編碼到產(chǎn)品表示中,以緩解稀疏性問題,采用對偶嵌入框架獲得互補關系。
1.3 基于圖像文本相結合的方法
Hao等人[16]首先提出了一種新的收集模式以生成更清晰的遠程監(jiān)督標簽并更好地捕獲產(chǎn)品關系,此外為了在所有產(chǎn)品類別中實現(xiàn)CPR,將問題制定為一個聯(lián)合學習框架,并開發(fā)一種深度學習方法PCompanion,作為端到端的解決方案。Li等人[17]從產(chǎn)品中提取多模態(tài)信息,并評估了套裝與遞歸神經(jīng)網(wǎng)絡的兼容性,然后通過選擇獲得最高兼容性得分的產(chǎn)品和給定的產(chǎn)品來構建一個服裝推薦。Zhang等人[4]建立一個新的神經(jīng)網(wǎng)絡模型來學習產(chǎn)品之間復雜的非線性關系,以實現(xiàn)靈活和可擴展的互補產(chǎn)品推薦。
1.4 基于知識圖譜推薦的方法
Zhang等人[18]提出了協(xié)同知識庫嵌入(collaborative knowledge base embedding,CKE),將CF模塊與知識嵌入、文本嵌入和圖像嵌入結合在一個統(tǒng)一的貝葉斯框架中,這種基于嵌入的方法通常直接使用來自知識圖譜的信息來豐富產(chǎn)品或用戶的表示。Yu等人[19]提出的個性化實體推薦(personalized entity recommendation,PER)和Zhao等人[20]提出的基于元圖的推薦(metagraph based recommendation,MGBR)將KG視為異構信息網(wǎng)絡(heterogeneous information network,HIN),并根據(jù)不同類型的關系路徑/圖提取基于元路徑/元圖的潛在特征,來表示用戶與商品之間的連接,這種基于路徑的方法通過構建用戶—產(chǎn)品圖,并利用KG中實體的連通性模式進行推薦。而這兩種方法只利用KG中一個方面的信息。為了更好地利用KG中的信息,將實體和關系的語義表示與路徑連通信息相結合,以KG 中的路徑連通性為指導獲得實體表示。
1.5 小結
基于圖像的方法更適用于圖像風格特征明顯的產(chǎn)品,在特定場景下可以達到很好的性能,但對于功能類產(chǎn)品,僅僅依賴產(chǎn)品圖像可能達不到互補產(chǎn)品推薦的要求,例如小熊玩偶和小熊充電寶,兩者在外觀上并無太大差異,但對于互補產(chǎn)品的需求是不一樣的;基于文本信息的方法同樣信息來源單一,對產(chǎn)品本身特征描述的表達力較弱;基于圖像文本相結合的方法比基于圖像或者文本信息的方法性能表現(xiàn)優(yōu)異,更具有一定的應用優(yōu)勢。然而互補產(chǎn)品推薦是為用戶服務,卻很少有人研究在互補產(chǎn)品推薦中融入用戶偏好,這限制了用戶在購買產(chǎn)品過程中起到的決策作用。
2 基于知識圖譜的互補產(chǎn)品推薦
2.1 符號說明
將用戶集和產(chǎn)品集分別定義為U和I,對于給定的用戶u,將其購買歷史記錄表示為Iu={i0,i1,…,i|n|},在用戶u的購買歷史記錄Iu中任意選擇一個產(chǎn)品ix,將購買記錄劃分為購買產(chǎn)品ix時的歷史購買產(chǎn)品集I-ux={i0,i1,i2,…,ix-1}和未來購買產(chǎn)品集I+ux={ix+1,ix+2,…,i|n|}。
本文使用的是Amazon數(shù)據(jù)集,在數(shù)據(jù)集中的alsobought關系列表表示用戶u購買ix產(chǎn)品之后,也購買其他產(chǎn)品的集合即Ix|AB,在數(shù)據(jù)集中的boughttogether關系列表表示用戶u購買ix產(chǎn)品并同時購買其他產(chǎn)品的集合即Ix|BT。因此在數(shù)據(jù)集中有三種互補表示Ix|A,分別是Ix|AB、Ix|BT、Ix|AB∪Ix|BT。
假設用戶u購買產(chǎn)品ix之后購買其互補產(chǎn)品,則用戶購買的互補產(chǎn)品集表示為Icux=I+ux∩Ix|A,即用戶的未來購買產(chǎn)品集與上述三種互補表示的交集。
給定用戶u的產(chǎn)品集Iu和互補產(chǎn)品集Icux,獲得用戶u的互補產(chǎn)品交互矩陣為Yu={yu|(x,z)|ix∈Iu,iz∈Icux}。
如果yu|(x,z)=1,則表示用戶u購買產(chǎn)品ix之后又購買產(chǎn)品iz,并且iz是ix的互補產(chǎn)品。
除了交互矩陣yu|(x,z)外,由大量實體—關系—實體三元組(h,r,t)組成的知識圖譜G也是提供用戶偏好信息的重要來源。設實體集和關系集分別用ξ和R表示。對于每個三元組(h,r,t),h∈ξ,t∈ξ和r∈R分別表示頭實體、尾實體和這兩個實體之間的關系。在本文中,為了明確這個問題,假設交互矩陣Y中的每個產(chǎn)品i∈I都可以通過實體連接[6]技術與知識圖G中相應的實體hi∈ξ連接。
2.2 整體框架
模型的框架如圖1所示,輸入ix、Icux、I-ux、G,然后得到用戶u購買產(chǎn)品的topn互補產(chǎn)品推薦列表。本文的框架一共有四個部分:基于特征距離的互補產(chǎn)品檢測模塊、基于知識圖譜中nhop鄰居的產(chǎn)品相關性挖掘模塊、基于產(chǎn)品相關性的用戶偏好表征模塊和基于神經(jīng)網(wǎng)絡的互補產(chǎn)品推薦模塊。
四個模塊的詳細介紹如下:
a)基于特征距離的互補產(chǎn)品檢測模塊。首先旨在構建一個距離函數(shù)dcx|z,該函數(shù)基于圖像風格(通過嵌入EM)和功能性質(zhì)(通過嵌入ET)來評估產(chǎn)品iz與Ix的互補程度。
b)基于知識圖譜中nhop鄰居的產(chǎn)品相關性挖掘模塊。通過知識圖譜獲得與用戶歷史購買產(chǎn)品相連的每一跳鄰居,每一跳鄰居中對應的實體在識別用戶偏好方面具有不同的重要性,因此需要挖掘每一跳鄰居的產(chǎn)品相關性,賦予實體不同的權重。
c)基于產(chǎn)品相關性的用戶偏好表征模塊。根據(jù)用戶歷史購買的產(chǎn)品相關性獲得用戶表示,以此捕獲用戶偏好。
d)基于神經(jīng)網(wǎng)絡的互補產(chǎn)品推薦模塊。最后,為了捕捉產(chǎn)品屬性和用戶偏好之間的復雜關系,建立一個基于神經(jīng)的距離b(n)z|x(ix,iz|θz),該距離可以聯(lián)合學習互補產(chǎn)品關系和用戶偏好,從而獲得高質(zhì)量的互補產(chǎn)品推薦。
2.3 基于特征距離的互補產(chǎn)品檢測模塊
本節(jié)從產(chǎn)品的圖像和文本兩個方面檢測互補產(chǎn)品。圖像中包含著重要的風格信息,能夠在視覺上達到很好的匹配效果,例如,圖2中(a)和(b)的風格相似,同屬于運動類型,而(c)中的西裝褲更適合于工裝風格的上衣,因此通過圖像信息可以實現(xiàn)視覺信息之間的高度兼容性。文本中包含著重要的功能信息,例如,圖3中(a)和(b)都是手機充電器,而產(chǎn)品(a)是蘋果類型插口,產(chǎn)品(b)是typec類型插口,對于購買蘋果手機的用戶推薦的互補產(chǎn)品只能是(a)而不能是(b)。在生活中,風格和功能的概念因產(chǎn)品類別不同而有所差異,在許多情況下必須要同時考慮。例如,女生購買的衣服不僅需要顏色上的搭配,也需要有規(guī)格的區(qū)分。因此,本文同時考慮圖像和文本信息來檢測互補關系,并根據(jù)互補距離函數(shù)dcx|z(ix,iz)來檢測產(chǎn)品之間的互補程度[4]。
利用互補產(chǎn)品之間基于圖像的關系找到風格相關的產(chǎn)品。本文使用文獻[21]中提出的卷積神經(jīng)網(wǎng)絡(convolutional neural network,CNN)來提取高級視覺特征,該網(wǎng)絡由5個卷積層和3個全連接層組成。訓練的數(shù)據(jù)集用的是ImageNet LSVRC2010競賽中的120萬張高分辨率圖像,其中圖像被分為1 000個不同類別。本文使用的圖像特征是CNN中第二個全連接層的輸出,因為它在先前工作[22~24]中的強大性能,圖像特征向量的長度為fm=4 096。從產(chǎn)品的圖像信息中提取高級圖像特征后,學習用于圖像嵌入的低秩馬氏變換,通過歐氏距離來表示產(chǎn)品ix和iz之間的距離:
dcmx|z(ix,iz)=‖(mx-mz)TEM‖22(2)
其中:EM∈Euclid Math TwoRApfm×fm是通過低秩馬氏變換得到的矩陣;fem表示圖像的嵌入維數(shù)。根據(jù)特征距離,使用移位的S形函數(shù)來計算兩個產(chǎn)品屬于某種關系的概率:
基于這種概率,可以使用最大似然來訓練EM,使其能夠識別基于圖像風格的互補產(chǎn)品[7]。
基于圖像的方法非常適合于視覺風格明顯的時尚產(chǎn)品,但是僅僅依賴產(chǎn)品圖像互補關系可能會產(chǎn)生明顯的錯誤。在產(chǎn)品的互補關系中,文本描述也提供了很多豐富且相關的產(chǎn)品信息,因此在互補產(chǎn)品推薦中考慮文本信息也顯得尤為重要。由于不同產(chǎn)品的互補標準有所不同,本文不再使用現(xiàn)有的方法來查找每個產(chǎn)品的功能主題,而是直接學習文本的互補特性。也就是說通過tx和tz找到一個兼容的文本距離,其中tx包括產(chǎn)品ix的標題和描述,在此基礎上,文中使用分布式表示[25,26]來提取tx,訓練了一個窗口大小為20、學習率為0.1的表示法,最后的表示形式是一個固定長度的特征向量,ft= 100,ix與iz之間的文本特征距離公式如下:
dctx|z(ix,iz)=‖(tx-tz)TET‖22(4)
2.4 知識圖譜中基于nhop鄰居的產(chǎn)品相關性挖掘模塊
通過將dcmx|z(ix,iz)和dctx|z(ix,iz)相結合來推薦互補產(chǎn)品。例如dcx|z(ix,iz)=qdcmx|z(ix,iz)+ρdctx|z(ix,iz),其中q和ρ是超參數(shù)。然而在生活中,用戶通常根據(jù)自己的偏好來選擇互補產(chǎn)品,而不是嚴格意義上最接近的互補產(chǎn)品。因此通過融合用戶購買產(chǎn)品的偏好,作出的互補產(chǎn)品推薦更精確。
在知識圖譜中,每個用戶都通過合并一個知識圖譜中的實體來表示,所以這些實體間的交互本質(zhì)上決定了用戶和這些實體之間的關系,實體之間的復雜聯(lián)系為探索用戶偏好提供了一個潛在視角。受Tang等人[27]啟發(fā),然而對于某個用戶來說,并不是所有實體在識別用戶偏好方面都具有相同的重要性。對于給定的用戶u,其購買產(chǎn)品ix時的歷史購買產(chǎn)品集為I-ux={i0,i1,i2,…,ix-1},則起始實體傳播被定義為S0u={h0i0,h0i1,h0i2,…,h0i|x-1|},其中h0i1表示與產(chǎn)品i1鏈接的實體。S0u中的實體可以沿著關系迭代傳播從而連通更多的實體,其nhop鄰居傳播過程如圖4所示,nhop鄰居表示為:Snu={tn|(hn-1,rn,tn)∈G,hn-1∈Sn-1u},其中n=1,2,…,H。
傳播過程的最大傳播數(shù)為H,經(jīng)過H次傳播后,得到H+1組實體Snu(n=0,1,2,…,H)。
在探究實體表示的過程中,由于一個實體可能有多個方面,各種關系集中在實體的不同方面。可以直觀地看出一些實體因為在實體空間中相似而彼此接近,但在某些特定方面卻相對不同,所以在相應的關系空間中彼此相距甚遠。為了解決這個問題,TransR在不同的空間,即實體空間和關系空間中對實體和關系進行建模,并在相應的關系空間中進行翻譯。
TransR的基本思想如圖5所示。對于每個三元組(h,r,t),實體空間中的實體首先通過操作Mr投影到r關系空間中作為hr和tr,然后hr+r=tr。特定關系投影可以使實際有關系的頭實體和尾實體(表示為彩色圓圈,見電子版)彼此靠近,也可以使那些沒有關系的頭實體和尾實體(表示為彩色三角形)彼此遠離。
本文通過TransR[28]獲得實體表示。對于每個三元組(h,r,t)∈G,實體嵌入和關系嵌入分別設置為d維向量,h,t∈Euclid Math TwoRApd×d和r∈Euclid Math TwoRApd,并對關系r設置一個投影矩陣R∈Euclid Math TwoRApd×d,然后將實體從實體空間投影到相應的關系空間:
hr=Rh,tr=Rt(5)
對于第l個實體h0il∈S0u,由于h0il表示用戶u直接購買的產(chǎn)品實體,并沒有涉及到知識圖譜中三元組的關系,而對于第l個實體tnil∈Snu,需要實體從實體空間投影到相應的關系空間:
e0il=h0il,enil=Rniltnil(6)
其中:h0il為h0il的嵌入向量;tnil是tnil的嵌入向量;Rnil是與tnil關系相關的投影矩陣。
另外,由于輸入的產(chǎn)品iz沒有投影到關系空間,其表示為
iz=hiz(7)
其中:hiz是連接到iz的實體hiz的嵌入向量。
對于H+1組鄰居Snu,通常用戶u的表示是計算這些鄰居的平均值,如式(8)所示。
但是這種方法忽略了nhop鄰居的產(chǎn)品相關性。通過探索產(chǎn)品相關性可以獲得用戶偏好,在推薦過程中推薦的是融合用戶偏好的互補產(chǎn)品,而不是嚴格意義上最接近的互補產(chǎn)品,從而為用戶作出更準確的互補產(chǎn)品推薦。
由于注意力機制與人類的視覺注意力有著相同的直覺,它賦予數(shù)據(jù)的不同部分以不同的重要性,從而使人們能夠?qū)W⒂谧钪匾臄?shù)據(jù)。與試圖將兩個序列聯(lián)系起來的注意力機制不同,自注意力網(wǎng)絡專注于將單個序列的不同部分聯(lián)系起來,以便在其自身的上下文中計算序列的表示。
為了挖掘nhop鄰居的產(chǎn)品相關性,首先通過自注意力機制學習每組Snu的潛在表示wnu。注意力機制將一個查詢和一組鍵值對映射到一個輸出,輸出的是值的加權和,其中分配給每個值的權重由查詢與相應鍵的兼容性函數(shù)計算,在自注意力機制中,查詢、鍵和值都是相同的[5],即對于每個Snu,查詢Qnu、鍵Knu和值Vnu表示如下:
Vnu=Qnu=Knu=[eni0,eni1,…,eniN-1](9)
其中:N是要連接的實體數(shù)。如果是|Snu|≥N,則隨機抽取N個實體連接;否則將零向量附加到Snu上,形成Qnu、Knu和Vnu。然后Qnu和Knu之間的兼容性計算如下:
Anu=QnTuKnu(10)
其中:Anu∈Euclid Math TwoRApN×N。Anu,m,o∈Anu中的第m行第o列描述了第m個實體enim∈Qnu和第O個實體enio∈Knu之間的兼容性,應用softmax函數(shù)推導出wnu:
其中:Oil∈Euclid Math TwoRApN×1是Anu的第l列;β1∈Euclid Math TwoRApN×N是softmax函數(shù)的參數(shù)。另外在softmax函數(shù)之前應用了一個掩蔽操作(即Onu的對角項設置為零),這避免了Qnu和Knu相同向量之間的高兼容性分數(shù)。根據(jù)式(11)進行加權和后,得到了潛在表示wnu∈Euclid Math TwoRApd(n=0,1,…,H)。
接下來介紹如何從wnu中得到u。在本文中用戶的最終表示u被描述為wnu的加權和,wnu為通過自注意力網(wǎng)絡獲得的每一hop鄰居的表示,表示用戶對不同實體的不同興趣,反映用戶偏好。
2.5 基于產(chǎn)品相關性的用戶偏好表征模塊
對于輸入的產(chǎn)品iz,采用注意力機制[29,30]建模wnu(n=0,1,…,H)對用戶的不同影響,表示用戶對不同輸入產(chǎn)品的不同興趣。查詢Qu、鍵Ku和值Vu被描述為
Qu=iz(13)
Ku=Vu=[w0u,w1u,…,wHu](14)
u計算方式如下:
類似于式(12),softmax β2(·)在式(15)是一個softmax函數(shù),其參數(shù)是β2。在這里不執(zhí)行掩蔽操作,因為Qu與Ku并不完全相同。最后,根據(jù)用戶的表示u和產(chǎn)品的表示iz,計算用戶u對產(chǎn)品iz的偏好:
pu|t2=σ(uTiz)(16)
其中:σ(x)=(1+exp(-x))-1是sigmoid函數(shù)。
2.6 基于神經(jīng)網(wǎng)絡的互補產(chǎn)品推薦模塊
因為不同類別的產(chǎn)品互補關系會存在比較大的差異,需要從圖像、文本、用戶偏好多個角度考慮。本文選擇基于神經(jīng)網(wǎng)絡的方法,對互補產(chǎn)品推薦具有以下優(yōu)勢:a)可以更好地處理各種類別之間互補關系的變化;b)對于互補產(chǎn)品與用戶偏好的衡量更加靈活;c)可以更好地用于并行化處理方便計算[18],有利于具有高維視覺和文本特征的大型項目群體。
具體地說,將CPRUP的互補距離轉(zhuǎn)換為一個非線性空間bnz|x(ix,iz|θz)來捕獲這些復雜的互補關系。為了計算ix和iz之間的bnz|x(ix,iz|θz),首先在每個空間中獲得產(chǎn)品ix及其產(chǎn)品iz的特征,然后分別使用嵌入來學習圖像和文本互補特征,將嵌入的特征與產(chǎn)品iz的用戶偏好連接到一個多模態(tài)空間中。CPRUP通過每個來源的特征差異來學習互補關系:
fz|x(ix,iz|θz)=gz|x(ix,iz|θz)×W1+b1(18)
添加激活函數(shù)后,現(xiàn)在的距離變?yōu)?/p>
W2是當特征進入非線性空間時的權值向量。因此,當ix被查詢時,可以計算產(chǎn)品ix和iz互補的概率:
其中:ηd是一個學習的互補閾值。
2.7 算法學習
在本節(jié)中將詳細介紹如何學習給定的用戶產(chǎn)品交互矩陣Y和知識圖譜G的最優(yōu)參數(shù),包括所有實體h、t的嵌入、所有關系r的嵌入、所有關系投影矩陣R、自注意力機制的參數(shù)β1和注意力機制的參數(shù)β2。在觀察了G和Y后,最大化模型參數(shù)Ψ的后驗概率:
其中:p(G|·)是給定相應參數(shù)時觀察到的G的似然函數(shù);p(Y|·)是給定相應參數(shù)時觀察到的Y的似然函數(shù)。為了最大化式(22),p(G,Y),p(h,r,t,R),p(β1,β2)是在最大化問題中可以忽略的先驗概率。
對于每個觀察到的三元組(h,r,t)∈G,遵循現(xiàn)有的工作[31],并將分數(shù)函數(shù)定義為
fr(h,t)=‖Rh+r-Rt‖2(23)
對于三元組(h,r,t)∈G,通過隨機替換尾部實體可以得到一個知識圖譜中不包括的三元組,即(h,r,t′)G。通過這樣做,構造一個新的四元組G′,其中每個四元組(h,r,t,t′)∈G′同時滿足(h,r,t)∈G和(h,r,t′)G。通過遵循之前的工作[18],并定義觀察四元組(h,r,t,t′)的可能性如下:
p((h,r,t,t′)|h,r,t,R)=σ(fr(h,t)-fr(h,t′))(24)
其中:σ(·)為s型函數(shù)。因此觀察到的知識圖譜的似然函數(shù)可以描述為
對于每個yu|xz∈Y,似然函數(shù)定義為伯努利分布的乘積:
將式(25)和(26)代入式(22)得到
對式(27)取負對數(shù),加上正則化項,得到CPRUP的損失函數(shù)如下:
為了最小化式(28)中的目標,對整個觀察到的訓練集Y和G′采用批處理梯度下降算法,并使用相應的損失函數(shù)的梯度來更新每個參數(shù)。
3 實驗
為了證明模型的有效性,CPRUP在亞馬遜數(shù)據(jù)集中進行實驗,并與最先進的基線結果作比較,對以下問題作出探討:
a)與基線結果相比,CPRUP的效果如何?對于不同的互補關系(alsobought/boughttogether),實驗結果有什么差異?
b)模型中不同組件對實驗結果有什么樣的影響?
3.1 Amazon 數(shù)據(jù)集
本文使用的是文獻[7,32]中引入的一個大型真實的數(shù)據(jù)集——Amazon數(shù)據(jù)集。完整的數(shù)據(jù)集中包括超過100萬種產(chǎn)品和20個產(chǎn)品類別涉及4 200萬個共同購買關系。本文選用book數(shù)據(jù)集進行相關實驗,以下是對book數(shù)據(jù)集的簡單介紹:根據(jù)書籍類別的不同也會存在互補關系,比如建筑、空間類型的圖書會與美術、設計類圖書有關,喜歡看數(shù)學方面書的人可能會喜歡看邏輯思維方面的書。因此當一個人購買了考古方面的書時,可以為他推薦歷史書等。
在本文使用的知識圖譜中,統(tǒng)計數(shù)據(jù)如下所示:表1介紹了Amazonbooks中的類別與兩個關系列表中的數(shù)據(jù);表2是Amazonbooks知識圖譜的相關統(tǒng)計,hop數(shù)只統(tǒng)計到2,因為hop數(shù)目不斷增大的同時,數(shù)據(jù)的計算量也變得越來越大。
3.2 評估標準
a)預測是否是用戶購買產(chǎn)品的互補產(chǎn)品,然后利用以下公式計算預測的準確性(accuracy):
其中:H(q)是閾值算子。若q>0,則H(q)為1;否則為0。
b)Precision@k用來計算每個查詢產(chǎn)品為其正確預測互補產(chǎn)品的比例,公式如下:
其中:Iukxc表示的是用戶uk購買ix后又購買ix的真實互補產(chǎn)品集;Ckukx表示的是用戶uk購買ix后又購買ix推薦的前topk互補產(chǎn)品集。
3.3 基線
為了證明CPRUP的性能,本文選取了一套基線方法與CPRUP進行比較:
a)weighted nearest neighbor(WNN):該方法使用在原始特征空間中的加權歐氏距離來衡量產(chǎn)品之間的相似性:d=‖lx|z(ix,iz)。w‖22。其中。是Hadamard乘積;w是一個權重向量。
b)lowrank mahalanobis transform(LMT)[7]:該方法用于學習大規(guī)模數(shù)據(jù)集上不同產(chǎn)品(可能是類別之間)之間的視覺相似性。LMT 通過學習低秩馬氏嵌入矩陣,把所有產(chǎn)品嵌入到低維空間,并根據(jù)歐氏距離獲得兩個產(chǎn)品之間的關系。
c)Monomer[32]:該方法學習低秩轉(zhuǎn)換/嵌入的混合,以揭示解釋產(chǎn)品之間關系的潛在原因組。它以非度量的方式測量產(chǎn)品之間的距離。
d)ENCORE[4]:通過用戶評級的貝葉斯推理,對互補產(chǎn)的產(chǎn)品潛在質(zhì)量進行自然建模;然后通過一個神經(jīng)網(wǎng)絡模型來學習產(chǎn)品之間的復雜關系,以實現(xiàn)靈活和可擴展的互補產(chǎn)品推薦。
e)文獻[33]:一種結合卷積神經(jīng)網(wǎng)絡、文本向量化以及貝葉斯推斷的多模態(tài)互補物品多樣性推薦方法。
為了評估不同組件對模型的影響,本文還提出了CPRUP的幾個變體:
a)CPRUP_MT:該方法考慮了產(chǎn)品的圖像和文本信息,但沒有考慮用戶偏好。
b)CPRUP_NM:該方法在本文模型的基礎上去掉圖像信息,檢驗圖像信息對本文模型的影響。
c)CPRUP_NT:該方法在本文模型的基礎上去掉文本信息,檢驗文本信息對本文模型的影響。
d)CPRUP_NAP:這種方法用戶偏好的計算方式是實體組的平均值,沒有使用注意力機制。
本文最終的模型是CPRUP,它將產(chǎn)品的圖像信息、文本信息和用戶偏好融合到非線性模型中。
3.4 參數(shù)設置
將圖像與文本的嵌入維度設為10,為了保證不同基線中的結果公平公正,在每個實驗中,均使用了5折交叉驗證。模型參數(shù)首先根據(jù)均值為 0 的截斷正態(tài)分布初始化參數(shù)。標準差從{0.1,0.01,0.001}中進行選擇,然后通過隨機梯度下降(SGD)進行更新。相應的學習率從{0.1,0.05,0.01,…,0.000 001}中選擇。
3.5 實驗結果
各方法實驗結果如表3所示。實驗結果分析如下:
a)在三個關系類型中,CPRUP的ACC數(shù)值最高,雖然與ENCORE使用了相同的圖像文本信息,但結果平均高出了7%,說明通過融合用戶偏好更容易選中用戶購買的互補產(chǎn)品,證明了融合用戶偏好的有效性。
b)在P@5和P@10方面,CPRUP的推薦效果與次優(yōu)的模型相比提高了5%和2%。這表明考慮用戶購買產(chǎn)品的偏好對互補產(chǎn)品的推薦效果更準確,因為推薦的目的是推薦用戶更容易選擇的產(chǎn)品。
c)在三個不同的互補關系類型中,BT的效果最差,雖然BT對于互補關系的表現(xiàn)能力最強,但是BT中的數(shù)據(jù)過于稀疏。AB的效果次之,AB+BT的效果最好,因為一方面AB解決了數(shù)據(jù)稀疏性問題,另一方面BT加強了互補關系。
為了深入研究圖像、文本、用戶偏好對CPRUP的影響,本文對CPRUP以及相應的變體進行實驗,結果比較如表4所示。
a)CPRUP與CPRUP_MT相比,在三個不同的關系類型中性能有了一定的提高,AB(also_bought)提高了5.8%,AB+BT(bought_together)提高了6.1%,在考慮產(chǎn)品圖像文本互補距離基礎上融入用戶偏好,表示考慮用戶偏好對用戶互補產(chǎn)品推薦起到十分重要的作用。
b)CPRUP_NM在本文模型基礎上去掉圖像信息,與CPRUP相比AB降低了4.8%,AB+BT降低了5%,因為圖像信息也是包含互補關系的一個因素,在互補產(chǎn)品推薦過程中不可忽略。
c)CPRUP_NT在本文模型基礎上去掉文本信息,與CPRUP相比AB降低了5.4%,AB+BT降低了5.7%,去掉文本信息的互補推薦比去掉圖像信息的性能更差一些,表明文本信息中包含更重要的互補關系。
d)以AB為例,CPRUP與CPRUP_NAP相比性能提高了2%,CPRUP_NAP只采用實體的平均值表示用戶偏好,這說明通過探索用戶和合并實體之間的關系可以提高互補產(chǎn)品推薦的準確性。
另外由于BT(bought_together)的數(shù)據(jù)稀疏,導致性能變化不明顯。
3.6 案例研究
為了更好地理解本文模型,在圖6中提供案例研究。
在圖書領域,不同類別的書籍之間也是有互補關系的,例如神話、鬼怪類型書籍會涉及到宗教、哲學等,如果一個人購買了天文學方面的書籍,那么他可能會購買地理、物理等方面的書籍。當選擇一本圖書作為查詢產(chǎn)品時,由于它屬于小說類型,常見的推薦可以是一些受歡迎的小說,比如沒有考慮用戶偏好的CPRUPNAP模型中的top5推薦。然而通過CPRUP分析用戶過去歷史購買的產(chǎn)品之間的相關性,發(fā)現(xiàn)用戶在過去的購買產(chǎn)品中更偏好于某個作者,那么互補產(chǎn)品推薦更合理的結果是推薦這個作者的相應互補產(chǎn)品。本文這種融合用戶偏好的模型,通過考慮用戶購買的歷史模式作出的top推薦更準確。
4 結束語
本文提出基于知識圖譜的用戶表征及在互補產(chǎn)品推薦中的應用。首先,通過從圖像和文本兩個方面計算互補關系,然后通過注意力機制整合知識圖譜中的實體來推斷用戶偏好,最后通過神經(jīng)網(wǎng)絡學習圖像、文本、用戶偏好之間的關系。CPRUP沿著知識圖譜中的關系迭代地擴展用戶的歷史交互實體,從而引入許多外部知識,通過挖掘nhop鄰居之間的關系,計算出每個用戶合并實體中最相關的部分來提取用戶的偏好。此外本文實驗的結果證明,更準確地預測用戶偏好,提高了互補產(chǎn)品的推薦性能,并且更符合用戶的要求。
本文方法還存在一些不足,比如由于與用戶相關的實體數(shù)量是可變的,如何處理可變長度輸入得到更好的潛在表示,是下一步要研究的重點。
參考文獻:
[1]McAuley J,Pandey R,Leskovec J.Inferring networks of substitutable and complementary products[C]//Proc of the 21st ACM SIGKDD International Conference on Knowledge Discovery and Data Mining.New York:ACM Press,2015:785794.
[2]Wang Zihan,Jiang Ziheng,Ren Zhaochun,et al.A pathconstrained framework for discriminating substitutable and complementary products in ecommerce[C]//Proc of the 11th ACM International Conference on Web Search and Data Mining.New York:ACM Press,2018:619627.
[3]Rakesh V,Wang Suhang,Shu Kai,et al.Linked variational autoencoders for inferring substitutable and supplementary items[C]//Proc of the 12th ACM International Conference on Web Search and Data Mining.New York:ACM Press,2019:438-446.
[4]Zhang Yin,Lu Haokai,Niu Wei,et al.Qualityaware neural complementary item recommendation[C]//Proc of the 12th ACM Conference on Recommender Systems.2018:7785.
[5]Vaswani A,Shazeer N,Parmar N,et al.Attention is all you need[C]//Proc of the 31st International Conference on Neural Information Processing Systems.Red Hook,NY:Curran Associates Inc.,2017:60006010.
[6]Bahdanau D,Cho K,Bengio Y.Neural machine translation by jointly learning to align and translate[EB/OL].(20140901).https://arxiv.org/abs/1409.0473.
[7]McAuley J,Targett C,Shi Qinfeng,et al.Imagebased recommendations on styles and substitutes[C]//Proc of the 38th International ACM SIGIR Conference on Research and Development in Information Retrieval.New York:ACM Press,2015:4352.
[8]Veit A,Kovacs B,Bell S,et al.Learning visual clothing style with heterogeneous dyadic cooccurrences[C]//Proc of IEEE International Conference on Computer Vision.2015:4642-4650.
[9]Iwata T,Watanabe S,Sawada H.Fashion coordinates recommender system using photographs from fashion magazines[C]//Proc of the 22nd International Joint Conference on Artificial Intelligence.2011.
[10]Wang Xin,Wu Bo,Zhong Yueqi.Outfit compatibility prediction and diagnosis with multilayered comparison network[C]//Proc of the 27th ACM International Conference on Multimedia.2019:329337.
[11]Shih Y S,Chang K Y,Lin H T,et al.Compatibility family learning for item recommendation and generation[C]//Proc of AAAI Conference on Artificial Intelligence.2018.
[12]Gan Chuang,Gan Zhe,He Xiaodong,et al.StyleNet:generating attractive visual captions with styles[C]//Proc of IEEE Conference on Computer Vision and Pattern Recognition.2017:3137-3146.
[13]Liu Yiding,Gu Yulong,Ding Zhuoye,et al.Decoupled graph convolution network for inferring substitutable and complementary items[C]//Proc of the 29th ACM International Conference on Information & Knowledge Management.2020:26212628.
[14]Zhang Mingyue,Wei Xuan,Guo Xunhua,et al.Identifying complements and substitutes of products:a neural network framework based on product embedding[J].ACM Trans on Knowledge Discovery from Data,2019,13(3):1-29.
[15]Xu Da,Ruan Chuanwei,Cho J,et al.Knowledgeaware complementary product representation learning[C]//Proc of the 13th International Conference on Web Search and Data Mining.2020:681-689.
[16]Hao Junheng,Zhao Tong,Li Jin,et al.Pcompanion:a principled framework for diversified complementary product recommendation[C]//Proc of the 29th ACM International Conference on Information & Knowledge Management.2020:25172524.
[17]Li Yuncheng,Cao Liangliang,Zhu Jiang,et al.Mining fashion outfit composition using an endtoend deep learning approach on set data[J].IEEE Trans on Multimedia,2016,19(8):19461955.
[18]Zhang Fuzheng,Yuan N J,Lian Defu,et al.Collaborative knowledge base embedding for recommender systems[C]//Proc of the 22nd ACM SIGKDD International Conference on Knowledge Discovery and Data Mining.2016:353-362.
[19]Yu Xiao,Ren Xiang,Sun Yizhou,et al.Personalized entity recommendation:a heterogeneous information network approach[C]//Proc of the 7th ACM International Conference on Web Search and Data Mining.2014:283292.
[20]Zhao Huan,Yao Quanming,Li Jianda,et al.Metagraph based recommendation fusion over heterogeneous information networks[C]//Proc of the 23rd ACM SIGKDD International Conference on Knowledge Discovery and Data Mining.2017:635644.
[21]Krizhevsky A,Sutskever I,Hinton G E.ImageNet classification with deep convolutional neural networks[J].Communications of the ACM,2017,60(6):84-90.
[22]Lin Chunze,Lu Jiwen,Wang Gang, et al.Graininessaware deep feature learning for pedestrian detection[C]//Proc of the European Conference on Computer Vision.2018:732747.
[23]Pang Liang,Lan Yanyan,Guo Jiafeng,et al.Text matching as image recognition[C]//Proc of AAAI Conference on Artificial Intelligence.2016.
[24]Wang Anran,Cai Jianfei,Lu Jiwen,et al.Structureaware multimodal feature fusion for RGBD scene classification and beyond[J].ACM Trans on Multimedia Computing,Communications,and Applications,2018,14(2s):122.
[25]Le Q,Mikolov T.Distributed representations of sentences and documents[C]//Proc of International Conference on Machine Learning.2014:11881196.
[26]Mikolov T,Chen Kai,Corrado G,et al.Efficient estimation of word representations in vector space[EB/OL].(20130116).https://arxiv.org/abs/1301.3781.
[27]Tang Xiaoli,Wang Tengyun,Yang Haizhi,et al.AKUPM:attentionenhanced knowledgeaware user preference model for recommendation[C]//Proc of the 25th ACM SIGKDD International Conference on Knowledge Discovery & Data Mining.2019:18911899.
[28]Shu Kai,Wang Suhang,Tang Jiliang,et al.CrossFire:cross media joint friend and item recommendations[C]//Proc of the 11th ACM International Conference on Web Search and Data Mining.2018:522530.
[29]Wang Xuejian,Yu Lantao,Ren Kan,et al.Dynamic attention deep model for article recommendation by learning human editors demonstration[C]//Proc of the 23rd ACM SIGKDD International Conference on Knowledge Discovery and Data Mining.2017:20512059.
[30]Zhou Guorui,Zhu Xiaoqiang,Song Chengru,et al.Deep interest network for clickthrough rate prediction[C]//Proc of the 24th ACM SIGKDD International Conference on Knowledge Discovery & Data Mining.2018:10591068.
[31]Lin Yankai,Liu Zhiyuan,Sun Maosong,et al.Learning entity and relation embeddings for knowledge graph completion[C]//Proc of AAAI Conference on Artificial Intelligence.2015.
[32]He Ruining,Packer C,McAuley J.Learning compatibility across categories for heterogeneous item recommendation[C]//Proc of the 16th IEEE International Conference on Data Mining.2016:937942.
[33]肖慶華,劉學軍,施浩杰.多模態(tài)下的互補物品的多樣性推薦[J].小型微型計算機系統(tǒng),2021,42(9):18591864.(Xiao Qinghua,Liu Xuejun,Shi Haojie.Diversity recommendation of complementary items in multimodal environment[J].Journal of Chinese Computer Systems,2021,42(9):18591864.)