省时查报告-专业、及时、全面的行研报告库
省时查方案-专业、及时、全面的营销策划方案库
【免费下载】2023年4月份热门报告合集
无需翻墙,ChatGPT直接使用
万字干货:ChatGPT的工作原理
2023年创业(有创业想法)必读手册
ChatGPT等让你效率倍增的22个AI工具
ChatGPT调研报告(仅供内部参考)
ChatGPT的发展历程、原理、技术架构及未来方向
会玩!女王红化身AI,同时交往1000个男朋友!
2023年AIGC发展趋势报告:人工智能的下一时代
TLDR: 最近,ChatGPT(国内可以直接访问的链接:chatgpt.zntjxt.com)横空出世,横扫NLP很多任务,甚至已经出圈。但其能力边界仍然未知,特别是应用在推荐系统领域。这篇工作从point-wise,pair-wise,list-wise三种排序方式的角度,在四个不同领域的数据集上评测了ChatGPT的推荐能力,从多角度揭开了ChatGPT(https://chatgpt.zntjxt.com)推荐能力的面纱。
论文:arxiv.org/abs/2305.02182
代码:github.com/rainym00d/LLM4RS
RUC IIR Lab:ruc-iir-lab.github.io/
ChatGPT国内可以直接访问的链接,支持绘图模型:
https://chatgpt.zntjxt.com
研究背景
最近,大型语言模型(Large Language Models, LLMs)在NLP社区引起了越来越多的关注,甚至随着ChatGPT的发布逐渐出圈。ChatGPT在各种NLP任务中表现出了卓越的性能,特别是在零样本场景中(即没有额外的训练数据来完成各种下游任务),它的表现更令人瞩目。为了分析ChatGPT的能力边界以及局限性,最近很多研究工作在NLP任务从不同角度评测了ChatGPT(以及其他LLMs),包括它的推理能力、鲁棒性和伦理道德等方面。
另一方面,以往的研究表明,预训练语言模型(Pre-trained Language Models, PLMs)可以直接用于推荐而不需要额外的训练。因为一些用户和物品属性以及交互记录(如用户对一些物品的评论等信息)以自然语言的形式被记录在公开语料库中,进而被学习到了PLMs中。因此,一个自然的研究问题便是,LLMs(如ChatGPT)在推荐领域是否也具有惊人的表现。
推荐系统最基本的目标便是给用户提供一个Top-K的物品列表,从而缓解大数据时代下信息过载的问题。现有的工作通过三种典型的排序方式来构建这个最终的Top-K推荐列表:point-wise ranking、pair-wise ranking和list-wise ranking。因此,本文旨在从上述三种排序方式的角度探索大语言模型在推荐领域的能力。本文首先将这三种排序方式转换成domain-specific的prompts,从而作为LLMs的输入;其次,在四个不同领域的推荐数据集上对ChatGPT以及GPT3.5系列进行实验评测与分析。
主要结论:
ChatGPT在四个领域的数据集上与其他LLMs相比,在三种排序能力上表现出一致的性能优势。
ChatGPT在list-wise和pair-wise ranking上表现较好,但在point-wise ranking上表现较差。
综合考虑单位成本带来的性能提升,本文建议在实际应用中使用基于LLM的推荐系统时应采用list-wise ranking。
ChatGPT可以缓解推荐系统冷启动问题,其在有限的训练数据下表现优于传统的推荐模型。
ChatGPT展示了可解释推荐的潜力,并且其潜在具有真正理解物品相似性的能力。
本文希望这项对于探索大语言模型在推荐领域能力的初步评测可以给LLM for Recommender System提供一些新视角。完整的实验代码、详细的说明和原始实验结果都已经开源在https://github.com/rainym00d/LLM4RS。
方法介绍
本文的评测流程如Figure 1右图所示,整个流程分为三个模块:Pre-process模块、LLM和Post-process模块。其中,原始数据先经过Pre-process模块得到domain-specific的prompt,再输入给LLM得到输出,最后输出经过Post-process模块进行格式验证,如果合法则进行各项指标的评测。
Prompt的设计如Figure 1左图所示,三种prompt都由三个部分组成:Task Description、Demonstation Examples和New Input Query。其中,Task Description部分是为了让LLM能够理解当前领域的推荐任务,帮助模型完成推荐;Examples部分参考in-context learning,为了让LLM能够理解当前任务的形式,规范输出的格式;New Input Query包括用户的历史与当前的candidate item,模型应当根据用户的历史对当前candidate item进行预测。具体形式如下:
在point-wise ranking中,candidate item为一个物品,期望LLM返回该用户对其的偏好(1-5的分数)。
在pair-wise ranking中,candidate item为两个物品,期望LLM返回两者中更好的选项。
在list-wise ranking中,candidate item为物品候选集,期望LLM直接返回一个排序列表。
实验结果
本文选取了四个推荐系统常用的数据集进行实验,分别来自Movie,Book,Music和News四个不同的领域。同时报告了NDCG和MRR这两个常见的排序指标,并且由于LLMs可能给出非法回答,还额外报告了合规率Compliance Rate来表示有效回答的占比。
RQ1: 在不同推荐领域上,LLMs的三种排序能力的表现如何?
从Table 1中可以发现:
LLMs具有一定的推荐能力。几乎在所有情况下,LLMs的结果都是优于random的结果。
在这四个领域的数据集上,ChatGPT在三种排序能力上的结果都是最好的。
ChatGPT在list-wise ranking上能力更强(Movie上除外),而text-davinci-002和text-davinci-003在pariwise上能力更强。详细的比较总结在了Table 2。
所有的LLMs都在News场景下表现不如pop,而其他领域上都远好于pop。一个可能的原因是,新闻推荐很依赖于流行度,而其他场景的个性化程度更高。新闻的传播是有时效性的,因此对于大部分新闻而言,其相关的语料往往是很少的,从而LLMs学到的信息不够充分。而相反的,在其他三个领域,电影、图书和音乐都可能被用户去反复观看、收听,在互联网上留下很多交互信息,如影评、书评和歌评等等,因此语料比较丰富。
RQ2: LLMs在作用于推荐时,三种排序能力的单位成本如何?
本文进一步分析了单位成本下三种排序能力所带来的提升。具体而言,给定一组长度为N的候选集,list-wise ranking生成最终的排序列表只需要进行一次输入,而pair-wise ranking需要两两配对从而得到最终的排序列表,因此需要N(N-1)/2次输入,point-wise ranking则需要N次输入。本实验中,N的设置为5,因此point-wise、pair-wise和list-wise三种排序能力的成本分别为5x、10x和1x。Figure 2展示了单位成本所带来的提升。在Figure 2中,可以看到list-wise的表现最为突出,它在性能和成本上有一个很好的trade-off,因此在实际中应用LLMs来做推荐时,可以优先采用list-wise的方式。
RQ3: LLMs使用zero-shot prompt的效果如何?
上述实验都是在few-shot prompt下进行的,即给定了一些例子,让LLMs进行in-context learning。一个自然的问题便是LLMs是否可以用zero-shot prompt来完成推荐任务。初步的实验发现,直接用zero-shot prompt,LLMs的输出形式各异,导致很难进行评测。为了解决这一问题,在这里采用OpenAI提供的"logit_bias"参数进行输出格式控制。以pair-wise为例,LLMs期望的输出是"A"或者"B",那么只需在api中同时提高"A"和"B"这两个token的logits,使LLMs一定会在第一个位置输出"A"或"B",同时又不影响这两者的相对关系,从而达到控制输出的功能。Table 3的实验结果表明,LLMs在zero-shot prompt下也有一定的推荐能力,但其能力弱于few-shot prompt。这也在推荐任务上进一步验证了LLMs的in-context learning的能力。
RQ4: few-shot prompt中给的例子的个数对LLMs能力的影响是怎么样的?
NLP领域的工作的探索表明,few-shot prompt中给的例子的个数越多,效果越好。但实验中发现,在推荐场景下,并不是例子越多效果越好(如Figure 3)。因此,最佳的例子个数可能和具体的数据集、任务以及采用的LLM都是有关的,需要通过实验来确定。
RQ5: 与传统推荐模型相比,LLMs的推荐能力如何?
上述实验验证了LLMs具有一定的推荐能力,那么与传统推荐模型相比,它的能力如何呢?注意LLMs不需要在推荐数据集上进行额外的训练,而传统的推荐模型依赖于训练数据的多少。一般而言,训练数据越多,传统推荐模型能力越强。Figure 4的实验结果表明,在训练数据比较少的时候,LLMs是要远胜于传统推荐模型的。因此,LLMs可能适合来帮助推荐系统缓解冷启动的问题。
Case Study
在Table 1的实验中发现,即使使用了few-shot prompt,LLMs生成答案的合规率也不是100%。本文对这些异常的例子进行了分析,Table 4展示了2个ChatGPT生成不合规答案的示例。这两个示例比较有趣,其都是来自于pair-wise ranking,并且这两个候选项的真是标签也都是负样本。令人惊讶的是,ChatGPT没有遵循example只回答"A"或者"B",而是返回“这两个答案都是不合适的,其不符合用户的历史兴趣”。比如第一个例子,给出的用户观看历史都是科幻片,而两个选项都是动画,ChatGPT似乎真正理解了什么样的物品是相似的,因此其在可解释性推荐可能会有比较大的潜力。
在进行zero-shot prompt的实验时,最初并没有利用OpenAI的api调整"logit_bias"来控制输出格式。这时ChatGPT的回复虽然比较不规范(没有给出期望的输出格式),但在其中发现了一些ChatGPT给出推荐理由的结果。上面是两个其解释的比较好的例子,其不光给出了正确答案,还给出了解释,解释也比较合理自然。更多的例子可以看原文的附录,或者本文的代码仓库,全部的原始实验结果都已经公开在https://github.com/rainym00d/LLM4RS。
总结
本文从point-wise、pair-wise和list-wise的角度对ChatGPT的推荐能力进行了初步评测。具体来说,本文将上述三种排序能力转换为prompts作为LLMs的输入,并评测了包含ChatGPT在内的多个LLMs在不同推荐领域下的表现。在四个数据集上的结果表明,在zero-shot prompt和few-shot prompt下,相对于其他的LLMs,ChatGPT在三种排序能力上都表现得更好。并且,本文还发现LLMs在pair-wise和list-wise上表现更好,而point-wise的表现较差。此外,ChatGPT在缓解冷启动问题和可解释性推荐方面展现出了较大的潜力。
虽然这项工作已经探索了ChatGPT在多个推荐领域的各种排序能力,但仍有一些局限性需要未来进一步研究来解决。例如,关于ChatGPT如何更好地与现有的推荐模型相结合(世界知识 v.s. 协同过滤),以及如何更好地使LLMs对齐用户的反馈数据。本文对这些问题的研究提供了一些初步的探索与可能性。
「 更多干货,更多收获 」
【免费下载】2023年4月份热门报告合集万字干货:ChatGPT的工作原理2023年创业(有创业想法)必读手册ChatGPT等让你效率倍增的22个AI工具ChatGPT调研报告(仅供内部参考)ChatGPT的发展历程、原理、技术架构及未来方向《ChatGPT:真格基金分享.pdf》2023年AIGC发展趋势报告:人工智能的下一时代
会玩!女王红化身AI,同时交往1000个男朋友!