检查点
问题陈述与评估指标
了解构建广告点击预测机器学习系统的问题陈述和评估指标。
广告点击预测
1. 问题定义
预测用户是否会点击某个广告,是数字广告领域中的一个关键问题。它直接影响收入和用户体验。请构建一个机器学习模型,用于预测广告是否会被点击。
我们聚焦于一个二分类问题:
- 输入:关于用户、广告本身以及上下文环境的特征
- 输出:用户点击该广告的概率(1 表示点击,0 表示未点击)
为了简化问题,我们不涉及复杂的多阶段广告排序流程(例如级联分类器),而是将其视为一个独立的预测任务。
...
广告推荐系统
背景:广告是如何投放的
在深入讨论评估指标和建模之前,先了解广告通常是如何被投放的。大多数广告投放系统采用“瀑布流”模型。
瀑布式收益模型
- 发布商优先通过直接交易以最高千次展示成本(CPM)出售广告展示机会;
- 若未售出,则将此次展示机会逐级下放至其他广告网络或交易平台;
- 此过程持续进行,直到广告展示最终被成功售卖。
越快且越准确地预测哪个广告会被点击,系统的整体表现就越好——不仅体现在点击率上,还包括收入和用户参与度。
...
瀑布式收益模型
2. 指标设计与需求
评估指标
在训练阶段,我们可以专注于机器学习相关的评估指标,而非直接使用收入或CTR等业务指标。以下是两类主要指标:
离线指标
- 归一化交叉熵(NCE):NCE 是预测的对数损失(logloss)除以基准 CTR 对应的交叉熵。这种方式使得 NCE 不受整体背景点击率变化的影响。公式如下:
其中:
- :真实标签(0 或 1)
- :模型预测的概率
- :全局平均点击率
该指标会对高置信度但错误的预测施加更重的惩罚,非常适合用于评估概率型分类器。
在线指标
- 收入提升(Revenue Lift):指一段时间内收入的变化百分比。新模型上线时,会先在小部分流量上部署。关键在于权衡测试流量占比与 A/B 测试周期的长度。
系统需求
训练阶段
-
数据不平衡:实际场景中点击率(CTR)极低(约 1%-2%),导致监督学习训练困难。需要采用能够处理高度不平衡数据的方法来训练模型。
-
重训练频率:需具备一天内多次重新训练模型的能力,以应对线上数据分布的动态变化。
-
训练/验证集划分:为模拟真实生产环境,训练集与验证集应按时间切分,确保无时间穿越。
推理阶段
-
服务性能:广告点击预测需满足低延迟要求(50ms - 100ms)。
-
延迟控制:由于广告请求经过瀑布流模型处理,因此机器学习模型的推荐响应必须足够迅速。
-
防止预算超支:若广告投放模型反复推送相同广告,可能导致广告活动预算过早耗尽,造成发布商经济损失。
总结
| 类型 | 目标要求 |
|---|---|
| 评估指标 | 合理的归一化交叉熵和点击率表现 |
| 训练要求 | 能有效处理类别不平衡数据 |
| 支持高吞吐量,可实现每日多次重训练 | |
| 推理要求 | 预测延迟控制在 50 至 100 毫秒之间 |
| 具备控制或避免广告活动预算超支的能力 |
Quiz
单选题
对于损失函数,为什么不能使用对数损失(logloss)函数?
1 / 1