CKE(Collaborative Knowledge Base Embedding for Recommender Systems)筆記


2016的paper

利用知識庫中的異構信息來提高推薦系統質量。主要貢獻是在推薦系統中引入了結構信息、文本數據、圖像數據等知識庫中的信息來提升推薦系統的質量。

論文是基於什么問題提出來的?

CF(協同過濾)方法由於user-item矩陣的稀疏性,效果受限。

論文提出了什么方法

使用輔助信息提高性能。

具體來說是 利用了知識庫中的異構信息來提高推薦系統的質量,給定結構信息,文本信息,視覺信息的知識庫以及user的隱式反饋,產生一個用戶感興趣的ranked list。

本文設計了三個組件:結構內容、文本內容和視覺內容。

image-20210823114258191

隱式反饋(user implicit feedback):

image-20210823114810006

有交互為1,沒有交互或者不知道為0.(注意,為1不表示用戶實際上喜歡,只能說對它感興趣。為0只能說不感興趣或者是潛在交互(用戶不知道這些內容),不代表不喜歡。)

知識庫(knowledge base)

image-20210823115223047

  1. 結構信息:實體和實體之間的聯系
  2. 文本信息:電影或書本的文本信息
  3. 視覺信息:封面海報之類的

結構特征:用戶隱式反饋和結構信息

內容特征:文本和視覺信息

OverView

CKE模型包含兩個步驟:

  1. 知識庫嵌入(knowledge base embedding)
  2. 協作聯合學習(collaborative joint learning)

Structural Embedding

具體來說,就是采用了異構網絡嵌入的方法,稱為TransR(2015 AAAI),通過考慮節點和關系的異構型來提取項目的結構表示。

結構化信息表現為一個network,因為一個實體有很多個實體相連,需要把這個網絡映射到向量空間。

TransR

通過關系矩陣來鏈接不同語義空間。

以這種方式訓練表征向量:

  1. 通過將實體映射到關系空間中
  2. 在兩個投影實體之間構建翻譯關系

image-20210824100728689

對於每個關系,有一個變換矩陣Mr和一個它在自己的關系空間的表示向量r。通過變換矩陣將entities從實體空間投影到關系空間。

image-20210824111334722

目標函數

image-20210824111548642

加入貝葉斯先驗之后的TransR生成過程:

image-20210824112048263

這里的話就是使參數符合特定的正太分布(下同)

那慕達是調整正太分布里 瘦胖 的參數

Textual Embedding

堆疊去噪自動編碼器(SDAE)

https://blog.csdn.net/zbzcDZF/article/details/86570761

https://www.cnblogs.com/neopenx/p/4370350.html

image-20210824224802871

Wl是權重參數,bl是偏差參數

SDAE總共6層,前三層位置是Encoder部分(1-3),X0表示的是帶有噪音的矩陣

后三層是Decoder部分(3-6),X6是無噪音的輸出矩陣。

引入貝葉斯SDAE:

image-20210826151700389

Visual Embedding

堆疊卷積自動編碼器(SCAE)

image-20210826152200994

Encoder 由兩個卷積層(z0到z2)和一個完全連接層(z2到z3)組成。

Decoder又一個完全連接層(z3到z4)和兩個解卷積層(z4到z6)組成。

中間隱藏層z3輸出的使一個矩陣,其他層的輸出通常稱為特征映射,它是由卷積層生成的四維張量。

卷積層映射如下:

image-20210826153033946

Q*表示卷積算子,用來保持先前輸出的局部連通性(?)

引入貝葉斯SCAE:

image-20210826153232240

Collaborative joint learning

將協同過濾(collaborative filtering)與知識庫中的items embedding結合。在CKE框架中,提出了協作聯合學習過程。

為同時獲取協同過濾中的item的潛在表示和知識庫中的representation,有

image-20210826154219356

其中,η代表CF中的物品隱含含量。其他三個分別代表從知識庫提取出來的特征。

再使用pair-wise 偏好概率表示,有

image-20210826160224148

這個式子意思是對於用戶i來說,相比j',更喜歡j物品。θ表示模型參數。

參數學習,最大對數似然函數

image-20210826161506852

論文中使用了隨機梯度下降(SGD)算法,最大化等式7.

損失函數第二塊:個人感覺是對文本embedding的正則化,防止過擬合。

Experiments

兩個不同領域的數據集(電影和書籍)

  1. MovieLens-1M:有100w名用戶和3706部電影組成。
  2. IntentBooks:微軟Bing搜索引擎和Satori知識庫組成。

image-20210826162649626

“#sk nodes”表示提取結構信息中的節點總數

“#tk items”表示具有文本信息的items總數

“#vk items”表示具有視覺信息的items總數

實驗總結:CKE(S)、CKE(T)、CKE(V)分別表示只用Structure,Texture或Visual的CKE模型

  1. CKE(S)、CKE(T)、CKE(V)都能beat掉baseline
  2. 相較CKE(S)、CKE(T)、CKE(V)提升的效果沒有CKE(S)好,不過也是可以beat掉baseline
  3. CKE(STV)效果最好

image-20210826165107851

image-20210826165139637

image-20210826165157782

image-20210826165211585


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM