论文笔记-WSDM2024-LLMRec

论文笔记-WSDM2024-LLMRec: Large Language Models with Graph Augmentation for Recommendation

  • LLMRec: 基于图增强的大模型推荐
  • 摘要
  • 1.引言
  • 2.前言
    • 2.1使用图嵌入推荐
    • 2.2使用辅助信息推荐
    • 2.3使用数据增强推荐
  • 3.方法
    • 3.1LLM作为隐式反馈增强器
    • 3.2基于LLM的辅助信息增强
      • 3.2.1用户画像与项目属性增强
      • 3.2.2辅助信息融合
    • 3.3使用去噪稳健机制训练
      • 3.3.1带噪声剪枝的增强优化
      • 3.3.2通过MAE增强语义特征
  • 4.实验
    • 4.1实验设置
    • 4.2模型性能
    • 4.3消融实验
    • 4.4超参数实验
  • 5.总结

LLMRec: 基于图增强的大模型推荐

论文: LLMRec: Large Language Models with Graph Augmentation for Recommendation
代码: LLMRec

摘要

以往的研究通过引入辅助信息来解决数据稀疏问题,但这种方法常常引发噪声、可用性差和低数据质量等问题,从而影响用户偏好的准确建模。

本文提出了一个名为LLMRec的新框架,基于LLM图增强策略提升推荐系统。LLMRec通过三种方式增强交互图:(i) 强化用户-项目交互边,(ii) 加深对项目节点属性的理解,以及 (iii) 从自然语言角度生成用户画像。此外,为确保增强数据的质量,本文还开发了一种去噪数据稳健化机制,包括噪声隐式反馈剪枝和基于MAE的特征增强技术,以优化增强数据并提高其可靠性。

1.引言

辅助信息的数据质量问题包括:i) 数据噪声:属性或特征可能与用户偏好缺乏直接相关性。ii) 数据异质性:每种信息都有独特的特征、结构和表示,忽略这种异质性会导致分布失衡。iii) 数据不完整性:项目可能有不完整的文本描述或缺少关键的属性。

本文旨在通过显式增强潜在用户-项目交互边以及改进用户/项目节点的辅助信息来克服这些挑战。首先,LLMRec利用LLMs从自然语言的角度预测用户-项目交互。与间接的ID嵌入相比,自然语言表示更直观地反映了用户偏好。其次,LLMs在大量现实世界知识上进行训练,可以理解用户偏好并提供有价值的补充信息。另外,LLMs的综合词库将嵌入统一到一个向量空间中,缩小了异质特征之间的差距,促进了编码器的计算。这样的整合防止了特征在不同向量空间中的分散,从而提供了更准确的结果。

其主要贡献可以概述如下:

  • LLMRec 是一项开创性工作,利用LLMs进行图增强,包括:i) 用户-项目交互边,ii) 项目节点属性,iii) 用户节点画像。

  • 所提出的 LLMRec 通过使 LLM 能够明确推理用户-项目交互模式,解决了隐式反馈信号稀缺的问题。

  • 通过用户/项目属性生成和去噪增强稳健机制(结合噪声反馈修剪和基于 MAE 的特征增强)解决了低质量辅助信息的问题。

2.前言

2.1使用图嵌入推荐

CF通过稀疏的隐式反馈 E + E^+ E+ 学习,旨在获取协同用户-物品对应的嵌入 E u ​ E_u​ Eu E i ​ E_i​ Ei,以进行推荐。部分推荐系统采用图神经网络(GNNs)来建模复杂的高阶用户-物品关系,将 E + E^+ E+ 视为稀疏交互图的边。因此,CF 过程可以分为两个阶段:二分图嵌入和用户-物品预测。优化协同图嵌入 E = { E u , E i } E = \{ E_u, E_i \} E={Eu,Ei} 的目标是最大化后验估计,形式化表示如下:
在这里插入图片描述
其中, p ( E ∣ E + ) p(E|E^+) p(EE+) 的目标是尽可能多地将 E + E^+ E+ 中的用户-物品关系编码到 E u ​ E_u​ Eu E i ​ E_i​ Ei 中,以实现准确的用户-物品预测。

2.2使用辅助信息推荐

为了解决数据稀疏性问题,许多研究引入了形式为节点特征 F F F 的辅助信息,将推荐器编码器 f Θ ​ f_\Theta​ fΘ 视为特征图。带有辅助信息 F F F f Θ f_\Theta fΘ 的学习过程被表述为最大化后验估计 p ( Θ ∣ F , E + ) p(\Theta|F, E^+) p(Θ∣F,E+)
在这里插入图片描述

2.3使用数据增强推荐

尽管将辅助信息引入推荐系统取得了显著进展,但低质量的辅助信息可能会削弱稀疏交互数据 E + E^+ E+ 的有效性。LLMRec 专注于用户-物品交互特征图的增强,这涉及到 LLM 增强的用户-物品交互边 E A ​ E_A​ EA 和 LLM 生成的节点特征 F A ​ F_A​ FA。增强交互特征图的优化目标为:
在这里插入图片描述

3.方法

LLMRec的框架如图1所示。
在这里插入图片描述

3.1LLM作为隐式反馈增强器

采用LLM作为知识感知采样器,从自然语言的角度对用户-物品(u-i)训练数据进行成对采样。具体而言,将每个用户的历史交互物品与辅助信息(如年份、类型)以及物品候选池 C u C_u Cu 输入到 LLM 中。然后,LLM从 C u ​ C_u​ Cu 中选择用户 u u u 可能交互的物品( i u + i^+_u iu+)或不太可能交互的物品( i u − i^-_u iu)。增强用户-物品交互边并将其纳入训练数据的过程可以形式化为:
在这里插入图片描述
其中, i u + , i u − ​ i^+_u, i^-_u​ iu+,iu 是 LLM 基于输入提示 P u U I ​​ P^{UI}_u​​ PuUI​​从候选集 C u ​ C_u​ Cu 中为用户 u u u 选择的 BPR 正负样本,增强数据集 E A ​ E_A​ EA 包含成对训练三元组 ( u , i u + , i u − ) (u, i^+_u, i^-_u) (u,iu+,iu)。文本的 u-i 增强提示 P u U I ​​ P^{UI}_u​​ PuUI​​ 包含不同的组成部分:i) 任务描述,ii) 历史交互,iii) 候选物品,以及 iv) 输出格式描述,如图 2(a) 所示。
在这里插入图片描述

3.2基于LLM的辅助信息增强

3.2.1用户画像与项目属性增强

LLM 基于辅助信息增强范式包括两个步骤:

  1. 用户/物品信息精炼。通过使用从数据集的交互和辅助信息中衍生的提示,使 LLM 生成不在数据集中的用户和物品属性。具体示例见图 2(b)©。

  2. LLM 增强的语义嵌入。增强后的用户和物品信息将被编码为特征,并作为推荐系统的输入。使用 LLM 作为编码器提供了高效且先进的语言理解能力,使得用户交互偏好画像化并消除物品属性的偏见。

形式上,基于 LLM 的辅助信息增强如下:
在这里插入图片描述
其中 f A , u , f A , i ∈ R d L L M ​ f_{A,u}, f_{A,i} \in \mathbb{R}^{d_{LLM}}​ fA,u,fA,iRdLLM 是经过 LLM 增强的用户/物品特征,具有 LLM 的隐藏维度 d L L M d_{LLM} dLLM。文本提示 P u U ​​ P^U_u​​ PuU​​ P i I ​​ P^I_i​​ PiI​​ 分别用于用户 u u u 和物品 i i i 的属性精炼。 A u ​ A_u​ Au A i ​ A_i​ Ai 表示生成的文本属性,这些属性将通过 LLM 的嵌入能力编码为特征 F A , u , F A , i ​ F_{A,u}, F_{A,i}​ FA,u,FA,i

3.2.2辅助信息融合

在获得用户/物品的增强辅助信息后,采用以下三个步骤融合信息:

  1. 增强语义投影。使用带 dropout 的线性层,不仅减少 LLM 增强的语义特征的维度,还将这些增强特征映射到它们自己的空间。

  2. 协同上下文注入。为了将高阶协同连接注入到增强特征中,LLMRec 使用轻量级的图神经网络作为编码器。

  3. 语义特征融合。将增强特征 F A ​ F_A​ FA 视为附加组成部分,而不是作为推荐系统的可学习向量的初始化。这允许使用缩放因子和归一化灵活调整 LLM 增强特征的影响。

形式上, F A ​ F_A​ FA 的融合表示为:
在这里插入图片描述
最终的预测表示 h u ​ h_u​ hu h i ​ h_i​ hi 位于 R 1 × d \mathbb{R}^{1 \times d} R1×d。用户画像为 A u ​ A_u​ Au,去偏见的物品属性为 A i ​ A_i​ Ai,原始的多模态辅助信息为 M M M。特征的具体类型为 f k ​ f_k​ fk。使用聚合权重 ω 1 ​ \omega_1​ ω1 L 2 ​ L_2​ L2 归一化来调整特征向量,以减轻分布差异,确保额外特征在推荐编码器中的有效性。

3.3使用去噪稳健机制训练

3.3.1带噪声剪枝的增强优化

本文使用并集 E ∪ E A ​ E \cup E_A​ EEA 训练推荐系统,通过增加监督信号来优化 BPR 损失,利用整合的 LLM 增强用户偏好来提升推荐系统的性能:
在这里插入图片描述
其中,正负样本对的预测分数通过最终表示 h h h 的内积获得,样本数量 ∣ E A ∣ |E_A| EA 由批量大小 B B B 和比率 ω 3 ​ \omega_3​ ω3 控制。权重衰减正则化 ∥ Θ ∥ 2 \|\Theta\|^2 ∥Θ2 ω 2 ​ \omega_2​ ω2 加权,以减轻过拟合。 σ ( ⋅ ) \sigma(\cdot) σ() 是激活函数 sigmoid,用于引入非线性。

为了增强增强数据的有效性,本文选择剔除不可靠的用户-项目交互噪声。具体来说,在每次迭代后,排序后丢弃最大的负值。这有助于优先考虑和强调相关的监督信号,同时减轻噪声的影响。形式上,带有噪声修剪的目标 L B P R ​ L_{BPR}​ LBPR 可以重写为:
在这里插入图片描述
其中,函数 SortAscend ( ⋅ ) [ 0 : N ] \text{SortAscend}(\cdot)[0:N] SortAscend()[0:N] 对值进行排序并选择前 N N N 个。保留的数量 N N N N = ( 1 − ω 4 ) ⋅ ∣ E ∪ E A ∣ N = (1 - \omega_4) \cdot |E \cup E_A| N=(1ω4)EEA 计算,其中 ω 4 ​ \omega_4​ ω4 是一个比率。该方法允许对损失样本进行控制性修剪,强调相关信号,同时减少噪声。这可以避免不可靠的梯度反向传播的影响,从而使优化过程更加稳定和有效。

3.3.2通过MAE增强语义特征

为了减轻噪声增强特征的影响,采用掩码自编码器MAE进行特征增强。形式上,选择一个节点子集 e ⊂ V e \subset V eV 并使用掩码标记 [MASK] 来掩盖它们的特征,表示为 f [ MASK ] f[\text{MASK}] f[MASK]。掩码操作可以表示为:
在这里插入图片描述
为了增强特征编码器,引入特征恢复损失 L F R ​ L_{FR}​ LFR,通过比较掩码属性矩阵与原始增强特征矩阵来实现,带有一个缩放因子 γ \gamma γ。恢复损失函数 L F R ​ L_{FR}​ LFR 定义为:
在这里插入图片描述
最终的优化目标是噪声修剪的 BPR 损失 L B P R ​ L_{BPR}​ LBPR 和特征恢复损失 L F R ​ L_{FR}​ LFR 的加权和。

4.实验

4.1实验设置

数据集:ML-10M和Netflix

基线:

  1. 一般CF方法:MFBPR,NGCF和LightGCN

  2. 带有辅助信息的方法:VBPR,MMGCN和GRCN

  3. 数据增强方法:LATTICE

  4. 自监督方法:CLCRec,MMSSL和MICRO

4.2模型性能

在这里插入图片描述
结论:

  1. LLMRec整体性能优越:LLMRec通过明确增强用户-物品交互边和提高辅助信息的质量,超越了基线模型。

  2. 辅助信息的有效性:辅助信息的整合显著增强了推荐系统的能力,MMSSL和MICRO的性能优于NGCF。

  3. 不准确的增强对模型的改进有限:LATTICE和MICRO,也利用辅助信息进行数据增强,但与LLMRec相比,改进有限。

  4. 相对于自监督学习方法的优势:MMSSL和MICRO的自监督模型在通过自监督信号解决稀疏性方面表现优异,然而并未超越LLMRec。

4.3消融实验

在这里插入图片描述
结论:

  1. w/o-u-i:禁用 LLM 增强的隐式反馈 E A ​ E_A​ EA 导致性能显著下降。这表明,LLMRec通过包含上下文知识增加了潜在的监督信号,从而更好地把握用户偏好。

  2. w/o-u:去除用户画像增强器导致性能下降,这表明增强的用户信息能够有效地利用历史交互和物品端知识来总结有用的用户偏好画像。

  3. w/o-u&i:去除用户和物品的增强辅助信息时,推荐准确性下降。这一发现表明,基于LLM的增强信息为推荐系统提供了有价值的增强数据,帮助获得高质量和信息丰富的表示。

  4. w/o-prune:去除噪声修剪导致性能下降。这表明去除噪声隐式反馈信号的过程有助于防止不正确的梯度下降。

  5. w/o-QC:当同时去除对隐式反馈和语义特征质量的限制时,性能受到影响。这表明,通过整合噪声修剪和语义特征增强,去噪数据鲁棒性机制带来了显著的好处。

4.4超参数实验

在这里插入图片描述
结论:

  1. 温度系数 τ \tau τ:温度系数 τ \tau τ 影响文本的随机性。较高的值(>1.0)增加多样性和创造性,而较低的值(<0.1)则导致更集中。如表 4 所示,增加 τ \tau τ 最初改善了大多数指标,但随后出现下降。

  2. Top-p 值 p p p:Top-p 采样根据由 top-p 参数 p p p 决定的阈值选择标记。较低的 p p p 值优先考虑可能的标记,而较高的值则鼓励多样性。较小的 p p p 值往往能产生更好的结果,可能是因为避免了未列出的候选选择。较高的 p p p 值则会因重复的 LLM 推理导致标记浪费。

  3. 候选项数量 C C C:使用 C C C 来限制基于 LLM 的推荐的物品候选项。表 5 显示 C = 10 C = 10 C=10 产生了最佳结果。较小的值限制了选择,而较大的值则增加了推荐的难度。

5.总结

本研究旨在设计增强LLM的模型,以应对稀疏的隐式反馈信号和低质量辅助信息的挑战,通过分析用户互动偏好和去偏见商品属性来实现。为了确保增强数据的质量,引入了一种去噪增强鲁棒性机制。LLMRec 的有效性得到了理论分析和实验结果的支持,展示了其在基准数据集上优于最先进推荐技术的优势。未来的研究方向包括将因果推理整合到侧信息去偏见中,以及探索上下文感知用户偏好的反事实因素。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/71475.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Ubuntu 系统 cuda12.2 安装 MMDetection3D

DataBall 助力快速掌握数据集的信息和使用方式&#xff0c;会员享有 百种数据集&#xff0c;持续增加中。 需要更多数据资源和技术解决方案&#xff0c;知识星球&#xff1a; “DataBall - X 数据球(free)” 贵在坚持&#xff01; ---------------------------------------…

Tomcat的升级

Tomcat 是一个开源的 Java Servlet 容器&#xff0c;用于部署 Java Servlet 和 JavaServer Pages&#xff08;JSP&#xff09;。随着新版本的发布&#xff0c;Tomcat 通常会带来性能改进、安全增强、新特性和对最新 Java 版本的更好支持。升级 Tomcat 服务器通常涉及到以下几个…

Python常见面试题的详解10

1. 哪些操作会导致 Python 内存溢出&#xff0c;怎么处理&#xff1f; 要点 1. 创建超大列表或字典&#xff1a;当我们一次性创建规模极为庞大的列表或字典时&#xff0c;会瞬间占用大量的内存资源。例如&#xff0c;以下代码试图创建一个包含 10 亿个元素的列表&#xff0c;在…

多个用户如何共用一根网线传输数据

前置知识 一、电信号 网线&#xff08;如以太网线&#xff09;中传输的信号主要是 电信号&#xff0c;它携带着数字信息。这些信号用于在计算机和其他网络设备之间传输数据。下面是一些关于网线传输信号的详细信息&#xff1a; 1. 电信号传输 在以太网中&#xff0c;数据是…

华为昇腾 910B 部署 DeepSeek-R1 蒸馏系列模型详细指南

本文记录 在 华为昇腾 910B(65GB) * 8 上 部署 DeepSeekR1 蒸馏系列模型&#xff08;14B、32B&#xff09;全过程与测试结果。 NPU&#xff1a;910B3 (65GB) * 8 &#xff08;910B 有三个版本 910B1、2、3&#xff09; 模型&#xff1a;DeepSeek-R1-Distill-Qwen-14B、DeepSeek…

【前端】Vue组件库之Element: 一个现代化的 UI 组件库

文章目录 前言一、官网1、官网主页2、设计原则3、导航4、组件 二、核心功能&#xff1a;开箱即用的组件生态1、丰富的组件体系2、特色功能亮点 三、快速上手&#xff1a;三步开启组件化开发1、安装&#xff08;使用Vue 3&#xff09;2、全局引入3、按需导入&#xff08;推荐&am…

关于uniApp的面试题及其答案解析

我的血液里流淌着战意&#xff01;力量与智慧指引着我&#xff01; 文章目录 1. 什么是uniApp&#xff1f;2. uniApp与原生小程序开发有什么区别&#xff1f;3. 如何使用uniApp实现条件编译&#xff1f;4. uniApp支持哪些平台&#xff0c;各有什么特点&#xff1f;5. 在uniApp中…

Ubuntu 下 nginx-1.24.0 源码分析 - ngx_pool_t 类型

ngx_pool_t 定义在 src/core/ngx_core.h typedef struct ngx_pool_s ngx_pool_t; ngx_pool_s 定义在 src/core/ngx_palloc.h struct ngx_pool_s {ngx_pool_data_t d;size_t max;ngx_pool_t *current;ngx_chain_t *chain;ng…

力扣 最长递增子序列

动态规划&#xff0c;二分查找。 题目 由题&#xff0c;从数组中找一个最长子序列&#xff0c;不难想到&#xff0c;当这个子序列递增子序列的数越接近时是越容易拉长的。从dp上看&#xff0c;当遍历到这个数&#xff0c;会从前面的dp选一个最大的数加上当前数&#xff0c;注意…

Linux | 进程控制(进程终止与进程等待)

文章目录 Linux | 进程控制 — 进程终止 & 进程等待1、进程终止进程常见退出方法1.1退出码基本概念获取退出码的方式常见退出码约定使用场景 1.2 strerror函数 & errno宏1.3 _exit函数1.4_exit和exit的区别1.4.1 所属头文件与函数原型1.4.2 执行过程差异**结合现象分析…

Android - Handler使用post之后,Runnable没有执行

问题&#xff1a;子线程创建的Handler。如果 post 之后&#xff0c;在Handler.removeCallbacks(run)移除了&#xff0c;下次再使用Handler.postDelayed(Runnable)接口或者使用post时&#xff0c;Runnable是没有执行。导致没有收到消息。 解决办法&#xff1a;只有主线程创建的…

鱼皮面试鸭30天后端面试营

day1 1. MySQL的索引类型有哪些? MySQL里的索引就像是书的目录&#xff0c;能帮数据库快速找到你要的数据。以下是各种索引类型的通俗解释&#xff1a; 按数据结构分 B树索引&#xff1a;最常用的一种&#xff0c;数据像在一棵树上分层存放&#xff0c;能快速定位范围数据…

【核心算法篇十二】《深入解剖DeepSeek多任务学习:共享表示层的24个设计细节与实战密码 》

引言:为什么你的模型总在"精神分裂"? 想象你训练了一个AI实习生: 早上做文本分类时准确率90%下午做实体识别却把"苹果"都识别成水果公司晚上做情感分析突然开始输出乱码这就是典型的任务冲突灾难——模型像被不同任务"五马分尸"。DeepSeek通…

DeepSeek应用——与PyCharm的配套使用

目录 一、配置方法 二、使用方法 三、注意事项 1、插件市场无continue插件 2、无结果返回&#xff0c;且在本地模型报错 记录自己学习应用DeepSeek的过程&#xff0c;使用的是自己电脑本地部署的私有化蒸馏模型...... &#xff08;举一反三&#xff0c;这个不单单是可以用…

2025最新智能优化算法:改进型雪雁算法(Improved Snow Geese Algorithm, ISGA)求解23个经典函数测试集,MATLAB

一、改进型雪雁算法 雪雁算法&#xff08;Snow Geese Algorithm&#xff0c;SGA&#xff09;是2024年提出的一种新型元启发式算法&#xff0c;其灵感来源于雪雁的迁徙行为&#xff0c;特别是它们在迁徙过程中形成的独特“人字形”和“直线”飞行模式。该算法通过模拟雪雁的飞行…

vscode通过ssh连接服务器实现免密登录+删除

文章目录 参考&#xff1a; 1、 vscode通过ssh连接服务器实现免密登录删除&#xff08;吐血总结&#xff09;

MySQL 主从复制原理及其工作过程

一、MySQL主从复制原理 MySQL 主从复制是一种将数据从一个 MySQL 数据库服务器&#xff08;主服务器&#xff0c;Master&#xff09;复制到一个或多个 MySQL 数据库服务器&#xff08;从服务器&#xff0c;Slave&#xff09;的技术。以下简述其原理&#xff0c;主要包含三个核…

【赵渝强老师】Spark RDD的缓存机制

Spark RDD通过persist方法或cache方法可以将计算结果的缓存&#xff0c;但是并不是这两个方法被调用时立即缓存&#xff0c;而是触发后面的action时&#xff0c;该RDD才会被缓存在计算节点的内存中并供后面重用。下面是persist方法或cache方法的函数定义&#xff1a; def pers…

设计模式相关知识点

目录 设计模式 设计模式 代码设计原则 设计模式 设计模式 干掉if...else&#xff0c;最好用的3种设计模式&#xff01; | 小傅哥 bugstack 虫洞栈 代码设计原则-CSDN博客 23种设计模式-CSDN博客 策略模式&#xff08;Strategy Pattern&#xff09;-CSDN博客 责任链模式…

ShenNiusModularity项目源码学习(9:项目结构)

ShenNiusModularity源码主要有11个project&#xff08;其实还有officialweb、test两个文件夹&#xff0c;大致有4、5个project&#xff0c;但看着跟主要项目代码没太大关系&#xff0c;暂时不管&#xff09;&#xff0c;这11个project的依赖关系如下图所示&#xff0c;其中最下…