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

本文提出了一种简单而有效的基于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.mzph.cn/news/181982.shtml

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

相关文章

Adobe Illustrator绘图解决卡顿问题

最近在用AI做矢量图,但是遇到了一个很难搞的问题,当我们需要分辨率较高的图片的时候,Python用Matplotlib生成的pdf时dpi参数会设置为600及以上,但是样子的话就造成了pdf文件过大以及AI卡顿,比如,下午生成的…

解码 SQL:深入探索 Antlr4 语法解析器背后的奥秘

探寻SQL的背后机制 前言 在数据领域,SQL(Structured Query Language)是一门广泛使用的语言,用于查询和处理数据。你可能已经使用过诸如MySQL、Hive、ClickHouse、Doris、Spark和Flink等工具来编写SQL查询。 每一种框架都提供了…

F22服装管理软件系统 前台任意文件上传漏洞复现

0x01 产品简介 F22服装管理软件系统是广州锦铭泰软件科技有限公司一款专为服装行业开发的综合性管理软件。该产品旨在帮助服装企业实现全面、高效的管理,提升生产效率和经营效益。 0x02 漏洞概述 F22服装管理软件系统UploadHandler.ashx接口处存在任意文件上传漏洞…

实时天气(预报)API接口

实时天气预报API接口 一、实时天气(预报)API接口二、使用步骤1、接口2、请求参数3、请求参数示例4、接口 返回示例 三、 如何获取appKey和uid1、申请appKey:2、获取appKey和uid 四、重要说明 一、实时天气(预报)API接口 一款帮助你获取实时天气和天气预报的API接口 二、使用步…

对于 ` HttpServletResponse ` , ` HttpServletRequest `我们真的学透彻了吗

对于 **HttpServletResponse , HttpServletRequest**我们真的学透彻了吗 问题引入 PostMapping("/importTemplate") public void importTemplate(HttpServletResponse response) {ExcelUtil<SysUser> util new ExcelUtil<SysUser>(SysUser.class);uti…

RHCSA---基本命令使用

文章目录 前言一、pandas是什么&#xff1f;二、使用步骤 1.引入库2.读入数据总结 前言 Linux中终端中的很多操作都是通过命令行实现的&#xff0c;最常用的输入命令的方法有以下两种。 (1).打开自带的终端&#xff0c;类似于Windows中的CMD (2).ssh远程连接&#xff0c;关于…

基于Java SSM框架实现高校二手交易平台系统项目【项目源码+论文说明】计算机毕业设计

基于java的SSM框架实现高校二手交易平台系统演示 摘要 本论文主要论述了如何使用JAVA语言开发一个高校二手交易平台&#xff0c;本系统将严格按照软件开发流程进行各个阶段的工作&#xff0c;采用B/S架构&#xff0c;面向对象编程思想进行项目开发。在引言中&#xff0c;作者将…

如何使用群晖Synology Office结合内网穿透实现多人远程编辑文件协同办公

使用群晖Synology Office提升生产力&#xff1a;多人同时编辑一个文件 文章目录 使用群晖Synology Office提升生产力&#xff1a;多人同时编辑一个文件本教程解决的问题是&#xff1a;1. 本地环境配置2. 制作本地分享链接3. 制作公网访问链接4. 公网ip地址访问您的分享相册5. 制…

创纪云助力客服系统:通过API和无代码开发实现与电商平台的智能集成

无缝连接电商和客服系统&#xff1a;管家婆的无代码开发解决方案 在电子商务和客户服务日新月异的发展中&#xff0c;企业面临着如何提高效率和客户满意度的挑战。江苏创纪云网络科技有限公司&#xff08;INNOVATION ERA&#xff09;推出了一款无需API开发的解决方案&#xff…

Springboot的excel导出

这里导出excel用到的是 阿里巴巴的easyexcel 1、首先导入依赖 <!--alibaba easyexcel--><dependency><groupId>com.alibaba</groupId><artifactId>easyexcel</artifactId><version>2.1.6</version> </dependency> 2、…

一切为了应用!九章云极DataCanvas大模型系列成果重磅发布!

11月21日&#xff0c;「筑基赋能 智向未来」九章云极DataCanvas大模型系列成果发布会&#xff08;以下简称“发布会”&#xff09;在北京重磅召开&#xff0c;本次成果发布距离今年6月30日DataCanvas Alaya九章元识大模型公布仅4个多月&#xff0c;是九章云极DataCanvas公司大模…

如何快速上手一个自己不太熟悉的新项目?

一.熟悉新项目的步骤 第一步:了解业务 技术本身就是为了业务而服务&#xff0c;只有首先搞清楚了业务之后才真正算是步入了这个项目的大门。因此&#xff0c;要先搞清新项目&#xff1a; 是做什么的&#xff1f; 主要面向什么人群使用&#xff1f;主要提供了哪些功能&#x…

如何使用电脑添加便签,便签怎么显示桌面?

电脑便签在日常办公及生活中的应用是比较广泛的&#xff0c;通过电脑便签大家可以将一些工作计划安排的妥妥当当&#xff0c;可以将生活中比较重要的节日、重要的备忘事项统统记录下来&#xff0c;便于及时提醒或者做统筹安排。 电脑上可以使用的便签类工具也比较多&#xff0…

3DMAX二维图片对象摆放插件安装使用方法

3DMAX二维图片对象摆放插件使用教程 3DMAX二维图片对象摆放插件自动对齐相机&#xff0c;可以有效地自动将简单的2D PNG图像添加到3dMax场景中。使用3DMAX二维图片对象摆放插件&#xff0c;你可以使用一次渲染来渲染具有正确阴影的快速预览和最终图像&#xff0c;而无需稍后合成…

leetcode:414. 第三大的数

一、题目 函数原型&#xff1a;int thirdMax(int* nums, int numsSize) 二、思路 将数组降序排序。 如果数组元素个数小于3&#xff0c;直接返回第一个元素&#xff1b; 如果数组元素个数大于等于3&#xff0c;且不同元素个数小于3&#xff0c;直接返回第一个元素&#xff1b; …

李峋同款的C语言动态爱心代码来了,彩色闪动,附源码

1.前言 最近一部电视剧《点燃我&#xff0c;温暖你》可火啦&#xff0c;大家纷纷在搞男主阿瑟的同款爱心代码&#xff0c;但是虽然网上有它的源码&#xff0c;但都不是 C 语言的&#xff0c;看不懂。我看了一下这个视频&#xff0c;大致分析了一下它的运行过程。用语言描述一下…

高校学生宿舍公寓报修维修生活管理系统 微信小程序b2529

本课题要求实现一套基于微信小程序宿舍生活管理系统&#xff0c;系统主要包括&#xff08;管理员&#xff0c;学生、维修员和卫检员&#xff09;四个模块等功能。 使用基于微信小程序宿舍生活管理系统相对传统宿舍生活管理系统信息管理方式具备很多优点&#xff1a;首先可以大幅…

系列八、编程式事务

一、概述 编程式事务是指程序员手动的在业务代码中控制事务执行的流程&#xff0c;业务方法正常执行提交事务&#xff0c;业务方法执行过程中出现异常则回滚事务。 二、编程式事务环境搭建 2.1、项目概览 2.2、pom.xml <dependencies><!--spring基本依赖--><d…

被DDoS攻击了怎么办?为什么要选择高防ip?

在当今互联网高度发达的时代&#xff0c;许多企业都依赖于网络来开展业务、推广产品、提供服务。然而&#xff0c;网络攻击&#xff0c;尤其是分布式拒绝服务&#xff08;DDoS&#xff09;攻击&#xff0c;已经成为一种日益严重的威胁。面对这种攻击&#xff0c;如何保护您的业…

电脑微信多开怎么操作?电脑微信多开bat代码

电脑微信多开怎么操作&#xff1f; 方法一&#xff1a;电脑微信多开bat代码方法二 微信是我们日常使用率很高的社交软件&#xff0c;在工作中因工作需要可能会用到两个微信号&#xff0c;如果是只登录一个微信&#xff0c;另外一个微信的聊天信息很容易漏看&#xff0c;这时候微…