浙江大学学报(工学版), 2023, 57(2): 243-251 doi: 10.3785/j.issn.1008-973X.2023.02.004

计算机技术

融合图增强和采样策略的图卷积协同过滤模型

张京京,, 张兆功,, 许鑫

黑龙江大学 计算机科学与技术学院,黑龙江 哈尔滨 150080

Graph convolution collaborative filtering model combining graph enhancement and sampling strategies

ZHANG Jing-jing,, ZHANG Zhao-gong,, XU Xin

School of Computer Science and Technology, Heilongjiang University, Harbin 150080, China

通讯作者: 张兆功,男,教授,博士. orcid.org/0000-0002-1195-936X. E-mail: 2013010@hlju.edu.cn

收稿日期: 2022-07-31  

基金资助: 国家自然科学基金资助项目(61972135)

Received: 2022-07-31  

Fund supported: 国家自然科学基金资助项目(61972135)

作者简介 About authors

张京京(1999—),女,硕士生,从事推荐算法研究.orcid.org/0000-0002-9279-7808.E-mail:2201851@s.hlju.edu.cn , E-mail:2201851@s.hlju.edu.cn

摘要

现有的基于图卷积网络(GCNs)的协同过滤(CF)模型存在两大问题,大多数原始图因存在噪声及数据稀疏问题会严重损害模型性能;对于大型用户项目图来说,传统GCN中的显式消息传递减慢了训练时的收敛速度,削弱了模型的训练效率. 针对上述2点,提出融合图增强和采样策略的图卷积协同过滤模型(EL-GCCF). 图初始化学习模块通过生成2种图结构,综合考虑图中的结构和特征信息,对原始图进行增强,有效缓解了噪声问题. 通过多任务的约束图卷积跳过显式的消息传递,利用辅助采样策略有效缓解训练中的过度平滑问题,提高了模型的训练效率. 在2个真实数据集上的实验结果表明,EL-GCCF模型的性能优于众多主流模型,并且具有更高的训练效率.

关键词: 推荐系统 ; 协同过滤 ; 图增强 ; 图卷积网络 ; 图神经网络

Abstract

There are two significant problems with existing collaborative filtering (CF) models based on graph convolutional networks (GCNs). Most original graphs have noise and data sparsity problems that can seriously impair the model performance. In addition, for large user project graphs, the explicit message passing in traditional GCNs slows down the convergence speed during training and weakens the training efficiency of the model. A graph convolution collaborative filtering model combing graph enhancement and sampling strategies (EL-GCCF) was proposed to respond to the above two points. In the graph initialization learning module, the structural information and the feature information in the graph were integrated by generating two graph structures. The original graph was enhanced and the noise problem was effectively mitigated. Explicit message passing was skipped because of the multi-task constrained graph convolution. The over-smoothing problem in training was effectively mitigated and the training efficiency of the model was improved by using an auxiliary sampling strategy. Experimental results on two real datasets show that the EL-GCCF model outperforms many mainstream models and has higher training efficiency.

Keywords: recommendation system ; collaborative filtering ; graph enhancement ; graph convolutional network ; graph neural network

PDF (1156KB) 元数据 多维度评价 相关文章 导出 EndNote| Ris| Bibtex  收藏本文

本文引用格式

张京京, 张兆功, 许鑫. 融合图增强和采样策略的图卷积协同过滤模型. 浙江大学学报(工学版)[J], 2023, 57(2): 243-251 doi:10.3785/j.issn.1008-973X.2023.02.004

ZHANG Jing-jing, ZHANG Zhao-gong, XU Xin. Graph convolution collaborative filtering model combining graph enhancement and sampling strategies. Journal of Zhejiang University(Engineering Science)[J], 2023, 57(2): 243-251 doi:10.3785/j.issn.1008-973X.2023.02.004

近年来,图神经网络(graph neural networks,GNNs)在各类推荐任务上取得了优异的性能. 最近的一些研究[1-2]选择图卷积(graph convolutional network,GCN)[3]来学习节点的嵌入. 目前,现有基于GCN的协同过滤(collaborative filtering,CF)模型[1,4-5]的成功依赖于一个基本假设,即原始用户-项目二部图是可靠的,且符合GNNs的特性. 然而,由于图结构通常建立在复杂的交互系统上,现实中这种假设并不完全成立. 原始的用户-项目图不可避免地包含噪声信息,GNN的迭代聚合特性具有级联效应,噪声信息在图中传播会恶化许多其他表示的质量. 其次,在构造用户项目图时,数据稀疏也是CF算法的一个大问题. 由于先验知识有限,预定义的原始图只携带交互系统中的部分信息,这限制了预测任务的准确性[6-7]. 大多数原始图对于推荐系统的下游任务可能不是最佳的,不可靠的图结构可能会严重限制GNNs的表示能力[8-9].

在下游任务中,为了捕获高阶协作信号并更好地模拟用户和项目的交互关系,当前基于GCN的CF模型倾向于寻找越来越复杂的网络编码器[10-11]. 然而这些方法很难在大型用户项目图上进行训练. 为此,已经开展了一些研究[4-5],以简化基于GCN的CF模型,例如LR-GCCF. 虽然它在很大程度上简化了CF模型,但其在大型用户项目图上的训练速度仍未得到很大的提升,消息传递仍然主导着模型的训练,堆叠多层的消息传递限制了模型的收敛速度. 因此,如何避免噪声信息、缓解数据稀疏,构建可靠的图结构,同时提高GCN模型的效率仍然是有待解决的问题.

基于上述问题,本研究提出融合图增强和采样策略的图卷积协同过滤模型(graph convolution collaborative filtering model combining graph enhancement and sampling strategies,EL-GCCF). 模型由2个模块组成. 1) 图初始化学习模块,其由特征交互、特征传播和特征图生成3部分组成,用于生成适合下游任务的增强图. 其中特征交互、特征传播能够捕获节点的特征相似性,而在特征图生成中,通过多通道注意力机制对节点中的关键信息进行聚合. 2) 带有辅助采样策略的约束图卷积模块. 通过多任务的约束损失和辅助采样策略,能够灵活调整不同类型关系之间的相对重要性,使模型可以进行更高效的训练.

本研究的主要贡献如下. 1) 研究现有基于GCN的CF模型存在的问题. GNNs依赖可靠的图结构,而原始图因存在噪声及数据稀疏问题会严重损害模型性能;传统GCN中的显式消息传递,在很大程度上减慢了GCNs在训练期间的收敛速度,削弱了模型的训练效率. 2) 提出EL-GCCF模型,利用原始图内部丰富的特征交互信息,生成并融合了特征交互图和特征传播图,以学习适合GNNs的增强图. 在增强图中进行约束图卷积,跳过无限层的显式消息传递,并在损失中使用多任务学习和辅助采样策略获得了高效的性能. 3) 在2个基准数据集上对EL-GCCF进行评估.

1. 相关工作

1.1. 图神经网络

近年来,图神经网络(GNN)受到广泛关注,并在解决基于图的协同过滤领域取得了巨大成功[1,4-5]. GNN用于学习图的拓扑结构和节点的特征信息,其中最具代表性的方法是图卷积网络(GCN)[3]. 它使用显式的消息传递,通过迭代聚合相邻节点的表示来学习节点的嵌入,是一种有效的从图结构中提取信息的方法. GCN的消息传递过程定义如下:

$ {{\boldsymbol{E}}^{k+1}} = \sigma ({{\hat{\boldsymbol {D}}}^{ - {1/2}}}{\hat{\boldsymbol {A}}}{{\hat{\boldsymbol {D}}}^{ - {1/2}}}{{\boldsymbol{E}}^{k}}{{\boldsymbol{W}}^{k}}) . $

式中: $\hat {\boldsymbol{A}} = {\boldsymbol{A}}+{\boldsymbol{I}}$$\hat {\boldsymbol{D}} = {\boldsymbol{D}}+{\boldsymbol{I}}$${\boldsymbol{A}}$${\boldsymbol{D}}$${\boldsymbol{I}}$分别为邻接矩阵、对角矩阵和单位矩阵; ${{\boldsymbol{E}}^{k}}$${{\boldsymbol{W}}^{k}}$分别表示第 $ k $层的嵌入矩阵和权重矩阵;σ(·)为非线性激活函数. 根据文献[12]中的定理1,可以推导出GCN模型中消息传递的极限:

$ \mathop {\lim }\limits_{k \to \infty } \;({{\hat{\boldsymbol D}}^{ - {1/2}}}{\hat{\boldsymbol A}}{{\hat{\boldsymbol D}}^{ -{1/2}}})_{u,i}^k = \frac{{[ {({d_u}+1)({d_i}+1)} ]^{1/2}}}{{2m+n}} . $

式中: $ m $$ n $分别为图中节点和边的总数,ui分别为图中用户和项目节点, ${d_u}$${d_i}$分别为用户、项目的节点度数.

1.2. 基于图的GCN推荐模型

随着GCNs的巨大成功,研究人员试图将推荐系统中的交互构建为用户-项目二部图,并将GCN应用于网络规模的推荐系统[13]. 最近的一些工作,例如NGCF[1] 利用交互编码器捕获用户和项目之间的协作信息;LightGCN[4]去除了传统GCN中复杂的特征变换和非线性激活,仅保留了邻域聚合部分;LR-GCCF[5]在LightGCN基础上借鉴SGCN[14]的图谱链接理论线性地聚合邻域信息,其中模型的线性聚合过程如下:

$ \left.\begin{gathered} { \boldsymbol{e}}_u^{k+1} = \left[\frac{1}{{{d_u}}}{\boldsymbol{e}}_u^k+\sum\limits_{i \in {N_u}} {\frac{1}{{{d_i} {d_u}}}} {\boldsymbol{e}}_i^k\right]{{\boldsymbol{W}}^k}, \\ { \boldsymbol{e}}_i^{k+1} = \left[\frac{1}{{{d_i}}}{\boldsymbol{e}}_i^k+\sum\limits_{u \in {N_i}} {\frac{1}{{{d_u} {d_i}}}{\boldsymbol{e}}_u^k} \right]{{\boldsymbol{W}}^k}. \\ \end{gathered}\right\} $

式中: ${\boldsymbol{e}}_u^k$$ {\boldsymbol{e}}_i^k $表示用户 $ u $和项目 $ i $在第 $ k $层的嵌入, $ N_{ {u }} $$ N_{i} $分别为它们的邻居节点集.

2. EL-GCCF模型

本研究所提出的EL-GCCF模型是一种基于图增强和图卷积(GCN)的推荐框架,框架图如图1所示.

图 1

图 1   EL-GCCF整体框架图

Fig.1   EL-GCCF framework diagram


2.1. 问题定义

${\boldsymbol{G}} = (V,E,{\boldsymbol{F}})$是一个图,其中 $E$为边的集合; $ V = \{ {v_1},{v_2},\cdots ,{v_N}\} $$N$个节点的集合; ${\boldsymbol{F}} = [{{\boldsymbol{f}}_1},{{\boldsymbol{f}}_2},\cdots , {{\boldsymbol{f}}_N}]$为节点的特征矩阵, ${{\boldsymbol{f}}_i}$为节点 ${v_i}$的特征向量. $ {{\boldsymbol{F}}^U} \in {{{\bf{R}}}^{|U| \times {d^U}}} $为用户特征矩阵、 $ {{\boldsymbol{F}}^I} \in {{{\bf{R}}}^{|I| \times {d^I}}} $为项目特征矩阵, $\vert U\vert$为用户集合U中元素个数,|I|为项目集合I中元素个数, ${d^U}$${d^I }$为节点的属性个数. $ {\boldsymbol{A}} = \displaystyle \sum {{A_{ij}}} $为用户项目交互矩阵, ${\boldsymbol{A}} \in {{{\bf{R}}}^{|U| \times |I|}}$,其中 ${A_{ij}} = \left\langle {{v_i},{v_j}} \right\rangle $用来描述节点之间的交互关系. 当用户项目有交互时, ${A_{ij}} = 1$;当没有交互时, ${A_{ij}} = 0$. 给定用户-项目交互图 ${\boldsymbol{G}}$,模型的主要任务是预测目标用户 $u$与候选项目 $i$存在交互的概率 ${y_{ui}}$.

2.2. 图初始化学习模块

2.2.1. 特征交互

将原始图 ${\boldsymbol{G}}$中的节点进行嵌入,得到节点的初始特征矩阵 ${{\boldsymbol{F}}^U}$${{\boldsymbol{F}}^I}$. 初始特征向量 ${{\boldsymbol{f}}_u}$${{\boldsymbol{f}}_i}$通过异构特征投影映射到 $ {d^C} $维的公共空间中,得到同一维度的特征向量:

$ {\boldsymbol{f}}_u^\prime = \sigma ({{\boldsymbol{f}}_u} {{\boldsymbol{W}}_u}+{{\boldsymbol{b}}_u}),\;\;{\boldsymbol{f}}_i^\prime = \sigma ({{\boldsymbol{f}}_i} {{\boldsymbol{W}}_i}+{{\boldsymbol{b}}_i}). $

式中: ${{\boldsymbol{W}}_u}$${{\boldsymbol{W}}_i}$为权重矩阵, ${{\boldsymbol{b}}_u}$${{\boldsymbol{b}}_i}$为偏置项, ${\boldsymbol{f}}_u^\prime \in {{\bf{R}}^{1 \times {d^C}}}$${\boldsymbol{f}}_i^\prime \in {{\bf{R}}^{1 \times {d^C}}}$.

相似度表明了2个节点之间交互关系的强弱. 根据网络同质假设,边倾向于连接相似的节点[15],通过促进强关系连接可以优化图结构. 本研究利用余弦相似性进行度量学习[16],利用阈值 ${\varepsilon ^{{{\rm{UI}}}}}$进行约束,进而捕获特征矩阵 $ {{\boldsymbol{F}}'} $中的交互关系,生成特征交互图 ${{\boldsymbol{S}}^{{{\rm{UI}}}}}$. 相似性度量函数 $ {\varGamma ^{{{\rm{UI}}}}} $和特征交互图 ${{\boldsymbol{S}}^{{{\rm{UI}}}}}$表达式如下:

$ \left.\begin{array}{l} {\varGamma }^{\text{UI}}({{\boldsymbol{f}}}_{x}',{{\boldsymbol{f}}}_{y}')=\mathrm{cos}\;\;({{{w}}}^{\text{UI}} {{\boldsymbol{f}}}_{x}',\;{{{w}}}^{\text{UI}} {{\boldsymbol{f}}}_{y}')\text{,}\\ {{\boldsymbol{S}}}^{\text{UI}}[x,y]=\left\{\begin{gathered}{\varGamma }^{\text{UI}}({{\boldsymbol{f}}}_{x}',\;{{\boldsymbol{f}}}_{y}')\text{,} {\varGamma }^{\text{UI}}({{\boldsymbol{f}}}_{x}',{{\boldsymbol{f}}}_{y}')\geqslant {\varepsilon }^{\text{UI}}\text{;}\\ 0\text{,}\qquad 其他.\end{gathered}\right. \end{array} \right\} $

2.2.2. 特征传播

计算 ${{\boldsymbol{F}}^U}$中用户节点之间的相似性,寻找相似用户. 利用阈值 ${\varepsilon ^{{{\rm{UI}}}}}$进行相似度判断,过滤特征相似度小的边,通过度量学习得到用户特征相似图 ${{\boldsymbol{S}}^{{{\rm{FU}}}}} \in {{{\bf{R}}}^{|U| \times |U|}}$:

$ \left.\begin{array}{l} {\varGamma }^{\text{FU}}({{\boldsymbol{f}}}_{x},{{\boldsymbol{f}}}_{y})=\mathrm{cos}\;({{{w}}}^{\text{FU}} {{\boldsymbol{f}}}_{x},{{{w}}}^{\text{FU}} {{\boldsymbol{f}}}_{y})\text{,}\\ {{\boldsymbol{S}}}^{\text{FU}}[x,y]=\left\{\begin{array}{cc}{\varGamma }^{\text{FU}}({{\boldsymbol{f}}}_{x},{{\boldsymbol{f}}}_{y})\text{,} {\varGamma }^{\text{FU}}({{\boldsymbol{f}}}_{x},{{\boldsymbol{f}}}_{y})\geqslant {\varepsilon }^{\text{FU}}\text{;}\\ 0\text{,}\qquad 其他.\end{array}\right. \end{array} \right\}$

同理,可以得到项目特征相似图 ${{\boldsymbol{S}}^{{{\rm{FI}}}}} \in {{{\bf{R}}}^{|I| \times |I|}}$.

接着,通过特征相似性传播生成新的交互边,得到用户特征传播图 ${{\boldsymbol{S}}^{{{\rm{FPU}}}}}$和项目特征传播图 ${{\boldsymbol{S}}^{{{\rm{FPI}}}}}$. 传统的图结构学习模型在获得优化的邻接矩阵后,通常使用GNN编码器将节点特征传播到细化的邻域. 为了简化,本研究使用拓扑结构 ${\boldsymbol{A}}$进行特征相似性传播:

$ {{\boldsymbol{S}}^{{{\rm{FPU}}}}} = {{\boldsymbol{S}}^{{{\rm{FU}}}}}{\boldsymbol{A}} ,\; {{\boldsymbol{S}}^{{{\rm{FPI}}}}} = {\boldsymbol{A}}{{\boldsymbol{S}}^{{{\rm{FI}}}}}. $

式中: ${{\boldsymbol{S}}^{{\rm{{FPU}}}}} \in {{{\bf{R}}}^{|U| \times |I|}}$${{\boldsymbol{S}}^{{{\rm{FPI}}}}} \in {{{\bf{R}}}^{|U| \times |I|}}$.

2.2.3. 特征图生成

本研究将得到的2类图结构(特征交互图和特征传播图),通过图级别的通道注意力层(channel attention layer)融合得到特征生成图 ${{\boldsymbol{S}}^{{{\rm{Feat}}}}} \in {{\bf{R}}^{|U| \times |I|}}$:

$ {{\boldsymbol{S}}^{{{\rm{Feat}}}}} = h([{{\boldsymbol{S}}^{{{\rm{UI}}}}},{{\boldsymbol{S}}^{{{\rm{FPU}}}}},{{\boldsymbol{S}}^{{{\rm{FPI}}}}}]). $

式中: $[{{\boldsymbol{S}}^{{{\rm{UI}}}}},{{\boldsymbol{S}}^{{{\rm{FPU}}}}},{{\boldsymbol{S}}^{{{\rm{FPI}}}}}] \in {{{\bf{R}}}^{|U| \times |I| \times 3}}$为特征候选图的堆叠矩阵; $h(\cdot)$为融合函数,有多层感知器(multilayer perceptron,MLP)和通道注意力网络2种选择[17]. 本研究选择后者,一个参数为 ${{\boldsymbol{W}}^{{{\rm{Feat}}}}} \in {{{\bf{R}}}^{1 \times 1 \times 3}}$的通道注意力层. 它使用 $ {{\rm{softmax}}} $函数对输入进行 $1 \times 1$卷积,进而为每个候选图分配不同的图级别注意力值.

通过上述3步,EL-GCCF完成了对原始用户交互图的初始化,得到了一个更加精确的关于用户项目交互的增强图结构,如图2所示.

图 2

图 2   图初始化学习模块

Fig.2   Graph initialization learning module


2.3. 带有辅助采样的约束图卷积模块
2.3.1. 用户-项目图的学习

EL-GCCF模型是LR-GCCF[5]的一种变体. 它跳过了无限层的消息传递,使用极限的方法近似得到聚合过程的最终表示. 因此,在迭代无限层的消息传递后,根据定理[13]可以将模型最终的收敛条件定义为

$ {{\boldsymbol{e}}_u} = \mathop {\lim }\limits_{k \to \infty } {\boldsymbol{e}}_u^{k+1} = \mathop {\lim }\limits_{k \to \infty } {\boldsymbol{e}}_u^{k}. $

当最后2层的嵌入表示保持不变时,模型达到收敛状态. 邻域聚合生成的向量等价于节点本身. 因此,可以用 ${{\boldsymbol{e}}_u}$${{\boldsymbol{e}}_i}$表示节点在最终收敛状态下的嵌入表示. 以LR-GCCF为基础,当模型达到收敛时,其线性嵌入过程可以改写为

$ {{\boldsymbol{e}}_u} = \frac{1}{{{d_u}}}{{\boldsymbol{e}}_u}+\sum\limits_{i \in {N_u}} {\frac{1}{{{d_i} {d_u}}}} {{\boldsymbol{e}}_i}. $

经过多步简化,可以得出以下收敛状态:

$ {{\boldsymbol{e}}_u} = \sum\limits_{i \in {N_u}} {{w_{ui}}} {{\boldsymbol{e}}_i},\;\;{w_{ui}} = \frac{1}{{{d_i}({d_u} - 1)}}. $

式中:wuiei的学习权重.

在训练过程中,如果每个节点均满足式(11),则认为模型达到消息传递的收敛状态. 本研究希望模型不再采用堆叠多层的显式消息传递,而是直接近似到达收敛状态. 因此,最直接的方式是最小化等式两边的差异. 在嵌入标准化后,最大化这2项内积,即最大化余弦相似性:

$ \mathrm{max}\;\;\;{\displaystyle \sum _{i\in {N}_{u}}{w}_{ui}}{{\boldsymbol{e}}}_{u}^{{\rm{T}}}{{\boldsymbol{e}}}_{i}\text{;}\forall u\in U. $

为了方便优化,本研究引入sigmoid激活函数和负对数似然,损失函数如下:

$ {L_{{{\rm{UI}}}}} = - \sum\limits_{u \in U} {\sum\limits_{i \in {N_u}} {{w_{ui}}} \ln\; (\sigma ({\boldsymbol{e}}_u^{\rm{T}}{{\boldsymbol{e}}_i})}). $

损失会受到极限条件的结构约束,因此将 ${L_{{{\rm{UI}}}}}$定义为模型的约束损失, ${w_{ui}}$为约束系数. 但是当前损失依旧会受到过平滑的影响,用户和项目会很容易地聚合为相同的嵌入. 不同于以往的模型,本研究的模型不再选择修复少量消息传递层,而是通过在训练期间执行辅助采样策略,对困难的样本进行采样. 它是一种更简单有效的用来抵消过度平滑问题的方法. 难正样本定义为比至少一个负样本离用户更远的项目,难负样本为比至少一个正样本更接近用户的项目. 困难的样本集的挖掘过程如下.

形式上,如果满足以下条件,则选择为困难的正样本 $\{ u,i\} $:

$ {E_{ui}} \geqslant \mathop {\min }\limits_{j \in {N_u^-}}\; {E_{uj}} - \varepsilon. $

式中: $E$为欧几里德距离, ${N_u^-}$$u$的负项目集, $\varepsilon $为控制分离程度的边距参数. 同样的,如果满足以下条件,则选择为困难的负样本 $\{ u,j\} $:

$ {E_{uj}} \leqslant \mathop {\max }\limits_{k \in {P_u}} \;{E_{uk}}+\varepsilon. $

式中: ${P_u}$$u$的正项目集. 在加入困难的正负样本后,损失函数可以改写为

$ {L_{{{\rm{UI}}}}} = - \sum\limits_{u \in U} {\sum\limits_{\scriptstyle(u,i) \in {N^ + }\atop \scriptstyle(u,j) \in {N^ - }} {{w_{ui}}} \ln \;(\sigma ({\boldsymbol{e}}_u^{\rm{T}}{{\boldsymbol{e}}_i})} +{w_{uj}}\ln \;(\sigma ( - {\boldsymbol{e}}_u^{\rm{T}}{{\boldsymbol{e}}_j})). $

式中: ${N^+}$${N^ - }$表示困难的正样本和负样本集合.

经过优化后,EL-GCCF可以通过约束损失 ${L_{{{\rm{UI}}}}}$直接逼近无限层消息传递的极限结果,进而捕获用户项目图中的任意高阶协作信号,同时使用辅助采样策略可以有效缓解过平滑问题.

由于约束损失函数和CF模型的排名损失函数都是在用户项目图的基础上得到的,因此2个损失均采用相同的样本集和训练策略. 在模型中,使用 ${\hat y_{ui}} = {\boldsymbol{e}}_u^{\rm{T}}{{\boldsymbol{e}}_i}$作为推荐的排名分数. 排名损失函数如下:

$ {L_{{{\rm{Rank}}}}} = {\sum\limits_{u \in U} {\sum\limits_{\scriptstyle(u,i) \in {N^ + }\atop \scriptstyle(u,j) \in {N^ - }} { - \ln\; (\sigma ({{\hat y}_{ui}} - {{\hat y}_{uj}})} )+\lambda ||{{\boldsymbol{E}}^{(0)}}||} ^2}. $

式中: $\lambda $为控制 $L2$正则化的权重.

2.3.2. 项目-项目图的学习

除了用户-项目关系,项目-项目关系和用户-用户关系同样重要. 在大多数模型中,这2类关系都是在用户-项目图上进行消息传递过程中隐式学习到的. 在这种方法中,不合理的边权重分配导致无法捕获不同类型关系的相对重要性. 相反,EL-GCCF不依赖于显式的消息传递,因此可以更加灵活地学习不同类型的关系并扩展到建模许多不同的关系图,如用户-用户图和项目-项目图.

本研究根据项目的共现性构建出项目-项目图 ${{\boldsymbol{G}}^{{I}}}$,表达式如下:

$ {{\boldsymbol{G}}^{{I}}} = {{\boldsymbol{A}}^{\rm{T}}}{\boldsymbol{A}}. $

式中: ${\boldsymbol{A}}$为用户-项目图的邻接矩阵;GI中的每条记录表示2个项目同时出现的频率, ${{\boldsymbol{G}}^I} \in {{{\bf{R}}}^{|I| \times |I|}}$.

根据式(11)来近似 ${{\boldsymbol{G}}^{{I}}}$上的无限层图卷积,并推导出项目-项目图上的约束系数:

$ {w_{ij}} = \frac{{{G_{i,j}}}}{{{g_i} - {G_{i,i}}}}{\left(\frac{{{g_i}}}{{{g_j}}}\right)^c},\;\;{g_i} = \sum\limits_k {{G_{i,k}}} .$

式中: ${g_i}$表示 ${{\boldsymbol{G}}^{{I}}}$中项目 $i$的度数, $c$通常取0.5,Gi,k为图GI中第i行第k列的元素.

这里得到的 ${{\boldsymbol{G}}^{{I}}}$是一个稠密矩阵,直接最小化 ${{\boldsymbol{G}}^{{I}}}$上的约束损失会在优化中引入噪声项目对. 因此,本研究根据 ${w_{ij}}$为项目 $i$选择前 $k$个最相似的项目集 $S(i)$,即 $|S(i)| = k$. 相较于直接构建项目-项目图,本研究通过用户-项目图的邻接矩阵构建共现关系图 ${{\boldsymbol{G}}^{{I}}}$,可以降低整个多任务模型的训练难度. 损失函数如下:

$ {L_{{{\rm{II}}}}} = - \sum\limits_{(u,i) \in {N^+}} {\sum\limits_{j \in S(i)} {{w_{ij}}} \ln \;(\sigma ({\boldsymbol{e}}_u^{\rm{T}}{{\boldsymbol{e}}_j})}). $

本研究省略了负采样,因为 ${L_{{{\rm{UI}}}}}$${L_{{{\rm{Rank}}}}}$中的负采样已经使模型能够抵消过度平滑. 通过这种约束损失,本研究扩展了模型以更好地学习项目-项目关系,并最终得出模型的训练目标. 总损失函数如下:

$ L = {L_{{{\rm{Rank}}}}}+\alpha {L_{{{\rm{UI}}}}}+\beta {L_{{{\rm{II}}}}}. $

式中: $\alpha $$\beta $为超参数,分别用于调整用户-项目关系和项目-项目关系的相对重要性. 这里模型没有对用户-用户图建模,因为用户兴趣远大于项目属性,很难从用户-用户共现图上捕获用户关系. 注意,用户-用户共现图不同于社交网络图,后者可以更好地对用户关系进行建模.

3. 实验设计

3.1. 实验设置

3.1.1. 数据集和评价指标

在2个公开的真实数据集MovieLens-1M( https://grouplens.org/datasets/movielens/)和Amazon-Books( http://jmcauley.ucsd.edu/data/amazon/index.html)上进行实验. 与最近基于GCN的CF模型一样,在数据预处理阶段选择交互记录超过10条的样本集,并使用与之相同的数据分割方法. 对于每个数据集,随机选择每个用户80%的历史交互来构造训练集, 20%作为测试集. 从训练集中随机选择10%的交互作为验证集来调整超参数. 如表1所示为所用数据集的统计信息. 表中,nuninc分别为用户数、项目数、交互数,spa为稀疏度.

表 1   MovieLens-1M和Amazon-Book数据集参数

Tab.1  Parameter of MovieLens-1M and Amazon-Book datasets

数据集 nu ni nc spa/%
MovieLens-1M 6022 3043 995154 5.431
Amazon-Books 52643 91599 2984108 0.062

新窗口打开| 下载CSV


使用2个被广泛采用的排名指标来进行top-k评估:Recall@N和NDCG@N,分别表示前k个推荐结果的准确率和归一化折现累积收益. 对于每个用户,选择所有未交互的项目作为候选项目.

3.1.2. 基线

将提出的EL-GCCF与各种类型的先进模型进行比较,包括基于MF(Matrix Factorization)的模型(MF-BPR[18]、NeuMF[19])、基于网络嵌入的模型(DeepWalk[20]、Node2Vec[21])以及基于GCN的CF模型(NGCF[1]、LightGCN[4] 和LR-GCCF[5]).

3.1.3. 参数设置

使用Pytorch框架进行实验编写,并在NIVIDIA GeForce RTX 2080Ti上进行实验. 对于所有模型,在模型训练过程中嵌入大小固定为64,这与现阶段基于GCN的模型的嵌入大小相同. 采用均值为0,标准差为0.0001的高斯分布初始化模型参数. 在模型中, $L2$正则化参数 $\lambda $设置为0.0001,batch size设置为1024,邻居集合的大小 $K$设置为10. 相似性阈值 ${\varepsilon ^{{{\rm{UI}}}}}$${\varepsilon ^{{{\rm{FU}}}}}$${\varepsilon ^{{{\rm{FI}}}}}$分别为0.70、0.85和0.75. 超参数 $\alpha $在[0.2,0.4,0.6,0.8,1.0,1.2,1.4]中调整,超参数 $\beta $在[0.5, 1.0, 1.5,2.0, 2.5, 3.0, 3.5]中调整.

3.2. 整体比较
3.2.1. 性能比较

表2所示为Recall@N和NDCG@N上的总体性能比较结果. 表中,Imp为本研究模型相对于最强基线的性能提升. 1) 与基于MF的模型[18-19]相比,基于GCN的模型[1,4-5]可以利用强大的图卷积学习用户和项目之间的高阶关系,直接利用嵌入中的高阶连通性;2) 基于GCN的模型的表现优于网络嵌入模型[20-21],它可以充分利用图的结构信息,图卷积比传统的随机游走能更有效地捕获协作信息;3) 与其他基于GCN的模型相比,EL-GCCF通过多任务的约束损失学习了无限层图卷积的本质,不再使用显式的消息传递. 它能够灵活地学习不同类型的关系,进而选择更有价值的训练对;4) 与其他所有基线模型相比,EL-GCCF可以利用图初始化学习方法对原始图进行增强学习,有效缓解原始图存在噪声和数据稀疏的问题; 5) 总的来看,EL-GCCF在所有数据集上均获得了一致的、更好的性能. 特别是在Amazon-Books上,与最强基线模型相比,其各项性能分别提高了64.64%、27.58%、20.01%和37.63%.

表 2   EL-GCCF和其他方法在2个数据集上的性能比较

Tab.2  Performance comparison of EL-GCCF and other methods on two datasets

模型 Amazon-Books MovieLens-1M
Recall@10 NDCG@10 Recall@20 NDCG@20 Recall@10 NDCG@10 Recall@20 NDCG@20
MF-BPR 0.0607 0.0430 0.0956 0.0536 0.1704 0.2044 0.2153 0.2175
NeuMF 0.0507 0.0351 0.0823 0.0447 0.1657 0.1953 0.2106 0.2067
DeepWalk 0.0286 0.02511 0.0346 0.0264 0.1248 0.1025 0.1348 0.1057
Node2Vec 0.0301 0.2936 0.0402 0.0309 0.1347 0.1095 0.1475 0.1186
NGCF 0.0617 0.0427 0.0978 0.0547 0.1846 0.2328 0.2513 0.2511
LightGCN 0.0797 0.0565 0.1206 0.0689 0.1876 0.2314 0.2576 0.2427
LR-GCCF 0.0591 0.0504 0.1135 0.0558 0.1785 0.2051 0.2231 0.2124
EL-GCCF 0.0973 0.0643 0.1363 0.0768 0.1925 0.2636 0.2657 0.2882
Imp/% 64.64 27.58 20.01 37.63 7.84 28.52 19.09 35.69

新窗口打开| 下载CSV


3.2.2. 效率比较

进一步验证EL-GCCF在训练效率方面的优势,选取性能较好的MF模型进行比较,分别为MF-BPR、NeuMF、LightGCN和LR-GCCF. 实验结果如表3所示. 表中, $T_{{\rm{train}}} $为最佳性能的总训练时间,Etrain为训练总轮次, $ {t_{\rm{e}}}= {T_{{\rm{train}}}}/{E_{{\rm{train}}}}$为模型一轮的训练时间. 可以看到,EL-GCCF一轮的训练速度与MF-BPR非常接近,说明它与基本的MF模型的时间复杂度在同一水平. 与基于GCN的模型相比,EL-GCCF达到最佳性能时只需要训练70轮,总训练时间只有43 min,均大大小于LightGCN和LR-GCCF的. 综合来看,EL-GCCF相比其他基于GCN的CF模型具有更高的效率.

表 3   EL-GCCF模型与MF模型在Ml-1M数据集上的效率比较

Tab.3  Comparison of efficiency of EL-GCCF model and MF model on Ml-1M dataset

模型 te/s Etrain Ttrain
MF-BPR 31 23 12 min
NeuMF 125 79 2 h 45 min
LightGCN 51 780 11 h 3 min
LR-GCCF 67 165 3 h 5 min
EL-GCCF 36 70 43 min

新窗口打开| 下载CSV


3.3. 消融实验

在本研究提出的EL-GCCF模型中,图初始化学习和带有辅助采样策略的约束图卷积是必不可少的部分. 为了获得这些部分的有效性,对EL-GCCF的变体进行研究.

3.3.1. 图初始化学习的有效性

1) 2种图结构的学习. 图初始化学习方法通过融合2种图结构,即特征交互图和特征传播图,得到适合下游任务的增强图. 为了理解它们的影响,通过从模型EL-GCCF中删除每种类型的图来设计2种变体,分别表示为Base(FSG)和Base(FPG). 由图3可以看出,EL-GCCF均优于2种变体,说明有必要考虑所有图结构. 图中,Macro-F1和Micro-F1作为纵坐标,用于评估不同变体模型学习增强图的综合表现.

图 3

图 3   EL-GCCF及其变体模型在Ml-1M数据集上的性能

Fig.3   Performance of EL-GCCF and its variant models on Ml-1M dataset


2) 图注意力权重的学习. 为了评估EL-GCCF是否能够有效地学习不同图结构的重要性,将模型中的3个通道注意力层均替换为平均聚合层,即Base(Avg),为3个候选图分配相同的权重. 由图3可知,EL-GCCF显著优于Base(Avg),说明使用多通道注意力层进行权重学习对于图初始化学习是有效的.

3.3.2. 带有辅助采样的约束图卷积的有效性

为了比较不同组件对模型的影响,比较EL-GCCF模型及其变体,结果如表4所示.

表 4   EL-GCCF及其变体模型在2个数据集上的性能

Tab.4  Performance of EL-GCCF and its variant models on two datasets

模型 Amazon-Books MovieLens-1M
Recall@20 NDCG@20 Recall@20 NDCG@20
EL-GCCF(null) 0.1135 0.0558 0.2231 0.2124
EL-GCCF( $\alpha $) 0.1162 0.0583 0.2390 0.2325
EL-GCCF(β) 0.0942 0.0373 0.2187 0.2037
EL-GCCF(n_s) 0.1278 0.0688 0.2633 0.2742
EL-GCCF 0.1363 0.0768 0.2657 0.2882

新窗口打开| 下载CSV


1) 多任务学习的重要性. EL-GCCF( $\alpha $)仅在用户-项目图上使用带有辅助采样的约束图卷积,而EL-GCCF( $\;\beta $)仅在项目-项目图上学习. 与EL-GCCF( $\alpha $)相比,EL-GCCF( $\;\beta $)的性能明显下降. 因此,用户-项目关系在学习节点嵌入时比项目-项目关系更利于模型建模. EL-GCCF的性能明显优于EL-GCCF( $\alpha $)和EL-GCCF( $\;\beta $)的性能,表明模型使用多任务学习能够较为全面地学习图中不同类型的关系.

2) 约束图卷积的重要性. 在EL-GCCF(null)中使用传统的显式消息传递进行嵌入学习. EL-GCCF、EL-GCCF( $\alpha $)和EL-GCCF( $\beta $)的性能总体上优于EL-GCCF(null),表明堆叠多层的显式消息传递确实限制了模型性能的提高. 约束图卷积能够有效学习图中的信息,从而提高模型的性能.

3) 辅助采样策略的重要性. 在EL-GCCF(n_s)中仅使用简单的采样策略. EL-GCCF的性能优于EL-GCCF(n_s),表明模型使用辅助采样策略考虑难样本的训练问题,能够有效缓解训练期间的过平滑问题,有助于模型训练时快速收敛.

3.4. 参数分析 3.4.1. K的影响

本研究在Ml-1M数据集上进行实验,测试不同K值对EL-GCCF模型性能的影响,其中参数K调节范围为[5, 10, 20, 50]. 实验结果如图4所示. 可以看出,当K从5增加到50时,EL-GCCF模型的性能表现出先增加后下降的趋势. 这是因为当K=5时,项目-项目关系并未得到充分利用. 当K变大时,可能会在学习过程中引入一些相似度低或置信度低的项目-项目关系,从而影响模型的性能. 因此,以上现象也证实了传统的基于GCN的CF模型会不可避免地考虑过多的低置信度关系,进而损害模型性能.

图 4

图 4   不同邻居数量对EL-GCCF模型性能的影响

Fig.4   Effect of different number of neighbors on EL-GCCF model performance


3.4.2. 超参数 $\alpha $$\beta $的影响

首先从[0.2, 0.4, 0.6, 0.8, 1.0, 1.2, 1.4]中确定模型性能最佳时超参数 $\alpha $的值. 然后在最佳 $\alpha $的基础上,对不同的 $\beta $进行测试,其中超参数 $\beta $ 调节范围为[0.5, 1.0, 1.5, 2.0, 2.5, 3.0, 3.5]. 在Ml-1M数据集上进行实验,实验结果如图5所示. 可以看出,超参数 $\alpha $$\beta $较小会限制约束损失的发挥,其中 $\beta $效果较为明显. 当 $\alpha = 1.2$$\beta = 2.5$时,EL-GCCF模型性能最佳. 从对 $\alpha $$\beta $的研究来看,2个超参数对模型来说均较重要,合理的参数设置能够使EL-GCCF有效学习不同类型的关系.

图 5

图 5   不同超参数对EL-GCCF模型性能的影响

Fig.5   Effect of different hyperparameters on EL-GCCF model performance


4. 结 语

针对现有基于GCN的CF模型性能不佳的问题,提出融合图增强和采样策略的图卷积协同过滤模型(EL-GCCF). 在图初始化学习方法中利用特征相似和特征传播对原始图进行增强学习,并利用多通道注意力机制融合得到适合GNNs的增强图结构. 考虑到难正负样本的训练问题,在增强图上执行约束图卷积跳过无限层的显式消息传递,能够灵活调整不同类型关系之间的相对重要性,提高模型的训练效率,使推荐效果达到最佳. 在MovieLens和Amazon-Books这2个数据集上进行大量的实验,实验结果证明EL-GCCF优于众多主流模型.

现有的大部分图结构学习相关工作涉及节点嵌入的成对相似性计算,其计算复杂度较高,阻碍了其在大规模数据集上的适用性. 未来应进一步研究,以提高图初始化学习方法的可扩展性.

参考文献

WANG X, HE X, WANG M, et al. Neural graph collaborative filtering [C]// Proceedings of the 42nd International ACM SIGIR Conference on Research and Development in Information Retrieval. Paris: ACM, 2019: 165-174.

[本文引用: 6]

SUN J, ZHANG Y, GUO W, et al. Neighbor interaction aware graph convolution networks for recommendation [C]// Proceedings of the 43rd International ACM SIGIR Conference on Research and Development in Information Retrieval. Xi'an: ACM, 2020: 1289-1298.

[本文引用: 1]

VERMA V, QU M, KAWAGUCHI K, et al. Graphmix: improved training of gnns for semi-supervised learning [C]// Proceedings of the AAAI Conference on Artificial Intelligence. Vancouver : ACM, 2021, 35(11): 10024-10032.

[本文引用: 2]

HE X, DENG K, WANG X, et al. Lightgcn: simplifying and powering graph convolution network for recommendation [C]// Proceedings of the 43rd International ACM SIGIR Conference on Research and Development in Information Retrieval. Xi'an: ACM, 2020: 639-648.

[本文引用: 6]

CHEN L, WU L, HONG R, et al. Revisiting graph based collaborative filtering: a linear residual graph convolutional network approach [C]// Proceedings of the AAAI Conference on Artificial Intelligence. New York: ACM, 2020, 34(1): 27-34.

[本文引用: 7]

DONG X, THANOU D, RABBAT M, et al

Learning graphs from data: a signal representation perspective

[J]. IEEE Signal Processing Magazine, 2019, 36 (3): 44- 63

DOI:10.1109/MSP.2018.2887284      [本文引用: 1]

孔欣欣, 苏本昌, 王宏志, 等

基于标签权重评分的推荐模型及算法研究

[J]. 计算机学报, 2017, 40 (6): 1440- 1452

DOI:10.11897/SP.J.1016.2017.01440      [本文引用: 1]

KONG Xin-xin, SU Ben-chang, WANG Hong-zhi, et al

Research on recommendation model and algorithm based on tag weight scoring

[J]. Journal of Computer Science, 2017, 40 (6): 1440- 1452

DOI:10.11897/SP.J.1016.2017.01440      [本文引用: 1]

FRANCESCHI L, NIEPERT M, PONTIL M, et al. Learning discrete structures for graph neural networks [C]// International Conference on Machine Learning. Los Angeles: ACM, 2019: 1972-1982.

[本文引用: 1]

ZHANG Y, PAL S, COATES M, et al. Bayesian graph convolutional neural networks for semi-supervised classification [C]// Proceedings of the AAAI Conference on Artificial Intelligence. Hawaii: ACM, 2019: 5829-5836.

[本文引用: 1]

WANG W, LUO J, SHEN C, et al. A graph convolutional matrix completion method for miRNA-disease association prediction [C]// International Conference on Intelligent Computing. Bari: IEEE, 2020: 201-215.

[本文引用: 1]

YU W, QIN Z. Graph convolutional network for recommendation with low-pass collaborative filters [C]// International Conference on Machine Learning. Vienna: ACM, 2020: 10936-10945.

[本文引用: 1]

CHEN M, WEI Z, HUANG Z, et al. Simple and deep graph convolutional networks [C]// International Conference on Machine Learning. Vienna: ACM, 2020: 1725-1735.

[本文引用: 1]

YING R, HE R, CHEN K, et al. Graph convolutional neural networks for web-scale recommender systems [C]// Proceedings of the 24th ACM SIGKDD International Conference on Knowledge Discovery and Data Mining. London: ACM, 2018: 974-983.

[本文引用: 2]

WU F, SOUZA A, ZHANG T, et al. Simplifying graph convolutional networks [C]// International Conference on Machine Learning. Los Angeles: ACM, 2019: 6861-6871.

[本文引用: 1]

ZEILER M D, KRISHNAN D, TAYLOR G W, et al. Deconvolutional networks [C]// Computer Society Conference on Computer Vision and Pattern Recognition. San Francisco: IEEE, 2010: 2528-2535. .

[本文引用: 1]

LUO D, CHENG W, YU W, et al. Learning to drop: robust graph neural network via topological denoising [C]// Proceedings of the 14th ACM International Conference on Web Search and Data Mining. Jerusalem: ACM, 2021: 779-787.

[本文引用: 1]

CHEN Y, WU L. Graph neural networks: graph structure learning [M]// Graph neural networks: foundations, frontiers, and applications. Singapore: Springer, 2022: 297-321.

[本文引用: 1]

LERCHE L, JANNACH D. Using graded implicit feedback for bayesian personalized ranking [C]// Proceedings of the 8th ACM Conference on Recommender Systems. Silicon Valley: ACM, 2014: 353-356.

[本文引用: 2]

HE X, LIAO L, ZHANG H, et al. Neural collaborative filtering [C]// Proceedings of the 26th International Conference on World Wide Web. Perth: ACM, 2017: 173-182.

[本文引用: 2]

PEROZZI B, AL-RFOU R, SKIENA S. Deepwalk: online learning of social representations [C]// Proceedings of the 20th ACM SIGKDD International Conference on Knowledge Discovery and Data Mining. New York : ACM, 2014: 701-710.

[本文引用: 2]

GROVER A, LESKOVEC J. node2vec: scalable feature learning for networks [C]// Proceedings of the 22nd ACM SIGKDD International Conference on Knowledge Discovery and Data Mining. San Francisco: ACM, 2016: 855-864.

[本文引用: 2]

/