高效利用多級用戶意圖,港科大、北大等提出會話推薦新模型Atten-Mixer
推薦系統作為一種智能化的信息過濾技術,已在實際場景中得到廣泛的應用。然而,推薦系統的成功往往建立在大量的用戶數據之上,而這些數據可能涉及用戶的私密和敏感信息。在用戶信息受到隱私保護限制或無法獲取的場景下,傳統的推薦系統往往難以發揮良好的效果。因此,如何在保證隱私安全性的前提下,構建可信賴的推薦系統,是一個亟待解決的問題。
近年來,隨著用戶對自身隱私的重視程度不斷提高,越來越多的用戶傾向于在使用在線平臺時不進行登錄操作,這也使得匿名的基于會話的推薦成為一個重要的研究方向。近日,來自香港科技大學、北京大學、微軟亞研等機構的研究者提出了一種高效利用多級用戶意圖的新模型 Atten-Mixer。研究論文獲得 WSDM2023 最佳論文榮譽提名。
論文鏈接:https://dl.acm.org/doi/abs/10.1145/3539597.3570445
研究背景
基于會話的推薦 (Session-based recommendation, SBR) 是一種基于用戶在短暫、動態的會話(即用戶的行為序列)進行推薦的方法。
與傳統的基于用戶或物品的推薦系統相比,SBR 更側重于捕捉用戶在當前會話中的即時需求,能夠更有效地適應用戶興趣的快速演化和長尾效應的挑戰。
在 SBR 模型的演進過程中,從基于循環神經網絡 (Recurrent Neural Network, RNN) 的模型,到基于卷積神經網絡 (Convolutional Neural Network, CNN) 的模型,再到近期的 SBR 研究中廣泛采用基于圖神經網絡 (Graph Neural Network, GNN) 的模型來更好地挖掘物品之間復雜的轉移關系。
然而,這些模型在基準數據集上的性能提升與其模型復雜度的指數級增長相比顯得十分有限。面對這種現象,本文提出了如下問題:這些基于 GNN 的模型是不是對于 SBR 來說過于簡單或者過于復雜了?
初步分析
為了回答這個問題,作者試圖解構現有的基于 GNN 的 SBR 模型,并分析它們在 SBR 任務上的作用。
一般來說,典型的基于 GNN 的 SBR 模型可以分解為兩個部分:
(1)GNN 模塊。參數可以分為圖卷積的傳播權重和將原始嵌入和圖卷積輸出融合的 GRU 權重。
(2)Readout 模塊。參數包括用于生成長期表示的注意力池化權重和用于生成會話表示以進行預測的轉換權重。
接下來,作者分別在這兩個部分上采用 Sparse Variational Dropout(SparseVD),一種常用的神經網絡稀疏化技術,并在訓練模型時計算參數的密度比 (density ratio)。
參數的 density ratio 指的是參數的權重中大于某個閾值的元素數與總元素數的比例,其數值可用于衡量參數的重要性。
GNN 模塊。
由于 GNN 有很多參數,隨著隨機初始化,在一開始會有許多要更新的知識。因此我們可以看到圖卷積傳播權重的 density ratio 在一開始的幾個 batch 數據上會有波動。隨著訓練趨于穩定,該 density ratio 會趨于 0。
Readout 模塊。
我們可以發現,隨著訓練的進行,注意力池化權重的 density ratio 可以保持在一個較高水平。在其他數據集和其他 GNN-based SBR 模型上,我們也可以觀測到相同的趨勢。
因此,作者發現 GNN 模塊的許多參數在訓練過程中都是冗余的。 基于此,作者提出了以下用于 SBR 的更簡單而更有效的模型設計準則:
(1) 不過分追求復雜的 GNN 設計,作者傾向于刪除 GNN 傳播部分,僅保留初始嵌入層;
(2) 模型設計者應該更加關注基于注意力的 Readout 模塊。
由于注意力池化權重參數保持了較高的密度比,作者推測在基于注意力的 readout 方法上進行更先進的架構設計將會更有利。
由于本文放棄了對 GNN 傳播部分的依賴,Readout 模塊應該承擔更多模型推理上的責任。
考慮到現有的基于實例視圖 (instance-view) 的 Readout 模塊的推理能力有限,本文需要設計具有更強的推理能力的 Readout 模塊。
如何設計具有更強推理能力的 Readout 模塊
根據精神病理學的研究,人類推理本質上是一種多層次信息處理的過程。
例如,通過綜合考慮 Alice 交互的底層商品,人類可以獲得一些更高層次的概念,比如 Alice 是否打算籌備婚禮或者裝飾新房子。在確定 Alice 很可能是在籌備婚禮后,人類接著會考慮與花束相關的婚禮用品,如婚禮氣球,而不是與花束相關的裝飾用品,如壁畫。
在推薦系統中采用這種多層次推理策略可以幫助剪枝大量的搜索空間,避免局部最優解,通過考慮用戶的整體行為趨勢,收斂到更令人滿意的解決方案。
因此,本文希望在 Readout 模塊設計中引入這種多層推理的機制。
然而,獲得這些高層概念不是一件容易事,因為單純地枚舉這些高層概念并不現實,并且很可能引入無關的概念并干擾模型的性能。
為了應對這個挑戰,本文采用兩個 SBR 相關的歸納偏置 (inductive biases): 即局部不變性 (local invariance) 和固有優先級 (inherent priority),來縮減搜索空間。
- 固有優先級指的是 session 中后幾個 item 更能反映用戶的當前興趣;
- 局部不變性指的是 session 中后幾個 item 的相對順序并不影響用戶的興趣,因此在實踐中可以通過不同數目的尾部 item 形成 group,通過這些 group 來構建相關的高層概念。
在這里尾部 item 對應固有優先級,group 對應局部不變性,而不同數目則代表本文考慮多層的高層概念。
提出模型
因此,本文提出了一個名為 Atten-Mixer 的模型。該模型可以與各種編碼器集成。對于輸入 session,模型從 embedding 層中獲取每個 item 的 embedding。然后,模型對生成的 group representation 應用 linear transformation,以生成多級用戶意圖查詢(multi-level user intent queries)。
其中 Q1 是 instance-view attention query,而其他的則是更高級別的 attention query,具有不同的感受野和局部不變信息。接下來,模型使用生成的 attention queries 來 attend 該 session 中每個 item 的 hidden state,并獲得最終的 session representation。
實驗及結果
在離線實驗中,本文采用了三個不同領域的數據集:Diginetica 是電子商務交易的數據集,Gowalla 是社交網絡的數據集,Last.fm 是音樂推薦的數據集。
離線實驗結果
(1) 整體對比
作者將 Atten-Mixer 與基于 CNN、基于 RNN、基于 GNN 和基于 readout 的四種基準方法進行了對比。
實驗結果表明,Atten-Mixer 在三個數據集上都在準確性和效率方面超越了基準方法。
(2) 性能提升分析
此外,作者還將 Atten-Mixer 模塊嵌入到 SR-GNN 和 SGNN-HN 中,以驗證該方法對原始模型的性能提升作用。
離線實驗結果顯示,Atten-Mixer 在所有數據集上都顯著提升了模型性能,尤其是在評價指標中的 K 值較小時,說明 Atten-Mixer 能夠幫助原始模型生成更精確和用戶友好的推薦。
在線實驗結果
作者還于 2021 年 4 月將 Atten-Mixer 部署到了大規模電商在線服務中,線上實驗顯示多級注意力混合網絡 (Atten-Mixer) 在各種線上業務指標上都取得了顯著提升。
實驗結論
總結一下,Atten-Mixer 具備多級推理能力,在準確性和效率方面展現了優異的在線和離線性能。以下是一些主要貢獻:
- 復雜的模型架構并不是 SBR 的必要條件,而基于注意力的 readout 方法的創新架構設計則是一種有效的解決方案。
- 多級概念相關性有助于捕捉用戶的興趣,利用歸納偏差是發現信息豐富的高階概念的有效途徑。
研究過程
最后,值得一提的是,這篇文章在獲得 WSDM2023 最佳論文榮譽提名的背后還有一段曲折的開發經歷,如文章作者之一來自 UIUC 的 Haohan Wang 介紹的那樣,這篇文章其實先后因為太過簡單而在投稿過程中拒絕過多次,值得慶幸的是,文章的作者并沒有為了中文章而去迎合審稿人的口味,而是堅持了自己簡單的方法,并最終讓這篇文章獲得了榮譽。