首页 > 分享 > 推荐系统之召回:基本原理和前沿研究(2023)

推荐系统之召回:基本原理和前沿研究(2023)

前言

对工业界和学术界(截止2023-09)的相关工作进行调研,并结合自身工作经验,总结常用的召回策略和前沿研究方向。具体内容报告请见:

GitHub - BinFuPKU/CTRRecommenderModels: I have surveyed the technology and papers of CTR & Recommender System, and implemented 25 common-used models with Pytorch for reusage. (对工业界学术界的CTR推荐调研并实现25个算法模型,2023)I have surveyed the technology and papers of CTR & Recommender System, and implemented 25 common-used models with Pytorch for reusage. (对工业界学术界的CTR推荐调研并实现25个算法模型,2023) - GitHub - BinFuPKU/CTRRecommenderModels: I have surveyed the technology and papers of CTR & Recommender System, and implemented 25 common-used models with Pytorch for reusage. (对工业界学术界的CTR推荐调研并实现25个算法模型,2023)https://github.com/BinFuPKU/CTRRecommenderModels

​​​​​​​召回基本介绍 从海量的候选集合中发现用户当前感兴趣或相关的物品集合(几百到几千),过滤掉绝大多数不喜欢的物品。

考虑召回通道的多样性和高覆盖率,对时延有一定要求,低准确率要求(折中)。趋势:目前双塔模型占主流,近几年召回学习模型越来越复杂(复杂程度逼近排序模型),有召回+排序融合或联合训练趋势。 召回策略 非个性化召回 规则策略:地理召回、热门召回……过滤:疲劳降权、黑白名单过滤、内容低质量过滤……类目、标签、关键词召回(u2c2i): 原理:用户画像 -> 类目/标签/关键词 -> 物品。(考虑时间)离线建立用户画像索引库和物品画像索引库。在线根据用户得到物品兴趣偏好列表。内容相似(聚类)召回(u2c2i): 原理:用户最近喜欢的物品 -> 查找相似内容(类) -> 物品。离线训练内容相似度模型,如文本BERT、图像CNN (以及考虑跨模态检索),根据物品内容相似度对物品聚类,构建向量索引。在线获取用户近期感兴趣的n1" role="presentation">n1个物品,检索其内容相似物品(约n1k" role="presentation">n1k 个),计算其兴趣分数。在线按照兴趣分数进行排序取top-n2" role="presentation">n2个物品召回。Look-Alike和社交关系召回: 原理:物品的种子用户 -> 相似用户。离线计算用户之间的相似度,建立“用户 -> (top-k相似)用户”索引。在线获取物品最近点击用户,根据这些种子用户获取其top-k相似用户集合。

协同过滤: ItemCF/Swing (u2i2i)[1]: 原理:rui=∑j∈Iulike(u,j)×sim(j,i)" role="presentation">rui=∑j∈Iulike(u,j)×sim(j,i)离线计算物品相似度,可采用Jaccard系数、余弦、Swing(sim(i,j)=∑u1,u2∈V1α+overlap(u1,u2)" role="presentation">sim(i,j)=∑u1,u2∈V1α+overlap(u1,u2))等相似度,建立“物品 -> (top-k相似)物品”索引。在线获取用户近期感兴趣的n1" role="presentation">n1个物品,检索其相似物品(约n1k" role="presentation">n1k 个),计算其兴趣分数。在线按照兴趣分数进行排序取top-n2" role="presentation">n2个物品召回。

UserCF (u2u2i): 原理:rui=∑u′∈Nusim(u,u′)×like(u′,i)" role="presentation">rui=∑u′∈Nusim(u,u′)×like(u′,i),在相似度计算中可进一步对热门物品降权1→1log(1+n)" role="presentation">1→1log(1+n)。离线建立“用户-> (最近交互过)物品”索引。离线计算用户之间的相似度,建立“用户 -> (top-k相似)用户”索引。在线获取用户的top-k相似用户集合,找到用户感兴趣的物品集合。在线按照兴趣分数进行排序取top-n2" role="presentation">n2个物品召回。

矩阵填充:(u2i,实践中一般效果不好) 原理:矩阵分解方法MF、PMF、NMF、SVD等。离线进行矩阵分解得到用户侧嵌入和物品侧嵌入,并建立向量索引(如Faiss)。在线通过用户嵌入进行最近邻查找找到用户感兴趣的物品集合。在线按照兴趣分数进行排序取top-n2" role="presentation">n2个物品召回。

知识图谱召回(u2g2i)[2]: 原理:基于知识图谱发现用户节点触达的物品。离线进行矩阵分解得到用户侧嵌入和物品侧嵌入,并建立向量索引(如Faiss)。在线通过用户嵌入进行最近邻查找找到用户感兴趣的物品集合。在线按照兴趣分数进行排序取top-n2" role="presentation">n2个物品召回。

双塔匹配模型 (u2i): 损失函数:点(交叉熵)、对(BPR loss / triplet hinge loss)、列表。正负样本:正样本为用户点击物品,负样本可为没有被召回和排序被淘汰掉的物品。离线训练得到用户侧嵌入和物品侧嵌入,并建立向量索引(如Faiss)。在线通过用户嵌入进行最近邻查找找到用户感兴趣的物品集合。在线按照兴趣分数进行排序取top-n2" role="presentation">n2个物品召回。

自监督增强双塔模型:长尾物品的表征学的差。利用自监督学习来增强表征,随机mask部分特征进行预测。附加一个自监督损失。双塔模型魔改:特征交叉和模型集成等。

多兴趣召回模型(u2i & i2i)[3~6]: 原理:挖掘用户行为序列中存在多种兴趣偏好,召回走top-k路由通路(软聚类)。MIND [3]:采用胶囊网络来建模多个兴趣点,采用其路由机制映射到对应兴趣点。

ComiRec [4]:通过自注意力机制从行为序列中得到用户的多个兴趣点。

SDM [7]:挖掘长短期兴趣偏好,七天行为和当前session内行为。

SIM [8]:从用户历史行为序列中检索与target item最相似top-k的历史物品。类似工作[9]。

深度树匹配模型TDM[10]:用户兴趣度量进行层次化建模与beamsearch检索。

DemiNet [11]:用户行为序列存在噪音和稀疏问题(自监督)且多个兴趣点存在关系。MISS [12]:用户行为序列上的特征(行)和兴趣(列,相邻行为CNN)级别自监督学习。

PDN [13]:集合双塔模型和i2i历史行为序列模型。

其他召回策略:分层召回。 物理维度:城市、业务等。用户分群:会员和非会员等。 负采样和去重 负样本: 简单负样本:未被召回的物品,占绝大多数,几乎为全体物品。(50%)困难负样本:排序淘汰的物品。(50%)极困难负样本:曝光未点击的物品,用户喜欢但未点击不能作为召回负样本,损害召回性能。负采样策略 [14]: 热度采样:如p∝pv0.75" role="presentation">p∝pv0.75,采样概率可转化为权重。Batch内负采样。其他策略:地域敏感进行地域采样(同城、商圈等)。曝光去重复: Bloom 过滤器:多个哈希映射函数,没命中一定不在曝光集合。 训练流程 数据特征预处理 获取并过滤T+2天离线数据(spark/hive实现,根据业务特点设计T,如BOSS直聘采用7+2)。构建特征集(验证特征有效性)。构建正负样本集(不同采样比例)。模型分布式训练 基于TF2.0或pytorch实现模型。在分布式集群或者多GPU卡训练(模型一般迭代2~3轮就会收敛,耗时几小时)。调优模型(特征工程+模型架构等,这部分耗时较长)并评估效果。保存模型训练过程日志和模型文件(包括嵌入表并利用Faiss/ES等ANN工具构建索引)。在线推理: 利用RPC调用模型服务TF-serving。实时特征获取、拼接和推理。 未来探索方向 随着算力暴力提升,召回模型越来越复杂,融合后续排序任务。深挖各种召回模式路径并进行有效组合,考虑多样性和相关性。模型结构探索,多目标多任务条件下探索等。用户历史行为序列中多兴趣挖掘和快速检索等。构建更高质量的负样本。长尾物品和新/低活用户冷启动问题。B端和C端的优化目标、生态调控,深挖系统优化目标。基于大语言模型(LLM)的召回研究。

[1] Large Scale Product Graph Construction for Recommendation in E-commerce, 2020.

[2] KGAT: Knowledge Graph Attention Network for Recommendation, KDD 2019.

[3] Multi-Interest Network with Dynamic Routing for Recommendation at Tmall, 2019.

[4] Controllable Multi-Interest Framework for Recommendation, KDD 2019.

[5] Sparse-Interest Network for Sequential Recommendation, WSDM 2021.

[6] Multi-task Learning Model based on Multiple Characteristics and Multiple Interests for CTR prediction, 2022.

[7] SDM: Sequential Deep Matching Model for Online Large-scale Recommender System, CIKM 2019.

[8] Search-based User Interest Modeling with Lifelong Sequential Behavior Data for Click-Through Rate Prediction, 2020.

[9] End-to-End User Behavior Retrieval in Click-Through Rate Prediction Model, 2021.

[10] Learning Tree-based Deep Model for Recommender Systems, KDD 2019.

[11] DemiNet: Dependency-Aware Multi-Interest Network with Self-Supervised Graph Learning for Click-Through Rate Prediction, AAAI 2022.

[12] MISS: Multi-Interest Self-Supervised Learning Framework for Click-Through Rate Prediction, ICDE 2022.

[13] Path-based Deep Network for candidate item matching in recommenders, SIGIR 2021.

[14] Sampling-bias-corrected neural modeling for large corpus item recommendations, RS 2019.

相关知识

推荐系统之召回:基本原理和前沿研究(2023)
推荐系统
一文看懂推荐系统:召回06:双塔模型——模型结构、训练方法,召回模型是后期融合特征,排序模型是前期融合特征
信息流推荐系统多样性方法深度分析
训犬必读之训犬的七大基本原理(二)
训犬必读之训犬的七大基本原理(一)
【CAC2023】2023中国自动化大会投稿系统正式开放!敬候您的来稿!
宠物研究院:探索宠物行为和健康的前沿科研
动物行为学的基本原理.pptx
宠物救助领养系统的研究背景和国内外研究现状

网址: 推荐系统之召回:基本原理和前沿研究(2023) https://m.mcbbbk.com/newsview352440.html

所属分类:萌宠日常
上一篇: 如何训练狗狗回来:召回训练指南
下一篇: [求助] 半人马声望里有个狩猎的