WWW 2023 | 无图协同过滤
?PaperWeekly 原創 ·?作者 |?夏良昊
單位 |?香港大學
研究方向 |?推薦系統
論文題目:
Graph-less Collaborative Filtering
收錄會議:
WWW 2023
論文鏈接:
https://arxiv.org/abs/2303.08537
代碼鏈接:
https://github.com/HKUDS/SimRec
港大數據智能實驗室
https://sites.google.com/view/chaoh
研究背景
圖神經網絡(GNN)方法通過迭代的信息傳播機制,能夠準確地捕捉圖數據的拓撲結構,得到較好的低維圖表征。受到這一啟發,近年來出現了多種基于圖神經網絡的協同過濾(CF)方法,通過對用戶、商品交互圖的準確表征學習,取得了較好的個性化推薦效果。盡管現有方法已經取得了很大的成功,我們認為基于 GNN 的協同過濾方法在根本上存在兩個重要的缺陷:
過平滑和噪音問題。GNN 固有的高階信息傳播機制,可能對節點表征進行過度的平滑,使其過于相似而喪失節點本身的獨有特征。同時,推薦系統中觀測到的用戶、商品交互中,不可避免地含有噪音信息,如用戶誤點、流行度 bias。GNN 迭代的信息傳播機制,會同時將噪音信息進行傳播,從而阻礙對真正交互信息的有效學習。
模型可擴展性問題。為了捕捉多跳的交互關系,GNN 模型需要進行迭代的信息傳播,從而將每個節點的表征傳遞至多跳外的其他節點。這一過程使得 GNN 模型在推理階段,需要進行重復多次的全局信息傳播,導致了其相對 MLP 等簡單模型更大的開銷,使其難以應用到大規模數據上。
為了解決以上 GNN-based CF 模型中的問題,我們需要應對以下挑戰:
在用戶、商品交互建模中,如何以一種高效的方式將全局、高階的協同信號進行保留。
在捕捉高階協同關系的同時,如何使模型能夠對抗過平滑和噪音問題。
如下圖所示,我們展示了本文所提出的 SimRec 模型在上述問題上的表現。
具體來說,圖(a)顯示,SimRec 能夠在保持極低的推理時間前提下,達到甚至更好的模型預測效果;圖(b)顯示,面對兩個有著不同交互興趣、但又被噪音邊所連接的用戶來說,SimRec 中基于多層感知機(MLP)的學生模型,相對于 GNN 模型,能夠顯著識別出這種噪音連接關系,降低兩個用戶的表征相似性;圖(c)顯示,由于更好的對抗過平滑能力,SimRec 模型能夠學習分布更廣、更均勻的低維節點表征。
知識蒸餾(KD)能夠將大模型學得的知識有效提煉、蒸餾到小模型中,從而在保持較好預測能力的情況下提升模型性能,在 CV、NLP、圖學習等多個領域中取得了較好的效果。傳統的知識蒸餾方法,通過對齊大模型和小模型的預測結果,賦予小模型和大模型相近的建模能力。
然而,由于協同過濾數據中顯著的數據稀疏和數據噪聲問題,GNN-based 大模型中的過平滑和噪聲信號無法在蒸餾過程中進行過濾,會導致得到的小模型仍然容易受到這一問題的困擾。但是,最近在對比學習方向上的推進,使我們能夠使用對比學習方法產生更多的監督信號,不僅能在蒸餾的過程中得到更好的抗平滑蒸餾效果,也能在傳統蒸餾方法的基礎上進一步提升蒸餾效率。
在本工作中,我們提出了一種無圖(graph-less)的協同過濾框架 SimRec,能夠在不使用復雜的圖結構信息的情況下,同時提高推薦模型的效果和效率。具體來說,我們設計了一種包含兩種對齊方法的知識蒸餾框架,從基于 GNN 的教師模型蒸餾知識到高效的 MLP 學生模型中。在我們的蒸餾方法設計中,不僅對教師模型的預測結果,也對它的隱藏層表征進行蒸餾。
此外,為了增強蒸餾方法的抗噪聲、抗過平滑能力,我們設計了一種采用對比學習正則的自適應蒸餾方法,以在蒸餾的過程中削弱 GNN 教師模型收到噪聲和過平滑的影響。
總的來說,本文主要做出了以下貢獻:
我們提出了一種對比知識蒸餾方法,將基于 GNN 的 CF 模型壓縮為一個簡單的 MLP 推薦模型,同時提升模型的效果和效率。
我們從兩個方面進行了理論分析:i)本文的蒸餾方法能夠進行自適應的高階平滑;ii)本文方法能夠顯著擴充自監督信號。
我們在公開數據集上進行了全面的實驗,驗證了本文所提出的 SimRec 方法能夠顯著提升 CF 任務的有效性。
模型介紹
本章介紹所提出的 SimRec 方法,主要包括基于 GNN 多教師模型、基于 MLP 的學生模型,從 prediction-level 和 embedding-level 兩種角度進行的知識蒸餾,以及自適應的對比學習正則約束。模型框架如下圖所示。
2.1 通用協同過濾架構
協同過濾方法根據歷史觀測的用戶、商品交互記錄,對用戶、商品進行表征學習,再根據學得的表征進行用戶便好預測?;诓煌P图軜嫷膮f同過濾方法,一般都可以表述為下面的兩個階段,即 emebdding 表征學習階段,和 prediction 根據表征進行預測的階段。
基于 MLP 的協同過濾方法,使用簡單的 MLP 網絡對用戶初始 embedding 進行深度特征提取,并使用內積度量 embedding 之間的相關性,從而實現對用戶、商品關系的預測。這種方法的目標在于提取 embedding 中的深層特征,在 embedding 階段不利用交互數據,因此具有較高的效率,不易于受到過平滑和噪音數據的影響。
而基于 GNN 的協同過濾方法,在 embedding 階段使用 GNN 進行特征提取,在預測階段通常仍使用簡單的內積度量。由于對高階交互關系的有效利用,GNN-based CF 通常具有更高的準確性,但也使其在預測階段效率降低,且易于受到噪音和過平滑關系數據的影響。
基于上述兩種模型優劣的討論,本文提出使用 GNN 模型作為教師模型,使用 MLP 模型作為學生模型,以求同時保持兩者的優勢,摒棄兩者的劣勢,得到準確且高效的 CF 模型。
2.2 對比知識蒸餾
為了蒸餾 GNN 模型中的知識到學生模型,SimRec 采用了預測結果蒸餾(Prediction-Level Distillation)和表征蒸餾(Embedding-Level Distillation)兩種知識蒸餾方式。
首先,參考基于 KL 散度的傳統知識蒸餾方法,SimRec 對教師模型和學生模型的預測結果進行對齊。受到推薦系統研究中排序損失函數 BPR 的啟發,SimRec 通過排序任務來對齊兩個模型的預測結果。
具體來說,我們隨機采樣一些用戶、商品三元組,每個三元組包括一個用戶和兩個商品,SimRec 的教師模型和學生模型,會分別預測三元組中用戶對兩件商品的偏好分數差值。預測結果蒸餾采用二分類交叉熵損失函數,來拉近兩個模型預測分數的差距。
值得注意的是,與普通的知識蒸餾方法不同,SimRec 的預測結果蒸餾針對 CF 場景的特點,進行了獨特的暗知識挖掘。具體來說,普通的 KD 方法一般針對多分類問題,在知識蒸餾過程中,不僅學習哪個類別分數最高,也會學習所有類別之間的分數高低關系,來擴充蒸餾的訓練樣本,使學生模型能夠從教師模型中學習得到隱含的暗知識。
然而,簡單將 CF 任務視為多分類問題是有問題的,CF 場景中有數量龐大的商品作為類別,使得蒸餾時教師模型給出的軟標簽,數值很容易接近 0,導致難以排序。為了解決這一問題,我們的預測結果蒸餾采用了成對排序任務,通過更豐富的訓練樣本對來充分挖掘教師模型中的暗知識。
在預測結果蒸餾之外,SimRec 進一步進行了表征蒸餾,以對齊教師和學生模型的隱含表征。我們采用對比學習方法,拉近兩個模型對同一個用戶、商品節點給出的表征,推遠不同節點的表征。在這一過程中,教師模型的表征不進行更新。為了進一步強調 GNN 模型的高階特性,我們僅利用 GNN 模型的高階表征。通過這一方法,不僅進一步對齊了兩個模型,也帶來了更高的蒸餾效率。
2.3 自適應對比正則
為了防止 GNN 模型中的過平滑和噪音信號,通過知識蒸餾對學生模型產生負面影響,SimRec 受到對比學習損失啟發,通過全局性地推開任意兩點的表征,對學生模型的表征學習進行正則。為了更好地區分過平滑信號和正常的平滑信號,SimRec 計算蒸餾任務的梯度與主任務梯度之間的相似性,根據這一相似性對對比正則進行自適應的權重調整。
實驗結果
我們在 Gowalla、Yelp、Amazon 三個數據集上進行了對比實驗,數據集統計信息如下
在實驗中,SimRec 取得了穩定優于基線方法的模型效果,并通過 t-test 驗證了效果提升的顯著性。同時我們觀測到,非 GNN 的基線方法,如 NCF、AutoR,只能取得較差的模型效果,但 SimRec 優越的預測性能同樣是通過簡單的 MLP 網絡得到,這充分驗證了使用蒸餾方法對簡單 MLP 方法進行監督所能帶來的巨大提升。
我們進行了詳盡的消融實驗,從以下結果可以看出,SimRec 的各個模塊,包括兩種蒸餾方法和自適應的對比正則,不僅可以帶來最終模型效果的提升,還能夠帶來更快的模型優化速度。
此外,通過在大規模數據集上的實驗,我們驗證了 SimRec 模型在大規模數據集上,不僅仍然能夠取得較好的效果,也能通過免除對大規模圖結構數據的處理、采樣,達到顯著更高的模型效率。
總結
本文提出了一種對比知識蒸餾方法,能夠自適應地從 GNN 教師模型中遷移知識到簡單的多層感知機模型,顯著提升了推薦模型的魯棒性和效率。自適應的對比正則損失能夠約束知識蒸餾,得到具備更好抗過平滑和噪聲能力的用戶、商品表征。通過全面的實驗,我們驗證了 SimRec 模型在效果和效率上的優越性。
更多閱讀
#投 稿?通 道#
?讓你的文字被更多人看到?
如何才能讓更多的優質內容以更短路徑到達讀者群體,縮短讀者尋找優質內容的成本呢?答案就是:你不認識的人。
總有一些你不認識的人,知道你想知道的東西。PaperWeekly 或許可以成為一座橋梁,促使不同背景、不同方向的學者和學術靈感相互碰撞,迸發出更多的可能性。?
PaperWeekly 鼓勵高校實驗室或個人,在我們的平臺上分享各類優質內容,可以是最新論文解讀,也可以是學術熱點剖析、科研心得或競賽經驗講解等。我們的目的只有一個,讓知識真正流動起來。
📝?稿件基本要求:
? 文章確系個人原創作品,未曾在公開渠道發表,如為其他平臺已發表或待發表的文章,請明確標注?
? 稿件建議以?markdown?格式撰寫,文中配圖以附件形式發送,要求圖片清晰,無版權問題
? PaperWeekly 尊重原作者署名權,并將為每篇被采納的原創首發稿件,提供業內具有競爭力稿酬,具體依據文章閱讀量和文章質量階梯制結算
📬?投稿通道:
? 投稿郵箱:hr@paperweekly.site?
? 來稿請備注即時聯系方式(微信),以便我們在稿件選用的第一時間聯系作者
? 您也可以直接添加小編微信(pwbot02)快速投稿,備注:姓名-投稿
△長按添加PaperWeekly小編
🔍
現在,在「知乎」也能找到我們了
進入知乎首頁搜索「PaperWeekly」
點擊「關注」訂閱我們的專欄吧
·
·
總結
以上是生活随笔為你收集整理的WWW 2023 | 无图协同过滤的全部內容,希望文章能夠幫你解決所遇到的問題。