摘要
推荐系统是目前信息传播的基石,但离线指标和在线性能之间的差异极大地阻碍了其发展。为了应对这一挑战,我们利用大型语言模型(LLM)在人类智能方面的最新突破,设想出了一个推荐模拟器。我们提出 Agent4Rec,这是一种新的电影推荐模拟器,利用基于 LLM 构建的生成式智能体,配备专门为推荐系统定制的用户配置文件、记忆和动作模块。特别是,这些智能体的配置文件模块使用 MovieLens 数据集进行初始化,以捕获用户独特的品味和社交特征;记忆模块记录事实记忆和情感记忆,并使用情绪驱动的反思机制进行集成;动作模块支持各种各样的行为,包括品味驱动和情感驱动的动作。每个智能体依靠预先实现的基于协同过滤的推荐算法,以逐页的方式与个性化电影推荐进行交互。我们深入研究了 Agent4Rec 的能力和局限性,旨在探索一个重要的研究问题:基于 LLM 构建的生成式智能体能够在多大程度上忠实地模拟推荐系统中真实的人类行为? 对 Agent4Rec 的广泛和多方面的评估突出了智能体与用户个性化偏好之间的一致性和偏差。除了单纯的性能比较之外,我们还探索了富有洞察力的实验,例如模拟过滤气泡效应并发现推荐任务中潜在的因果关系。我们的代码可在 https://github.com/LehengTHU/Agent4Rec 获取。
1.介绍
推荐系统在当代信息传播中发挥着关键作用,其能够主动塑造个人偏好和认知过程。尽管传统的有监督推荐方法取得了巨大成功并被广泛采用,但它仍然存在不足,离线指标和在线性能之间的巨大差距就证明了这一点。 这种脱节阻碍了将学术研究有效地整合到现实世界推荐的应用中,这成为了该领域未来发展的瓶颈。想象一下存在一个用于推荐系统的可配置模拟平台——该平台忠实地捕获用户意图并对人类认知机制进行编码。这样的模拟器无疑有可能彻底改变推荐领域的传统研究范式,为数据收集、推荐器评估和算法开发提供创新途径。
大型语言模型 (LLM) 的最新进展以其令人印象深刻的人类水平的智能以及对时间和空间的深刻理解,奠定了推荐模拟器范式的前景。具体来说,LLM是开发生成式智能体的基础架构。然后,这些智能体被集成到推荐环境中,在模拟器中扮演虚拟用户。然而,在这个有前途的研究方向中,开发一个忠实反映个性化用户偏好的可靠模拟器并非易事。因此,通过设计专门用于模拟真实人类行为的推荐模块,从而利用基于LLM构建的生成式智能体的潜力已成为一个关键的研究焦点。
为了弥补这一差距,我们引入了 Agent4Rec,这是一个电影推荐模拟器,由两个核心部分组成:基于 LLM 构建的生成式智能体和推荐环境(参见图 2 中的整体框架)。从用户的角度来看,我们模拟了 1,000 个由 LLM 构建的生成式智能体,每个智能体都基于 MovieLens-1M 数据集进行初始化,并由三个基本模块组成:用户配置文件、记忆和动作模块。个人配置文件模块充当个性化社会特征和历史偏好的存储库,促进用户画像与真实人类特征的匹配。记忆模块以自然语言记录过去的观看行为、系统交互和情感记忆(即用户感受和疲劳程度),从而以连贯的方式实现信息检索、偏好积累和情感驱动的反思。动作模块使这些智能体能够直接与推荐环境交互,包括品味驱动的动作(即观看或忽略推荐的电影、评分、产生观看后的感受)和情感驱动的动作(即退出系统、评价推荐列表,并表达人类可以理解的评论)。从推荐系统模拟的角度来看,电影是通过预定的推荐算法推荐的,以逐页的格式排序以模拟现实世界的推荐平台。一方面,我们的模拟器主要集成了基于协作过滤的推荐策略,包括随机、最流行的矩阵分解(MF)、LightGCN 和 MultVAE。另一方面,我们以可扩展性作为核心原则来构建模拟器。通过提供开放接口,我们使研究人员和从业者能够轻松部署他们选择的任何推荐算法。
为了系统地评估我们提出的 Agent4Rec 的有效性和局限性,我们从用户和推荐系统的角度进行了全面的实验。从用户的角度来看,我们的主要重点在于评估智能体的一致性程度。具体来说,我们使用各种指标和统计测试来评估智能体可以在多大程度上确保真实用户的社交特征、个性和偏好的一致性。在推荐系统模拟方面,我们评估了使用不同算法配置的各种推荐器。我们的评价指标涵盖多个维度,包括用户平均推荐和观看的电影数量、平均用户评分、用户参与时间和总体用户满意度。同时,从模拟器收集的智能体反馈充当增强数据,从而实现推荐策略的迭代训练和细化。随后,我们使用标准化离线指标评估反馈驱动的推荐器增强。这种将模拟反馈与传统离线评估相结合的双重方法确保了对推荐算法的全面评估。
为了探索模拟器在研究推荐任务中未解决挑战方面的潜力,我们进行了两项实验。在第一个实验中,我们在模拟器中模拟了过滤气泡效应——在这种情况下,用户持续接触相似或强化的内容,从而导致电影类型多样性的减少。这项调查旨在了解反馈循环可以在多大程度上放大这种集中推荐现象。此外,我们利用模拟器作为数据收集工具来开创面向数据的因果发现。这种方法产生了一个鲁棒的因果图,使我们能够揭示复杂的潜在因果关系,从而推断推荐系统中的数据生成进度。
我们的主要贡献总结如下:
- 我们开发了 Agent4Rec,这是一个电影推荐模拟器,利用基于 LLM 构建的生成式智能体来模拟和推断用户个性化偏好和行为模式。这些智能体凭借针对推荐设置精心设计的模块,可以模拟人类认知机制。
- 我们通过对推荐系统中基于生成式智能体的模拟进行广泛的评估,深入研究了 Agent4Rec 的功能和局限性。我们采用统计指标和测试来进行用户一致性评估,并提出考虑离线性能和模拟反馈的双重并行评估。
- 使用 Agent4Rec 作为数据收集工具,我们复制了一个普遍存在的问题——过滤气泡效应——并揭示了推荐系统场景中嵌入的潜在因果关系。这些观察结果展示了 Agent4Rec 激发新研究方向的潜力。
2.Agent4Rec
Agent4Rec作为一个电影推荐模拟器,有望准确反映用户行为,有效预测长期用户偏好,并通过利用基于LLM构建的生成式智能体的类人能力来系统地评估推荐算法。为了实现这一目标,需要考虑两个核心方面:(1)设计能够准确模仿用户个性化偏好和人类认知推理的智能体架构,(2)构建一个推荐环境,确保其可靠性、可扩展性和适应性。图 2 提供了 Agent4Rec 框架的概述。
Task Formulation。给定用户
u
∈
U
u∈\mathcal U
u∈U 和电影
i
∈
I
i ∈\mathcal I
i∈I,令
y
u
i
=
1
y_{ui}=1
yui=1 表示用户
u
u
u 观看了电影
i
i
i,并随后用
r
u
i
∈
{
1
,
2
,
3
,
4
,
5
}
r_{ui} ∈\{1,2,3,4,5\}
rui∈{1,2,3,4,5} 对其进行评分。反之,
y
u
i
=
0
y_{ui}=0
yui=0 表示用户尚未观看该电影。每部电影
i
i
i的质量可以用
R
i
=
1
∑
u
∈
U
y
u
i
∑
u
∈
U
r
u
i
R_i=\frac{1}{\sum_{u∈\mathcal U}y_{ui}}\sum_{u∈\mathcal U}r_{ui}
Ri=∑u∈Uyui1∑u∈Urui来表示,而其受欢迎程度可以用
P
i
P_i
Pi来表示。此外,电影的类型集由
G
i
⊂
G
G_i⊂\mathcal G
Gi⊂G 给出。模拟器的总体目标是忠实地提取人类真实偏好,例如用户
u
u
u 对于未看过的推荐电影
i
i
i 的
y
^
u
i
\hat y_{ui}
y^ui 和
r
^
u
i
\hat r_{ui}
r^ui。
2.1 Agent Architecture
Agent4Rec 中的生成式智能体利用 LLM 作为其基础架构,通过为推荐场景量身定制的三个特定模块来完善其功能:配置文件模块、记忆模块和动作模块。具体来说,为了模拟个性化的真实人类行为,每个智能体都集成了一个用户配置文件模块,以反映个性化的社会特征和偏好。此外,从人类认知过程中汲取灵感,智能体配备了记忆和动作模块,使它们能够存储、检索和应用过去的交互和情感,以连贯的方式生成动作。
2.1.1 Profile Module
在个性化推荐模拟领域,用户配置文件模块是基石,在智能体与真实人类行为的一致性方面发挥着至关重要的作用。 为了给生成式智能体后续的模拟和评估打下可靠的基础,使用基准数据集MovieLens-1M进行初始化。每个智能体的个人资料包含两个组成部分:社会特征和独特品味。
社会特征包含了三个关键特征,即活动性、一致性和多样性,以捕捉推荐场景中个体的性格和特征的元素。活动性量化了用户与推荐电影交互的频率和广度,区分了广泛观看和评价大量电影的用户和只观看极少数电影的用户。用户
u
u
u的活动性特征可以在数学上表达为:
T
a
c
t
u
=
∑
i
∈
I
y
u
i
T^u_{act}=\sum_{i∈\mathcal I} y_{ui}
Tactu=∑i∈Iyui。一致性深入研究用户的评分与平均电影评分的一致程度,区分具有独特观点的用户和观点密切反映流行情绪的用户。对于用户
u
u
u,一致性特征定义为:
T
c
o
n
f
u
=
1
∑
i
∈
I
y
u
i
P
i
∈
I
y
u
i
⋅
∣
r
u
i
−
R
i
∣
2
T^u_{conf}=\frac{1}{\sum_{i∈\mathcal I}y_{ui}}Pi∈I y_{ui}·|r_{ui}−R_i|^2
Tconfu=∑i∈Iyui1Pi∈Iyui⋅∣rui−Ri∣2。多样性反映了用户对各种电影类型的倾向或对特定类型的倾向。用户
u
u
u的多样性特征表述为:
T
d
i
v
u
=
∣
∪
i
∈
{
y
u
i
=
1
}
G
i
∣
T^u_{div}=|∪_{i∈\{y_{ui}=1\}}G_i|
Tdivu=∣∪i∈{yui=1}Gi∣。用户通常在这些社会特征中表现出特定的分布(例如,用户活动的长尾分布)。因此,我们根据各自的特征将它们分为三个不均匀的层次。有关这些层的数据分布和提示设计的详细说明,请参阅附录 B.1.1。
为了用自然语言对用户的个性化偏好进行编码,我们从每个用户的观看历史记录中随机选择 25 部电影。评分为 3 或以上的电影被用户归类为“喜欢”,而评分低于 3 的电影则被视为“不喜欢”。然后,我们利用 ChatGPT 提炼并总结用户表现出的独特品味和评分模式。这些个性化的电影品味作为第二个组成部分纳入用户配置文件中。
我们强调,在 Agent4Rec 中,某些个人标识符(例如姓名、性别、年龄和职业)被故意隐藏,以保证广泛的适用性并解决隐私问题。尽管这些属性可能有助于塑造其他类型的智能体,但在推荐领域内,它们并不能主导用户的电影偏好。这些偏好可以从历史观看记录、评分模式和用户交互中嵌入的见解中充分推断出来。
2.1.2 Memory Module
人类保留着不同的记忆,主要分为事实记忆和情感记忆。其中,情感记忆构成了个人历史的核心,对决策的影响更大。尽管关于生成式智能体的开创性研究详细介绍了记忆的架构,为后续探索提供了基础蓝图,但情感记忆在很大程度上被忽视了。
在我们的 Agent4Rec 中,我们在每个生成式智能体中嵌入了一个专门的记忆模块,记录事实记忆和情感记忆。事实记忆是为推荐任务量身定制的,它封装了推荐系统内的交互行为,而情感记忆则捕捉了这些交互产生的心理感受。具体来说,事实记忆主要包含推荐电影列表以及用户反馈。反馈内容涵盖用户是否观看电影、相应的评分以及潜在的退出行为等方面。另一方面,情感记忆记录系统交互过程中用户的感受,例如疲劳程度和总体满意度。我们的目标是确保生成式智能体不仅根据过去的事实交互做出反应,而且还考虑到感受,从而更接近地反映真实的人类行为。
我们以两种格式存储记忆:自然语言描述和向量表示。前者是为了便于人类理解而设计的。而向量表示则为高效的记忆检索和提取做好了准备。
为了帮助agent与推荐环境交互,我们引入了三种记忆操作:记忆检索、记忆写入和记忆反思。
- 记忆检索:基于研究[42,43]的见解,此操作帮助智能体从其记忆模块中提取最相关的信息。
- 记忆写入:此操作可以将智能体模拟的交互和相关情绪记录到记忆流中。
- 记忆反思:认识到情感对推荐中用户行为的深远影响,我们引入了情感驱动的自我反思机制。这与传统的智能体记忆设计形成鲜明对比,例如自我总结、自我验证和自我纠正,这些设计主要是为了浓缩或演绎高级事实知识,通常会忽视情感感受。在这里,一旦智能体的操作超过预定义的数目,就会触发反思过程。借助LLM的强大能力,agent可以反思其对推荐的满意度并评估其疲劳程度,从而更深入地了解其认知状态。
2.1.3 Action Module
为生成式智能体配备用户配置文件和记忆模块,使它们能够根据当前的观察表现出类似于人类的各种行为。在Agent4Rec中,我们设计了一个专门针对推荐领域定制的动作模块,其中包含两大类动作:
- 品味驱动的动作:观看、评价电影并产生观看后的感受。在Agent4Rec中,推荐的电影首先由推荐算法生成,然后以逐页的方式呈现给智能体(更多细节参见2.2节)。根据他们的品味,智能体会评估页面上的每部电影是否与他们的偏好一致。他们可能会选择观看某些引起他们兴趣的电影,而忽略其他电影,然后为他们观看的每部电影提供评分和感受。
- 情感驱动的动作:退出并评价推荐系统,并进行退出后访谈。推荐环境中的情绪可以显着影响智能体的体验,这在模拟中经常被忽视。智能体对之前推荐的电影的满意度及其当前的疲劳程度会影响其继续探索更多推荐页面或退出推荐系统的决定。为了更好地模拟这种多方面的决策,我们通过思维链增强的智能体情感推理能力。最初,智能体识别当前的推荐页面,并从其情感记忆中检索其对先前推荐的满意度。随后,智能体自主表达对当前推荐页面的满意度和疲劳程度。根据这些见解,结合其个性化活动特征,智能体决定是否退出系统。退出后,我们对每个智能体进行采访,旨在获取智能体的评分和对推荐系统的总体印象,并在导航系统时对他们的行为提供明确的解释。这种访谈式的反馈提供了对系统更丰富、更容易理解的评估,增强了传统指标的洞察力。对访谈的深入探讨可以在第 3.6 节中找到。
2.2 Recommendation Environment
Agent4Rec 模拟智能体和推荐环境之间的交互。我们讨论了与现实场景产生共鸣的环境构建的三个方面,包括电影档案生成、逐页推荐场景和推荐算法设计。
- 电影档案生成:我们构建电影档案来捕获关键电影特征,包括质量、受欢迎程度、类型和摘要。质量是根据历史评级推导出来的,受欢迎程度是根据评论的数量而得出的,而类型和摘要是由LLM生成的。我们的目标不仅仅是将电影的独特性封装在配置文件中来模拟真实用户的推荐场景。我们还旨在测试LLM是否对这部电影有潜在的幻觉。我们的方法采用few-shot学习方法,要求LLM将电影分类为 18 种类型之一,并仅使用电影标题生成摘要。如果LLM的类型分类与数据一致,则表明其对电影的了解。为了保持可靠性,导致LLM分类错误的电影会被删减,从而降低幻觉风险。这种方法确保了智能体在模拟用户行为时的可信度。更多详细信息请参见附录 B.2。
- 逐页推荐场景:我们的模拟器反映了现实世界推荐平台(如Netflix、YouTube和豆瓣)的操作,以逐页的方式运行。用户最初会在每个页面上看到一个电影推荐列表。根据他们的互动、偏好和反馈,可以设置后续页面来进一步定制推荐,从而获得更精致的用户体验。更多详细信息和实验结果,请参阅第 3.5 节。
- 推荐算法设计:在Agent4Rec中,推荐算法被构造为独立模块,主要关注其可扩展性。该设计包含预先实现的基于协同过滤的策略,包括随机、最流行的矩阵分解 (MF)、LightGCN 和 MultVAE。此外,它还采用开放接口,使研究人员和从业者能够轻松集成外部推荐算法。这种适应性确保了 Agent4Rec 可以成为未来进行全面评估和收集有价值的用户反馈的多功能平台。