WSDM 2024 | LLMs辅助基于内容的推荐系统增强BPR训练数据

news2025/1/24 17:50:50

本文提出了一种简单而有效的基于LLMs的图数据增强策略,称为LLMRec,以增强基于内容的推荐系统。LLMRec包含三种数据增强策略和两种去噪策略。数据增强策略包括从文本自然语言的角度挖掘潜在的协同信号, 构建用户画像(LLM-based), 并强化item side information(LLM-based)。去噪则是分别针对增强的边和特征来进行drop和masked auto-encoder的操作。实验在真实的基于内容的推荐系统数据集上进行(Netflix, MovieLens),数据集与代码均已开源。目前LLMRec已经被WSDM2024录取接收为oral presentation.

image.png

论文题目:

LLMRec: Large Language Models with Graph Augmentation for Recommendation

论文链接: 

​​​​​​https://arxiv.org/abs/2311.00423

代码链接:GitHub - HKUDS/LLMRec: [WSDM'2024 Oral] "LLMRec: Large Language Models with Graph Augmentation for Recommendation"

01. 背景问题和解决思路

1.1 多模态推荐背景

多模态推荐系统引入多种辅助内容,有助于解决推荐系统中的数据稀疏性问题。当前主流的推荐系统(如亚马逊、Netflix)都采用了多种模态内容,例如文字标题、视觉图片和视频、背景音乐,以吸引用户并提升推荐结果的质量。通过提供吸引人的多模态内容,即使在冷启动和会话推荐场景下,也能够迅速捕捉到用户的真实个性化偏好。

image.png
Amazon多模态推荐系统
image.png
Netflix多模态推荐系统

1.2 基于内容的推荐存在的问题与解决方案

然而,辅助的多模态内容使用时不可避免地引入一些问题,如噪声和低质量内容。受到LLMs在知识储备和自然语言理解能力方面的启发,这篇工作提出了使用LLM来增强多模态内容,以解决上述问题。展开来讲,将大型语言模型(LLMs)应用于推荐系统已成为最近的研究热点,而如何有效地将LLMs应用于推荐系统一直是一个未解决的问题。

一方面,经典的协同过滤(CF)范式经过多年的发展,已经成为学术界和业界共同努力下最有效的范式。另一方面,LLMs存在幻觉问题(Hallucination),因此很难适应需要准确预测用户偏好的推荐系统。本研究提出一种将LLMs用于推荐系统的数据增强方法,即利用LLMs丰富的知识和卓越的自然语言理解能力基于文本模态来进行推荐系统的增强。具体而言,LLMRec利用LLM来增强两个方面的内容:用户与物品之间的交互和文本模态的信息,包括用户画像和物品属性。这种方法既能保证基本推荐系统的准确性,又充分利用数据集中的文本信息和大型语言模型的能力,强调了将LLMs用于增强推荐系统的意义。

image.png

此外,为了确保增强数据的可靠性,LLMRec采取了以下措施针对上述两个方面:i) 设计了用户与物品交互的剪枝策略,以排除不可靠的交互信息;ii) 使用MAE(Masked Auto-Encoder,掩码自编码器)技术对物品特征进行处理,以使编码器更鲁棒能够不敏感于噪声和低质量内容的干扰。通过LLM增强多模态内容,这篇工作能够在约束噪声的情况下有效解决推荐系统中的噪声和低质量问题,提高推荐结果的准确性和个性化程度。这种方法不仅能够改善用户体验,还有助于推动推荐系统在各个应用领域的发展。

1.3 拥有辅助信息推荐系统的数据增强范式

普通的有基础模态信息内容的推荐系统输入:由模态信息编码的特征 F + 历史交互的隐式反馈。

image.png

有数据增强的推荐系统输入:增强的特征 F + 增强的隐式反馈。

image.png

02. 存在的挑战和应对方案

2.1 如何让LLMs进行推荐任务?

大型语言模型具备自然地执行自然语言处理(NLP)任务的能力,然而迄今为止,它们并未专门设计和训练用于推荐系统。值得注意的是,目前主流的公平推荐测试大多采用全项排名(all-item rank),而业界在线的召回、粗排和精排任务所涉及的商品数据量也相当庞大。因此,让受到“max token length”限制的大型语言模型进行推荐和测试似乎是一项具有挑战性的任务。

为了克服这个问题,LLMRec提出了一种创新的方法,即通过基础推荐模型(例如,LightGCN)获取数量有限的商品候选集,供大型语言模型选择。这一策略旨在解决语言模型输入长度受限的问题,为推荐系统引入了一种有效的补充手段。通过借助传统推荐模型的筛选,LLMRec在面对大规模商品数据和语言模型输入限制的情境下提供了一种切实可行的解决方案。这一创新性方法为推荐系统的进一步发展提供了新的思路和可能性。

2.2 如何保证增强的模态内容的可靠性,避免噪声的影响?

基于LLM的数据增强实质上是为推荐系统引入外部知识,尽管这些知识源于真实世界(例如新闻、论坛、维基百科等互联网上的大量文本),但在特定任务和数据集中,噪音是不可避免的。如何最大程度地确保数据增强的可用性和可靠性成为一个关键问题。

为解决这一问题,LLMRec提出了两种不同的方法,分别面向增强了的隐式反馈和特征。对于隐式反馈,LLMRec采用了剪枝机制,剔除不可靠的部分,以确保增强后的数据的准确性和可信度。而对于特征,LLMRec引入了MAE(masked auto-encoder),以减轻编码器对特征的依赖,从而提高整体系统的鲁棒性。这两种方法的结合旨在应对数据增强中的噪音问题,使得系统更加稳健,并在真实应用场景中更具实用性。通过这样的优化,LLMRec致力于为推荐系统的性能提供更加可靠和有效的解决方案。

03. 方法

3.1 利用文本模态内容通过LLM进行隐式反馈的增强

用LLM进行隐式反馈的增强的过程是:

  • step1: 利用用户的历史互动商品以及其文本模态内容与上述候选集构建提示(prompt)。

LLM-based User Profile Augmentation Prompt:

Recommend user with movies based on user history that each movie with title, year, genre. History: [332] Heart and Souls (1993), Comedy|Fantasy [364] Men with Brooms(2002), Comedy|Drama|Romance Candidate: [121]The Vampire Lovers (1970), Horror [155] Billabong Odyssey (2003),Documentary [248]The Invisible Guest 2016, Crime, Drama, Mystery Output index of user's favorite and dislike movie from candidate.Please just give the index in [].

Completion:

248 121

  • step2: 将提示(prompt)输入给LLM,以从候选集中为用户 u 选择一个正样本和一个负样本,形成一个BPR训练三元组。

image.png

  • step3: 使用LLM从文本模态的角度选择样本集,并将其与原始的BPR训练数据合并,从而获得最终的强化BPR训练数据。

image.png

这种基于LLM的数据增强有以下优点:

  • 这种方式充分发挥了数据集中的文本模态信息,巧妙规避了仅依赖基于 ID 的交互而导致的数据集中信息的浪费问题。通过整合文本信息,LLMRec更全面地捕捉了用户与商品之间的关系,为推荐系统提供了更为丰富且深刻的理解。这种多模态的策略不仅提高了模型对数据的充分利用,同时也使其在处理真实世界推荐场景时展现出色。

  • 这种方式基于语义文本信息进行用户-商品交互的预测,能够直观地建模用户的交互偏好。通过利用语义信息,该模型更准确地捕捉用户对商品的偏好,从而提高了交互预测的精度和表现。这种基于语义文本的方法为推荐系统带来了更深层次的理解和更强大的预测能力,为用户提供了更符合其个性化需求的推荐服务。

  • 未经用户互动的商品不一定意味着用户不喜欢,但通常被误认为是负样本;而用户已经互动过的商品也有可能是误选。基于LLM的隐式反馈增强是基于真实知识和用户互动记录进行样本选择,可以在一定程度上纠正这些错误。这一方法借助LLM的自然语言理解能力,更准确地捕捉用户的隐含偏好,为推荐系统提供更可靠的样本集,从而提高模型的性能和推荐质量。

3.2 用LLM进行文本模态内容的增强

用LLM进行文本模态内容的增强的过程是:

  • step1: 利用数据集中的文本信息和交互记录构建prompt。

  • step2: 将prompt输入LLM得到生成的item attribute/user profile。

LLM-based User Profile Augmentation Prompt:

Generate user profile based on the history of user, that each movie with title, year, genre. History: [332] Heart and Souls (1993), Comedy|Fantasy [364] Men with Brooms (2002), Comedy|Drama|Romance Please output the following infomation of user, output format: {age: , gender: , liked genre: , disliked genre: , liked directors: , country: , language: }

Completion:

age: 50, gender: female, liked genre: Comedy|Fantasy, Comedy|Drama|Romance, disliked genre: Thriller, Horror, liked directors: Ron Underwood, country: Canada, United States, language: English


LLM-based Item Attributes Augmentation Prompt:

Provide the inquired information of the given movie. [332] Heart and Souls (1993), Comedy|Fantasy The inquired information is: director, country, language. And please output them in form of: director, country, language

Completion:

Ron Underwood, USA, English

  • step3: 将数据增强得到的item attribute/user profile用有embedding能力的LLM进行编码。

image.png

  • step4: 将编码得到的增强了的特征用作推荐系统的user和item的节点特征,作为除原始多模态特征以外的补充特征。

image.png

3.3 模型优化与去噪

为了保证LLM增强的数据的可靠性,LLMRec针对增强了的隐式反馈和节点特征分别设计了去噪机制。

3.3.1 基于文本模态信息预测的潜在隐式反馈的去噪。

image.png

隐式反馈去噪的具体过程是将负号之前的loss value进行生序排序,取前top-N。这可以避免不可靠的梯度反馈对优化产生较大影响,从而使优化过程更加稳定和有效:

image.png

3.3.2 特征的MAE(masked auto-encoder)

image.png

对文本模态增强的特征进行MAE能让encoder对特征不那么敏感以增强模型对特征中噪声的鲁棒性。

  • step1: Mask掉一定数量的特征, 用mask token替代。

image.png

  • step2: 用回归loss约束还原被mask掉的特征。

image.png

04. 增强的模态和多模态数据集

4.1 制作并公开多模态数据集

(适用多模态推荐代码框架LLMRec/LATTICE/MMSSL/MICRO,无需数据预处理)

该工作制作了Netflix和MovieLens两个多模态推荐数据集,解决了多模态推荐领域一直以来的数据集稀缺问题。

本研究针对多模态推荐领域的数据集稀缺问题采取了积极措施,成功创建了多模态推荐数据集Netflix。这一举措不仅填补了该领域数据资源的空白,而且为研究和实践提供了更具挑战性和现实意义的基础。这两个数据集的引入为广大研究者提供了更多实验和评估的机会,促使更深入地探究多模态推荐系统的性能和创新。这不仅推动了领域内的前沿研究,同时为未来多模态推荐技术社区的发展贡献了一份力量。

Netflix数据集

Netflix数据集是基于Kaggle网站发布的原始Netflix Prize数据集创建的多模态数据集。这个数据集的格式与目前多模态推荐领域的最新方法(如MMSSL、LATTICE、MICRO等)完全兼容。在文本模态方面,基础信息包括了电影的‘title’和‘year’;而在视觉模态方面,电影的海报则是通过网络爬取的。本研究提供了一个经过预处理的Netflix数据集,可直接供LLMRec、MMSSL、LATTICE和MICRO等多模态推荐模型使用,无需进行额外的数据预处理。这包括(1)原始图像和文本,(2)基本的用户-项目交互和多模态信息,以及(3)LLM增强的内容。这一预处理的数据集不仅为研究者提供了便捷的使用资源,同时也确保了数据的一致性和高质量,为多模态推荐研究提供了可靠的基础。

文本模态

image.png
(1)Kaggle网站上描述的有关Netflix的信息,(2)来自原始Netflix Prize数据的文本信息,(3)由LLM增强的文本信息。

视觉模态

视觉信息是通过网络爬虫获取的。下方的图片展示了通过使用Netflix Prize Data中的项目信息进行网络爬虫,成功获取的电影海报。这一过程不仅确保了数据集的多模态性,同时也保证了视觉模态的信息来源真实可信。这些图片的获取是在遵循相关法规和道德准则的前提下进行的,为多模态推荐数据集的建设提供了更为详尽和全面的视觉信息。

image.png
多模态推荐数据集下载

image.png
MovieLens数据集

MovieLens数据集是由明尼苏达大学的GroupLens发布的。这篇工作收集了 'title'、'year' 和 'genre' 作为基本的与项目相关的文本信息,而视觉内容是通过MovieLens上的每个项目的URL获取的。

4.2 原始数据集与文本增强

增强的数据包含了加强的用户-项目交互边以及用户/项目节点的属性和特征。对于用户增强的信息,涵盖了“age, gender, liked genre, disliked genre, liked directors, country, and language”等方面;而对于项目增强的信息,包括“director, country, language”。接着,这些增强信息将被编码成特征,以供推荐模型的编码器使用。在这个过程中,CLIP-ViT和Sentence-BERT分别担任视觉和文本信息的编码器。这一多层次的信息编码过程旨在全面捕捉用户和项目的多样性特征,为推荐系统提供更为准确和个性化的建模。

image.png

05. 实验结果

5.1 主实验

LLMRec与基准模型进行了对比,主要包括通用协同过滤(general CF)和多模态推荐方法。更详细地划分可以涵盖通用协同过滤、包含辅助信息的推荐系统、带有数据增强的推荐系统以及自监督推荐系统。LLMRec通过显式增强用户-物品交互边缘和提升辅助信息的质量,表现优越于基准模型。值得一提的是,该模型基于LATTICE的编码器,包括ID对应编码器和特征编码器。这一改进凸显了框架的有效性,使其在各个方面都超越了传统的推荐方法,为推荐系统的性能提供了有力的支持。

image.png

5.2 消融实验

消融实验主要聚焦在数据增强和去噪两个方面。在w/o-u-i(没有用户-物品交互)的情况下,即消除了LLM增强的隐式反馈,结果显著下降。这表明LLMRec通过引入上下文知识,增强了潜在的监督信号,更好地捕捉用户的偏好。

在w/o-u的情况下,即移除了LLMRec的用户画像增强,性能下降。这表明基于LLM的用户辅助信息能够有效地通过历史交互和物品端知识综合总结出有用的用户偏好概况。

在w/o-u(去除噪声)的情况下,即去除了噪声剪枝,性能也下降。这表明消除嘈杂的隐式反馈信号的过程对性能有帮助。这一系列实验证明了LLMRec在数据增强和去噪方面的关键作用,以及其在提高推荐系统性能方面的显著优势。

image.png

5.3 参数实验

5.3.1 LLM的参数的影响

image.png

5.3.2 Candidates数量的影响

image.png

06. 总结与展望

本研究聚焦于设计LLM增强多模态推荐模型,以有效应对稀疏的隐式反馈信号和低质量附加信息的挑战。通过对用户交互偏好的建模和去偏商品属性,我们提出了一种解决方案。为确保增强数据的质量,我们引入了一个去噪的增强鲁棒机制。尽管目前我们主要集中在使用LLMs对文本信息进行增强,未来的研究方向应该更进一步。

图片来自“Recommender Systems in the Era of Large Language Models (LLMs)”
图片来自“Recommender Systems in the Era of Large Language Models (LLMs)”
在接下来的工作中,我们计划基于现有的多模态LLMs,扩展我们的方法,以对多个模态的内容进行增强。这一步骤将使我们能够更全面地捕捉用户和商品之间更复杂的关系,为推荐系统提供更准确和全面的信息。通过结合多模态数据,我们期望提高模型的性能,使其在真实世界的推荐任务中表现更为出色。

关于TechBeat人工智能社区

TechBeat(www.techbeat.net)隶属于将门创投,是一个荟聚全球华人AI精英的成长社区。

我们希望为AI人才打造更专业的服务和体验,加速并陪伴其学习成长。

期待这里可以成为你学习AI前沿知识的高地,分享自己最新工作的沃土,在AI进阶之路上的升级打怪的根据地!

更多详细介绍>>TechBeat,一个荟聚全球华人AI精英的学习成长社区 

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

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

相关文章

JavaScript 特殊数据类型

JavaScript 特殊数据类型 目录 JavaScript 特殊数据类型 一、空值(null型) 二、未定义值(undefined型) 三、转义字符 JavaScript的特殊数据类型有3种: (1)空值(null型&#xf…

【hacker送书第6期】深入理解Java核心技术

第6期图书推荐 内容简介作者简介精彩书评参与方式 内容简介 《深入理解Java核心技术:写给Java工程师的干货笔记(基础篇)》是《Java工程师成神之路》系列的第一本,主要聚焦于Java开发者必备的Java核心基础知识。全书共23章&#xf…

Go语言基础:包、函数、语句和注释解析

一个 Go 文件包含以下几个部分: 包声明导入包函数语句和表达式 看下面的代码,更好地理解它: 例子 package mainimport "fmt"func main() { fmt.Println("Hello World!") }例子解释 第 1 行: 在 Go 中&am…

nodejs 沙盒逃逸

1.[GFCTF 2021]ez_calc 一道很有意思的一道nodejs的题 沙箱逃逸和绕过: F12 看源码 if(req.body.username.toLowerCase() ! admin && req.body.username.toUpperCase() ADMIN && req.body.passwd admin123){ // 登录成功&am…

sqli-labs靶场详解(less32-less37)

宽字节注入 原理在下方 目录 less-32 less-33 less-34 less-35 less-36 less-37 less-32 正常页面 ?id1 下面有提示 获取到了Hint: The Query String you input is escaped as : 1\ ?id1 看来是把参数中的非法字符就加上了转义 从而在数据库中只能把单引号当成普通的字…

顺丰JAVA开发一面—面试实战经验分析【已通过】

文章目录 面试总结面试开始项目相关基础知识反问环节 顺丰JAVA开发一面面试过程中的问题确实涵盖了很多方面,从项目架构到基础知识再到具体技术细节都有所涉及。 面试官的提问风格也是比较开放的,注重考察面试者的深度理解和解决问题的能力。以下是对每个…

彩虹云商城搭建教程+源码程序

前言:域名服务器或宝塔主机商场程序在线云商城 随着电子商务的快速发展,越来越多的企业开始意识到开设一个自己的电子商城对于销售和品牌推广的重要性。然而,选择一家合适的网站搭建平台和正确地构建一个商城网站并不是一件容易的事情。本文…

基于Qt MP3音频播放器示例(可制作音频播放器)

​本次MP3文件也给出来,方便大家调试。话不多说直接上源码。 整个项目下载地址:CSDN:GetCode 昵称-》Qt魔术师:https://gitcode.com/m0_45463480/QtMP3/tree/main## .pro # 指定项目类型为应用程序。TEMPLATE = app# 指定项目的名称为musicplayerTARGET = musicplayer# 添…

八、hdfs文件系统副本块数量的配置

1、配置方式 2、实际操作演示 (1)在Hadoop用户的根目录下创建text.txt文件 (2)上传文件 hadoopnode1:~$ hdfs dfs -ls hdfs://node1:8020/ Found 4 items drwxr-xr-x - hadoop supergroup 0 2023-11-21 23:06 hdfs:/…

手势识别4:C/C++实现手部检测和手势识别(含源码下载)

手势识别4:C/C实现手部检测和手势识别(含源码下载) 目录 手势识别4:C/C实现手部检测和手势识别(含源码下载) 1. 前言 2. 手势识别模型(YOLOv5) (1)手势识别模型训练 (2)将Pyto…

Java 最全面试总结——3.多线程篇

1、说说Java中实现多线程有几种方法 创建线程的常用三种方式: 继承Thread类实现Runnable接口实现Callable接口( JDK1.5> )线程池方式创建 通过继承Thread类或者实现Runnable接口、Callable接口都可以实现多线程,不过实现Run…

基于合成数据的行人检测AI模型训练

在线工具推荐: 三维数字孪生场景工具 - GLTF/GLB在线编辑器 - Three.js AI自动纹理化开发 - YOLO 虚幻合成数据生成器 - 3D模型在线转换 - 3D模型预览图生成服务 近年来,自动驾驶汽车因其对社会的广泛影响而越来越受欢迎,因为它们提高…

乱序学机器学习——主成分分析法PCA

文章目录 概览PCA核心思想和原理PCA求解算法PCA算法代码实现降维任务代码实现PCA在数据降噪中的应用PCA在人脸识别中的应用主成分分析优缺点和适用条件优点缺点适用条件 概览 PCA核心思想和原理 PCA求解算法 特征向量表示分布的方向,特征值表示沿着个方向分布的程度…

自动锁螺丝机配件直线模组的作用

直线模组的应用非常广泛,在各种需要高精度、高效率的自动化直线运动的场合都有应用,尤其是在自动锁螺丝机中,起着关键性作用。 1、提供精确的定位和导向:在自动锁螺丝机中,螺丝的拧紧和输送都需要精确控制,…

SpringCloudSleuth+Zipkin 整合及关键包汇总

背景 整合了一下 SpringCloudSleuth Zipkin,本来是很简单的东西,但是最终导出依赖包时没注意,导致目标服务上始终没有纳入 Zipkin 的链路追踪中,本文记录这个过程及关键依赖包。 部署zipkin 官网下载最新的 zipkin 可执行包&a…

Java高级技术(反射的作用与应用场景)

一,放射 二,案例 (1),题目 (2),反射类 (3),测试类

JavaScript编程进阶 – Return语句

JavaScript编程进阶 – Return语句 JavaScript Programming Advanced – Return Statement By JacksonML 就像人们习惯的函数一样,总觉得在函数体最后需要一个return语句,标志着函数的结束,就像下面这个函数 theFunc() 那样。 function theFunc() { re…

2023年11月编程语言排行榜——你的编程语言上榜了吗?

编程语言的流行度是一个热门的话题,不同的机构和平台有不同的评判标准和排名方法。本文将以 TIOBE 编程社区指数为例,介绍 2023 年 11 月的编程语言趋势榜单,分析各种编程语言的表现和原因,以及对未来的展望。 TIOBE 编程社区指数…

【傻瓜级JS-DLL-WINCC-PLC交互】6.​向PLC里面装载数据变量

思路 JS-DLL-WINCC-PLC之间进行交互,思路,先用Visual Studio创建一个C#的DLL控件,然后这个控件里面嵌入浏览器组件,实现JS与DLL通信,然后DLL放入到WINCC里面的图形编辑器中,实现DLL与WINCC的通信。然后PLC与…

【数据结构】——解决topk问题

前言:我们前面已经学习了小堆并且也实现了小堆,那么我们如果要从多个数据里选出最大的几个数据该怎么办呢,这节课我们就来解决这个问题。我们就用建小堆的方法来解决。 首先我们来看到这个方法的时间复杂度,我们先取前k个数据建立…