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.mfbz.cn/a/200379.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

JS 倒计时方法(可改造)

起因: 写好备用。 代码: // 直接把方法写在了原型上,通过原型调用 /*** 倒计时* time_str String 到期时间(2023-11-28 16:50:00)* dom_obj Object 需要显示的倒计时的dom对象*/ Date.prototype.countdown function (time_str, dom_obj…

【古月居《ros入门21讲》学习笔记】13_服务数据的定义与使用

目录 说明: 1. 服务模型 2. 实现过程(C) 自定义服务数据 Person.srv文件内容 Person.srv文件内容说明 编译配置 在package.xml文件中添加功能包依赖 在CMakeLists.txt中添加编译选项 编译生成语言相关文件 创建服务器代码&#xf…

python获取系统当前进程数和最大进程数

参考: https://blog.51cto.com/u_16213345/7115864 https://www.baidu.com/s?wdpython%20%E8%8E%B7%E5%8F%96%E7%B3%BB%E7%BB%9F%E5%BD%93%E5%89%8D%E8%BF%9B%E7%A8%8B%E6%95%B0%E5%92%8C%E6%9C%80%E5%A4%A7%E8%BF%9B%E7%A8%8B%E6%95%B0&rsv_spt1&rsv_iqid…

2023年国内主流的低代码平台

低代码开发平台(Low-Code Development Platform, LCDS)为企业和开发者提供了高效的应用开发方式。这些平台使得开发者可以通过简化的设计界面快速创建和部署应用,大大提高了开发效率并降低了开发成本。 伴随数字化转型推进,选购低…

外汇天眼:外汇市场中的“双向交易”是什么意思?

说到外汇市场,总免不了提到它双向交易的优势,很多新手会对这一点有所疑问,今天我们就帮大家解决这一个疑问。 何谓双向交易? 金融市场上,交易者最常接触到的股票,多属于单向交易。 单向交易的模式便是「先…

1688 API接口的介绍丨商品详情页接口丨搜索商品列表接口

1688,作为中国领先的B2B电子商务平台,为全球的买家和卖家提供了一站式的采购和销售服务。而它的API接口,更是开放了1688平台的核心功能,让开发者能够根据自己的需求来定制和扩展商业应用。 1688 API接口的介绍 1688 API接口提供…

初刷leetcode题目(11)——数据结构与算法

😶‍🌫️😶‍🌫️😶‍🌫️😶‍🌫️Take your time ! 😶‍🌫️😶‍🌫️😶‍🌫️😶‍🌫️…

ntopng如何将漏洞扫描与流量监控相结合,以提高网络安全性

来源:艾特保IT 虹科干货 | ntopng如何将漏洞扫描与流量监控相结合,以提高网络安全性 欢迎关注虹科,为您提供最新资讯! ntopng为人所知的“身份”是被动流量监控。然而,如今的ntopng6.0也进化出主动监控功能来&#xf…

正则表达式及文本三剑客grep,awk,sed

目录 正则表达式 前瞻 代表字符 表示次数 位置锚定 分组或其他 grep 选项 范例 awk 前瞻 awk常见的内置变量 范例 sed 前瞻 sed格式 范例 搜索替代 格式 范例 分组后项引用 格式 范例 正则表达式 前瞻 通配符:匹配的是文件名 正则表达式&a…

【带头学C++】----- 八、C++面向对象编程 ---- 8.8 内联函数 inline

目录 8.8 内联函数 inline 8.8.1 声明内联函数 8.8.2 宏函数与内联函数的区别 8.8.3 使用内联函数需注意 8.9 函数重载 8.9.1 什么是函数重载 8.9.2 函数重载的条件 8.9.3 函数重载底层原理是如何实现的? 8.8 内联函数 inline 在C中,inline是一个…

docker镜像管理命令

镜像管理命令 docker build : 命令用于使用 Dockerfile 创建镜像 docker build [OPTIONS] PATH | URL | - OPTIONS说明: --add-host :向hosts文件中添加自定义 host:ip 映射 --build-arg[] :设置镜像创建时的变量; --cache-from :指定镜像用作当前构建…

今日份推荐、无广告、超实用的5款软件

​ 大家好,我又来啦,今天给大家带来的几款软件,共同特点都是无广告、超实用,大家观看完可以自行搜索下载哦。 1.键盘锁定工具——Iwck ​ Iwck是一款简单实用的键盘锁定工具,可以让你在需要的时候暂时停止键盘的所有…

P27 C++this 关键字

目录 前言 01 this关键字的引入 02 this关键字 前言 本章的主题是 C 中的 this 关键字。 以前第一次学qt的时候就遇到了this关键字,那时候还不是很会C,所以有点懵,现在我们就来讲解以下C中的this关键字 C 中有一个关键字 this&#xff0…

dockerfile文件:copy和add 异同

相同点: 复制文件或目录: 无论是 COPY 还是 ADD 都可以将文件或目录从构建上下文复制到容器中。支持源路径和目标路径: 两者都需要指定源路径和目标路径,用于指定要复制的文件或目录在主机上的位置以及在容器中的目标路径。 不同…

新生儿脐带护理的全面指南

引言: 新生儿脐带护理是父母在宝宝刚刚来到这个世界时面临的一项重要任务。正确的护理有助于预防感染,促进脐带迅速脱落,确保宝宝的健康。本文将深入探讨新生儿脐带护理的注意事项,为父母提供详尽的指南,以确保这个过…

10年码农经验分享:程序员接外包私活的6大平台和网站

关于程序员接私活,社会各界说法不一,如果你确实急用钱,价格又合适,那就去做。 程序员接私活已经是很平常的事情了,很多程序员,通过做私活承接项目,将自己的程序能力转化为收入。 不过&#xf…

【工具使用】Keil常用的调试操作整理介绍

目录 一、软件调试使用 1.1 基本调试操作 1.2 调试窗口 二、注意事项 一、软件调试使用 1.1 基本调试操作 上文已经说过在线调试和模拟调试的配置过程,但无论是在线还是模拟调试,调试技巧工具的使用都是一样的。 点击红色d,进入调试 可…

AtCoder Beginner Contest 330 A~F

A.Counting Passes(暴力) 题意&#xff1a; 给定 n n n个学生的分数&#xff0c;以及及格分 x x x &#xff0c;问多少人及格了。 分析&#xff1a; 暴力枚举&#xff0c;依次判断每个学生的分数即可。 代码&#xff1a; #include <bits/stdc.h> using namespace s…

Wordpress自动定时发布怎么开通-Wordpress怎么自动发布原创文章

在当今数字化时代&#xff0c;博客已经成为许多人分享观点、经验和知识的重要平台。然而&#xff0c;对于博主们来说&#xff0c;每天按时发布一篇又一篇的文章可能是一项具有挑战性的任务。为了解决这个问题&#xff0c;一些创新的工具应运而生&#xff0c;其中包括WordPress的…

Doris_Doris导入常见问题

Doris数据导入错误 &#xff1a;the length of input is too larger than schema 可能原因&#xff1a;varchar长度设置过短 Doris表字段乱序 导入palo表中的csv本身无schema信息&#xff0c;csv与palo表字段顺序必须一致&#xff0c;否则会错乱 Doris数据文件中字段比表字段…
最新文章