没点击的广告,反而最值钱

2024-12-30 📁 intelligence 🏷️ 人工智能 大语言模型

在腾讯广告系统里,一个预测框架上线后,ARPU(每用户平均收入)拉出 4.5% 的涨幅。撬动这个数字的核心变量,既不是更精准的点击率预估,也不是更复杂的用户画像,而是"用户没点击的那条记录"。这条看起来反直觉的路径,正在改写广告系统的预测范式。

主流预测模型,把最贵的数据扔进了垃圾堆

过去几年,广告系统的预测战场几乎被"点击率"三个字独占。工程师们比谁的 DNN 更深、谁的特征交叉更花哨、比谁能从用户历史点击里榨出多零点几个百分点的 AUC。但这场军备竞赛从一开始就埋着盲区:用户看见了广告、考虑了三秒、最终没点,这条数据在绝大多数系统里连日志的正式席位都没有。

这恰恰是工业界最荒诞的错配。真正决定一个广告系列能否跑出预算的,从来不是单次点击的概率,而是用户在持续曝光下的疲劳曲线。一条广告在用户面前出现第 1 次时点击率可能有 8%,第 3 次降到 4%,第 5 次可能只剩 1%。这种边际效用递减的规律,在传统模型里几乎完全失声,因为它们只看"发生了什么是正样本",从不认真对待"发生了什么但用户选择忽略"。

AdVance 的论文里披露了一组对照数据:在 CPM、CPC、CPA 三类广告系列上,相比业界此前的最优方法,新框架把预测误差(RMSE)压低了 12% 到 18%,整体性能提升 8% 到 15%。这些增益的相当一部分,要归功于把"展示但未点击"的全量历史压缩进了一个全局疲劳向量。这等于把过去被当作负样本噪声丢弃的数据,重新召回到预测的核心位置。

线性复杂度的隐藏前提,是被忽视的时间维度

第二个反直觉的事实是:广告行业的序列建模长期处于一种"假装处理时间"的状态。RNN 家族因为梯度消失对长序列有心无力;标准 Transformer 虽然能捕捉长程依赖,但复杂度是序列长度的平方级别,在工业级数据量下根本跑不动。于是大家默契地选择了"切片降级",把一条持续数周甚至数月的广告系列切成等长窗口,假装每个窗口之间是独立同分布的。

这种切法有个漏洞:广告之间的曝光间隔从来不是均匀的。凌晨投放的曝光和午高峰之间的曝光,对用户疲劳曲线的影响完全不同;周末和工作日的曝光节奏,累积出来的记忆效应也天差地别。AdVance 的做法是引入条件化状态空间模型,让 SSM 的参数本身依赖当前的拍卖嵌入和时间间隔。这样无论序列多长、间隔多不规则,复杂度都保持线性,意味着它可以一口气处理整条广告系列的全周期,而不是每周重新拟合一次。

这套设计直接换来了线上 A/B 测试的 4.5% ARPU 提升。4.5% 听上去不大,但在腾讯这种体量的平台里,等于在不动用户基数的前提下,从用户行为序列里多挖出了一条收入通道。真正的技术溢价,往往不在于把已知信号做得更深,而在于把被忽略的信号重新接入推理链路。

玩家还没入场:竞争对手的行为,模型至今没学会

4.5% 并不是终点,而是揭开了更深一层问题的入口。论文在讨论部分坦率地承认:当预测窗口拉长到较长时间周期后,精度会出现明显衰减。原因是现有框架主要建模了"用户流量随时间的波动",但广告生态从来不是单方面运行的,同一时刻可能有新广告系列上线、竞争对手调整出价、目标人群重新定向,这些博弈行为对预测结果的扰动,在当前模型里几乎是零覆盖。

这指向了一个被整个行业低估的预测维度:广告主之间的竞争动态。一个广告系列预测得再准,如果隔天竞品突然把 CPM 出价抬高 20%,预算消耗曲线就会被瞬间重写。论文建议引入博弈论框架和广告主行为建模来补齐这块拼图,但坦白说,这块的研究密度和点击率预估相比,连零头都不到。

具体方向至少包括:竞价策略的对抗性建模、预算消耗的博弈均衡、新广告系列冷启动的入场预测、跨广告主的目标受众重叠度计算、平台流量分配的二次响应机制、归因窗口差异下的预算重分配、季节性大促前的对手备货信号。看静止的预测精度是分析师的自我安慰,看动态的博弈斜率才是决定平台长期收入曲线的东西。哪个团队率先把广告主之间的反应函数写进预测模型,谁就可能在下一个 4.5% 出现之前,提前锁定整条赛道的解释权。


本文基于 arXiv:2405.10681(Know in AdVance: Linear-Complexity Forecasting of Ad Campaign Performance with Evolving User Interest)

© 2026 Hot Ingest