202402 arxiv
1 intro
1.1 背景
1.1.1 推荐系统与SBR
- 推荐系统根据用户的偏好推荐相关资源
- 在现实情况下,只有有限的交互可用来检测用户意图,使得传统推荐系统不足以应对这一挑战
- ——>为了解决这个问题,研究人员提出了基于会话的推荐(Session-Based Recommendation, SBR),该方法依赖于用户行为序列进行推荐。
- 传统的SBR方法使用马尔可夫链、卷积神经网络(CNNs)、循环神经网络(RNNs)和注意力机制,来捕捉序列信号和动态用户兴趣
- 近年来,图神经网络(GNNs)被引入到SBR中,利用其建模结构信息和捕捉会话中项目间复杂转换的能力。
- GNNs方法通过将项目(item)表示为图结构中的节点,精确建模项目间的交互和关联,从而在捕捉用户偏好方面表现出色
- 尽管取得了显著进展,现有的SBR算法主要依赖于用户交互数据,忽略了与用户和项目相关的宝贵文本信息,这限制了算法捕捉互动细微差别和上下文的能力。
1.1.2 推荐系统与LLM
- 现有的LLMs能否应用于基于图的SBR任务?
- 不能
- <——SBR方法严重依赖图结构,无法直接被LLMs处理
- 不能
1.2 挑战:如何用自然语言表达基于图的SBR任务?
- 基于图的SBR任务本质上是多方面的,既包括复杂项目交互的表示,也包括用户兴趣的动态变化。
- 图的结构性质与自然语言的本质形成对比,为LLMs的适应带来了显著挑战。
1.3 论文思路
- 论文整合大型语言模型与基于图的会话推荐系统,命名为LLMGR,通过灵活适应LLMs来增强会话推荐系统
- LLMGR旨在通过利用LLMs的广泛知识和语义理解能力,解决从有限的交互数据中捕捉用户偏好的挑战
- 首先,设计了一系列引导模型进行行为模式建模和图理解任务的提示
- 这些提示结合文本模板和占位符,促进了语言和图结构信息的混合编码,使其格式适合LLMs处理
- 其次,设计了一个两阶段调优过程:
- 辅助阶段侧重于建立文本与节点的关联
- 主要阶段捕捉会话图中的行为模式
- 最后,在三个现实世界的数据集上进行了广泛的实验
- 首先,设计了一系列引导模型进行行为模式建模和图理解任务的提示
2 预备知识
2.1 问题定义
- 基于会话的推荐任务是基于用户历史行为会话构建的,并根据当前用户会话进行预测
- 在此任务中,存在一个项目集 V,其中∣V∣ 为项目的数量,所有项目都是唯一的
- 每个会话S=[v1,v2,...,vn] 由一系列用户的交互组成,其中vt 表示在 S 中时间 t 点击的项目,n 表示会话的长度
- SBR任务是预测用户在给定会话 S 中最有可能下次点击的项目
- 对于训练过程中的每个给定会话 S,有一个对应的标签 y 作为目标。
- 在训练过程中,对于给定会话中的每个项目 vt∈V,模型学习对应的嵌入向量 v∈Rd,其中 d 是节点 v 的维度。
2.2 基于图的SBR方法
- 最近的大多数SOTA SBR方法都利用GNNs来建模会话图中项目的一致性,因为GNNs在表示结构化数据和捕捉隐含依赖关系方面具有强大的能力。
- 下图展示了基于GNN的SBR的代表性整体范式。
- 基于图的SBR方法大致可以分为以下几个部分:会话图构建、信息传播和会话输出。
每一个用户的历史会话是一张图,grouond-truth是这张图的“label”
3 方法
3.1 主要架构
3.2 指令提示构建
- 为了同时使LLM能够捕捉会话图中的隐藏偏好,理解图结构,并对齐节点与其对应的文本信息,论文设计了一系列提示来为finetune LLM
3.2.1 行为模式建模提示(主要调优任务)
- 通过包含会话图和对应节点列表的指令提示来预测用户最可能下一次交互的项目
3.2.2 节点-上下文对齐提示
- 旨在促进节点信息在LLMs中的无缝整合
- 对于此对齐提示,每个节点E都将被考虑
3.2.3 对比结构感知提示
- 将图结构与自然语言空间对齐。
- 此对齐旨在使LLMs能够有效理解和解释图的结构元素
- SBR方法主要关注有向图作为输入——>将重点放在任务中找到后续节点上
3.3 混合编码层
- 提示的文本元素,如模板、标题和描述,使用LLM的分词器和词嵌入层进行处理,将其转换为标记和后续的标记嵌入
- 尽管LLMs在建模自然语言和生成合理响应方面非常强大,但由于缺乏文本上下文,它们无法理解纯ID信息。
- ——>从预训练的SBR模型(SRGNN、GCSAN、HCGR )中提取获得ID嵌入 𝑥∈𝑅𝑑 和图嵌入 𝑧∈𝑅𝑑
- 然后通过线性层转化为LLM的嵌入维度
3.4 LLM输出层
- 使用LLaMa2+LoRA
- 然后用MLP计算该概率
- 交叉熵损失
3.5 双阶段指令调优
- 由于辅助任务和主要任务之间存在显著差异,论文设计了一种交替更新参数的双阶段调优策略。
- 在这一策略中,首先针对辅助任务进行调优,以建立文本与节点之间的关联。然后,我对主要任务进行调优,以捕捉会话图中的行为模式。
- 辅助调优阶段旨在利用节点-上下文对齐提示(3.2.2)和对比结构感知提示(3.2.3)创建文本和节点ID之间的关联
- 调优混合编码层中项目线性变换的参数 Φin、LoRA模块 Φ𝐿𝑜𝑅𝐴和LLM输出层中的输出线性变换
- 在主要调优阶段,我们专注于通过行为模式建模提示(3.2.1)捕捉会话图中的行为偏好
- 解冻预训练SBR方法中的参数 Φ𝑆𝐵𝑅
- 辅助调优阶段旨在利用节点-上下文对齐提示(3.2.2)和对比结构感知提示(3.2.3)创建文本和节点ID之间的关联
- 在每个阶段,模型参数都被更新,以提高模型在SBR任务中的表现。