今天跟大家分享一篇来自于吉林大学、香港城市大学、快手科技、西安交通大学在AAAI 2025联合发表的基于LLM的推荐系统用户模拟器。
用户模拟器能够快速生成大量实时的用户行为数据,为在线推荐系统提供测试平台,从而加速其迭代和优化。然而,现有的用户模拟器普遍存在显著的局限性,包括用户偏好建模不透明、无法评估模拟效果等。论文设计了一种由大语言模型驱动的推荐系统用户模拟器,以一种显式的方式模拟用户与商品的交互过程。 利用大语言模型的世界知识和推理能力,论文提出了一种逻辑模型实现用户商品交互模拟,并集成了统计模型提高模拟可靠性。**与现有的基于大型语言模型的方案相比,该方法在推理阶段无需调用大型语言模型,既利用了其强大的推理能力,又避免了引入额外的时间开销和幻觉问题。**通过在多个数据集上进行的定性和定量实验,论文验证了该模拟器在各种推荐场景中的有效性和稳定性。
论文:https://arxiv.org/abs/2412.16984
代码:https://github.com/Applied-Machine-Learning-Lab/LLM_User_Simulator
1 研究动机
用户在线交互数据能够反映实时反馈和偏好,对持续优化推荐系统至关重要。然而,由于收集开销和隐私问题,获取真实用户的交互数据面临诸多挑战,因此有效模拟用户交互成为亟待解决的难题。用户模拟器可以快速生成交互数据,促进推荐系统的评估,同时保护用户隐私。
推荐系统用户交互逻辑
用户与商品的交互可以分为两个阶段:首先是认识商品,即了解商品的基本信息;其次是理解商品是否符合个人兴趣。以电影推荐为例,用户首先了解电影的类型,潜在的喜好或厌恶因素等客观信息;随后,用户从主观角度评估该电影是否符合自身兴趣,通常基于历史偏好或其他用户的评价。
本文的主要贡献可以被概括为以下三点:
-
分析用户与推荐商品交互的内在逻辑,在此基础上利用大语言模型分析商品特征并提炼用户偏好,提出一种推断用户交互行为的逻辑模型,为用户行为模拟提供了新的思路和方法。
-
构建了一个由基于规则的逻辑模型和数据驱动的统计模型组成的集成模型。结合了逻辑推理和统计学习的优势,能够更有效地模仿人类的交互行为。
-
在五个基准数据集上(POI、音乐、电影、游戏和动漫领域)进行了定性和定量实验。通过在多样化的数据集上进行实验,验证了所提出方法的有效性和稳定性。
2 方法
2.1 概述
基于用户商品交互逻辑,本文设计了一种基于大语言模型的用户模拟器,用于显式地模拟用户的交互过程(如下图)。具体而言,本文通过大语言模型分析商品,生成可能的喜欢或不喜欢原因,并总结为关键词。这些关键词既基于商品的客观描述,也来源于用户的评价文本,从而涵盖了商品的客观与主观特征。
在推理阶段,给定候选商品,模拟器会将其潜在的喜好/不喜欢原因与用户历史中相似商品的交互原因进行匹配,最终预测用户的交互结果。本文综合使用匹配度、相似度计算和传统统计模型,从逻辑与统计分析两个维度共同评估交互结果,以确保模拟的可靠性。
2.2 商品描述收集
商品描述收集是用户模拟器的基础,它为后续的用户偏好分析和交互模拟提供了必要的信息。 文章通过LLM对商品的事实描述进行分析,确定商品类别(),并挖掘用户喜欢()和不喜欢()的客观原因及相关关键词。通过设计特定的提示模板(如 )引导 LLM 生成全面且有针对性的描述,并采用思维链(CoT)方法提升输出质量,最后对提取的关键词进行筛选优化。 商品描述收集分为客观商品描述收集和主观商品描述收集两部分,两个过程使用的prompt如下图所示。
-
客观商品描述收集:通过分析商品的事实性描述,确定商品的类别(如电影的类型),并从商品的基本信息(如名称、属性和类别)出发,利用LLM生成商品可能引起用户喜欢或不喜欢的客观原因。例如,在电影推荐中,LLM会根据电影的属性和类别,生成该电影的优缺点及其对应的证据和关键词。这些关键词和证据为后续的用户偏好分析提供了客观依据。
-
主观商品描述收集:用户对商品的主观看法会受到公众意见的影响。因此,文章通过分析用户评论,提取出反映用户喜欢或不喜欢情感的关键词。具体来说,根据用户的评分和评论,LLM会生成与评分相对应的商品优点及其关键词和证据。
客观商品描述收集prompt
主观商品描述收集prompt
将客观和主观商品描述收集到的关键词合并,形成全面的商品描述,为用户模拟器提供了丰富的商品信息。
2.3 逻辑模型设计
逻辑模型是用户模拟器的核心,它基于用户与推荐项目交互的基本逻辑,模拟用户对候选项目的喜好或不喜欢。逻辑模型包括关键词匹配模型和相似度计算模型。
-
关键词匹配模型:该模型专注于文本关键词的直接匹配。首先,从用户的历史交互项目中提取与候选项目相同类别的项目,然后分别提取出用户喜欢和不喜欢的项目集合。接着,计算候选项目的潜在喜欢/不喜欢原因与用户历史喜欢/不喜欢项目的原因之间的关键词匹配数量。通过比较匹配数量的多少,判断用户对候选项目的倾向。
-
相似度计算模型:为了更细致地理解用户偏好,该模型利用嵌入表示来计算候选项目的优缺点与用户历史喜欢/不喜欢项目之间的相似度。具体来说,使用BERT等预训练语言模型将关键词转换为嵌入向量,然后计算候选项目的优缺点嵌入向量与用户历史喜欢/不喜欢项目的嵌入向量之间的余弦相似度。通过比较相似度的大小,进一步判断用户对候选项目的倾向。
2.4 统计模型引入
为了提高用户交互模拟的准确性和可靠性,文章引入了数据驱动的统计模型。该模型采用深度模型(如SASRec),在用户的历史交互数据上进行预训练,以捕捉用户行为的统计规律。预训练好的统计模型能够为用户模拟器提供一个基于数据的预测结果,增强模拟的稳定性。
2.5 集成模型构建
将上述关键词匹配模型、相似度计算模型和统计模型组合成一个整体的用户模拟器。在强化学习推荐系统训练中,根据三个模型的综合结果确定奖励函数(),以此来模拟用户在不同推荐场景下的行为反应。
3 实验
3.1 实验设置
数据集统计
文章选用 Yelp、Amazon Music、Amazon Games、Amazon Movie 和 Anime 等五个涵盖不同领域的数据集,将评分数据转换为二元格式(如评分≥3 记为 1,否则记为 0),以便于实验处理和分析。选用 ChatGLM - 6B 作为 LLM,并采用 A2C、DQN、PPO 和 TRPO 等具有代表性的强化学习算法进行实验,评估模拟器在不同算法环境下的性能表现。
3.2 实验结果
强化学习推荐系统性能比较
实验结果显示,DQN 算法在平均奖励、总奖励等关键指标上表现突出,优于其他强化学习算法。这主要归因于 DQN 算法在处理离散动作空间任务方面具有独特的优势,其能够更有效地估计每个动作的预期回报,并且通过经验回放和目标网络等技术进一步提升了性能。同时,各算法在推荐的喜好比例上均表现出较好的水平,这表明所提出的用户模拟器能够为不同算法提供稳定且可靠的交互环境,有效模拟用户的行为偏好。
3.3 Case study
以 DQN 算法在 Yelp 数据集上的推荐过程为例进行详细分析。在具体案例中,展示了组合模型中各个模型对推荐商品的推断细节,如对于某些推荐商品,关键词匹配模型()通过对比其与历史商品的关键词匹配情况给出相应的判断结果,相似度计算模型()则依据语义嵌入向量的相似度进行推断。特别在面对新类型商品时,虽然逻辑模型可能在精度上受到一定影响,但统计模型能够发挥其基于历史数据学习的优势进行补充,充分体现了组合模型的协同作用和优势。
如何学习大模型 AI ?
由于新岗位的生产效率,要优于被取代岗位的生产效率,所以实际上整个社会的生产效率是提升的。
但是具体到个人,只能说是:
“最先掌握AI的人,将会比较晚掌握AI的人有竞争优势”。
这句话,放在计算机、互联网、移动互联网的开局时期,都是一样的道理。
我在一线互联网企业工作十余年里,指导过不少同行后辈。帮助很多人得到了学习和成长。
我意识到有很多经验和知识值得分享给大家,也可以通过我们的能力和经验解答大家在人工智能学习中的很多困惑,所以在工作繁忙的情况下还是坚持各种整理和分享。但苦于知识传播途径有限,很多互联网行业朋友无法获得正确的资料得到学习提升,故此将并将重要的AI大模型资料包括AI大模型入门学习思维导图、精品AI大模型学习书籍手册、视频教程、实战学习等录播视频免费分享出来。
第一阶段(10天):初阶应用
该阶段让大家对大模型 AI有一个最前沿的认识,对大模型 AI 的理解超过 95% 的人,可以在相关讨论时发表高级、不跟风、又接地气的见解,别人只会和 AI 聊天,而你能调教 AI,并能用代码将大模型和业务衔接。
- 大模型 AI 能干什么?
- 大模型是怎样获得「智能」的?
- 用好 AI 的核心心法
- 大模型应用业务架构
- 大模型应用技术架构
- 代码示例:向 GPT-3.5 灌入新知识
- 提示工程的意义和核心思想
- Prompt 典型构成
- 指令调优方法论
- 思维链和思维树
- Prompt 攻击和防范
- …
第二阶段(30天):高阶应用
该阶段我们正式进入大模型 AI 进阶实战学习,学会构造私有知识库,扩展 AI 的能力。快速开发一个完整的基于 agent 对话机器人。掌握功能最强的大模型开发框架,抓住最新的技术进展,适合 Python 和 JavaScript 程序员。
- 为什么要做 RAG
- 搭建一个简单的 ChatPDF
- 检索的基础概念
- 什么是向量表示(Embeddings)
- 向量数据库与向量检索
- 基于向量检索的 RAG
- 搭建 RAG 系统的扩展知识
- 混合检索与 RAG-Fusion 简介
- 向量模型本地部署
- …
第三阶段(30天):模型训练
恭喜你,如果学到这里,你基本可以找到一份大模型 AI相关的工作,自己也能训练 GPT 了!通过微调,训练自己的垂直大模型,能独立训练开源多模态大模型,掌握更多技术方案。
到此为止,大概2个月的时间。你已经成为了一名“AI小子”。那么你还想往下探索吗?
- 为什么要做 RAG
- 什么是模型
- 什么是模型训练
- 求解器 & 损失函数简介
- 小实验2:手写一个简单的神经网络并训练它
- 什么是训练/预训练/微调/轻量化微调
- Transformer结构简介
- 轻量化微调
- 实验数据集的构建
- …
第四阶段(20天):商业闭环
对全球大模型从性能、吞吐量、成本等方面有一定的认知,可以在云端和本地等多种环境下部署大模型,找到适合自己的项目/创业方向,做一名被 AI 武装的产品经理。
- 硬件选型
- 带你了解全球大模型
- 使用国产大模型服务
- 搭建 OpenAI 代理
- 热身:基于阿里云 PAI 部署 Stable Diffusion
- 在本地计算机运行大模型
- 大模型的私有化部署
- 基于 vLLM 部署大模型
- 案例:如何优雅地在阿里云私有部署开源大模型
- 部署一套开源 LLM 项目
- 内容安全
- 互联网信息服务算法备案
- …
学习是一个过程,只要学习就会有挑战。天道酬勤,你越努力,就会成为越优秀的自己。
如果你能在15天内完成所有的任务,那你堪称天才。然而,如果你能完成 60-70% 的内容,你就已经开始具备成为一名大模型 AI 的正确特征了。