[sampling] MixGCF: An Improved Training Method for Graph Neural Network-based Recommender Systems

Info

KDD2021的文章,采样方法相关

MixGCF: An Improved Training Method for Graph Neural Network-based Recommender Systems

代码已经开源:
https://github.com/huangtinglin/MixGCF

文章提出了一种新的采样方法,使用该方法生成的负样本能让推荐效果更好
这里从文章里面补充一下推荐系统采样相关的知识:
首先数据集是implicit dataset,只有交互记录,没有交互的评分、评论等反映偏好等信息。在该数据集中,所有交互过的行为统一视为正样本,没有发生过交互的物品(往往很多)可以采样出一部分作为负样本
和正样本相似的负样本称为:hard negatives。研究认为采样出hard negatives会对模型帮助更大,因为模型能更好的学习到正负样本的边界。

1 Motivation

在推荐任务里面负样本的采样方法很重要,负样本是影响推荐效果的因素之一
过去的工作只从真实的数据里面选取负样本,而忽略了Embedding的信息
为此文章提出了一种新的采样方法,该方法不会直接从数据集里面挑选负样本,而是经过数据增强、聚合的方法获取虚拟的负样本以及它的表示

2 Contribution

提出了新的采样方法
设计了MixGCF采样框架,能够直接应用在GNN-based的推荐model上
使用该方法的推荐系统效果提升很大

3 Solution

采样流程图
在这里插入图片描述

一共三个步骤
input:大小为M的负样本候选集、正样本

如何选取M个负样本原文说参照了这两篇论文的设定,具体做法该文章没有说。
Rex Ying, Ruining He, Kaifeng Chen, Pong Eksombatchai, William L Hamilton, and Jure Leskovec. 2018. Graph convolutional neural networks for web-scale recommender systems. In KDD. 974–983.
Jui-Ting Huang, Ashish Sharma, Shuying Sun, Li Xia, David Zhang, Philip Pronin, Janani Padmanabhan, Giuseppe Ottaviano, and Linjun Yang. 2020. Embeddingbased Retrieval in Facebook Search. In KDD.

output:虚拟负样本的embedding(虚拟的意思是这个负样本不是数据集中某个真实的item)

Positive Mixing
Hop Mixing
Pooling

最终生成 e v − e_{v^-} ev 负样本的embedding

3.1 Positive Mixing

根据前文提到的理论:hard negatives会对模型帮助更大,因为模型能更好的学习到正负样本的边界,因此作者想到尽可能的选出那些和正样本相近的负样本
又受到以往mixup方法的启发,作者这里采用公式5将正样本的embedding插入到负样本中
在这里插入图片描述
l是表示第几跳,alpha是0到1之间的参数

3.2 Hop Mixing and Pooling

对于每一层(0<= l <=L)GNN,作者采样出一个negative embedding
例如L=2时,采样出来的embedding可能是
在这里插入图片描述

最后我们生成的 e v − e_{v^-} ev 通过公式6生成
在这里插入图片描述

f p o o l f_{pool} fpool 是GNN-based recommender中的pool操作(sum-pool,avg-pool,concat-pool等等)
pool操作示例:
在这里插入图片描述

接着作者提供了一个方法选择每一层GNN的负样本
在这里插入图片描述

f Q ( u , l ) f_Q(u,l) fQ(u,l) 会返回和target user最相近的embedding,我们把这个embedding和该层所有负样本的embedding相乘,然后选取得分最高的那个负样本即可

公式8原文有一段研究工作支撑,这里就不贴了

hop mixing的原理图
在这里插入图片描述

4 Evaluation

目标函数是使用BPR loss
在这里插入图片描述

作者提供了伪代码描述采样流程
在这里插入图片描述
baseline:

GNN-based model
LightGCN
NGCF
PinSage

采样方法:

Random negative sampling (RNS), 随机采样
Dynamic negative sampling (DNS), 选出那些推荐系统评分最高的物品作为负样本,这样选出的样本更接近hard negatives,也和本文的思想相近
IRGAN,使用GAN来生成负样本
AdvIR,和IRGAN的类似
Markov chain Monte Carlo negative sampling (MCNS),通过逼近正样本分布来对负样本进行采样

实验结果:
在这里插入图片描述

可以看到DNS是采样方法里面最强的baseline
然后作者还做了很多消融实验,这里就不贴了

5 Summarization

一篇采样相关的文章,发表在KDD21上
把正样本的emb混合在负样本的emb中,然后再通过GNN来聚合负样本emb的信息,最后通过Pooling得到最终的负样本emb
idea直接,做法简单,效果好,写作质量也很高
最后作者称将来将进一步研究 MixGCF 中提出的用于图和关系数据预训练的技术,以学习数据的强泛化表示
该作者还中了一篇WWW21,在以往的文章也有介绍:

https://zhuanlan.zhihu.com/p/378558750

  • 2
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值