候选生成
概述
推荐系统两阶段架构的第一阶段:从海量候选集中快速筛选出数百个粗略候选,追求高召回率。
关键内容
-
角色定位:候选生成(Candidate Generation / Recall / 召回)是 两阶段推荐架构 的第一阶段。目标是从数十亿级别的候选集中快速筛选出数百个粗略候选,追求高召回率(尽可能不漏掉用户可能感兴趣的物品)。
-
特征选择:使用相对粗粒度的特征,计算效率高。在 Deep Neural Networks for YouTube Recommendations 中,候选生成的输入特征包括:观看历史(视频 ID embedding 取平均)、搜索历史(query embedding 取平均)、人口统计学特征(地理位置、设备类型、性别、年龄等)、Example Age。
-
模型架构:通常采用 双塔模型 结构——用户塔产生用户 embedding,物品塔产生物品 embedding,通过内积计算相似度。这种设计使得服务时可以转化为 近似最近邻检索 问题。
-
服务方式:训练时用 softmax 分类,服务时用 ANN 检索。每个视频预先存储其 embedding 向量(softmax 层权重),用户请求时通过神经网络前向计算得到用户 embedding,然后在视频 embedding 空间中找到与用户 embedding 最近的 Top-N 个视频。
-
多路召回:现代推荐系统中,候选生成往往不止一路,而是多路召回——包括基于协同过滤的召回、基于内容的召回、基于热门趋势的召回、基于图神经网络的召回等。各路召回的结果合并后进入下一阶段。
-
与传统方法的关系:候选生成阶段取代了传统推荐系统中 矩阵分解 等浅层模型的角色,但核心目标一致——从海量候选中快速找到用户可能感兴趣的物品。
-
局限性:候选生成模型的特征相对粗糙,丢失了细粒度的用户-物品交互信息。用户观看历史和搜索历史的简单平均操作丢失了时序信息和长期兴趣演化(后续 DIN、DIEN、SASRec 等工作对此做了改进)。
来源
- 07-youtube-dnn.md — Deep Neural Networks for YouTube Recommendations 深度解读
相关
- 两阶段推荐架构 — 候选生成在其中的角色
- Deep Neural Networks for YouTube Recommendations — 定义候选生成范式的论文
- 双塔模型 — 候选生成的典型模型架构
- 近似最近邻检索 — 候选生成的服务方式
- Example Age — 候选生成中使用的关键特征
- 矩阵分解 — 被候选生成取代的传统方法