核心要点
本质是多目标排序:点击、时长、完播、点赞/评论/转发等目标并存且冲突
多任务模型(MMOE/PLE)共享底层、分塔出各目标预估,缓解负迁移
融合公式把多个预估分加权合成综合分,权重对齐业务北极星指标
重排兼顾多样性、新鲜度、疲劳控制,避免信息茧房与体验下降
标准回答
需求与指标
Feed 不是单目标,要同时优化点击、消费时长、互动(点赞/评论/转发)、完播与留存。北极星常是人均时长或留存,离线各目标分别看 AUC,线上 A/B 看综合体验。
整体架构
仍是召回 → 粗排 → 精排 → 重排。与单目标推荐的关键差异在精排和融合层。
召回与粗排
多路召回(CF、双塔向量、关注/订阅、热门、兴趣标签)合并去重,粗排轻量截断。
精排(多目标建模)
一个请求要同时预估多个目标。用多任务学习:MMOE/PLE 共享底层特征、用多个 expert + gate 分塔输出 pCTR、pTime、pLike 等,缓解目标间负迁移。
融合(多目标排序)
把各目标预估融合成综合分,如 score = pCTR^a × pTime^b × (1+pLike)^c… 权重通过离线网格/在线调参对齐北极星,不同场景可个性化权重。
重排
多样性打散(品类/作者去重)、新鲜度加权、疲劳与已读过滤、运营/审核约束,最终成流。
评估与上线
各目标离线 AUC + 线上 A/B 看时长/互动/留存的整体提升,灰度放量。
常见误区
⚠️ 常见踩坑
只优化 CTR 导致标题党/低质内容泛滥、长期留存下降;以及多目标直接加和而不做归一化与权重对齐,使某个目标主导排序、其余形同虚设。
追问
追问 1:多个目标冲突时怎么融合,权重怎么定?
常用乘法或加权融合公式把各目标预估合成综合分。权重不是拍脑袋,而是对齐业务北极星:先离线用历史数据搜参、再用线上 A/B 验证不同权重组合对时长/留存的影响,逐步调优。还可按场景/人群做个性化权重。
追问 2:MMOE/PLE 相比简单共享底层 + 多塔好在哪?
简单硬共享底层在目标相关性低时会负迁移(一个目标的梯度损害另一个)。MMOE 用多个 expert + 每个任务一个 gating 网络,让不同任务自适应组合 expert;PLE 进一步区分共享专家与任务专属专家,更彻底地缓解跷跷板效应,提升多目标整体表现。
追问 3:为什么 Feed 必须做多样性,怎么做?
纯按预估分排序会让同质内容扎堆,造成信息茧房、用户疲劳、长期留存下降。重排阶段用 MMR、DPP 或规则打散(同品类/同作者限流、相邻去重),在相关性与多样性间权衡。还要做疲劳控制和探索(给新/冷内容一定曝光)维持生态健康。
延伸学习
与本题相关的知识库文章、术语、工具与行业资讯。