知識圖譜做推薦系統-前言
推薦系統發展至今經歷過多次的演算法迭代,主要可以分成以下幾個內容:
傳統演算法
深度學習模型
知識圖譜推薦
1、傳統演算法
最典型的就是基於協同過濾 (CF),這裡不細說
2、深度學習模型
用深度學習模型做推薦有很多相關的論文,包括學術和工業落地的,最典型的就是YouTube這個模型:
Deep Neural Networks for YouTube Recommendations
王喆:重讀Youtube深度學習推薦系統論文,字字珠璣,驚為神文
Deep Interest Evolution Network for Click-Through Rate Prediction
王喆:推薦系統中的注意力機制——阿里深度興趣網路(DIN)
A Multi-View Deep Learning Approach for Cross Domain。pdf
《一種基於DSSM模型的跨領域深度推薦模型》
Wide & Deep Learning for Recommender Systems
《詳解 Wide&Deep 推薦框架》
DeepFM: A Factorization-Machine based Neural Network for CTR Prediction
《深度推薦模型之DeepFM》
Deep Learning based Recommender System-A Survey and New Perspectives
3、知識圖譜推薦
將知識圖譜(Knowledge Graph,KG)引入推薦系統(Recommender System,RS)主要有三個作用:
緩解冷啟動
緩解資料稀疏
可解釋性
傳統基於協同過濾 (CF) 的推薦系統演算法普遍存在
資料稀疏 (使用者 - 物品矩陣)
和
冷啟動
兩個問題,且往往難以充分利用所提供的資料, 為解決協同過濾帶來的問題並將更多的資訊(side information)引入推薦系統,利用知識圖譜(KG)往往是一個能夠較好地綜合各類資訊的選擇。此時將各類實體(entity)標識為點,將實體之間的關係(relationship)標識為邊(有向邊,比如使用者 A 關注 B 需要用有向的關係進行表示),同時考慮到存在多種不同類別的實體(可以是使用者可以是物品可以是某一個tag)和不同類別的關係(使用者與商品的互動,使用者之間的關注關係等),構造異構資訊網路,即能夠較好地將不同的資訊綜合進入整體的資訊網路。則此時一條資訊可以表示為一個三元組:
(頭節點H,關係R,尾節點T)
利用知識圖譜的推薦系統按實現思路在此分為兩類:
基於 embedding 的方法
:也就是利用知識圖譜嵌入的方法(KGE)先學習到各個實體 / 關係的嵌入 = 用一定維度的向量來表示各個結點和邊,再利用向量表示來進行推薦任務(比如計算某一個物品和使用者以前好評的物品的相似度 // 對於兩個向量這是很好處理的 // 以決定是否需要將這個物品向用戶進行推薦 etc)
embedding 的方法分為 Trans 系的方法或基於異構資訊網路的方法等,(具體的建議關鍵字 KGE /
掃盲參考
),後續推薦系統的任務基於 CF 等均可。
基於路徑 path 的方法
: 也就是將物品與使用者構建為一個巨大的異構圖,利用路徑進行推薦(比如 meta-path / meta-graph 的方法,構建結束後再利用矩陣分解 + 分解因子機等方法進行推薦任務,
參考
)但是注意此時的缺點在於要人工設計 meta-graph / meta-path,繁瑣是一方面,有效性或全面性本身有待商榷。
[1]
參考
^https://www。zhihu。com/column/c_1363100370948947968