广告算法在阿里文娱用户增长中的实践
导读:从2019年开始,优酷使用DSP在今日头条、阿里妈妈等平台投放视频广告,实现用户的稳定增长。我们将用户增长领域与广告竞价领域结合,借鉴推荐领域的实践,基于特有的业务背景,开发落地了一系列算法。在成本及预算可控的条件下,最终实现了数百万DAU的引流能力。本文主要介绍外投广告算法在用户增长领域的设计及优化,解决存在约束的条件下,实现最大化DAU量的问题。
下面将围绕四点展开:
优酷用户增长业务介绍
广告排序算法及优化
自动化报价算法
总结及后续规划
1. 用户增长业务背景
在用户增长的过程中,首先需要把用户增长划为不同的用户态,不同的用户态存在不同价值。新用户会变为低活用户、中活用户直至高活用户,在整体过程中,也会随时变成沉默用户。对用户增长而言,新用户、低活用户和沉默用户是非常有价值的,他们的到访能有效提高APP的活跃度。
RTB是实现用户增长的主要方式之一。它的主要流程是:首先DSP参与广告竞价,在竞价成功之后,广告会展现在外部平台上,用户在点击之后会切换至优酷APP上,如果感兴趣的话会有视频消费和次日回访。整个流程分为两部分,前半部分归属于RTB竞价,后半部分属于用户增长。
用户增长的主要业务目标是在成本可控的条件下,最大化高价值的DAU量,即让更多的新用户、低活用户以及沉默用户来到平台进行消费,增加平台活跃度。
2. 广告竞价RTB概述
RTB有两个比较重要的组件:广告主竞价代理DSP和提供竞价接入、判定竞价成功与否的平台ADX ( 例如头条ADX,阿里的TanX )。
RTB过程如下:当用户访问的Web页面或APP应用时,请求发送至ADX,由ADX转发至多个DSP,DSP根据从用户需求平台 ( DMP ) 上取得的用户特征进行预估,在100ms之内将广告和出价返回至ADX,之后ADX根据多个DSP返回的结果,根据一定的排序规则和计费规则,选择一个合适的广告投放给用户,之后又将用户是否点击这条广告的信息返回给成功获得了该次竞价的DSP代理。
RTB中的主要关注点是成交机制和计费模式,其中成交机制包括:GFP ( 最高价格成交 ), GSP ( 第二价成交,通用的方式 ), VCG ( 通过效用计算成交价格,存在算法上,理解上的难度,用的较少 )。计费模式主要有CPM,CPC,CPA和OCPX,其中CPM是由广告主承担预估风险,由DSP预估用户对广告主的价值,CPC和CPA是由平台来预估用户对于各个DSP的价值,OCPX是由平台自动调整出价,由平台预估价值,用户承担风险。
在我们的业务场景中,使用的是GSP成交机制,CPM的计费模式。并且优酷业务场景有鲜明的特点:
使用CPM计费,需要我们自身建模预估,但可利用站内数据;
对于不同用户态的拉活,引流成本是不一样的,需要针对不同人群提供成本控制;
作为只有一个用户的DSP代理,可以接入不同的ADX平台,需要针对多渠道多平台做模型融合。
虽然现有的ADX平台能够支持直接在上面投放广告,但是存在很多问题:不支持定向用户分层,不支持个性化,数据属于平台方,无法进行后续优化,接入平台过多也会增加消耗等等,因此我们自建DSP,满足业务场景需求。
1. 算法流程
离线产生数百万的广告,第一步通过人工精选或者算法选择来保证广告池的动态进出,例如删除投放时间过长,点击率过低的广告,通过算法选择高质量的广告;第二步通过个性化多路召回适合用户的千百个广告;第三步将经过召回的广告通过规则过滤,例如会过滤重复广告,或者会根据曝光频率来控制;第四步将这些广告通过预估模型,选择价值最高的广告通过报价算法产生报价,最后将广告和报价结果返回至ADX。
与推荐系统相比,流程借鉴了推荐系统的多路个性化召回,区别在于推荐系统关注Rank顺序,而广告还关注CTR偏差,推荐系统一般最后的组件是重排 ( ReRank ),而广告系统在预估之后需要进行报价计算。
2. 算法实现方案
我们面对的业务场景的主要特点是:
RT限制比较严格,要在100ms内返回;
存在多渠道多平台;
接入量大,机器资源比较紧张。
常用的排序模型有LR,GBDT,DNN ( DCN/WDL/MMOE ) 等,LR需要大量的特征工程工作来提高模型精度,GBDT的训练和预估都很快,能有效缓解RT问题,但是类别特征的处理上容易使模型过拟合,DNN的embedding技术能够处理各种特征,但是由于需要存储包含每个特征对应的embedding的大矩阵,线上内存消耗很大,而且DNN类的模型虽然能达到很高的精度,但训练和预估都很耗资源并且打分时的RT很高。
在多渠道多平台统一模型方面,主要存在两个问题:
不同渠道之间有差异。例如汽车相关广告,在母婴社区和汽车之家论坛点击率之间会有不同;
渠道平台相关没有现成的特征。在实际中,我们以平台本身作为特征,通过根据历史数据构建不同平台的统计特征,使模型感知到渠道平台的差异,最后基于不同平台不同分层的Match特征,实现了由LR单渠道模型到GBDT统一模型的升级,带来了业务上的明显收益。
3. 遇到的问题和思考
推荐中常用召回都是Item-based,通过用户观看的视频来寻找相似的视频,认为这些相似视频是用户喜欢的视频,这导致推荐系统有以下缺陷:
用户观看的视频未必是用户喜欢;
相似视频的相似之处未必是用户观看视频的真正原因;
低频用户观看的视频非常少,推荐结果缺乏多样性。
从因果推断的角度思考上述问题的话,我们认为用户变沉默的原因是对之前推荐的内容不满意,而用户留存的原因是因为推荐的视频他比较喜欢,因此,我们利用无偏信息构建相似度量,构造低活用户到高活用户的匹配,找到他的反事实镜像人,然后进行相关推荐,在业务上也取得了很大收益。
1. 业务背景及问题的形式化定义
不同的场景下,广告投放的报价算法存在不同的约束,主要场景包括日常投放和冲量投放,本质上都是多渠道多分层的投放。对于日常投放而言,会存在预算约束,首活成本约束,用户价值约束 ( 需要去高活,要更多的高质量沉默用户 );当运营有冲量需求时为冲量投放,这时预算充足,有首活成本约束,用户价值约束。
2. 单PID解决冲量投放
根据冲量投放的条件:预算充足、有首活成本约束、用户价值约束,可以解出报价公式,即报价为预估的CTR/CVR与报价系数alpha之积。我们通过单控制器的方法来控制报价系数alpha,使其再能够满足成本约束的同时提升转化率。
控制器根据Feedback数据和控制函数计算公式,可以计算出一个信号,再将其传入执行器中通过执行器函数计算,从而给出报价。常见的控制器有PID和水波控制器,PID通过振幅,累积误差和波动来调节,而水波控制器仅仅通过累计误差来进行调节,能力相对弱一些。执行器是将控制信号进行指数变换,对初始值进行放大或者缩小,实现最后的出价。
3. 日常投放解决方案
对于日常投放而言,会存在预算约束,首活成本约束,用户价值约束 ( 需要去高活,要更多的高质量沉默用户 ),我们采用多目标约束下的最大化问题来建模,用拉格朗日对偶法解决,能解出一个出价公式 ( 可参考KDD2018对应论文 )。计算所得的出价公式中有两个参数p、q,我们通过两个PID对这两个参数进行控制来实现报价。不同于单PID的解决方案,一是在q控制器中增加了修正信号,使其以最终CPC为控制目标,二是利用线性插值的方法建模两个PID之间的耦合影响 ( 具体方法可以参考KDD2018 )。
4. 报价工程化
用户的请求通过DSP接入管理后台,请求在进入系统之后,有以下流程:
接入后台产生竞价、曝光、点击等日志,通过Blink解析统计得到误差数据,将误差数据实施写入内存数据库,并保存历史误差数据;
报价算法核心 ( 为了保证最大化利用流量,M分钟定时调度一次,一次即为一个时间步 ) 通过离线平台得到投放计划,成本、预算、算法参数等,然后从内存数据库中读取误差数据,计算当前报价参数并写入内存数据库;
数据在TPP平台进行广告召回,点击率预估等,最后读取内存数据库中的报价参数并返回广告和出价。
整个实践过程中,在技术选型方面,除了理论上的支持,我们必须考虑机器资源,人力等方面的约束,并考虑到各种可用资源 ( 公司内部,开源等 ),将整个目标进行体系化,分层拆分优化,通过算法AB系统驱动效率提升;针对业务特点建模,具体问题具体分析,技术为业务服务。
后续,我们可以在实现CTR预估的基础上,实现用户价值的预估,实现多目标预估;在报价算法上,可以尝试基于强化学习进行报价;业务上,可以由促活扩展至拉新,热剧宣发,会员等方面,这些都可以依托已建立的预估系统和报价技术框架进行发展。
广告算法在阿里文娱用户增长中的实践相关推荐
- 因果推断在阿里文娱用户增长中的应用
导读:如何实现产品的用户增长?显然,这是各家移动互联网应用的头等大事,也是悬在各家业务负责人头上的"天问".在移动互联网进入下半场的大趋势下,过去粗放式的买量.厂商合作等模式越来越 ...
- 【推荐实践】因果推断在阿里文娱用户增长中的应用
分享嘉宾:天师 阿里文娱 高级算法专家 编辑整理:Hoh 内容来源:阿里文娱技术 出品平台:DataFunTalk 导读:如何实现产品的用户增长?显然,这是各家移动互联网应用的头等大事,也是悬在各家业 ...
- 免费下载 | 让业务起飞!阿里文娱用户及内容运营平台如何助力业务增长
简介:什么样的文娱技术专为业务而生?大数据和AI如何驱动业务增长?一书带你了解阿里文娱用户运营平台&内容运营平台的技术实践,6大版块为你解析,技术如何助力用户增长和内容智能!电子书免费下载,快 ...
- 【推荐实践】阿里文娱面向用户增长的信息流分发机制
今天给大家带来阿里文娱-人工智能部-信息流推荐的天师所做的分享<阿里文娱面向用户增长的信息流分发机制>,关注推荐算法.信息流分发.用户增长的伙伴们别错过啦!(到小程序:省时查报告 中搜索& ...
- 阿里国际站用户增长技术探索与实践
作者:阿里国际站用户增长团队 和众多传统行业一样,跨境贸易产业近年来也经历了数字化的转型创新,而首先参与进模式创新的地方主要集中于信息展示和业务撮合领域.本文将为大家分享阿里国际站在用户增长技术体系建 ...
- 算法在哈啰顺风车中的实践应用
导读:如果科技让出行更美好,可以推动出行的进化,那么AI算法模型的应用,就是其中一个最大的推动力.本次分享的主题为算法在哈啰顺风车中的实践应用,将首先介绍算法同学依托于什么样的算法平台来解决哪些具体的 ...
- 用户增长中你不知道的这几点『获客篇』
如果你对数据分析感兴趣,希望学习更多的方法论,希望听听经验分享, 欢迎移步微信公众号「小火龙说数据」,更多精彩原创文章与你分享! 「经验」我对用户增长的理解『获客篇』https://mp.weixin ...
- 竞赛|数据竞赛Top解决方案开源整理-科大讯飞AI营销算法、阿里妈妈搜索广告、腾讯广告算法、搜狗的用户画像
https://mp.weixin.qq.com/s/_4QG0dWhh784lF0n1wymcw
- 请问机器学习算法岗中用户增长和推荐系统差别是什么呢?
看到这个问题,不由得想起我当初了解用户增长的时候,在网上一搜,发现用户增长的文章往往伴随漫天的黑话.方法论.金字塔.导图,心灵大受震撼的场景. 两者的差别用一句话来说就是,在用户生命周期的部分阶段两者 ...
最新文章
- php jq ajax 4个下拉框联动案列,Ajax与Jquery结合数据库做出实现下拉框的二级联动...
- HTML4和HTML5的区别[转]
- 论文学习15-Table Filling Multi-Task Recurrent Neural Network(联合实体关系抽取模型)
- c# 配置文件App.config操作类库
- python 2048源码_一个python的2048简单实现
- android陀螺仪轨迹,陀螺仪轨迹法长距离管道测量精度实测分析
- adsl 路由器默认密码
- 分别用雅可比(Jacobi)迭代法和高斯—塞德尔(Gauss—Seidel)迭代法求解线性方程组(转载)
- java基础—自定义一个比较器,对TreeSet 集合中的元素按指定方法来排序(java集合六)
- [转帖]ESXi 网卡绑定 增加吞吐量的方法
- 《树莓派Python编程入门与实战(第2版)》——2.2 使用Raspbian命令行
- MATLAB绘图函数plot详解
- echarts 图表数据更新方式
- poi合并docx文档
- 额滴亲娘嘞!偶终于考完试了!”
- 威联通NAS备份到百度网盘
- OpenWrt设置修改IP地址
- 什么是反射 反射怎么用
- WIFI设备配网之微信小程序开发AP配网
- 【基础】存储过程IN、OUT、INOUT参数模式
热门文章
- 公务员考试(计算机专业知识),公务员考试计算机专业知识
- Ubuntu 18.04安装小觅相机(MYNT-EYE )驱动
- 动态令牌-(OTP,HOTP,TOTP)-基本原理
- Webpack,凉了
- 大数据时代,人的行为真的可以被预测吗?
- 「C#」LinQ查询表达式
- 用计算机怎么弹离人愁数字,关于音乐的4个事实,不懂音乐的人会觉得吃惊,《离人愁》已中招...
- 查看redis信息命令
- 泪目!跳槽太不容易了,美团4轮面试,四个小时灵魂拷问,结局我哭了!
- mysql表分区、查看分区