SIGIR‘19 | 圖神經網絡協同過濾算法-Neural Graph Collaborative Filtering

閱讀更多,歡迎關注公衆號:論文收割機(paper_reader)
因爲排版問題,很多圖片和公式無法直接顯示,歡迎關注我們的公衆號點擊目錄來閱讀原文。

 

Wang X, He X, Wang M, et al. Neural Graph Collaborative Filtering[J]. arXiv preprint arXiv:1905.08108, 2019.

 

引言


 

在推薦系統的研究工作中,協同過濾算法(collaborative filtering, CF)的地位非常重要,我們公衆號也介紹過如何利用協同過濾算法來進行音樂推薦:QQ音樂上市,讓我們來談談音樂播放器中的推薦算法

協同過濾算法的直接理解就是:推薦用戶和與他具有相同興趣的用戶瀏覽過的商品。

求解該算法比較流行的思路是使用矩陣分解(Matrix Factorization,MF),通過對user和item的rating矩陣進行分解,從而得到了user embedding 和item embedding。

但是由於MF只能夠對user和item之間的線性交互(linear interaction)進行運算,忽略了user和item的非線性交互(non-linear interaction),所以在神經網絡或者說深度學習模型的幫助下,可以使用一些神經網絡框架來學習非線性的協同過濾模型,如Neural Collaborative Filtering (NCF)

He, Xiangnan, et al. "Neural collaborative filtering." Proceedings of the 26th International Conference on World Wide Web. International World Wide Web Conferences Steering Committee, 2017.

本篇文章不僅處理了非線性的交互方式,同時也結合了最新的圖卷積模型,來共同幫助學習user embedding和item embedding。

 

介紹


 

現有的協同過濾算法模型要麼是基於矩陣分解(MF)來學習user/item之間的線性關係,要麼是使用神經網絡來建立非線性函數。

但是現有的算法在學習user和item embedding時,對協同過濾信號(collaborativefiltering signal)並不是顯式(explicitly)表達,而是隻在最後的目標函數中使用了協同過濾信號來學習user和item的embedding。

這個時候user和item只是使用一些id來確定,而沒有完全使用user和item embedding之間的交互信息

除此之外,已有的一些協同過濾算法,大多數都忽視了user/item之間的高階連接關係(high-orderconnectivity)。而通過高階連接是能夠在user-item交互的連接圖中得到更多的協同過濾信號。

如圖中,左圖是user-item的交互二分圖,而右圖是展開後的user-item高階交互圖。可以看到,右圖中l=1,2,3表示了第1,2,3階的交互信號。當l=3時,也就是捕捉了三階交互信號,這時候因爲從i4到u1有兩條路徑,而從i5到u1只有一條路徑,所以通過對三階交互信號的捕捉,我們能夠得出,u1更喜歡i4而不是i5。

 

HOP-Rec算法


 

現有的一些工作對協同過濾算法中的高階信息嘗試進行了一些研究,比如RecSys’18的best paper:

Yang J H, Chen C M, Wang C J, et al. HOP-rec: high-order proximity for implicit recommendation[C]//Proceedings of the 12th ACM Conference on Recommender Systems. ACM, 2018: 140-144.

這篇文章就建立了圖上的高階信息矩陣,然後對該高階信息矩陣進行矩陣分解,從而能夠利用到更多的高階信息,如圖:

(a)圖和(c)圖表示的是一般的協同過濾算法的矩陣表示,只對1st,也就是一階信號進行了矩陣分解。而(b)(d)圖則表示了可以對更高階的信息進行矩陣分解。

但是Hop-Rec模型仍然是基於矩陣分解的算法,高階的信息並沒有完全顯示利用。同時很明顯的是Hop-Rec模型在scalability上還是會有侷限性。本篇文章提出的模型將能夠很好地利用高階信息,同時能夠保證scalability。

 

NGCF模型


 

NGCF(Neural Graph Collaborative Filtering)模型分爲三個主要的部分:

  1. user/item的embedding 層。這個部分將提供user和item的初始化信息;

  2. 信息傳播層(Embedding Propagation Layers)。該部分將通過高階信息來重新學習user和item的embedding信息;

  3. 預測層(Model Prediction)。該部分將聚集不同傳播層的embedding,然後預測user和item之間的匹配度,從而完成預測。

 

第一個模塊:Embedding層

 

這一層,主要是初始化user和item的embedding,既可以是隨機初始化,也可以是使用user和item自身的一些feature來初始化。該embedding層可以爲之後的交互層提供所需要的embedding

第二個模塊:信息傳播層(Embedding Propagation Layers)。

這一層主要是通過user和item之間的連接關係來迭代計算user和item之間的關係。雖然原文是按照一階連接關係以及高階連接關係來闡述的,但是一階的計算關係也是包含在高階的關係之中的。

這個傳播層主要分爲兩個步驟:

第一步是信息構成。這一步比較好理解,因爲每個user都與其他的item相連接,這樣子的話,user的embedding就可以從連接它的所有的itemembedding來獲得。從itemi到user u的信息傳播表示成:

其中,用ei和eu的element-wise點乘來表示兩者之間的相似程度,再用兩個矩陣分別對該相似信息和item信息進行轉換,變成user的信息。Nu和Ni分別是與u相連接的user數量和item數量。

第二步是信息聚集這一步其實就是講所有與useru相鄰的item的信息,全都通過神經網絡來聚集到user裏。

eu就是user的embedding,用muu表示user自己的信息,第二項表示所有item到user的信息的和。最後通過一個LeakyReLU神經網絡聚集成新的userembedding。

重複迭代這樣的步驟,就獲得了高階連接信息,如圖。

第三個模塊:預測層。

這一層能夠將多次迭代學到的embedding連接起來,userembedding再與item embedding共同通過預測層的網絡,來預測user和item之間的分值。

整個模型的框架結構如下圖:

因爲排版問題,很多圖片和公式無法直接顯示,歡迎關注我們的公衆號“論文收割機”點擊目錄來閱讀原文。

實驗


 

該篇文章的實驗使用了Gowalla,Yelp2018和Amazon Books的數據集。

而對比的方法也是使用了主流的對比實驗的方法:MF,NeuMF,CMN,HOP-Rec,PinSAGE,GCMC。SpectralCF方法據作者介紹,因爲需要大量的時間來做特徵值分解,所以沒有被作爲baseline來比較。

整體的實驗對比數據如圖:

可以看出,HOP-Rec效果確實比其他baseline效果要好,同時CMN效果也相對較好。

除此之外,文中還對比了對實驗參數的選擇,比如很重要的一個到底用幾層的propagation效果比較好:

可以看出來層數比較多的時候效果還是比較好。但是如果能夠再加上NGCF-5的時候來看一下實驗的效果就更好了。

還有一個就是aggregation的時候,到底用什麼樣的aggregator比較好的實驗:

通過對比實驗可以看出,還是基於文中提到的矩陣mapping再組合的關係更好。不過也有可能是其他baseline的參數沒有調好:)。

 

結論


 

這篇文章介紹瞭如何將協同過濾算法和圖卷積結合。其中針對協同過濾算法設計的aggregator在實驗中被證明是比較有效的設計,這其實是文章非常重要的創新點。

其次,文中對協同過濾算法的不足的分析,以及爲什麼圖卷積神經網絡能夠應用在協同過濾算法上說明的比較清晰。因爲圖卷積神經網絡能夠更加顯式地建立user和item之間的互動關係,而且能夠發現更加高階的互動信號。

再加上非常直觀有效的圖示和模型,整體的文章結構清晰,對比實驗充分,細節實驗分析到位。綜合來看,這都是非常值得學習的文章和模型。

 


相關文章:

閱讀更多,歡迎關注公衆號:論文收割機(paper_reader)

因爲排版問題,很多圖片和公式無法直接顯示,歡迎關注我們的公衆號“論文收割機”點擊目錄來閱讀原文。

參考文獻


 

[1] Wang, Xiang, et al. "Neural Graph Collaborative Filtering." arXiv preprint arXiv:1905.08108 (2019).

[2] Yang, Jheng-Hong, et al. "HOP-rec: high-order proximity for implicit recommendation." Proceedings of the 12th ACM Conference on Recommender Systems. ACM, 2018.

[3] He, Xiangnan, et al. "Neural collaborative filtering." Proceedings of the 26th International Conference on World Wide Web. International World Wide Web Conferences Steering Committee, 2017.

閱讀原文

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章