Session-based Recommendation with Graph Neural Networks (SR-GNN 2019)

研一上半学期已经结束,这学期学习了很多而且很碎的东西。其中在论文中学习到的知识颇为丰富,本学期看的论文大部分都是关于推荐系统的论文,而且对基于session的推荐有了深刻的理解。趁着寒假时间,对基于session的推荐相关论文做做总结,趁热打铁。对于每篇文章,我会介绍一下这篇文章主要是在解决什么问题,其模型有什么优缺点等等,话不多说,进入正文。

Session-based Recommendation with Graph Neural Networks (SR-GNN 2019)

这篇文章是19年的一篇文章,讲的是用图神经网络做基于session推荐,这篇文章是一篇很好的bases-line。传统的序列模型在session中无法准确的表示每个用户的表示,而且忽略了复杂的item转换。本篇论文将每个session构建成图数据,然后使用图神经网络得到复杂的item之间的转换信息。引入注意力机制得到全局的偏好,将最后一个item作为当前的偏好,最后使用线性聚合,将全局偏好和当前偏好聚合在一起得到最终的session表示,经过softmax层做出最终的预测。论文模型如下所示:
SR-GNN模型假设给定一个session s = [v1, v2, v3, v2, v4],构建图如下所示:
在这里插入图片描述
图中的每个节点对应session中的item,图中的每条边表示两个item之间的一种关系,比如用户在click v1之后click v2。在每个session构建成图结构之后,经过门控图神经网络得到每个item的表示,在表示每个item时,会考虑当前item邻居的信息。该门控图神经网络的公式表示如下所示:
门控图神经网络公式表示
其中复位门z和更新门r决定什么信息应该保留和去除,v(i)表示经过图神经网络之后item的表示,A表示邻接矩阵,举个栗子,假设给定一个session s = [v1, v2, v3, v2, v4],其邻接矩阵如下所示:
邻接矩阵
在得到所有节点的嵌入表示之后,我们如何来表示每个session的嵌入表示呢?首先我们将每个session的最后一个item表示为局部的偏好,然后我们引入软注意力机制得到全局的表示,即用户一个长期的偏好,公式如下:
全局表示
最后经过线性的聚集,将全局表示和局部表示聚合在一起,得到最终的session表示,公式如下:
线性聚合
最终根据session表示经过打分和softmax做出预测。

总结:本论文介绍的模型既有优点也存在着缺点,其中优点为,考虑将session构建成图数据,经过图神经网络层可以捕获到复杂的item之间的转换信息,而且在最后考虑session的嵌入表示时结合了全局的嵌入表示和局部的嵌入表示,会得到更加准确的session表示。其缺点为在构建图时存在信息损失问题和无效的长期依赖问题,在下面的论文讲解中会说明如何解决这些缺陷。这是我对这篇文章的理解,如果有什么理解不到位的地方还请指导。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值