综述 | 推荐系统里预训练模型(一)

简介: 综述 | 推荐系统里预训练模型(一)

在科学研究中,从方法论上来讲,都应“先见森林,再见树木”。当前,人工智能学术研究方兴未艾,技术迅猛发展,可谓万木争荣,日新月异。对于AI从业者来说,在广袤的知识森林中,系统梳理脉络,才能更好地把握趋势。为此,我们精选国内外优秀的综述文章,开辟“综述专栏”,敬请关注。


来源:知乎—trouble


地址:https://zhuanlan.zhihu.com/p/433610155


01UPRec: User-Aware Pre-training for Recommender Systems [submitted to TKDE]



先前的推荐系统里的预训练模型都只是专注于利用用户行为序列里面的通用序列模式,但是他们忽视了使用用户的信息来捕获个性化的兴趣。在这篇文章里作者提出一个用异构用户信息来增强预训练模型,叫做 User-aware Pre-training for Recommendation (UPRec). UPRec利用用户属性和结构化的社交图来构建预训练阶段的自监督目标函数并提出两个用户感知的预训练任务。


与NLP领域的预训练的区别:NLP里面的预训练专注于学习通用的语言知识,而推荐系统不仅应该利用通用的序列模式,而且应该捕获每个用户的个性化的兴趣。因此在预训练的时候利用用户信息还是很有必要的。


a3c406bbea42de34398326e8fbf7be41.png


这里主要定义了三个目标函数:


  • Masked Item Prediction


6a2880b1b9eb9d86a886fda731619c96.png


  • User Attribute Prediction


3439d7618986706c7fd83b196736d430.png


其中 是数值型特征的集合, 是离散型特征的集合。


  • Social Relation Detection


650b7b1ba1d62b7c3f6649bc7df69afb.png


这里就是用的对比学习范式,目的是想让query用户的表示和其朋友的表示相似度接近,和负样本的表示原理。


f8662863068f2215b0d32e2fdaeba964.png


UPRec包含两步,首先通过上面的L来预训练encoder,而在微调阶段使用预训练好的参数来初始化encoder的参数来进行下游任务。对于序列化推荐的任务,首先将序列里最后一个一个物品给masked掉并采用masked target的negative log-likelihood来优化模型。对于用户属性预测的任务,我们使用 [CLS] 的hidden vector来表示用户,然后对于数值型特征用回归的目标函数,对离散型特征用分类的目标函数(这里设置和预训练阶段一样)。


02U-BERT: Pre-training User Representations for Improved Recommendation [AAAI 21]



用户表示通常是从行为数据(点击、评论内容)里面学习。但是,对于不那么流行的域,行为数据不足以让模型充分地学习到精确的用户表示。为了解决这个问题,一个自然的想法就是用内容丰富的域来补全用户表示。受最近NLP领域的Bert的启发,我们提出了一个新颖的预训练和微调为基础的方法U-BERT。不同于BERT,U-BERT是专门为推荐系统定制的。在预训练阶段,U-BERT专注于内容丰富的域并引进一个用户编码器和评论编码器来建模用户的行为。两个预训练策略也被提出来学习通用的用户表示;在微调阶段,U-BERT专注于目标内容不丰富的域,出了预训练阶段的两个编码器,U-BERT进一步引入了物品编码器来建模物品表示。此外,一个review co-matching layer也被提出去从用户和物品的评论里面学习语义更丰富的交互。最终,U-BERT结合用户表示,物品表示和评论交互信息去提高推荐系统性能。


c4b4da46f4dc6ac6ed8be7b6ad77587c.png


Review Encoder就是用一个Bert来学习评论的表示


User Encoder的表示学习如下


4b574255ebe280890a900ff3090a41ca.pngc17fe3833c2cbe38574679a5c08d49bc.png


b6da822aa2532fe2f6cb8b4d38a95626.png


这里就是先将ID embedding和domain embedding相结合,得到一个新的用户embedding,然后将其和学习到的评论的表示做ATTN操作,做后再融合到一起。


预训练阶段两个任务:


任务一:Masked Opinion Token Prediction


与BERT相比做的修改:1)当预测masked word的时候,除了句子内容的表示,我们还添加了用户的表示来学习用户本质上的评论偏好;2)我们选择观点类的单词掩掉而不是随机掩单词,因为观点类的单词是不同域的评论共用的。


58589b4e8eb3bab1ed1f5139eb1f4283.png


任务二:Opinion Rating Prediction


这里使用融合了文本观点信息和通用的用户偏好信息来作为最终的用户embedding来预测评分。


894718ee7484ddbab6cc570cc79ba964.png


预训练


bf3029b3ed6ea72e2040d8430a75f3a6.png


微调U-BERT来进行评分预测任务


4e6bbd41f0e5f28cd2d6113efaa535ad.png


这里除了预训练阶段的两个encoder,还引入了Item Encoder.


Review Co-Matching Layer


通过理解用户u‍的评论,我们可以知道他关心的点。而通过理解物品i的评论我们可以知道这个物品所有方面的细节并且所有用户对于该物品的general comments.


因此我们可以估计用户u对物品i各个方面的关心程度通过衡量他们的评论语义相似度。受阅读理解里相关的工作启发,这里使用co-matching机制来收集相似信息。


6955551ea2663987925fdd2a21633624.png


上面这里是将彼此的评论对齐,接下来就是引进匹配层来捕获原来的表示和注意力之后的表示的语义相似程度。


f4a804bdd453a18502e0515080352250.png


最后使用row-wise的max-pooling来融合所有位置的匹配信息来得到对用户评论和物品评论的充分理解。


59dfe8ef6ff8fe043ec1a59b86ff61ba.png


预测层和训练:


529a93f4670ef15dc4dede0131224d7d.pngbf3029b3ed6ea72e2040d8430a75f3a6.png


实验设置:


  • Amazonproduct review datasets:选了十个域的数据集,前五个用来进行预训练,后五个进行微调


  • Yelp:选择了AZ metropolitan区域的餐厅的评论进行预训练,剩下的区域的餐厅的评论进行微调任务。


相关文章
|
12月前
|
搜索推荐 测试技术 C语言
NPU适配推荐系统GR模型流程
本示例将开源Generative Recommendations模型迁移至NPU训练,并通过HSTU融合算子优化性能。基于Atlas 800T A2平台,使用PyTorch 2.1.0、Python 3.11.0等环境。文档涵盖容器启动、依赖安装、算子适配、源码修改、数据预处理及配置文件设置等内容。性能测试显示,使用HSTU融合算子可显著降低端到端耗时(如ml_1m数据集单step从346ms降至47.6ms)。
|
机器学习/深度学习 数据采集 搜索推荐
使用Python实现智能食品推荐系统的深度学习模型
使用Python实现智能食品推荐系统的深度学习模型
772 2
|
机器学习/深度学习 算法 搜索推荐
django调用矩阵分解推荐算法模型做推荐系统
django调用矩阵分解推荐算法模型做推荐系统
244 4
|
机器学习/深度学习 搜索推荐 算法
推荐系统的矩阵分解和FM模型
推荐系统的矩阵分解和FM模型
427 0
|
机器学习/深度学习 搜索推荐 大数据
深度解析:如何通过精妙的特征工程与创新模型结构大幅提升推荐系统中的召回率,带你一步步攻克大数据检索难题
【10月更文挑战第2天】在处理大规模数据集的推荐系统项目时,提高检索模型的召回率成为关键挑战。本文分享了通过改进特征工程(如加入用户活跃时段和物品相似度)和优化模型结构(引入注意力机制)来提升召回率的具体策略与实现代码。严格的A/B测试验证了新模型的有效性,为改善用户体验奠定了基础。这次实践加深了对特征工程与模型优化的理解,并为未来的技术探索提供了方向。
738 2
深度解析:如何通过精妙的特征工程与创新模型结构大幅提升推荐系统中的召回率,带你一步步攻克大数据检索难题
|
机器学习/深度学习 搜索推荐 TensorFlow
使用Python实现智能电子商务推荐系统:深度学习模型详解
使用Python实现智能电子商务推荐系统:深度学习模型详解
1051 4
|
搜索推荐 算法
模型小,还高效!港大最新推荐系统EasyRec:零样本文本推荐能力超越OpenAI、Bert
【9月更文挑战第21天】香港大学研究者开发了一种名为EasyRec的新推荐系统,利用语言模型的强大文本理解和生成能力,解决了传统推荐算法在零样本学习场景中的局限。EasyRec通过文本-行为对齐框架,结合对比学习和协同语言模型调优,提升了推荐准确性。实验表明,EasyRec在多个真实世界数据集上的表现优于现有模型,但其性能依赖高质量文本数据且计算复杂度较高。论文详见:http://arxiv.org/abs/2408.08821
633 7
|
机器学习/深度学习 数据采集 搜索推荐
打开黑盒神经网络!港大推出全新会说话的推荐系统大模型XRec,从黑盒预测到可解释
【7月更文挑战第2天】港大研发XRec模型,将可解释性引入推荐系统。XRec结合大型语言模型的语义理解与协同过滤,生成推荐的文本解释,提升透明度。该模型无关设计允许与各类推荐系统配合,增强用户体验。然而,计算资源需求高、数据质量和用户理解能力可能影响其效果。[查看论文](https://arxiv.org/pdf/2406.02377)**
371 11
|
机器学习/深度学习 搜索推荐 算法
基于深度学习神经网络协同过滤模型(NCF)的图书推荐系统
登录注册 热门图书 图书分类 图书推荐 借阅图书 购物图书 个人中心 可视化大屏 后台管理
13643 2
基于深度学习神经网络协同过滤模型(NCF)的图书推荐系统
|
数据采集 机器学习/深度学习 搜索推荐
使用Python实现推荐系统模型
使用Python实现推荐系统模型
468 1

热门文章

最新文章