GraphPro-Graph Pre-training and Prompt Learning for Recommendation
1. 研究背景和动机
- 现有基于 GNN 的推荐系统大多针对静态场景,忽略了推荐的动态性,在处理新数据分布变化时存在局限性,难以适应用户偏好的变化,导致推荐效果和可扩展性受限。
2. 主要贡献
强调了有效且可扩展地预训练和微调基于图的推荐器的重要性,以适应随时间演变的用户偏好,从而在动态环境中提供最新且准确的推荐。
引入 GraphPro 框架,通过 GNN 的预训练和微调有效处理不断变化的用户偏好,提出的提示学习范式能够在时间和结构上促进相关知识从预训练模型到下游推荐任务的转移。
引入基于快照的动态推荐系统评估设置,相比于传统的单时间测试方法,更能近似真实世界的推荐场景。
通过在不同数据集上的实验展示了 GraphPro 的鲁棒性、效率和性能优势,并通过在大规模在线平台上的部署进一步验证了其有效性。
3. 方法
- Graph Pro-training with Temporal Prompt Mechanism:在实际推荐场景中,用户 - 物品交互数据不断积累,引入时间提示机制,通过相对时间编码方案捕获用户 - 物品交互的时间序列,将时间感知的上下文信息从最新的用户偏好和行为中融入,从而实现个性化和及时的推荐。具体包括:
- Temporal Prompt Mechanism:提出相对时间编码方案,与 NLP 中序列建模的最新进展类似,利用相对位置编码,避免了像 BERT 中使用绝对位置嵌入的局限性,能够更好地捕获不同时间槽中用户行为的依赖关系,具有更好的泛化能力。
- Temporal Prompt - enhanced Graph Convolutions:将相对时间编码融入图卷积中,考虑邻居间的时间信息,通过 softmax 函数对图上一阶邻居的时间属性进行处理,引入额外的归一化项到 LightGCN 的消息传递步骤中,增强了 GNN 对用户 - 物品交互随时间演变的适应性,提高了推荐的准确性和个性化程度,同时具有良好的通用性和计算效率。
- Fine - Tuning with Graph Prompt Mechanism:在微调阶段,传统的增量微调机制存在一些问题,如可能导致模型收敛到局部最优,以及计算负担较大。为了解决这些问题,引入了图结构提示机制:
- Graph - Structural Prompt Mechanism:利用预训练时间和当前时间之间的交互边缘作为提示边缘,将图在特定时间段的边缘视为离散提示,以指导预训练嵌入的传播,捕获预训练和微调时间点之间的表示偏移,为微调提供更好的时间感知初始嵌入。通过生成提示结构,结合预训练图结构和采样的未来边缘,进行前向传播生成微调的嵌入,并引入随机门控机制来减轻过拟合,提高泛化能力。
- Prompt Learning with Adaptive Gating Mechanism:为了解决时间感知图快照之间节点表示的分布偏移问题,引入了可学习的门控机制,自适应地转换输入嵌入,以建模用户 / 物品表示随时间的变化,保留做出准确未来推荐所需的信息信号,通过梯度截断防止对大规模预训练模型的直接优化,使用新的交互结构上下文微调以提高目标时间间隔的预测准确性。
4. 实验评估
- 实验设置:
- 数据集:使用三个覆盖不同真实场景的公共数据集,包括淘宝、口碑和亚马逊。
- 基线模型:包括最近的动态 GNNs 和图提示方法,如 DGCN、GraphPrompt、GPF、EvolveGCN、ROLAND 等。
- 与 GNN 推荐器集成:GraphPro 可作为插件组件与任何基于 GNN 的推荐器集成,实验中使用 LightGCN 实现,并与 SGL、MixGCF、SimGCL 等自监督学习推荐器集成进行评估。
- 评估协议:使用图快照模拟现实动态,采用两步滑动窗口技术进行学习和预测,在预训练和微调框架下进行评估,使用 Recall@k 和 nDCG@k 等标准指标。
- 性能比较(RQ1 - RQ3):
- 与基线比较:GraphPro 优于图提示和动态图学习方法,其时间提示机制和图提示设计能够有效捕获用户 - 物品交互的演变,确保知识的无缝转移,减少分布偏移;不同基线方法的性能表现复杂,EvolveGCN 在某些数据集上表现较好,但可能存在过拟合问题,ROLAND 由于模型参数更新方案复杂,可能导致表示学习受干扰,性能受限。
- 与 SOTA 方法集成:GraphPro 与各种先进推荐器集成时表现出色,具有灵活性和提升性能的能力;不同基线方法的性能根据推荐器和数据集的不同而有所变化,没有一种方法在所有场景中占主导地位;GraphPro 能够充分利用基础模型改进的表示,而一些方法如 EvolveGCN - O 则未能体现出随着基础模型提升而带来的性能增益。
- 与全数据训练比较:GraphPro 在淘宝和口碑数据集上的表现优于传统全数据训练方法,在亚马逊数据集上初始阶段具有优势;GraphPro 在训练效率上有显著提高,相比全数据训练方法在不同数据集上分别实现了 60 倍、24 倍和 81 倍的速度提升。
- 消融实验(RQ4):
- 关键组件在微调中的作用:通过移除 GraphPro 中的关键组件(Prompt Tuning、Adaptive GaTing、Interplotive Update)形成三个变体进行实验,结果表明 GraphPro 的三个关键元素都起着重要作用,任何一个元素的缺失都会降低推荐精度,延长收敛时间;结构提示和插值更新特征有助于提高准确性和避免局部最优,自适应门控特征对于加速收敛和提高准确性至关重要。
- 预训练模型的影响:通过检查四个变体(包括使用相对时间编码和不同的预训练模型架构)来评估不同预训练模型架构对微调结果的影响。结果表明,时间提示机制在预训练和微调期间都能提高收敛速度和预测准确性,使用更强大的预训练模型与改进的性能相关,体现了框架在使用强大预训练模型方面的可扩展性和适应性。
- 学习影响分析(RQ5 & RQ6):
- 微调与未微调(冷启动)节点:将用户分为微调用户和冷启动用户进行独立评估,GraphPro 能够有效增强两类用户的表示,在大多数场景中表现优于基线;GraphPro 在长期表现上更有效,能够避免陷入局部最优,实现更优的长期推荐效果。
- 学习效率:GraphPro 作为一种参数高效的方法,在预训练和微调过程中减少了可学习权重,从而降低了训练时间和计算成本;与 EvolveGCN - O 和 GPF 相比,GraphPro 在淘宝和口碑数据集上不仅性能更优,而且收敛所需的轮次更少,训练时间更短。
- 在线部署(RQ7):在一个大型在线内容平台上实施 GraphPro,用于个性化内容推荐,通过在线 A / B 测试,结果表明 GraphPro 能够有效建模不断演变的用户和物品表示,利用深度用户兴趣进行预训练和微调,显著增强了现实世界的推荐系统,并且易于部署和具有成本效益。
5. 相关工作
- GNNs 用于推荐:GNNs 在推荐系统中用于捕获多跳协作信号,如 NGCF、PinSage 等通过消息传递增强用户和物品嵌入,GCCF 添加残差结构,LightGCN 简化非线性;为解决图推荐器的稀疏性,引入了自监督技术如对比学习和生成方法。
- GNNs 的预训练和微调:研究者借鉴 NLP 的预训练和微调概念应用于 GNNs,设计了对比学习和基于信息最大化的预训练技术,以及链接预测、特征生成和基于提示的微调等创新方法,但这些方法在处理动态图学习的复杂性方面尚未完全克服,在具有时间元素的任务中性能不理想;在推荐任务中,一些方法专注于静态推荐设置,未能考虑用户偏好的动态演变,GraphPro 在处理预训练和微调中的动态图方面具有优势。
- 动态图学习:研究动态图学习的方法如 EvolveGCN、Dyngraph2vec、DGNN、ROLAND 和 WinGNN 等利用 RNNs 和循环层来捕捉图的变化,但缺乏针对动态图的专用预训练和微调策略,可能会给用户和物品表示引入噪声;DGCN 在图推荐学习中考虑了动态性,但不能处理具有演变快照的图。
- 序列推荐:序列推荐领域的一些方法如注意力 - 基于的 SASRec 和 BERT4Rec、GNN - 基于的 SURGE 和 Retagnn 以及 SSL 模型如 S3 - rec、ICL 和 DCRec 等,与本文方法类似关注时间动态,但与基于图的方法在 Top - K 项检索方面有所不同,且它们不包含明确的时间间隔。
6. 结论
本文引入的 GraphPro 框架通过动态图预训练和提示学习相结合,显著增强了推荐系统对时间动态的适应性和可扩展性,通过实验验证了其在各种时间背景下提供准确动态推荐的能力,未来研究将深入探讨 GraphPro 的可解释性,特别是提示图边缘的方面。

