乐趣区

关于算法:QConoCPX多目标多场景联合建模在OPPO的实践

1 背景

自从 2012 年 Facebook 产品化 oCPX 以来,业内 oCPX 产品和能力的倒退曾经十分的成熟。OPPO 数智工程零碎算法平台部商业化算法也在 oCPX 能力建设上积攒了一些实践经验。

2 oCPX 是什么

从某投放平台的定义来看,oCPX 是一种针对成果广告的智能出价投放形式,广告主抉择明确的优化指标(如下载、激活、注册、付费),并给出冀望的转化老本,零碎通过机器学习预估每一次投放机会的转化概率,并联合冀望老本,主动出价,保障老本成果稳固。

o 是 optimize 优化的意思。CPX 是一种扣费形式,CPC 是依照点击扣费,CPD 是依照下载扣费,CPM 是依照曝光扣费。所以 oCPC 是一种优化 过的 CPC。oCPC 是按转化出价,按点击扣费;oCPD 是按转化出价,按下载扣费;oCPM 是按转化出价,按展现扣费。

oCPX 有一套出价控制系统,该零碎实时、智能调节广告出价,以保障广告主的转化老本诉求。零碎的控制目标是老本偏差位于 1.0 左近,具体伎俩是通过出价因子 alpha 干涉 eCPM 排序公式从而影响计费金额。其中:

老本偏差 = 广告实际成本 / 广告预期老本
eCPM = pctr pcvr TCPA * alpha

如下图所示,CPC 与 oCPC 的出价点和计费点是拆散的,CPC 的出价点在点击上,而 oCPC 的出价点在点击之后的激活、注册和付费上,两者的相同点是计费点都是点击。

从零碎视角来说,CPC 广告须要广告主频繁调价,调整定向,本人保障老本。对平台来说,流量不依照深层价值售卖收益不高。oCPC 广告,对广告主来说,操作简略,只须要设定老本。对平台来说,oCPC 能让流量依照深层价值售卖收益更大,然而平台须要做 pcvr 预估和老本保障,对平台要求更高。

3 oCPX 广告在 OPPO 利用商店变现地位介绍

OPPO 利用商店有十分多地位,次要的场景有举荐和搜寻。其中举荐场景次要是首页、相干举荐和热搜, 热搜包含热搜软件和热搜游戏。搜寻场景次要有搜寻联想页和搜寻后果页。联想页其实是 sug,输出 query 然而不点搜寻,上面举荐的 app 算联想页,点击搜寻之后的后果是后果页。

整体的举荐后果包含三种类型:广告、联运游戏和天然量。广告就是广告主投放的,抖音快手拼多多这类都是大广告主。联运游戏是游戏类开发者在游戏核心上架的 APP,走的是流水分成模式,比方 梦幻西游,王者光荣。天然量就是惯例 APP,比方微信从来不投广告并且也不是游戏。

4 转化率预估的挑战与应答策略

oCPX 广告的转化率预估面临的挑战很多。第一、转化指标多。不同的这个转化指标的数据的差别大的,激活跟付费差两个数量级,对模型学习效率产生影响。第二、深度转换提早特地大。当天下载的 APP 带来的付费,只有五成左右的付费是当天达到的,剩下的大部分付费是将来七天内达到的,建模的时候当天是负样本第二天是正样本,反差会对这个模型的准确性造成影响。第三、数据稠密导致模型很难学好。第四、转化数据的品质比拟难保障。因为转化数据是广告主回传的,既可能传多了也可能传少了,广告主可能传错了或者进行脉冲式回传,容易导致系统压力较大,所以数据校验规定须要迭代地十分欠缺。

以利用散发 4 大模块(首页、热搜、相干举荐、下载更新页)为例,具备 os 激活、回传激活、回传注册、游戏注册、游戏付费一共 4*5=20 种 cvr 预估模型。每个转化指标独立建模有如下弊病:第一、模型多,保护老本大,占用大量训练、贮存资源。第二、线上内存占用大会导致组内的同学排队上线,升高试验效率。第三、深度转化 CVR 样本过于稠密、数据量小会导致模型易欠拟合。第四、独自建模无奈无效利用类型之间的共通信息量,比方付费就用不了注册带来的信息量。

为什么 MMOE 特地适宜利用在多个转化指标的建模上呢?因为浅层指标和深层指标能够共享 embedding,这样浅层指标能够为稠密样本深度转化类型共享信息量,而且没有对模型的大小及计算复杂度产生数量级减少,不会对性能造成冲击。在 MMOR 体系内,EXPERT 能够学习不同类型间的共性,GATE 和 TOWER 能够学习不同类型间的差别。而且通过试验测试,MMOE 版本的模型也比仅仅加 oCPX 类型特色的模型成果更好。

基于 MMOE 咱们做了一些尝试。惯例的 MMOE 是每个工作配置的 GATE 对不同的 EXPERT 进行加权送给每个 tower 的一个多任务学习模型。CGC 版本的 MMOE 实际上是,每个工作必须要有独自的 公有 EXPERT,每个独自公有 EXPERT 不受其余工作的影响,当然共享 EXPERT 仍然存在。ML-MMOE 实际上是上一层的 ERPERT 的输入与 GATE 的加权后果的输入要被下一层 EXPERT 所用。PLE 理论 上是 ML 版本的 CGC 网络。其余的优化点还有单个 tower 独自加 wide 和 gating 办法。不同的办法 AUC 收益如下:

最终 20 个模型缩小到 2 个,线上获得 1%+ 的收益。

既然有了多指标建模,那就会碰到多指标调优的问题。咱们外部尝试了两种计划,一种是基于不确定度调整多指标间的 loss,另一种是基于基于不同指标的学习速率去调整不同指标的损失的权重。

提早转化是 oCPX 转化率建模的常见问题。提早转化问题具体来说,如下图,8 月 1 日 1000 个点击带来了 100 个转化,然而这 100 个转化在 8 月 1 日当天仅仅达到了 50 个转化,另外提早的 50 个转化对应的点击在 8 月 2 日建模的时候会被当成负样本进行学习,随后 8 月 2 日达到的 20 个转化会月 8 月 3 日当成正样本学习。同一个样本既被当正样本又被当负样本学习会对模型的准确性产生肯定的影响。常见的解决方案次要有负样本调权、基于指数分布回流率建模和利用 DNN 预估回流工夫。天级别负样本调权时须要留神的是间隔当天越远的负样本是负样本的概率越大。

在 CVR 预估的畛域,预估值跟实在值肯定会有偏差,从而天然有校准计划。第一是整体的校准,整体的校准实用于 CVR 对立高估 1.5 倍,那就要除回来,这个是产生的概率比拟小的。事实中比拟常见的是因为建模的时候,对负样本进行采样,所以要把 pcvr 整体上进行校准回来。第二个是分段校准,事实中会常常的发现不是对立的高估。咱们会发现在低分段高估,高分段低估。从左边的这个图来看,横坐标预估 CVR 是一个分段,比如说 20 就代表 0.2 这个段,纵坐标是统计 CVR。每个分段里如果有一百个样本,20 个正例与 80 个负例,能够取得统计 CVR。在校准的时候能够把这些红点都划进去,而后大家看到这个红点其实有一个法则,就是预估值低的时候,相对来说统计值也比拟低的,预估值高的统计值就高。这个时候如果间接上校准的话,其实会发现红点有些毛刺的,如果这个时候校准对模型的 AUC 有一些影响的,用保序回归的办法画出一条绿色的线,是一个枯燥不递加的线,线上用保序回归来校准的话,AUC 不变,这也是业内比拟罕用的计划。第三是个体的校准,个体校准更多是为了应答经营或者广告主的一些 bad case。

因为 ecpm 的排序公式会有固定的超参数,例如 eCPM=TCPApcvr^pcvrTpctr^pctrT。超参惯例来说须要基于教训来调整,数据分布发生变化时调整总有收益,然而须要人力投入。一套主动搜参的零碎是必要的。惯例的整体调参办法有 CEM,个性化调参办法有强化学习的 DDPG。

一套正当的评估指标能够领导大家沿着正确的门路迭代。常见的零碎评估指标如下:耗费是指广告主在平台破费的钱,即广告平台的支出。广告主价值是指流量给广告主带来的价值,个别指所有转化的 CPA 之和。冀望耗费等同于广告主价值。老本偏差是理论扣费与冀望耗费的比值。预估偏差等价于模型在线预估值均值与后验统计值的比值。老本达标率(数量维度)是指老本偏差在 [0.8, 1.2] 之间的广告数占比。老本达标率(耗费维度)是指老本达标的广告耗费占整体耗费的比重。零碎的评估指标,会十分关注两个点,一个叫做老本偏差,一个叫做预估偏差。老本偏差为广告主负责,预估偏差掂量模型能力。

5 总结

总体来说,要对数据有一个比较完善的掌控,不论是转化的数据还是离线的样本的建设的监控,都是要到位的。能够通过多模型的交融的计划来优化模型的准确度。策略方面,全链路都要参加。最初才能够达到一个对于广告主来说老本达标且模型预估精确的最大价值状态。这个价值最大不仅仅是说流量变现的价值,同时还有广告主对平台的满意度更高,留存也会更高。

作者简介

Jun OPPO 高级数据挖掘工程师

有 7 年的广告算法畛域教训,次要负责利用商店 oCPX 能力建设。

获取更多精彩内容,请扫码关注 [OPPO 数智技术] 公众号

退出移动版