模型输出0.05,实际点击率1.8%,这种系统性高估在排序系统里很常见。2023年某广告平台排查发现,未校准的预测分用于出价后,每千次展示成本虚高约34%,ROI下降11个百分点。校准不是可选项,是排序模型上线的必要条件。
为什么会出现偏差?排序模型多用AUC或交叉熵训练,前者只关心相对顺序,后者在样本不均衡(正样本1.8%)时容易整体偏移。此外,负采样会改变先验:训练时按1:4降采样负例,模型学到的概率约为真实值的5倍,服务时必须还原。还原公式:p_true = p_pred / (p_pred + (1-p_pred)/w),w为负采样权重。
校准方法对比。保序回归(Isotonic Regression):非参数,拟合任意单调曲线,样本>1万时稳定;缺点是外推差,两端容易过拟合。Platt缩放:用逻辑回归拟合两个参数,样本少时更稳,但假设校准曲线为S形,实际分布未必符合。某视频团队对比:保序回归把平均绝对偏差从0.08降到0.02,Platt从0.08降到0.035。样本量充足选保序,冷启动选Platt。
实操步骤(共6步):1)从线上日志抽最近7天曝光样本,按时间切分,前5天训练校准器、后2天验证;2)按预测分分桶,每桶至少500样本,桶数20-50;3)每桶计算实际CTR与平均预测分;4)拟合单调映射;5)验证集上算ECE(期望校准误差),目标<0.01;6)上线后每周重算,分布漂移PSI>0.1即触发重训。
案例:某电商推荐位,模型对「低频品类」系统性高估。具体表现:预测分0.03-0.05区间,实际CTR仅0.9%-1.2%。原因是该类目正样本少,训练时被负采样放大。分品类做保序回归后,该区间ECE从0.031降到0.006,整体GMV提升2.4%。注意分品类校准需要每类至少3000样本,否则回退到全局校准器。
概率与排序的关系要理清。校准后的分数可用于:1)多目标融合加权(CTR×出价);2)流量价值预估;3)阈值截断。只用于排序时,单调变换不影响顺序,校准收益有限;一旦进入出价、预算分配环节,未校准的分数会直接造成金钱损失。某DSP接入校准后,无效出价占比从22%降到9%。
模型评估加两个指标:ECE和可靠性图。ECE = Σ(桶样本占比 × |实际CTR - 平均预测分|)。经验阈值:ECE<0.01优秀,0.01-0.03可接受,>0.03必须修。可靠性图画预测分为横轴、实际CTR为纵轴,理想为对角线。某团队每周出图,连续3周偏离对角线超过0.02即回滚模型版本。
常见错误:1)用训练集拟合校准器再在训练集验证,偏差被低估;2)全量一个校准器忽略品类/位置差异;3)校准后不重算阈值,截断线漂移;4)忽略时间衰减,用3个月前样本校准;5)负采样还原与校准重复处理,导致反向低估。第5条最隐蔽,某团队同时做还原和保序回归,预测分被压到实际值的0.6倍,排查两周才定位。