1. 程式人生 > 其它 >LightGCN: Simplifying and Powering Graph Convolution Network for Recommendation閱讀筆記

LightGCN: Simplifying and Powering Graph Convolution Network for Recommendation閱讀筆記

動機

本文是2020年SIGIR的一篇文章。最近圖卷積網路(GCN)在協同過濾推薦中大放異彩,但是卻很少有工作探究其為什麼在協同過濾推薦系統中有效,缺乏較為完善的消融實驗,在本文中,作者通過一系列消融實驗發現GCN中的特徵轉換和非線性啟用對協同過濾並沒有益處,因此,作者提出了LightGCN,它僅包含GCN中最重要的鄰域聚合,並且取得了很好地效果。

演算法

lightGCN原理非常簡單,它地圖卷積操作定義為

其中\(\mathcal{N_u}\)\(\mathcal{N_u}\)代表使用者u和物品i的第一跳鄰居。通過上述公式,可以得到使用者和物品在每一層的嵌入表示,在這裡需要注意每個節點只聚合了它的鄰居表示,並沒有包括自身。之後,組合每一層的嵌入得到使用者和物品的最終表示

其中\(\alpha_k\)

表示第k層的對最終表現的貢獻度。它可以被當作是超引數,也可以作為模型的引數訓練得出,作者在實驗中將\(\alpha_k\)設定為1/(k+1)。通過將每層的embedding組合可以捕獲到不同層次的資訊,並且可以實現自連線。模型的預測可以使用最終得到的使用者與物品的embedding的內積

模型中需要訓練的引數只有第0層的embedding,作者在這裡使用BPR loss作為損失函式

結果

作者在三個資料集上將LightGCN和最先進的模型進行比較,LightGCN明顯比其他模型效果更好。

並通過一系列消融實驗,發現各個引數對模型的影響,其中最值得思考的就是不同層embedding組合的係數\(\alpha_k\)

,因為在Amazon-Book資料集上,使用某一單層的embedding(相當於將該層的\(\alpha_k\)設為1,其餘層設為0)比所有層聚合的embedding效果還要好,這也說明了\(\alpha_k\)對模型的效能影響很大,是以後的一個研究方向。下圖LightGCN-single就是單獨使用某一層,可以看出單獨使用第2層明顯是最好的。

總結

本篇論文提出的LightGCN結構比較簡單,因為上週讀過這篇論文《Neural Graph Collaborative Filtering》,所以這篇文章較易理解。LightGCN就是將NGCF再簡化,刪除了不必要的部分——特徵轉換和非線性啟用,作者在文章中比較詳細地解釋了為什麼LightGCN簡單但有效,因為GCN最初是為屬性圖設計的,圖中的節點包含豐富的資訊,而推薦系統中圖的節點包含的只有互動資訊,資訊含量較少,即使使用了特徵轉換和非線性啟用,也未必能提取出更多的有效資訊,甚至還可能損壞模型效能,而保留下來的鄰域聚合足以表示使用者和物品之間的資訊。文章中的lightGCN還有改進的空間,例如難負例取樣、對抗取樣、將\(\alpha_k\)

當作模型引數去訓練等等。