论文出处:SIGIR 2022 CCF-A
论文地址:Hypergraph Contrastive Collaborative Filtering
论文代码:akaxlh/HCCF: HCCF, SIGIR 2022
目录
摘要
协同过滤(CF)已经成为将用户和项目参数化到潜在表示空间的基本范式,并从交互数据中获取它们的相关模式。在各种CF技术中,基于gnn的推荐系统(如PinSage和LightGCN)的开发提供了最先进的性能。然而,在现有的解决方案中,有两个关键的挑战没有得到很好的探讨:i)基于更深层次的基于图的CF架构的过度平滑效应,可能导致用户表示无法区分和推荐结果的退化。ii)监督信号(即用户-物品交互)在现实中通常是稀缺的,分布是倾斜的,这限制了CF范式的表示能力。为了解决这些挑战,我们提出了一个新的自监督推荐框架超图对比协同过滤(Hypergraph contrast Collaborative Filtering, HCCF),通过超图增强的跨视图对比学习架构来共同捕获局部和全局协作关系。特别地,设计的超图结构学习增强了基于gnn的CF范式的判别能力,从而全面捕获用户之间复杂的高阶依赖关系。此外,我们的HCCF模型有效地将超图结构编码与自监督学习结合起来,基于超图增强的自我区分来增强推荐系统的表示质量。在三个基准数据集上的大量实验表明,我们的模型优于各种最先进的推荐方法,并且对稀疏的用户交互数据具有鲁棒性。我们的模型实现代码可在https://github.com/akaxlh/HCCF上获得。
介绍
研究背景与核心问题
这篇论文聚焦于推荐系统领域的基础范式——协同过滤(CF)技术。当前基于图神经网络(GNN)的推荐模型(如PinSage、LightGCN等)虽然取得了state-of-the-art的性能,但仍存在两个关键挑战未被很好解决:
过平滑效应:随着GNN层数加深,用户表示会变得难以区分,导致推荐质量下降。论文图1通过热力图直观展示了现有模型(如LightGCN、PinSage等)存在的这一问题。
数据稀疏性:实际场景中用户-物品交互数据通常非常稀疏且分布不均,这严重限制了CF模型的表示能力。例如在Yelp数据集中,交互矩阵密度仅为0.0021。
现有方法局限性
论文分析了三类主流推荐方法的不足:
传统CF方法:如矩阵分解等,无法捕捉高阶协作信号
GNN-based方法:如NGCF、LightGCN等,存在过平滑问题
自监督方法:如SGL等,随机掩码可能丢失重要交互信息
特别指出,现有方法大多只关注局部用户-物品交互,而忽视了全局的用户间依赖关系。
HCCF的创新解决方案
论文提出超图对比协同过滤框架(HCCF),核心创新包括:
双通道建模:
局部视图:用户-物品交互图
全局视图:超图结构捕获高阶依赖
自监督对比学习:
将局部和全局表示作为对比视图
设计基于InfoNCE的对比损失函数
参数化超图学习:
低秩参数化降低计算复杂度
分层超图映射增强表示能力
技术优势
HCCF相比现有方法具有三大优势:
缓解过平滑:通过超图引入全局依赖,避免局部邻居过度平滑
增强鲁棒性:对比学习提供自监督信号,缓解数据稀疏问题
可解释性:学习到的超图结构反映用户间潜在关联模式
定义与相关工作
协同过滤的技术演进
1. 传统协同过滤方法
矩阵分解:如BiasMF通过低维潜在空间建模用户-物品交互
神经网络扩展:NCF用MLP替代内积,增强非线性建模能力
自编码器应用:AutoRec通过重建损失学习表示
2. 图神经网络革命
早期探索:GC-MC首次将图卷积应用于推荐
高阶连接建模:NGCF通过多层传播捕获多跳关系
架构简化:LightGCN去除非线性变换,验证了"less is more"的哲学
3. 当前技术瓶颈
过平滑效应:随层数增加节点表示趋于相似
数据稀疏性:长尾物品和冷启动用户表现不佳
全局依赖缺失:现有方法难以捕获非直接相连的用户关系
超图学习的创新应用
1. 超图基础理论
与传统图的区别:超边可连接任意数量节点
核心优势:自然建模高阶关系,适合群体行为分析
2. 推荐系统中的实践
HyRec:将用户作为超边连接其交互物品
DHCF:双通道跳转超图卷积
现有局限:依赖预定义超图结构,缺乏自适应学习
3. HCCF的突破
对比学习的新范式
1. 自监督学习浪潮
计算机视觉:SimCLR证明对比学习的强大表征能力
自然语言处理:InfoNCE损失在句子嵌入中的应用
图数据:GraphCL探索图级别的对比
2. 推荐系统中的应用
SGL:通过节点/边dropout生成对比视图
MHCN:最大化节点与图级别的互信息
关键挑战:如何定义适合推荐任务的语义保持增强
3. HCCF的独特视角
视图构建:局部交互图vs全局超图
信号增强:利用学到的超图结构作为自然增强
理论保证:通过梯度分析证明对困难负样本的关注
方法
数据表示与图构建
1.1 基础数据表示
设推荐系统中有个用户和
个物品,用户-物品交互数据表示为稀疏矩阵:
其中元素表示观测到正反馈(如点击、购买)。为处理数据稀疏性,采用基于度的归一化:
这里度矩阵和
分别对应用户和物品的交互次数。
1.2 嵌入初始化
初始化可训练的参数矩阵:
其中为嵌入维度(默认64),采用Xavier均匀初始化:
局部图卷积通道
2.1 轻量图卷积层
与传统GCN不同,HCCF移除了非线性变换和特征变换矩阵,每层仅保留邻域聚合:
其中残差连接防止层数加深时的梯度消失。以2层传播为例:
2.2 多阶表示融合
聚合各层表示得到最终局部编码:
这种加权平均策略被证明比直接使用最后一层表示更稳定。
超图全局编码通道
3.1 动态超图构建
传统超图需要预定义超边,HCCF创新性地通过可学习矩阵自动构建:
其中为超边数量(默认128)。超图邻接矩阵通过
计算,其元素
反映用户
和
的全局相关性。
3.2 分层消息传递
设计3层超图卷积网络:
其中为可学习的超边交互矩阵,
为LeakyReLU(负斜率0.2)。
对比学习模块
4.1 视图生成
对每个用户生成两个视图:
局部视图:
全局视图:
4.2 对比损失计算
采用InfoNCE损失函数:
其中:
为余弦相似度
为温度系数
为批次大小(默认1024)
该损失最大化正样本对$(z_i,\gamma_i)$的相似度,同时推远负样本对$(z_i,\gamma_j)_{j\neq i}$。
联合优化策略
5.1 推荐主任务
采用BPR损失优化推荐性能:
其中分别表示正负样本物品。
5.2 正则化项
控制模型复杂度:
5.3 联合训练
最终目标函数:
采用Adam优化器,初始学习率,每10个epoch衰减0.96。
复杂度优化技巧
6.1 稀疏矩阵计算
邻接矩阵乘法采用CSR格式存储和计算:
def sparse_dense_matmul(sparse, dense):
return torch.sparse.mm(sparse, dense) # 使用CUDA加速
6.2 内存效率优化
梯度检查点:在超图卷积层中缓存中间结果
混合精度训练:对
矩阵使用FP16存储
6.3 分布式训练
采用数据并行策略:
torchrun --nproc_per_node=4 train.py \
--batch_size=4096 \
--embed_dim=64
理论保证
7.1 梯度分析
对比损失对负样本的梯度为:
当较大(困难负样本)时,梯度幅值显著增强。
7.2 泛化边界
根据[2],对比学习的泛化误差上界为:
说明增大批次大小和超边数
可以提升泛化能力。
实验
实验部分在Yelp、MovieLens和Amazon-book三个基准数据集上进行了全面验证,首先将每个数据集按7:1:2划分训练/验证/测试集,采用全排序评估策略避免采样偏差,以Recall@N和NDCG@N为核心指标对比了15种基线方法(包括传统矩阵分解、GNN方法和最新自监督模型)。消融实验通过构建四个变体(-HHM移除分层超图映射、-LowR取消低秩分解、-Hyper仅用局部图、-CCL禁用对比学习)验证各模块必要性,特别针对数据稀疏场景按用户交互次数分组测试,结果显示在交互少于20次的极端稀疏用户上HCCF相比LightGCN提升31.6%,同时通过测量嵌入平滑度(MAD指标)证实模型能将过平滑程度降低7.3%,所有实验均使用Tesla V100 GPU重复5次取平均,统计检验p值<0.01确认结果显著性。