对比学习 Contrastive Learning
概述
一种通过拉近正样本对、推远负样本对来学习高质量表征的机器学习范式,在推荐系统中用于增强用户和物品的向量表示。
关键内容
-
核心思想:通过构造正样本对(相似实例)和负样本对(不同实例),训练模型使正样本对在表征空间中靠近、负样本对远离。典型损失函数为 InfoNCE/NT-Xent。
-
与 BPR 的对应关系:BPR 可理解为对比学习的早期实践。BPR 的正样本 = 用户交互过的物品,负样本 = 用户未交互的物品,损失函数 ln σ(x̂_ui - x̂_uj) 与 InfoNCE 结构一致。当 InfoNCE 只使用一个负样本时退化为 BPR Loss。
-
现代图对比学习推荐:SGL、SimGCL、LightGCL 等模型组合两种损失:L = L_BPR + λ · L_CL,其中 L_BPR 负责排序学习,L_CL 负责表征学习,两者互补提升推荐质量。
-
与 BPR 的关键差异: | 维度 | BPR (2009) | 现代对比学习 (SimCLR 等) | |------|-----------|------------------------| | 正样本 | 用户交互过的物品 | 同一实例的不同增强视图 | | 负样本 | 用户未交互的物品 | 不同实例 | | 采样策略 | 均匀随机采样 | Mini-batch 内采样 |
-
数据增强策略:对比学习依赖数据增强构造正样本对,在推荐系统中常见的增强方式包括图结构扰动(边 dropout)、特征掩码、视图生成等。
-
在推荐系统中的价值:对比学习通过自监督信号增强表征质量,尤其在数据稀疏场景下能有效缓解冷启动问题,提升模型的泛化能力。
来源
- BPR 论文 — Rendle et al. (2009) UAI 2009, 现代视角审视:对比学习先驱分析