一个电商推荐系统,CTR 模型和 CVR 模型分开训练,CVR 模型只在点击样本上训练。上线后发现线上 CVR 预估整体偏高,导致出价过高、ROI 下降。请说明你怎么定位这是模型排序问题还是校准问题,以及你会怎么改造训练和预估链路来缓解。要求给出可验证的排查步骤和改造方案。
面试官在考什么
判断候选人能否理解样本选择偏差(SSB)对 CVR 建模的影响,并能区分排序与校准问题,给出从数据到模型到线上服务的系统改造方案。
回答框架 · 前两步
- 定位问题:先看 CVR 预估偏高是全局性还是分群性(按类目、价格带、新老用户);对比线上预估 CVR 与实际转化率的校准曲线(reliability diagram),计算校准误差(ECE/MCE)。
- 区分排序与校准:如果 AUC/GAUC 正常但校准曲线偏离,是校准问题;如果排序指标也下降,可能是样本选择偏差导致模型学偏。
还有 3 条答案要点、 3 层追问、 4 个常见坑, 以及针对你简历的追问路径,在定制报告里。
延伸阅读
想看这个方向的整体准备路线? 进入「推荐与搜索」方向页
同一能力域的其他题
- 冷启动问题你会怎么处理?新用户和新物品的策略一样吗?请分别说。
- 离线 AUC 涨了但线上 CTR 没涨,你会按什么顺序排查?请给出具体清单。
- CTR 模型里为什么要用 GAUC 而不只看 AUC?GAUC 是怎么算的、它解决了什么问题?
- 特征工程里你会怎么做特征穿越(label leakage)的检查?请举一个推荐场景里常见的穿越例子。
- 你做过线上 A/B 实验,请说明分流、样本量、显著性判断的要点。如果一个实验 p 值不显著,你怎么处理?
- 你在做一个首页信息流的 CTR 模型,要加一维特征「用户过去 7 天在该一级类目下的点击率」。训练样本取自 8 月 1 日–8 月 7 日的曝光日志(每天约 2 亿条),你打算 1–6 日做训练、7 日做验证。请说明:这个特征的统计窗口在离线训练和线上 serving 分别应该怎么算?为什么不能直接对整份日志算一个「过去 7 天」的统计再 join 回每条样本?