一、前言

1、背景

(1)用户-项目交互数据通常是稀疏或嘈杂的,并且它可能无法学习可靠的表示,因为基于图的方法可能更容易受到数据稀疏性的影响

(2)现有的基于 GNN 的 CF 方法依赖于显式交互链接来学习节点表示,而不能显式利用高阶关系或约束(例如,用户或项目相似性)来丰富图信息,尽管最近的几项研究利用对比学习来缓解交互数据的稀疏性,但它们通过随机抽样节点或损坏子图来构建对比对,缺乏构建针对推荐任务更有意义的对比学习任务的思考。

2、做出的贡献

提出NCL方法,主要从两方面考虑对比关系,

(1)结构邻居 : 通过高阶路径在结构上连接的节点

考虑图结构上的用户-用户邻居,商品-商品邻居的对比关系

(2)语义邻居 : 语义上相似的邻居,在图上可能不直接相邻。

从节点表征出发,聚类后,节点与聚类中心构成对比关系

二、模型构建

1、图协同过滤

这里其实就是lightGCN的传播机制,简单过一下:

GCN的消息传递

将每层的输出组合起来,形成结点的最终表示

然后就是预测,和BPR的损失函数

这一部分是基础,如果不熟悉的话可以回看往期的lightGCN介绍

2、结构邻居的对比学习

提出将每个用户(或项目)与他/她的结构邻居进行对比,这些邻居的表示通过GNN的层传播进行聚合。

交互图 G 是一个二分图,基于 GNN 的模型在图上的偶数次信息传播自然地聚合了同构结构邻居的信息,就可以从GNN模型的偶数层(如2,4,6)输出中得到同类邻居的表示,我们将用户自身的嵌入和偶数层GNN的相应输出的嵌入视为正对。基于InfoNCE[20],我们提出了结构对比学习目标来最小化它们之间的距离:

其中 Z_{u}^{k}为GNN中

NCL:Improving Graph Collaborative Filtering with Neighborhood-enriched Contrastive Learning,代码解读相关推荐

  1. #Reading Paper#Improving Graph Collaborative Filtering with Neighborhood-enriched Contrastive Learni

    #论文题目:Improving Graph Collaborative Filtering with Neighborhood-enriched Contrastive Learning(推荐系统:基 ...

  2. Improving Graph Collaborative Filtering with Neighborhood-enriched Contrastive Learning(个人笔记)

    论文:利用邻域丰富的对比学习改进图协同过滤 (NCL) WWW22 文章链接:https://arxiv.org/abs/2202.06200v1https://arxiv.org/abs/2202. ...

  3. 论文笔记:Improving Graph Collaborative Filtering with Neighborhood-enriched Contrastive Learning

    1 简介 论文:Improving Graph Collaborative Filtering with Neighborhood-enriched Contrastive Learning 发表:2 ...

  4. Improving Graph Collaborative Filtering with Neighborhood-enriched Contrastive Learning

    1. 摘要   最近,图协同过滤方法被提出作为一种有效的推荐方法,它可以通过建模用户-项目交互图来捕获用户对项目的偏好.尽管有效,但这些方法在实际场景中存在数据稀疏问题.为了减少数据稀疏性的影响,在图 ...

  5. 2022_WWW_Improving Graph Collaborative Filtering with Neighborhood-enriched Contrastive Learning

    [论文阅读笔记]2022_WWW_Improving Graph Collaborative Filtering with Neighborhood-enriched Contrastive Lear ...

  6. 2019_SIGIR_Neural Graph Collaborative Filtering

    [论文阅读笔记]2019_SIGIR_Neural Graph Collaborative Filtering 论文下载地址: https://doi.org/10.1145/3331184.3331 ...

  7. 知识图谱论文阅读(二十一)【SIGIR2019】NGCF: Neural Graph Collaborative Filtering

    题目:Neural Graph Collaborative Filtering 代码: https://github.com/xiangwang1223/neural_graph_collaborat ...

  8. 论文笔记(Neural Graph Collaborative Filtering)

    神经图协同过滤 论文链接:Neural Graph Collaborative Filtering, SIGIR'19 原理:在 user-item interaction graph 上使用 GNN ...

  9. 矩池云上复现论文 Neural Graph Collaborative Filtering 环境复现

    矩池云上复现论文 Neural Graph Collaborative Filtering 环境复现 Neural Graph Collaborative Filtering (NGCF) is a ...

最新文章

  1. 一文详解面向多级多模态场景的召回引擎
  2. Oracle 性能相关常用脚本(SQL)
  3. grabcut.cpp:380: error: (-215) !bgdSamples.empty() !fgdSamples.empty() in function initGMMs
  4. 洛谷 - P1198 - 最大数 - 线段树
  5. Linux字符设备驱动框架
  6. LeetCode 848. 字母移位(前缀和+取模)
  7. 我的世界java加入更多床_《我的世界》床的N种玩法,教你如何更快地入眠
  8. 天庭最牛系统 推荐下载_PPT中有哪些特别好用的插件?(含下载链接)
  9. Eclipse — 快速生成提示代码和快速导包
  10. 数据挖掘-----Apriori算法
  11. 用React加CSS3实现微信拆红包动画
  12. 绿城中国的数字化转型之大中台实践
  13. 机器人潘森护盾_新版潘森无伤抗塔 还能抵消死歌大招?E技能护盾机制全解析...
  14. numpy与scipy安装
  15. Java中枚举类的ordinal()方法
  16. CSS超链接标记大全
  17. NTP网络校时(北斗卫星授时设备)技术核心源码让网络时间同步不再难
  18. Python学习小组课程P2-Python基础(2)文件操作
  19. 深度学习机器学习面试题(理论基础)
  20. 中点画线法(计算机图形学)

热门文章

  1. C语言 打印2的n次方
  2. uploadify的简单使用
  3. 通过js实现图片与文字的转换
  4. ES-JOB——分布式定时任务高级使用——控制台修改任务
  5. 基于卷积自编码网络结构的图像修复
  6. 吴恩达AI FOR Everyone|人工智能入门笔记|
  7. [编译原理]DO-WHILE循环语句的翻译程序设计(LR(1)方法、输出四元式)C++实现
  8. Android 仿微信语音聊天,正式加入字节跳动
  9. android 高德地图之poi搜索功能的实现
  10. 手机微信群控源码二次开发