論文地址:Contrastive Clustering Learning for Multi-Behavior Recommendation | ACM Transactions on Information Systems
摘要
近年來,多行為推薦模型取得了顯著成功。然而,許多模型未充分考慮不同行為之間的共性與差異性,以及目標行為的數據稀疏性問題。本文提出了一種基于對比聚類學習的全新多行為推薦模型(MBRCC)。
具體而言,采用圖卷積網絡(GCN)分別獲取用戶和物品的嵌入表示。隨后,設計了三種優化用戶和物品嵌入的任務,包括行為級嵌入、實例級嵌入和聚類級嵌入。
在行為級嵌入中,設計了一種自適應參數學習策略,以分析輔助行為對目標行為的影響,并通過對用戶在各行為上的嵌入進行加權,獲得最終的用戶嵌入表示。
在實例級嵌入中,利用對比學習對用戶和物品實例進行分析,以緩解數據稀疏性問題。
在聚類級嵌入中,設計了一種新的聚類對比學習方法,以捕捉用戶和物品群體之間的相似性。
最終,結合這三種任務,以提升用戶和物品嵌入的質量。在三個真實世界數據集上的廣泛實驗表明,MBRCC 顯著優于現有的多種推薦模型。
引言
推薦系統在在線廣告、社交媒體和電子商務等多個領域發揮著至關重要的作用。它通過智能信息過濾和個性化推薦,幫助用戶快速找到符合其興趣和需求的內容。個性化推薦不僅提升了用戶體驗,還促進了商業交易的成功。
目前,大多數推薦模型主要關注用戶與物品之間的單一行為關系。例如,Zheng 等人[57]提出了一種基于單一行為數據挖掘物品屬性信息的推薦方法;Wang 等人[36]在單一行為數據上研究了用戶-物品的高階信息;Li 等人[24]利用元學習方法提升用戶和物品的表示效果;Lan 等人[21]基于歷史交互數據構建了用戶和物品的雙分支圖來捕獲信息。然而,在實際應用中,用戶和物品的交互通常涉及多種行為類型。例如,如圖 1 所示,在電子商務平臺上,用戶的行為通常包括瀏覽、點擊和購買等。此外,與用戶交互的物品數量不斷增長,僅依賴單一行為難以準確推測用戶的偏好,因此需要借助輔助行為進行推薦。
為了充分利用輔助行為信息,近年來涌現出越來越多的多行為推薦模型。例如,Gao 等人[9]提出了一種基于神經網絡的多任務推薦框架,以級聯方式關聯各類行為,利用用戶在購買前通常瀏覽相關感興趣物品的現象來整合不同行為信息;Jin 等人[17]提出了一種多行為推薦模型,通過用戶-物品交互的傳播層捕捉行為強度,并通過物品-物品交互的傳播層捕捉行為語義;Chen 等人[7]提出了一種基于多行為的推薦模型,在可控時間復雜度下高效捕捉不同行為信息,該模型采用基于用戶、基于物品和交替優化的三種方法來挖掘不同行為間的復雜關系。此外,Chen 等人[5]考慮到用戶和物品交互中的高階協同信息,提出了一種基于協同過濾的異構圖推薦模型,該模型采用關系感知傳播層顯式獲取高階信號;Wei 等人[39]提出了一種基于多種行為類型圖的注意力多行為推薦模型,以捕捉用戶-物品交互網絡中的隱藏關系,該模型同時考慮了節點級特定行為的重要性和行為級不同行為的語義強度。此外,一些研究還結合了對比學習與多行為推薦。例如,Gu 等人[11]提出了一種基于自監督圖卷積網絡(GCN)的多行為推薦模型,以緩解監督信號稀疏問題,該模型采用星型對比學習策略來學習不同行為之間的共性;Wu 等人[42]提出了一種基于多視圖的多行為對比學習推薦模型,以有效緩解冷啟動問題,該模型整合了多行為、多視圖和行為區分的對比學習。
盡管上述研究在提升推薦性能方面取得了顯著進展,但仍然存在以下局限性:
(1) 一些多行為推薦的對比學習方法主要基于個體行為,缺乏從群體角度綜合考慮不同行為,這通常導致用戶和物品的嵌入表示無法全面覆蓋行為信息;
(2) 由于相似用戶的行為通常具有共性,而不同用戶的行為往往存在差異,因此用戶和物品的共性與差異可提供更豐富的語義信息。然而,部分模型未充分考慮用戶或物品之間的共性與差異,可能導致群體偏差或信息過濾不足;
(3) 部分方法忽視了目標行為的數據稀疏性問題。例如,相較于點擊、瀏覽和加入購物車等行為,購買行為的數據較為稀疏,這可能導致推薦偏差或冷啟動問題,因為對比學習中難以構造足夠數量和多樣性的正負樣本對。
針對現有多行為推薦模型的這些局限性,本文提出了一種基于對比聚類學習的全新多行為推薦模型(MBRCC)。具體而言,采用 GCN 獲取用戶和物品在不同行為上的嵌入表示,并圍繞這些嵌入設計三類任務,以提升嵌入質量:
(a) 行為級嵌入:采用自適應參數學習策略計算用戶在不同行為上的嵌入權重,并通過加權方法融合所有行為的用戶嵌入;
(b) 實例級嵌入:基于用戶和物品不同行為間的共性,采用對比學習優化用戶和物品的嵌入表示,使正樣本對之間的共性最大化,負樣本對之間的共性最小化;
(c) 聚類級嵌入:多行為數據通常展現出類似的群體模式,因此采用對比聚類學習方法挖掘用戶和物品嵌入的潛在信息,以促進實例級用戶和物品之間的共性。
在三個真實世界數據集上對 MBRCC 進行了實驗評估,結果表明,相較于其他基線模型,本文的方法在所有數據集上至少提升了 7% 的推薦性能。本文的主要貢獻如下:
- 提出了一種新型多行為推薦模型(MBRCC),包括行為級嵌入、實例級嵌入和聚類級嵌入,并首次在多行為推薦任務中應用對比聚類學習,以捕捉用戶和物品的嵌入信息;
- 在實例級嵌入中考慮了用戶和物品之間的共性與差異,同時引入群體聚類級嵌入,最大化用戶和物品之間的關聯信息利用率,從而有效緩解數據稀疏性問題;
- 在三個真實數據集上驗證了 MBRCC 模型的有效性,實驗結果表明,MBRCC 在推薦性能上顯著優于現有模型。
模型
所提出的模型 (MBRCC) 如圖 2 所示,主要包含四個部分。
在嵌入表示部分,異構圖 G 根據行為類別劃分為 K?個子圖。此外,為了獲取完整的嵌入信息,設計了三種任務。在行為級別嵌入中,方法側重于獲取用戶在每個子圖上的嵌入權重。這些權重與相應子圖的嵌入進行聚合,以更好地捕獲用戶行為在不同子圖中的重要性。對于物品嵌入,采用簡單的拼接操作,因為它們具有靜態屬性。在實例級別嵌入中,采用對比學習方法,將目標行為(即購買行為)的用戶和物品嵌入與其他輔助行為進行比較,利用對比學習策略提取用戶和物品之間的實例級共性信息,作為局部特征。在聚類級別嵌入中,針對每種輔助行為獲取特征組,并將目標行為加入這些特征組中。然后,使用 softmax 方法在每個特征組中獲取不同的特征簇,并在各特征簇之間進行對比學習。最終,這三種任務相結合,以優化用戶和物品的嵌入。
4.1 嵌入表示
基于子圖 Gk,采用 GCN 獲取用戶和物品的表示。零層的嵌入表示是矩陣 E(0)中行向量的隨機初始化。在模型中,采用多層消息傳播,通過收集連接鄰居的信息來獲取完整的節點信息。為了適應推薦任務,去除了通用 GCN 嵌入聚合中的特征變換矩陣和非線性激活函數,類似于 LightGCN。公式如下:
其中,Nu 和 Ni?分別表示用戶 u和物品 i?的鄰居數量,l表示當前圖卷積層數,(e^k_u)^{(l+1)} 代表 k?類行為的第 l+1 層用戶嵌入。在獲取每層的嵌入信息后,需要聚合所有層的信息,以確保更好的節點嵌入表示:
其中,αl 代表第 l?層嵌入的權重,與 LightGCN 一致,其中 L為 GCN 的層數。物品嵌入的學習過程與用戶嵌入類似。
4.2 行為級別嵌入
多行為數據可以提供更詳細的信息,使用戶和物品的嵌入表示更加完整。在行為級別嵌入中,設計了一種自適應參數學習方法,根據不同行為數據的分布,捕獲每種行為的權重:
其中,αuk代表用戶 u?在 k?類行為上的權重,wk 表示 kk 類行為的重要性。為了簡化模型,假設 wk 對所有用戶均具有相同影響。xuk 代表用戶 u 在 k 類行為下的交互物品數量。最終的用戶嵌入通過所有行為的加權求和得到:
其中,W?和 b?分別為權重和偏差,σ 代表非線性激活函數。最終的物品嵌入通過拼接所有行為的嵌入獲得:
其中,Cat表示拼接操作,MLP 代表多層感知機(Multi-Layer Perceptron)。通過融合操作,得到最終的用戶嵌入 eu 和物品嵌入 ei。為了確保相似節點具有更高的相似度,采用 BPR 損失進行優化:
其中,D?為訓練數據集,(u,i+)和 (u,i?) 分別代表已觀測的交互和未知交互。
4.3 實例級別嵌入
在實例級別嵌入中,采用對比學習方法來優化用戶和物品的嵌入,目標是最大化正樣本(用戶或物品的同一行為嵌入)之間的相似性,同時最小化負樣本(不同用戶或物品的嵌入)之間的相似性。
對于第 k類輔助行為,計算其嵌入與目標行為嵌入之間的余弦相似度:
具體來說,將同一用戶在不同行為上的嵌入視為正樣本對,而來自不同用戶的嵌入視為負樣本對。假設有 N?個用戶和 M?個物品,對于用戶 u,其目標行為嵌入為 e^p_u,輔助行為嵌入為 e^k_u,則:
- (e^p_u, e^k_u) 設為正樣本對
- 其余2N - 2 對設為負樣本對
對于物品 i,目標行為嵌入為e^p_i,輔助行為嵌入為e^k_i,則:
- (e^p_i, e^k_i) 設為正樣本對
- 其余2M - 2 對設為負樣本對
為了優化對比學習中的樣本相似度,目標行為 p 和輔助行為 k 需考慮用戶損失:
其中,τ是溫度參數。
與 Lpu和 Lpi 類似,用戶和物品在第 k 個輔助行為下的損失函數定義如下:
目標是識別數據集中所有的正樣本對。對于每個用戶和物品,計算實例級損失,定義如下:
對于物品嵌入的實例級損失,采用與用戶嵌入類似的方法。最終,通過匯總所有用戶和物品的對比損失,得到實例級嵌入損失:
4.4 聚類級嵌入
聚類級嵌入遵循“物以類聚”的概念。用戶嵌入和物品嵌入被映射到一個維度等于聚類數的空間,使用戶和物品嵌入可以被解釋為屬于特定聚類的概率。然后,采用對比聚類學習方法來捕捉聚類特征。
對于目標行為及每個輔助行為,分別劃分為 C 個聚類。其中,e^p_c 表示目標行為的第 c 個聚類,而 e^k_c 表示第 k 個輔助行為的第 c 個聚類。對于用戶 u,使用 softmax 方法計算其在目標行為下被分配到第 c 個聚類的概率Y^p_{u,c}。
與實例級嵌入類似,通過選擇目標行為和第 k?個輔助行為中相似的聚類得到正樣本對 (e^p_c, e^k_c),而其余的 2C-2 個對則被視為負樣本對。然后,采用余弦相似度計算這些聚類之間的相似性,定義如下:
其中 c,c′∈{1,2,...,C},k1,k2∈{p,k}。目標行為的損失函數 Lcp用于區分目標行為下的e^p_c 和所有不屬于 e^k_c 的聚類,定義如下:
其中 τ0?是聚類級溫度系數,控制損失的平滑度。同樣,對于第 k?個輔助行為,聚類損失定義如下:
用戶嵌入的聚類級損失通過遍歷所有聚類得到,定義如下:
熵項 H(Y) 用于防止大多數樣本被劃分到同一聚類中。
對于物品嵌入的聚類級損失 ,采用與用戶嵌入類似的方法。最終,將每組用戶嵌入和物品嵌入的損失合并,得到聚類級嵌入損失:
4.5 聯合優化
聯合優化用于結合三種任務,定義如下:
其中,λ 控制實例級嵌入的權重,μ控制聚類級嵌入的權重,Θ 表示所有可訓練參數,γ為正則化超參數。
4.6 算法描述
模型描述在算法 1 中。給定異構圖 G、子圖 Gk、聚類數 C、溫度系數 τ 和 τ0,MBRCC 的目標是為每個用戶生成一個 Top-N 推薦列表。算法 1 描述了 MBRCC 的訓練過程,主要分為三個任務,每個任務分別包含一個損失函數。
實驗
想看一下對比聚類怎么用到推薦算法中。。。