STAR-GCN:用于推荐系统的图卷积神经网络 IJCAI 2019

在这里插入图片描述
论文链接:https://www.ijcai.org/Proceedings/2019/0592.pdf
代码链接:https://github.com/jennyzhang0215/STAR-GCN
论文来源:IJCAI 2019

摘要

文章针对推荐系统提出了一种新的堆叠和重构图卷积网络(STAR-GCN)结构来学习节点的表征,提高推荐系统的效率,特别是在冷启动场景。STAR-GCN采用一堆GCN编码器/解码器与中间监督相结合,以提高最终预测性能。同图卷积矩阵分解模型用one-hot节点作为输入不同,STAR-GCN学习低维的user、item 隐表征作为输入来限制模型的空间复杂度。STAR-GCN可以通过重建屏蔽的输入节点表征来为新节点生成节点表征,这本质上解决了冷启动问题 。文章在为链接预测任务训练基于GCN的模型时发现标签泄漏问题,并提出了避免该问题的训练策略。 多个评级预测基准的经验结果表明,我们的模型在五个真实数据集中的四个中获得了最先进的性能,并且在冷启动场景中预测评级方面取得了显着改进。

1、简介

推荐系统中核心的数学问题就是矩阵分解,假设有 N N N 个user, M M M 个item,推荐算法的目的是根据这个矩阵已有的值去填充未知的值。

经典的解决方法是基于矩阵分解(MF),每一个已知的得分是通过用户和item的隐因子表征相乘得到的。近年来,深度学习的发展尤其是图卷积对这个问题带来了一些新的思路。GCN将卷积的定义从规则网格推广到不规则网格,像图结构。GCN通过一个局部共享参数算子来生成节点表示。一个图卷积算子通过转换或者聚合某个节点的局部领域节点的特征来生成该节点的表征。通过堆砌多个图卷积算子和非线性函数,我们构建了一个深度神经网络,可以抽取这个图远处的特征。因为局部邻域集可以看作卷积核的接收场,这类领域聚合方法称为图卷积。

Monti等人针对推荐系统首次提出了基于GCN的方法,在他们的方法里,GCN用于将user-user和item-item的两个图信息聚合,user和item的隐因子在每次聚合的时候更新,GCN和MF的目标函数通过组合用在了这个模型里。此后,Berg等人提出了图卷积矩阵完成模型(GC-MC),GC-MC模型直接将user和item的关系描述为一个二部图。两个多连接卷积层用于聚合user和item的特征。通过预测边的标签来估计得分。GC-MC模型取得了很不错的成绩。

虽然很强大,但GC-MC模型有两个明显的限制,为了区分每一个节点,GC-MC模型使用one-hot向量作为节点输入,这使得对于大规模的图使用受到了限制;另外,模型不能预测训练过程中没有出现过的item和user,因为不能用one-hot表示没出现过的节点。这类任务就是我们熟知的冷启动。

本文提出了新的架构,堆积重构图卷积网络(STAR-GCN)来解决这些问题,不同于GC-MC,STAR-GCN作为一个端到端的模式直接学习user和item的低维表征,为了提升模型能力,另外也针对冷启动问题,STAR-GCN盖住了部分或者整个user和item的表征,在训练阶段通过一小块图的编码解码器来重构盖住的部分。这个想法灵感来源于NLP里的 masked language model,我们结合特定于任务的中间监督构建了一组编码器-解码器块,以提高最终性能。 在实施过程中,我们发现训练基于GCN的模型进行评级预测时会遇到标签泄漏问题,这会导致过拟合问题并严重降低最终性能。 为避免泄漏问题,我们提供了一个采样-丢弃训练策略,并通过经验证明了其有效性。

文章创新点:

  1. 我们为推荐系统提出了一种新的体系结构,以便在转导和归纳环境中学习用户和项目的潜在因素
  2. 第一个在评分预测任务中实施基于GCN的模型时明确指出培训标签泄漏问题的人,并提出了一种避免该问题的训练策略,从而显着改善了性能
  3. STAR-GCN模型在转换环境中的五个真实世界推荐数据集中有四个实现了最先进的性能,并且在归纳环境中明显优于其他模型

2、前言

2.1、打分预测任务

基于GCN的模型将推荐环境当做一个无向二部图,由user U \mathcal{U} U 和item V \mathcal{V} V 两部分组成。打分集合 R = { 1 , 2 , . . . , R } \mathcal{R}=\{1,2,...,R\} R={ 1,2,...,R},每个打分都代表二部图里的一个连接,我们聚焦于两种类型的打分预测任务:转导式打分预测和归纳式打分预测。
在这里插入图片描述
转导式打分预测

如上图a所示,是针对已经存在的 user 和 item 之间的。

归纳式打分预测

对新来的user或者item预测,说白了就是冷启动。

对比CDL和DropoutNet,STAR-GCN不仅利用节点的内容信息,而且结合了结构信息来学习新节点的表征。

2.2、图卷积

先简单回顾一下GC-MC,GC-MC 利用一个多连接图卷积编码器来生成节点表征,每一个连接类型 r r r 赋值为一种特殊的转化。信息按如下方式从 item 传到 user : y u i r = ∑ v j ∈ N r ( u i ) 1 c i j W a r x v j (1) y_{u_i}^r=\sum_{v_j\in\mathcal{N}^r{(u_i)}}\frac{1}{c_{ij}}W_a^rx_{v_j} \tag{1} yuir=vjNr(ui)cij1Warxvj(1) h u i = α ( W h α ( ∑ r = 1 R y u i r ) ) h_{u_i}=\alpha\left(W_h\alpha\left(\sum_{r=1}^Ry_{u_i}^r\right)\right) hui=α(Whα(r=1Ryuir))其中, y u i r \mathrm{y}_{u_i}^{r} yuir一个连接类型 r r r 的聚合结果, x v j ∈ R d i n \mathrm{x}_{v_j}\in\mathbb{R}^{d_{in}} x

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值