Redian新闻
>
当推荐系统遇见大语言模型:通往未来的三条路径

当推荐系统遇见大语言模型:通往未来的三条路径

公众号新闻

©作者 | 张月鹏

单位 | 得物

研究方向 | 搜推算法



前言

自从大语言模型爆火之后,大家对大语言模型(LLM)如何成功应用在推荐系统进行了不少尝试。个人一直觉得 LLM 在工业界推荐系统大部分情况还是离线应用,生成一些特征或者文本。


至于其直接用作召回和排序模块,个人对这块的观点一直是比较悲观的。出于两点考虑:1)推理耗时问题,大模型的推理耗时难以满足推荐系统快速响应的体验要求;2)基于 ID 和用户行为推荐体系是语言模型难以学习的。


但是,Meta 的《Actions Speak Louder than Words: Trillion-Parameter Sequential Transducers for Generative Recommendations》第一次在大规模工业系统打败传统推荐系统的召回和排序模块。未来已来~



首先想讲清楚几个概念和基本思路:


  • 大模型,这里的大模型指的类似 Transfomer 结构,基于 attention 的方式的计算密集型大模型。因为如果只考虑参数量的话,推荐系统早已有千亿参数规模的大模型,只不过大部分参数都集中在 embedding 层,属于存贮密集型。

  • 如上图,推荐系统借鉴大模型的经验主要有两条路在走。第 1 条路直接利用 GPT 等大语言模型的能力,包括直接进行排序,获取用户和内容的特征等等。第 2 条路借鉴大模型的结构,这里其实早就有 BERT4REC 等推荐模型借鉴了 Transfomer 的 self attention。然后借鉴大语言模型的思路在原有基础上变大。第 3 条路直接将传统搜推模型变大。

  • 大语言模型相比传统推荐系统的优势在于模型包含了广泛的开放世界知识和推理能力。


大语言模型在推荐系统的应用(第1条路)

A Survey on Large Language Models for Recommendation

https://arxiv.org/abs/2305.19860

文章主要的贡献还是总结和分类已有的在推荐系统利用大模型的方法。相关文献作者整理到 github:

https://github.com/WLiK/LLM4Rec-Awesome-Papers/tree/main


至于论文中提高的一些发现,基本都是老生常谈的发现,熟悉大语言模型的应该都有所了解。下面展开说下文中的两种分类体系。

第一种分类体系,按照利用 LLM 方式的不同分为 3 类:第一类:利用 LLM 产出的 embedding 增强推荐系统;第二类:利用 LLM 产出的 token 增强推荐系统;第三类:直接使用 LLM 作为推荐系统的某个模块,比如召回和排序等。


第二种体系。分为判别式和生成式,然后根据是否 tuning 和 tuning 方式进行细分,如上图。


How Can Recommender Systems Benefit from Large Language Models: A Survey

https://arxiv.org/abs/2306.05817


相比《A Survey on Large Language Models for Recommendation》这篇综述,本篇文章更加站在工业界应用的角度进行综述,个人觉得看综述看这篇更有参考意义。

如上体,文章主要将文献按照应用在什么阶段(WHERE)和如何应用(HOW)进行分类。应用在推荐系统的阶段主要包括特征工程、特征编码、模型预估、用户交互、流程控制 5 个阶段。如何应用,主要在训练阶段是否微调,在推理阶段是否结合传统推荐系统,分为了 4 类。


文章分析了 LLM 在推荐系统应用的发展脉络。阶段 1:利用小规模语言模型的微调结合传统推荐模型;阶段 2:利用大语言模型不微调,直接作为推荐系统;阶段 3:将大语言模型进行微调或者结合传统推荐系统模型,或者既微调又结合传统推荐模型。


NoteLLM: A Retrievable Large Language Model for Note Recommendation

https://arxiv.org/abs/2403.01744

主要思路就是使用 LLaMA 2 产出 note 的 embedding,并同时生成 note 的类别和标签。方式就是通过构造 prompt 模板来产出对应的 embedding 和生成类别和标签;


embedding 使用特征 token 最后一层的隐向量加一层 MLP 输出。然后和传统推荐系统一样通过 note 的共现构造正样本,负样本为 batch 内负采样,做一个对比学习的任务。


生成的类别和标签,和真实类别标签,做一个微调的 loss。


对比学习任务和生成任务是同时训练的。论文发现生成任务,能帮助提升 embedding 的质量,提升 i2i 召回效果。但是看数据提升并不大。


Recommendation as Language Processing (RLP): A Unified Pretrain, Personalized Prompt & Predict Paradigm (P5)

https://arxiv.org/abs/2203.13366

如上图,文章主要就是把各种推荐方式,变成一种 token 生成的统一方式,来利用语言模型进行训练。

文章引入了 Whole-word embedding 来让一个用户(例如 user_324)和一个 item(例如:item_68293)在分为 token 之后还会共享同一个 Whole-word embedding。这样能不引入大量 ID 特征的基础上,更好的保持个性化能力。


文章整体都是离线的调研实验类的,目前个人看不到工业实践可能性。


Prompt Learning for News Recommendation

https://arxiv.org/abs/2304.05263


文章数据直接利用 LLM 进行排序的方式。

文章使用完形填空的方式,通过设计和训练 prompt(prompt learning),完成利用 LLM 预测 [MASK] 的词汇。具体词汇是一个二分类的词比如 yes/no、good/bad 对应是否点击。


文章不具备大规模工业界利用的能力。一方面全文都是离线训练和离线实验,无法应对线上 inference。一方面文章只在新闻推荐这个领域有效,因为其只利用了 LLM 的语言能力,在文本较少的视频或者商品推荐上必然效果一般。


M6-Rec: Generative Pretrained Language Models are Open-Ended Recommender Systems

https://arxiv.org/abs/2205.08084


主要思路是将推荐任务全部转化成文本。用户特征用文本描述,物料也用文本描述。然后,最后产出一个向量用作召回,或者产出一个向量叠加一个 softmax 用作排序,或者直接生成文本。 


文章主要的点还是工程上如何做训练和推理优化,比如 late nteraction、option tuning(改进的 promot tuning) 等。


TALLRec: An Effective and Efficient Tuning Framework to Align Large Language Model with Recommendation

https://arxiv.org/abs/2305.00447


文章没干货,仅仅利用指令微调(微调方式是 LoRA)的方式,让开放的大语言模型更实验推荐场景,而且只有一种微调指令和方式。如下:


CTRL: Connect Collaborative and Language Model for CTR Prediction

https://arxiv.org/abs/2306.02841


文章通过两阶段的训练,来将 LLM 的知识注入排序模型,线上推理还是原来的排序模型,这样不会引入额外的耗时。第一阶段对齐传统模型和 LLM 对样本的 embedding 表示,而传统模型的样本会通过人工模板转换 LLM 对应的样本,具体 prompt 构造的示例,如下图。第二阶段就是传统的监督学习。

关于这篇文章的结构,个人觉得还是不适合大规模工业系统的。因为大规模系统每天增量产生大量样本。这样两阶段的训练,每天增量的预训练和监督训练,会让模型无法专注学习到第二阶段的预估任务。而且数据量变大后,这样的知识注入效率应该很低。因为,高频的id特征不需要注入,低频的 id 特征这种结构也无法充分学习好先验知识。


Text Is All You Need: Learning Language Representations for Sequential Recommendation

https://arxiv.org/abs/2305.13731


这篇文章严格意义上不能算 LLM 在推荐系统的应用。应该算是 transfomer 结构和文本 token 在推荐系统的应用。把所有 item 用文本表示,那么用户的点击历史,多个 item 也可以表示成文本。在这样的文本上产生用户的 embedding 和 item 的 embedding,用于召回或者排序。

如上图所示,将 item 或者 user 文本输入 transfomer 结构,然后用【CLS】作为 item 或者 user 的 embedding。embedding 的表示上额外引入了 token type embedding(表示属于特征域文本还是属于特征值文本,比如特征域文本是 brand,那么特征值文本可能是 Apple 等)和 item pos embedding(表示用户交互的第几个 item, 如果是要获取 item 的 embedding,那这里长度就对应为 1)。



基于大模型的生成式推荐(第2条路)

Actions Speak Louder than Words: Trillion-Parameter Sequential Transducers for Generative Recommendations

https://arxiv.org/abs/2402.17152


论文的代码已开源,见:

https://github.com/facebookresearch/generative-recommenders


关于论文的细节这里不再展开了,已经有更好的地方参考。见:如何评价 Meta 最新的推荐算法论文:统一的生成式推荐第一次打败了分层架构的深度推荐系统?,这个提问下,有不少大佬以及论文作者的一些回答。如果你要详读这篇论文。除了论文本身外,建议参考这个提问。


如果不确认是否要详读这篇论文。这里给出几点参考:


  • 论文相对来说是晦涩难懂的,一方面里面的一些符号和定义需要结合正文和附录来回翻看。另外一方面论文里面涉及较多的工程细节,算法同学看起来相对吃力。

  • 工程上看,论文把模型做大了,最大的模型算力接近 GPT3。但是不确定 Meta 做到线上的有多大。论文介绍了如何在训练和预估的时候节省算力。训练阶段包括随机长度和样本采样逻辑的优化,inference 阶段主要是批量预估的逻辑。

  • 算法上看,论文虽然是借鉴 transfomer 模型的,但是与 BERT4REC 和SASRec 等有较大区别。第 1 点:经典的序列建模通常只建模一条同质的序列,比如,基于点击的内容序列建模。而本文利用的序列包含多个异质序列,比如融合点击内容和关注作者等等。第 2 点:以往的序列生成式建模无法与 target 进行交互,这里实现了和 target 的交互。第 3 点:模型结构借鉴了推荐排序模型常用的特征交叉思路,来优化 attention 过程。

  • 整体来看,这个工作值得 follow。但是一方面需要强大的工程团队支持优化,一方面这里的模型还是无法支持传统搜推模型的大量人工特征,效果打平的难度不小。可能只有大厂核心业务有人力和资源支持这个工作的 follow。 


传统搜推模型变大(第3条路)

Wukong: Towards a Scaling Law for Large-Scale Recommendation

https://arxiv.org/abs/2403.02545


论文的主要思路就是把模型变大,展现出可扩展的 Scaling Law。这里的变大指的非 embedding 层的变大。

论文主要的模型结构如上:第一步:获取 embedding,和传统推荐思路类似;第二步:堆叠多层 wukong layer,这里的 wukong layer 至于基于 FM 和 MLP 构建;第三步:最后接一个 MLP 作为输出。


论文只是在 meta 的数据集上做了离线实验,没有线上的 AB 实验。考虑这里主要是线上 inference 的耗时问题。



总结

Meta的《Actions Speak Louder than Words: Trillion-Parameter Sequential Transducers for Generative Recommendations》,大模型直接作排序是十分有前景的方向,但是需要工程和算力的不断进化,来变为后续的标准范式。


像小红书《NoteLLM: A Retrievable Large Language Model for Note Recommendation》和华为《CTRL: Connect Collaborative and Language Model for CTR Prediction》一样,离线使用 LLM 产出一些特征或者增强数据,还是比较简单实用的方向。



更多阅读



#投 稿 通 道#

 让你的文字被更多人看到 



如何才能让更多的优质内容以更短路径到达读者群体,缩短读者寻找优质内容的成本呢?答案就是:你不认识的人。


总有一些你不认识的人,知道你想知道的东西。PaperWeekly 或许可以成为一座桥梁,促使不同背景、不同方向的学者和学术灵感相互碰撞,迸发出更多的可能性。 


PaperWeekly 鼓励高校实验室或个人,在我们的平台上分享各类优质内容,可以是最新论文解读,也可以是学术热点剖析科研心得竞赛经验讲解等。我们的目的只有一个,让知识真正流动起来。


📝 稿件基本要求:

• 文章确系个人原创作品,未曾在公开渠道发表,如为其他平台已发表或待发表的文章,请明确标注 

• 稿件建议以 markdown 格式撰写,文中配图以附件形式发送,要求图片清晰,无版权问题

• PaperWeekly 尊重原作者署名权,并将为每篇被采纳的原创首发稿件,提供业内具有竞争力稿酬,具体依据文章阅读量和文章质量阶梯制结算


📬 投稿通道:

• 投稿邮箱:[email protected] 

• 来稿请备注即时联系方式(微信),以便我们在稿件选用的第一时间联系作者

• 您也可以直接添加小编微信(pwbot02)快速投稿,备注:姓名-投稿


△长按添加PaperWeekly小编



🔍


现在,在「知乎」也能找到我们了

进入知乎首页搜索「PaperWeekly」

点击「关注」订阅我们的专栏吧


·
·
·

微信扫码关注该文公众号作者

戳这里提交新闻线索和高质量文章给我们。
相关阅读
大语言模型加持,是智能运维架构的未来吗?极长序列、极快速度:面向新一代高效大语言模型的LASP序列并行微软拟与OpenAI投资1000亿美元建AI超算;Databricks 推出1320亿参数大语言模型 DBRX丨AIGC日报LLM性能最高60%提升!谷歌ICLR 2024力作:让大语言模型学会「图的语言」华为回应智界 S7 截胡小米 SU7,雷军表态/苹果正在自研设备端大语言模型/「欧洲版OpenAI」洽谈融资5亿深圳/香港/上海内推 | 商汤研究院基础语言模型团队招聘大语言模型算法研究员人物 | 所罗门诺夫:大语言模型的先知吃点好的压压惊统一化数据库:为大语言模型垂域应用奠定基础简单好用!北大、普林斯顿联合提出即插即用的大语言模型加速方法WWW 2024 | 阿里等提出GraphTranslator,将图模型对齐大语言模型今日arXiv最热NLP大模型论文:清华大学:大语言模型的常见词僻意理解能力竟不如中学生港大发布XRec:首个让推荐系统「会说话」的智能大模型ICML 2024 | 面向第三代推荐系统:Meta提出首个生成式推荐系统模型使用 IPEX-LLM 加速英特尔®至强®可扩展处理器上的大语言模型推理人类偏好就是尺!SPPO对齐技术让大语言模型左右互搏、自我博弈AI大模型正改变着推荐系统的未来ICML 2024 | 大语言模型如何表征不同信念?AI早知道|Kimi智能助手升级;Meta开源推出新一代大语言模型Llama3NAACL 2024 | 阿里提出大语言模型对齐框架Reward Learning on Policy (RLP)如何加速大模型推理?万字综述全面解析大语言模型高效推理技术大语言模型对齐的四种方法!七绝 无题今日arXiv最热NLP大模型论文:揭露大语言模型短板,北京大学提出事件推理测试基准最近有一部“打工人发疯”的电影,不知道当推不当推丨【经纬低调赠票】Mamba再下一城!Cobra:将Mamba扩展到多模态大语言模型美股基本面 - 2024_03_21 * 晚报 * 收盘:美股再创新高 市场关注联储降息前景。周四纽约黄金期货收高1.1%。诺LLM综述出书了!人大高瓴赵鑫老师组发布全新大语言模型中文书文末送书!大语言模型应用指南:以ChatGPT为起点,从入门到精通的实践教程一个让骗子愚蠢和无耻的重要原因文末送书!解构大语言模型:从线性回归到通用人工智能科研实习 | 南方科技大学-香港中文大学(深圳)联合招收大语言模型算法实习生一个有孩子有家庭的女人选择工作的范围有多大?ACL2024主会:无需训练的大模型推荐系统!免费在线体验Meta LIama 3大语言模型!GpuMall狂送10万代金券!
logo
联系我们隐私协议©2024 redian.news
Redian新闻
Redian.news刊载任何文章,不代表同意其说法或描述,仅为提供更多信息,也不构成任何建议。文章信息的合法性及真实性由其作者负责,与Redian.news及其运营公司无关。欢迎投稿,如发现稿件侵权,或作者不愿在本网发表文章,请版权拥有者通知本网处理。