真实面经题目 · 原创解析

使用 B 站首页时,如果发现推荐内容兴趣发散不足,算法工程师应如何从兴趣探索、模型设计和指标评估分析改进?

这题考 B 站首页推荐里探索不足的系统性分析能力。高质量回答不能只说增加随机推荐,而要从用户多兴趣建模、候选召回、探索策略、重排约束、长期指标和 A/B 实验闭环解释为什么推荐会越刷越窄。

出现于:哔哩哔哩 · 算法

60 秒回答模板

我会先把问题定义成推荐系统的利用过强、探索不足:模型过度利用用户近期点击和高置信兴趣,导致首页候选越来越集中在少数分区、标签、UP 主或内容形态上,新兴趣、长尾内容、冷启动内容和跨圈层内容拿不到足够曝光。分析上先看召回、粗排、精排和重排每一层是不是都在收窄兴趣:召回源是否单一,用户表示是否只强调短期兴趣,排序目标是否只追求 CTR 或播放时长,重排是否缺少多样性和新颖性约束。改进上,用户侧要做长短期兴趣和多兴趣向量,区分稳定兴趣、近期兴趣、潜在兴趣和负反馈;内容侧要用分区、标签、UP 主、主题、内容质量、时效和相似度做多路召回;策略侧可以设置受控探索槽、UCB/Thompson Sampling、epsilon-greedy、冷启动扶持、跨兴趣召回和 MMR/DPP/xQuAD 类重排。指标不能只看短期 CTR,要同时看完播、停留、负反馈、兴趣覆盖、类目熵、UP 主覆盖、长尾曝光、新兴趣转化、次日留存和探索流量的学习效率。上线要分人群、分场景、分流量灰度,设置质量门槛和负反馈护栏,避免把兴趣探索做成低质随机曝光。

考点 不是随机推荐
难度 真实面经题
回答目标 把首页推荐兴趣发散不足拆成召回、建模、重排、指标和实验闭环问题,而不是只给随机曝光建议。

深入解析

01

先判断发生在哪一层

首页推荐是多阶段链路,兴趣变窄可能来自召回源单一、粗排过滤过强、精排目标单一、重排缺少多样性,也可能来自用户画像只记住最近点击。回答要把问题拆到召回、排序和重排,而不是笼统说算法不够随机。

02

区分利用和探索

利用是给用户推荐当前最确定会点击或观看的内容,探索是给不确定但可能扩展兴趣的内容少量曝光。长期只强化已知兴趣,短期指标可能好看,但会造成内容同质化、长尾供给冷启动困难和用户疲劳。

03

用户兴趣做多向量

用户不是只有一个兴趣中心。可以把观看历史拆成稳定兴趣、近期兴趣、周期性兴趣、潜在兴趣和明确负反馈,用多兴趣向量、序列模型或 attention 表示不同兴趣簇。这样召回时可以从多个兴趣方向取候选。

04

召回保留探索来源

召回层应同时有主兴趣召回、相似内容召回、关注关系召回、热门趋势召回、冷启动内容召回、跨分区召回和长尾优质内容召回。探索候选也要有质量门槛,例如内容安全、基础完播、低负反馈、创作者信誉和主题相关性。

05

排序表达不确定性

精排模型如果只学点击、播放时长或互动,很容易偏向历史高频兴趣。可以加入不确定性估计、内容新颖性、用户兴趣距离、探索 propensity、冷启动置信度和多任务目标,让模型知道哪些候选有长期兴趣发现价值。

06

重排控制列表多样性

用户看到的是一屏列表,不是单个 item。重排可以用分区、标签、UP 主去重、MMR、DPP、xQuAD、配额约束或探索槽位控制,让同屏内容在相关性足够的前提下覆盖更多兴趣簇。

07

指标覆盖长期学习

评估要同时看短期消费和长期生态。短期看 CTR、播放时长、完播、互动和不感兴趣;多样性看类目熵、标签覆盖、UP 主覆盖、item 相似度、长尾曝光和新内容曝光;长期看新兴趣点击率、兴趣留存、会话深度和留存。

易错点

  • 把兴趣探索理解成纯随机打散,忽略内容质量和用户体验护栏。
  • 只从精排模型改起,不检查召回源是否已经把兴趣候选收窄。
  • 只看 CTR 或播放时长,忽略兴趣覆盖、负反馈、新兴趣转化和长期留存。
  • 把用户画像压成单一兴趣向量,无法表达 B 站用户常见的多圈层兴趣。
  • 没有区分新用户、老用户、疲劳用户和强兴趣用户的探索比例。
  • 声称使用某个 B 站内部策略或阈值;题源只支持通用首页推荐探索分析。

面试官追问

怎么判断首页推荐确实兴趣发散不足?

可以看用户最近 N 次曝光和点击的类目熵、标签覆盖、UP 主覆盖、item embedding 相似度、重复主题比例、长尾曝光占比和不感兴趣反馈。如果消费越来越集中,且探索候选很少进入曝光,就说明链路可能过度收窄。

探索流量如何不伤害用户体验?

先设候选质量门槛,再控制探索比例和位置,比如只在部分槽位、小流量、人群分层中探索。对探索内容设置实时负反馈、跳出率和低质内容护栏,发现体验受损立即收缩。

新用户和老用户的探索策略有什么不同?

新用户缺少历史,探索比例可以更高,通过热门、分区偏好、冷启动问答和轻量行为快速识别兴趣;老用户要在稳定兴趣中插入相邻兴趣、长尾优质内容和周期性兴趣。

为什么只优化多样性指标不够?

多样性高不代表用户喜欢。系统需要在相关性、质量和发散之间平衡,所以要同时看消费指标、负反馈、新兴趣转化和长期留存,而不是只追求类目数量变多。

Bandit 在这里怎么用?

可以把探索候选作为 arm 或候选簇,用 UCB、Thompson Sampling 或带不确定性的重排给低曝光但有潜力的内容机会。关键是记录曝光概率、控制探索预算,并用反馈更新不确定性。