核心问题:
基于gnn的CF中的负采样在很大程度上尚未被探索,利用用户-项目图结构和gnn的聚合过程来研究负抽样,我们不是从数据中取样原始负样本,而是采用一种hop mixing技术对原始负样本进行处理,然后还是会利用聚合过程获得多层信息,最终来合成得到可靠的新负样本,使其与正样本更加相似,以达到更好的训练区别正负样本边界的效果
具体实现:
具体来说,
整体实现框架是:
首先我们是可以拥有原始的负样本(即未被观察到的items都可以被看作负样本且一般方法都是随机抽样得到负样本)本文通过mixing得到新的hard negatives samples,分为两步实现:positive mixing and hop mixing. 在正混合中,我们提出了一种插值混合方法,将正样本的信息注入到负样本中,得到hard negative samples。在hop mixing中,我们首先利用hard nagetives stategy从上述产生的每一个硬负项中提取唯一的信息,然后使用池化操作将提取的不同信息组合起来,生成虚假但有信息的负项.
MixGCF的流程如图2所示 :
Positive mixing:
为了得到fake negative vi-的embedding e_v, 我们从负样本items中,选择m个组成候选集,因为对于L层的GNN来说,我们可以得到(L+1)个 embeddings来表示项目v&#