部署新机器学习算法后训练数据特性变化?以CTR预测系统为例
嘿,这个问题问到点子上了——在线广告里替换核心投放算法时,训练数据的分布变化绝对是你要提前踩的坑,我之前帮好几个团队处理过类似的情况。咱们来具体说说训练数据会发生哪些关键变化:
样本选择偏差的系统性转移
原来的启发式算法是基于固定规则选广告,比如可能优先推出价高的、或者历史CTR稳定的老广告,导致你之前收集的训练数据其实是启发式规则筛选后的“偏门样本”,根本不是全量广告候选池的无偏代表。当你的ML系统上线后,它只会优先展示预期收益最高的广告——那些被启发式压着没机会露面的高潜力广告(比如出价中等但CTR极高的新品广告)会大量进入展示池,后续训练数据里这类高收益广告的占比会暴涨,样本分布从“规则偏好的子集”直接跳到“模型偏好的子集”,选择偏差的方向完全变了。标签分布的剧烈波动与反馈循环
之前的CTR标签都是启发式展示出来的结果,很多广告的真实CTR根本没机会被记录。ML系统上线后,你会拿到大量之前没见过的广告的点击数据,整体CTR分布会出现明显波动——比如初期模型选的高预期CTR广告可能真的拉高了均值,但也可能因为模型判断不准,出现一批实际CTR远低于预期的广告,让标签分布多出新的谷值。更关键的是自反馈循环:模型推某个广告用户点了,它会更倾向于推类似的,导致这类广告的标签数据越来越多,进一步强化模型的偏好,数据分布会持续往模型当前的认知倾斜,越走越偏。特征分布的大幅偏移
广告和受众的特征组合分布会彻底变样。比如启发式可能很少在移动端推长视频广告,但ML模型发现移动端长视频广告的eCPM(预期收益)更高,那后续训练数据里“移动端+长视频广告”的样本量会暴涨;再比如启发式只给Z世代推游戏广告,ML模型发现中年用户的游戏转化也不错,那“中年用户+游戏广告”的特征样本会大量增加。原来训练数据里的特征联合分布(比如设备、广告形式、受众年龄的组合)会被完全重构。数据动态性飙升,概念漂移加速
启发式算法是规则驱动,更新慢,所以之前的训练数据可能有很多“过时”的广告或受众特征(比如去年的促销广告数据)。ML系统会实时根据收益调整投放策略,新上线的广告、新的受众群体数据会快速进入训练集,数据的时间敏感性变得极强——原来可能几周才会出现明显的数据分布变化,现在可能几天甚至几小时就有异动,概念漂移的速度会大幅加快,老数据很快就会失效。缺失数据的极端化
原来的训练数据里,缺失的是启发式算法不展示的广告的标签。但ML系统会直接把它认为收益极低的广告完全排除出展示池,你永远拿不到这些广告的真实点击数据,这会加剧数据截断偏差——模型可能永远学不到某些广告的真实潜力,甚至会把本来有机会成为高收益的广告直接判“死刑”。
总的来说,你的训练数据会从“规则驱动的静态、偏态分布”变成“模型驱动的动态、自反馈的偏态分布”,核心是选择偏差、标签、特征的系统性偏移,还有数据新鲜度的急剧提升。这种变化意味着你必须建立实时的数据流更新、漂移检测机制,不然模型很快就会因为数据脱节而失效。
内容的提问来源于stack exchange,提问作者umainyosu

