什么是 推荐系统?
推荐系统是利用可用的内容、交互、策略和运行信号,从大规模候选库中为某个用户或场景选择并排序有限物品的决策系统。
快速了解
| 全称 | Recommendation System |
|---|---|
| 创建时间 | 1990 年代,早期系统包括 GroupLens 和亚马逊的物品-物品协同过滤 |
| 规范文档 | 官方规范 |
工作原理
拆分候选召回、打分和重排
候选召回优先覆盖率与延迟,常组合协同过滤、内容、热度和近似近邻等多路来源;打分模型在较小候选池上估计任务效用;重排再执行硬过滤、去重、多样性、新鲜度、库存、年龄适宜性或创作者曝光约束。排序模型再复杂,也无法找回召回阶段遗漏的物品,因此每个阶段都要有独立契约与指标。
把交互日志视为旧策略塑造的观测
点击、观看时长、评分和购买都很有用,但并不完整。用户只能响应已看到的物品,位置会影响注意力,当前推荐策略还会塑造未来训练数据,因此缺少交互不能自动解释为负偏好。日志应保留曝光、位置、策略版本、时间和当时可推荐物品范围;需要因果结论时再采用受控探索或有依据的反事实方法。
把离线排序质量连接到线上结果
先评估召回覆盖和 Recall@K,再检查 NDCG@K 等排序指标,并同时观察延迟、校准、目录覆盖、新颖性、多样性及重要用户和物品切片。使用时间留出降低未来信息泄漏,并与热度和非个性化基线比较。新策略会改变曝光,离线日志无法完整预示用户反应,因此仍需线上实验,并为伤害、留存和生态健康设置护栏。
主要特点
- 输出容量受限的有序决策,而不是平等预测目录中的每个物品
- 通常拆分为高召回候选检索、更精细打分和策略重排
- 同时使用显式反馈与受旧策略影响的隐式交互
- 需要处理新用户、新物品、稀疏历史和意图变化
- 在相关性、多样性、新鲜度、安全、公平和业务约束间权衡
- 既要做分阶段离线测试,也要进行受控线上评估
常见用途
- 在库存和策略约束下排序商品或优惠
- 从大规模目录中选择视频、音乐、文章或课程
- 控制重复和创作者曝光后排序信息流内容
- 在双边市场中匹配职位与候选人
- 为当前客服会话选择下一篇知识文章或操作
示例
Loading code...常见问题
推荐系统为什么要拆分召回和排序阶段?
高成本模型无法在严格延迟内为大目录每个物品打分。召回用低成本方法保留可能相关物品,排序在小候选池上使用更丰富特征,重排再处理资格与列表约束。每一阶段的覆盖率、质量和成本权衡都不同。
协同过滤和基于内容的推荐有什么区别?
协同方法从用户与物品的交互关系学习,内容方法则把物品属性与用户或场景画像匹配。协同信号能发现潜在兴趣,但难以处理新实体;内容特征有助于冷启动,却依赖高质量元数据。生产召回通常会组合二者。
为什么没有点击的物品不一定是负样本?
用户可能从未看到该物品,也可能只在较差位置看到,或当时没有机会响应。日志反馈受旧策略和界面影响。应保留曝光与位置数据,区分已曝光和未曝光物品,不能把所有缺失交互直接解释为不喜欢。
推荐系统应该如何做离线评估?
采用时间或策略感知留出集,先测候选 Recall@K,再测 NDCG@K 等列表指标,同时观察延迟、覆盖、多样性、新颖性、校准和切片,并与热度及非个性化基线比较。新策略会改变曝光,因此离线提升仍只是代理证据。
推荐系统如何处理冷启动?
新物品可使用内容、元数据、质量审核和受控探索;新用户可使用当前上下文、显式偏好、安全热度先验或会话行为。冷启动人群应独立统计,伪造交互历史或混入成熟用户平均值只会掩盖问题。