论文笔记:AAAI 2020 Revisiting Graph based Collaborative Filtering: A Linear Residual Graph Convolutional

前言

近年来,在基于协同过滤(CF)的推荐系统(RS)中,一些研究者将用户与项目的交互行为视为一个二分图,用GCNs对高层协同信号进行建模。这些基于GCN的推荐模型与传统的推荐模型相比具有更高的性能。然而,在用户和物品的交互大图中带有非线性激活函数的模型训练起来非常困难。此外,由于图卷积运算的过度平滑效应,大多数基于GCN的模型无法对更深层次进行建模。

本文从两个方面重新探讨了基于GCN的CF模型。

  • 证明了去除非线性会提高推荐性能,这与简单图卷积网络中的理论是一致的。
  • 本文提出了一种残差网络结构,该结构是专门为CF设计的,具有用户项交互建模功能,可以缓解稀疏用户项交互数据的图卷积聚合操作中的过度平滑问题。

该模型是一个线性模型,易于训练,可扩展到大数据集,在两个实际数据集上具有更好的效率和有效性。
整篇文章主要是基于这几篇文章之上的工作:

  1. SGC简化图卷积,消除层与层之间不必要的非线性激活函数转为线性表示
  2. 整个协同过滤的思想基于NCF和NGCF两篇文章,其中GC-MC的工作,作者将他总结为NGCF的一种特例
  3. 相关文章的解析可以参考
  1. 在此之上,作者创造性的提出了用于用户物品二分图表示学习过程中的残差方法,值得学习

论文链接:https://arxiv.org/abs/2001.10167
github:https://github.com/newlei/LR-GCCF

1. LR-GCCF

1.1 模型架构

在这里插入图片描述
首先明确一些概念,用户集合 U U U 其中包含 M M M 个用户,物品集合 V V V 其中包含 N N N 个物品,用户集对物品集的评分矩阵 R ∈ R M × N R \in \mathbb{R}^{M \times N} RRM×N,具体的权值为:1代表产生过交互即喜欢,其他均为0。鉴于用户项目推荐的特殊性可以抽象成二部图进行表示, G = < U ⋃ V , A > \mathcal{G}=<\mathcal{U \bigcup V},A> G=<UV,A>,其中 A ∈ R ( M + N ) × ( M + N ) A \in \mathbb{R}^{(M+N) \times (M+N)} AR(M+N)×(M+N) 作为用户物品交互的邻接矩阵。其中权值由评分矩阵 R R R 和其转置其余为0构成。这是论文中的表示形式,我总是认为维度不正确,如果单纯理解为二部图中边的表示方式感觉也不准确
在这里插入图片描述相反,如下表示我觉得更为合理,如果原文中的表示形式是我理解错误,希望大家指出
在这里插入图片描述

模型输入:用户和物品的大图,其中类似于NGCF中的思想,将用户和物品单独抽象出来进行嵌入表示,创新的地方在于每一层的用户和物品嵌入单独拿出来做了一个向量点乘作为每一层嵌入的残差项,在层与层之间残差项通过向量加不断迭代。看图也可以发现,画的还是很细致的,体现出了GCN的特点每一层向外扩展一跳邻居逐渐遍布全图。

1.2 线性嵌入传播(Linear Embedding Propagation)

明确相关的几个概念 E ∈ R ( M + N ) × D E \in \mathbb{R}^{(M+N)\times D} ER(M+N)×D代表用户和物品的嵌入,在此处为了方便表示统一整合到一个大矩阵中,因为两者嵌入的维度相同,因此可以这样做。其中 E [ 1 : M ] E_{[1:M]} E[1:M]代表用户嵌入矩阵, E [ M + 1 : M + N ] E_{[M+1:M+N]} E[M+1:M+N]代表物品嵌入矩阵,该模型将大的嵌入矩阵作为输入,也就是
在这里插入图片描述
作者提醒说不同于其他的GCN任务,此处的嵌入矩阵的输入不是节点特征向量,是通过LR-GCCF模型学习得到的嵌入向量表示。

之后的传播模型作者借鉴了SGCN的思想,去掉冗余的非线性激活函数,降低计算量来替代NGCF中复杂的传播模型。此处的思想与同年提出的LightGCN有着异曲同工之妙,LightGCN的作者也是NGCF的作者,简化图卷积的原因本文中说的不清楚,在LightGCN中作者做了很多消融实验,并且从理论上分析了简化模型的必要性。大致的出发点就是由于基于协同过滤的图卷积中节点的特征向量仅仅是信息量很少的one-hot编码,因此无需复杂的GCN模型来提取特征。

本文中作者借鉴SGCN的卷积方法,定义了传播的模型如下所示
在这里插入图片描述
其中 S = D ~ − 1 2 A ~ D ~ − 1 2 S = \widetilde{D}^{-\frac{1}{2}}\widetilde{A}\widetilde{D}^{-\frac{1}{2}} S=D 21A D 21代表了归一化并加上自环的邻接矩阵,其中 A ~ \widetilde{A} A 代表邻接矩阵 A A A加上自环

之后作者给出了传播模型的矩阵表示如下图所示
在这里插入图片描述
其中 d i ( d u ) d_i(d_u) di(du) 代表在用户项目二分图中的 item i i i( user u u u) 的对角线上的度, R ∗ R_* R 代表节点 ( ∗ * ) 在图 G \mathcal{G} G 中的邻居节点

1.3 残差偏好预测(Residual Preference Prediction)

在经过k层的GCN之后,根据GCN的特性已经结合了 k k k 跳的邻居信息。分别得到 e u k e_u^k euk e i k e_i^k eik 经过矩阵点乘和残差相加后得到最终的预测矩阵
在此之前作者先进行了实验说明图卷积操作随着层数的加深可能导致过平滑现象,为了解决这个问题,作者引入了残差的概念。
在这里插入图片描述
进而作者推导出了引入残差概念后的一般形式如下所示
在这里插入图片描述

1.4 模型学习(Model Learning)

基于上式中得到的残差概念的一般形式,推广到矩阵形式
在这里插入图片描述
其中 Y K \mathbf{Y^K} YK 代表 Y K = W 0 W 1 . . . W K \mathbf{Y^K=W^0W^1...W^K} YK=W0W1...WK为线性模型, S K \mathbf{S^K} SK代表 K K K 层的 S \mathbf{S} S

由于作者关注的是隐性反馈,因此作者采用BPR中基于成对排名的损失函数为:
在这里插入图片描述
其中 s ( x ) s(x) s(x) 代表sigmoid函数 , Θ = [ Θ 1 , Θ 2 ] \Theta = [\Theta_1,\Theta_2] Θ=[Θ1,Θ2] Θ 1 = [ E 0 ] \Theta_1=[E^0] Θ1=[E0] Θ 2 = [ [ Y k k = 1 K ] ] \Theta_2=[[\mathbf{Y^k}_{k=1}^K]] Θ2=[[Ykk=1K]] λ \lambda λ 代表正则化参数控制用户和无项目嵌入矩阵的复杂性。 D a = { ( i , j ) ∣ i ∈ R a ⋀ j ∈ V − R a } D_a = \{(i,j)|i \in R_a \bigwedge j \in V-R_a\} Da={(i,j)iRajVRa},用 R a R_a Ra表示 a a a的成对训练数据,表示 a a a正反馈的项集。

2. 模型讨论

在这里插入图片描述
由于GC-MC将注意力侧重于交互图的重构上因此仅仅是一阶,其中NGCF也包含了简单的残差预测思想

3. 实验

3.1 数据集

在这里插入图片描述

3.2 模型效果

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
此篇文章的主要两个创新点在于L-线性GCN卷积模型和R-残差预测思想,基于此进行的试验

  • 7
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值