推荐系统与大模型
1. 总述
最近在学习推荐系统,想到大模型结合推荐系统,如今的发展怎么样。去做了调研。今天就大模型记录一下,如今大模型在推荐系统上的应用。
目前大语言模型在推荐系统上的应用总的来说可以用下面这幅图来进行表示:
如图所示:根据选择的大模型不同,可将应用到大模型的推荐系统分为判别式推荐系统(应用了类似于bert这些模型)和生成式推荐系统(应用的模型类似于GPT这些模型)。
在判别式推荐系统中又可以分为微调和提示词调优推荐系统两种。在生成式推荐系统中,又可以分为应用了微调的推荐系统(一般微调,提示词微调和指令微调)和未应用微调的(提示词工程,上下文学习)的推荐系统。
2. 判别式模型推荐系统
在判别式推荐系统中一般微调可以用下面这幅图来表示:
Fine-tuning(微调)背后的思想是采用一种语言模型,该模型已经从大规模文本数据中学习了丰富的
语言表示,并通过对特定任务的数据进行进一步训练,使其适应特定的任务或领域。微调的过程包括:用其学习到的参数初始化预训练语言模型,然后在推荐数据集上对其进行训练。这个数据集通常包括用户-项目交互、项目的文本描述、用户配置文件和其他相关的上下文信息。在微调过程中,模型的参数会根据特定于任务的数据进行更新,从而允许其适应推荐任务。学习目标在训练前阶
段和微调阶段可能会有所不同。其中有一个典型的模型代表就是speedyFeed(用于新闻推荐)模型。
它的整个架构如下图所示:
Prompt tuning 学习是一种新的预训练语言模型的学习策略,它通过使用预训练语言模型向输入文本中添加模板,将下游任务转换为[MASK]预测的形式。
提示词调优可以如下所示:
一个典型的模型Prompt4NR(Promptlearnina fornews recommendation):采用提示学习的思想,将新闻推荐任务转换成PLM(Pretrain Language Model)上的mask预测任务,设计了不同的提示模版将新闻推荐数据转换成带mask预测的语句,PLM模型微调目标是让mask位置输出推荐的新闻答案词(词空间代表预测结果,例如用喜欢和讨厌两个词表示用户点击或者不点击),然后用模型预测词的概率来计算型推荐新闻的概率。整个过程可用下图来理解:
3. 生成式模型推荐系统
在生成式模型推荐系统是将推荐任务转化为自然语言生成任务去处理,然后应用上下文学习、提示调整和指令调整等技术来适应LLMs直接生成推荐结果。其中提到的调优和非调优的过程如下图所示:
在非调优的方式中又分为提示词和基于上下文学习的两种方式。
提示词的整个过程可以使用下面这幅图来描述
一般的推荐系统中常见的推荐任务有评分预测,序列推荐,直接推荐,解释生成,反思总结。
针对不同的推荐任务,提示词的模版可以有下面几种。
在基于上下文的学习中,整个流程如图所示:
基于生成式模型的微调的整个过程可以参考下图所示:
生成式模型的提示词微调目的是将Fine-tuning的下游任务目标转换为Pre-training的任务。这里以二分类的情感分析作为例子,描述Prompt-tuning的工作原理。给定一个句子[CLS] l like the Disney film sry much. [SEP] 传统的Fine-tuning方法是将其通过BERT的Transformer获得 [CLS]表征之后再喂入新增加的MLP分类器进行二分类,预测该句子是积极的(positive)还是消极的(negative),因此需要一定量的训练数据来训练。而Prompt-Tuning则执行如下步骤:
1. 构建模版: 通过人工定义、自动搜索、文本生成等方法,生成与给定句子相关构建模板(Template Construction)的一个含有[MASK]标记的模板。例如It was [MASK] ,并拼接到原始的文本中,获得Prompt-Tunina的输入[CLS] l like the Disney films very much.[SEP] It was[MASK]. [SEP]。将其喂入BERT模型中,并复用预训练好的MLM分类器(Masked Language Modeling),即可直接得到[MASK]预测的各个token的概率分布:
2. 标签词映射(Label Word Verbalizer):因为[MASK]部分我们只对部分词感兴趣,因此需要建立一个映射关系。例如如果[MASK]预测的词是"great”,则认为是positive类,如果是“terrible”,则认为是negative类。
下面是几种提示词微调的模版:
指令调优
指令调优的一大有点就是可以同时训练很多任务,比如可以进行评分预测,解释生成可以同时进行训练。比如下图所示:
4.总结
目前大模型在推荐系统取得巨大进展的同时也上主要一些的问题。主要有以下三点。
1. Position Bias.在推荐系统的生成语言建模范式中,用户行为序列和推荐候选序列等各种信息以文本序列描述的形式输入到语言模型中,这可能会引入语言模型本身固有的一些位置偏差。
2. Popularity Bias.lm的排名结果受到候选人的受欢迎程度的影响。在lm的训练语料库中,经常被广泛讨论和提到的流行项目,往往排名更高。解决这个问题具有挑战性,因为它与预先训练过的语料库的组成密切相关。
3.Fairness Bias.。预训练语言模型表现出与敏感属性相关的公平性问题,这些属性受到训练数据或参与特定任务的个体的人口统计数据的影响。一个例子是由性别或种族导致的推荐结果的偏见。
5. 参考资料
https://arxiv.org/pdf/2305.02182https://arxiv.org/pdf/2305.02182
https://arxiv.org/pdf/2304.10149https://arxiv.org/pdf/2304.10149 https://arxiv.org/abs/2102.09268https://arxiv.org/abs/2102.09268
原文地址:https://blog.csdn.net/m0_56022510/article/details/143831026
免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!