友盟+数据技术系列

数据能够打通,对于消费者的理解加深,这是革命性的变化。数据的进化促使传播和传播载体之间解耦。现在,营销是基于人而不是基于传播位置。更重要的是智能,数据让机器有持续学习的机会,通过学习创造更多智能型策略,解放双手,形成更好的决策。

近日,【友盟+】研发专家王琪,在清华大学做了主题为大数据与机器学习在营销中的应用的技术分享,帮你了解数据营销技术的变迁历史和应用趋势。

主要是三个方面:

1.计算广告的基础内容

1)计算广告的核心问题

2)计算广告的主要结算方式

3) 计算广告的主要广告形态

2.效果广告的核心算法演进,以CTR/CVR预估为例

1)CTR和CVR预估的挑战

2)CTR和CVR预估的算法演进

3.在人群定向、智能创意、媒体推荐等场景的实践

1)智能创意

2)媒体质量与匹配

3)人群定向

4)线上效果评估A/B Testing

第一、计算广告的基本内容

计算广告的核心问题是实现广告主、媒体、用户之间的最佳匹配(Find the "best match" between a given user in a givencontext and a suitable advertisement)。

为了满足这种最佳匹配,计算广告经历了很长的发展历程,不断尝试最佳的展示和结算模式。当下,计算广告有四种常见的结算方式。

(图片出自刘鹏的计算广告)

计算广告也现了几种比较有代表性的广告形态,主要有以下三种:

1)  展示广告。以CPT、CPM为主要计费方式,适合高曝光的品牌广告,以增强品牌认知而不是直接转化为目的,是非竞价广告。

2)  搜索广告。搜索广告是由搜索关键词驱动的广告。广告主选择一个“竞价词”,当用户触发某个搜索请求时,广告主的广告得以展现。

搜索广告场景是广告主、消费者、平台的三方博弈:广告主通过在关键词上的出价,表达对流量的购买意愿和可接受成本;消费者通过输入查询词表达当前的需求点,并对感兴趣的广告产生点击、收藏、购买等行为;平台通过将不同广告展现给输入不同查询词的消费者,在满足消费者需求的同时,为广告主触达潜在客户,平台根据消费者触达情况对广告主计费(展现、点击、购买),获取收益。

搜索广告有3个核心问题:一是广告检索,比如如何根据相关性检索出对应的广告,如何设置倒排索引来提高检索效率,如何通过查询扩展来提高检索的命中率。二是广告排序,平台的目标是最大化收益,在总流量固定的情况下,则等价于最大化每千次展现的期望收益(eCPM)。以CPC点击扣费为例,eCPM=pCTR*Bid_price。 pCTR为预测用户对广告的点击率,Bid_price为对广告的出价,最终按照eCPM排序。三是计费。最常用的是广义二价拍卖(Generalized Second-Price auction,GSP),即计费价格通常是排在赢家后一位的买家出价,加上一个很低的溢价,比如1分钱。

3)  程序化交易广告。程序化交易广告指的是通过数字平台,按广告主需求,自动地执行在不同媒体与终端按人群定向购买广告的流程。与之相对的是传统的人力购买的方式。

程序化购买的实现通常依赖于需求方平台(DSP)和广告交易平台(Ad Exchange)以RTB(Real TimeBidding)实时竞价模式支撑,程序化购买的优势在于:1.受众购买,人群精准定向;2.智能投放、算法多维优化;3.更加高效地管理广告投放,提升效率与效果。也就是说,程序化交易广告以实时竞价(Real Time Bidding, RTB)为核心,使得需求方对流量的选择和控制能力达到极致。

为了支撑程序化广告交易,业界建立了如下四个平台:

DSP(Demand Side Platform,需求方平台):为广告主提供跨媒介、跨平台、移动终端的广告投放平台,通过实时数据分析来进行购买、投放广告,并形成报表。主要为广告主服务。

SSP(Supply SidePlatform,供应方平台):帮助媒体主(在移动端主要是移动站点和APP)进行流量分配管理、资源定价、广告请求筛选,更好地进行自身资源的定价和管理,优化营收。

ADX(Ad Exchange,广告交易平台):一个开放的、能够将媒体和广告主/广告代理商联系在一起的在线广告市场(类似于股票交易所)。

DMP(DataManagement Platform):数据管理平台,对DSP而言,从SSP一侧获得的信息可能不足以支撑DSP做出决策,DSP可能会从DMP那里购买一些数据,DSP报一个android id或者IDFA给DMP,然后DMP返回相应的用户标签。

如下图

RTB实时竞价模式的基本流程:

用户打开集成了SSP的SDK App,广告在“将展未展”之时,SDK会将一些信息(如App名称、广告位等)上报;

SSP收到上报信息,向和SSP对接的ADX发起Bid Request;

ADX会将此Bid Request发送给所有和此渠道对接的DSP上,要求DSP对此次展示进行出价;

DSP收到Bid Request后会先拿到SSP通过ADX传递过来的数据,然后在DMP中进行匹配,如果符合投放要求,则出价,向SSP发送Bid Response,此Bid Response会携带广告主要投放的物料信息;如不符合,则不参与出价;

ADX会收到来自各DSP的出价信息,若到达规定时间,DSP没有返回Bid Response,则该DSP不参与竞价,ADX对此次出价的DSP进行竞价,出价最高者做为竞价成功的DSP;

ADX将竞价成功的DSP的物料信息等返回给SSP,SSP将物料信息(例如一个广告图片的url)下发给SDK,此时APP展示广告;

SSP向竞价成功的DSP发送Win Notice,通知DSP此次Impression已经竞价成功,至此 RTB交易结束。

(RTB的基本流程,图片出自网络)

第二部分,效果广告的核心算法演进,以CTR、CVR预估为例

接下来介绍效果广告的核心问题:CTR/CVR预估。CTR(Click Through Rate) 指点击率,CVR(ConversionRate)指转化率。后面会介绍CTR/CVR预估的挑战, 以及五个阶段的算法演进历程。

CTR和CVR预估的挑战:

1)用户是海量的,点击或转化是稀疏的,点击广告的用户比例不高;

2)点击或转化数据噪音较大,用户的质量参差不齐;

3)点击或转化预估精度要求高,直接影响广告主的投入产出比。

CTR、CVR预估的算法演进,分为5个阶段:

1)逻辑回归模型

LR模型(逻辑回归模型),是一种广义线性模型。优点就是模型简单,易于并行实现,可解释性强。在特征归一化处理后,每个特征的权重就代表了特征的重要性。缺点就是连续特征离散化,其实LR本身是不需要对连续特征做离散化的,但在通常的CTR预估的场景中,为了解决鲁棒性和非线性的问题,需要对特征进行归一化处理。LR最重要的特点是需要领域知识构造特征,相当于是人工特征工程加上domain知识。

延伸知识:

虽然LR模型的输出是一个0-1的值,可以用来表达概率,但并不是预估点击量的真正概率;2个LR模型的预测出的概率,不具有可比性,很多人直接拿2个LR模型对比是严重错误的。我们要做calibration,根据它真的数据的正负样本的比例,把它纠正到一个跟概率近似的东西,这样不同模型间就可以相比了。

2)LR+GBDT模型

把LR和GBDT模型做了合并,用GBDT进行特征组合和离散化,LR可以有效利用海量ID类离散特征,保持信息的完整性。

(LR+GBDT模型)

优点:GBDT 可以自动进行特征组合和离散化,LR 可以有效利用海量 ID 类离散特征,保持信息的完整性;

缺点:LR 预测的时候需要等待 GBDT 的输出,一方面 GBDT在线预测慢于单 LR,另一方面 GBDT 目前不支持在线算法,只能以离线方式进行更新。

3)FM+DNN模型

(FM+DNN模型)

对于离散特征,先找到其对应的category field,并用FM做embedding,把该category field下的所有特征分别投影到这个低维空间中。以用户query为例,如果用one-hot可能有数十亿维,但是如果我们用FM编码,就可以把所有的query都映射到一个200维的向量连续空间里,这就大大缩小了DNN模型的输入。

对于连续特征,由于其特征维度本来就不多,可以和FM的输出一同输入到DNN模型里进行训练。

 

优点:FM可以自动进行特征组合,并能把同一category field下的海量离散特征投影到一个低维度的向量空间里,大大减少了DNN的输入。而DNN不但可以做非线性变换,还可以做特征提取。

缺点:2 阶FM只支持2维的特征交叉;性能和效率问题。

4)Wide&deep模型(也称wide and deep learning,WDL)

(Wide&deep模型)

人脑是一个不断记忆(memorization)并且归纳(generalization)的过程,Wide&deep模型就是将宽线性模型(Wide Model,用于记忆)和深度神经网络模型(Deep Model,用于归纳)结合,汲取各自优势形成的。

WDL分为wide和deep两部分联合训练,单看wide部分与LR模型并没有什么区别,只要是记住某些特征或某些组合特征,简单、容易规模化而且可解释性比较强,强调记忆性(memorization);deep部分则是先对不同的ID类型特征做embedding,在embedding层接一个全连接的MLP(多层感知机),用于学习特征之间的高阶交叉组合关系。由于Embedding机制的引入,WDL相对于单纯的wide模型有更强的泛化能力, 即强调泛化(generalization)。

业界后来基于此模型延伸出各种模型,基本上逃不过这个框架,所以这篇文章有很大的开创性和启发性。

5)ESMM模型(EntireSpace Multi-task Model,全空间多任务模型)

(广告中的用户行为链路导致的样本选择偏差问题)

(全链路的post-click CVR预估模型)

SIGIR2018的这篇论文,广告或推荐系统中,用户行为的系统链路可以表示为展现→点击→转化→复购的序列。通常我们在引擎请求的时候进行多阶段的综合排序并不断选取头部的子集传给下一级,最终在展现阶段返回给用户。每阶段任务的输入量级都会因为上一阶段任务经过系统筛选(比如,召回到粗排、粗排到精排、精排到展现)或者用户主动筛选(例如,展现到点击、点击到转化、转化到复购)而逐步减少。

传统的全链路建模是对每个阶段的用户反馈日志进行单独的建模,分别构造展现后点击率预估(pCTR)模型,点击后转化率预估(pCVR)模型,转化后复购率预估(pRebuyR)模型。

但是多阶段独立建模存在一些共性问题,直接影响最终的效果,最关键的两个问题:

1)样本选择偏差(SampleSelection Bias, SSB)问题。如图所示,后一阶段的模型基于上一阶段的采样后的样本子集进行训练,但是最终在全样本空间进行推理,这带来了严重的模型的泛化问题。

2)数据稀疏性((DataSparsity, DS)问题。通常后一阶段模型的样本规模通常远低于前一阶段任务,相邻两阶段的样本规模通常差多个量级,但是参数空间却是类似的。这同时加大了模型训练的难度,同样带来了泛化性问题。

这篇论文,介绍了一种全新的全链路预估建模方法 ESMM模型,它充分利用用户行为决策内在的序列模式,在全空间多辅助任务的帮助下,优雅地解决了在单阶段建模中遇到的 SSB 和 DS 挑战。ESMM可以很容易地推广到具有序列依赖性的用户行为(浏览、点击、加购、购买等)预估中,构建跨域多场景全链路预估模型。

文中以post-click CVR预估为例来介绍全链路预估问题,post-click CVR 是指点击后转化率,即 pCVR=p(conversion|click,impression)。 传统的CVR建模方法采用在点击率(CTR)预估任务中类似技术。在样本构造上,传统的CVR模型是通过点击的展现样本子集进行训练,但是推理的时候对整个展现空间进行推断。但是如上文所说,SSB 和 DS 问题的存在使 CVR 建模具有挑战性。

该论文以全新的视角对CVR进行建模。所提出的Entire Space Multi-task Model (ESMM)可以同时消除这两个问题,通过:A. 直接在整个样本空间建模CVR; B.采用特征表示迁移学习策略。ESMM引入两个预估展现点击率(CTR)和展现后点击转化率(CTCVR)作为辅助任务。ESMM将pCVR作为一个中间变量,并将其乘以pCTR得到pCTCVR,而不是直接基于有偏的点击样本子集进行CVR模型训练,如图所示。pCTCVR和pCTR是在全空间中以所有展现样本估计的,因此衍生的pCVR也适用于全空间。它表明 SSB 问题一定程度上已被消除。

此外,CVR任务的特征表示网络与CTR任务共享,后者用更丰富的样本进行训练。这种参数共享遵循特征表示迁移学习范式,并为缓解DS问题提供了显着的帮助,实验表明ESMM模型相对传统的CVR建模方法,在CVR上有显著的提升。

第三、实践和探索

前两部分我们分别讲了计算广告的基础内容和效果广告的一个核心问题,CTR/CVR预估问题。  接下来讲一讲我们自己的一些实践和经验。

首先我们来看信息流广告投放的一般流程。主要包括如下六步:

  • 目标群体分析

  • 素材设计制作

  • 媒体选择

  • 信息流广告投放设置

  • 效果监测

  • 择优持续投放

我们在上面对应的三个阶段进行了优化,第一部分是智能创意优化;第二部分是做媒体匹配,第三部分是做人群定向,这是最重要的环节,直接关系到激活率转化率等核心指标。分别来详细说明一下:

1.  智能创意:创意不是固定的,根据触达到的用户的特定属性及用户行为而动态展示出不同的内容和效果,是一种依托大数据的广告精准投放动态优化技术,这种技术能够使广告创意更具针对性和精确性,可以显著增强广告的个性化展现效果。

这里是借助风格迁移。比如,你拍一个头像通过各种风格化形成新的头像,但原始内容是你的真实头像。例如,长城的照片,对每一个用户做风格预测,我预测你可能喜欢水墨国画等,那你看到的广告是水墨画的长城图片。

改变风格不是新鲜事,让你的广告对用户更加有吸引力,这个最关键的还是对用户风格的定位,至于图像合成技术,只是一种手段而已。【友盟+】有7亿的用户行为数据包括每年会监测上百亿的广告展现,我们能够通过数据去判断用户的偏好。

2.  媒体质量和匹配

媒体质量是有高低之分的,根据一定的算法模型,可以通过媒体下用户的价值或者活跃度等指标来衡量媒体的质量,广告主可以根据媒体质量选择高质量的投放媒体。

媒体用户画像。好的媒体不一定是匹配的媒体,我是一个小APP要拉新,是投百度头条、UC还是今日头条,并不是媒体好广告效果就好。我们不仅能够筛选出高质量的媒体,还能够衡量你的客户群体和媒体的匹配程度。

3.  人群定向。

人群定向主要分为基于标签的定向和基于模型的定向两类。

1)基于标签的定向

常见的标签主要有三类,人口属性标签、地理位置标签和行为偏好标签。比如我们可以选择男女(人口属性标签)进行定性,也可以选择用户的活跃商圈(地理位置标签)进行定向,还可以选择喜欢足球(行为偏好标签)的用户进行定向。

2)   基于模型的定向

所谓基于模型的定向,是指根据用户上传的核心用户(种子用户)作为训练样本,构造成有监督(或者半监督)学习问题。根据样本数据训练模型,然后根据模型做出预测。这里就会涉及到如下几个问题:

A. 问题的定义,如果能够提供正负样本, 则问题转化为有监督学习问题,如果仅仅提供正样本,则问题很可能是半监督学习问题;

B. 方法的选择,有监督的学习问题,比如二分类问题,像LR模型、GBDT模型、Wide&Deep 模型等前面所讲到的模型都比较合适;半监督的学习问题,通常也成为PU-learning(Positive and unlabeled learning), 业界也有一套较为成为的方法,对于半监督的学习问题,还可以根据TGI指数(Target Group Index, 目标群体指数),做特征的筛选,实现高效,能够满足批量需求;

C. 样本的选择,即选取怎样的数据作为训练样本,比如选取历史广告投放数据中转化用户、选取自定义的高价值用户等;

D. 效果的评估,主要分为线下效果评估和线上效果评估。线下效果评估是难点,像有监督学习问题,我们可以根据AUC来评价模型的效果,但是像半监督学习,样本的选择和方法的选择对结果评价都有很大的影响,更多的需要从方法的合理性、结果的可解释性等角度进行评估。线上效果的评估相对较为简单,可以根据线上指标的对比来评估效果。

线上效果评估A/B testing

对比线上效果好坏时,通常的做法是A/B  testing。 A/B testing本身有很强的统计学理论基础,以比较线上CVR是否有显著差异来讲,如果投放量很少,转化率由于随机误差本身就会波动比较大,很难说明CVR是否有显著提升。

所以,在做A/B testing时,我们有一些原则:不过早下结论,要有统计意义的效果显著;要合理设置测试持续的时间,注意比如周末效应的影响;按用户还是流量分桶,确保同一个用户重复访问时看到的总是同一个版本;在条件允许的情况下,多做一些A/B测试。

互动一下

以上互动观点,均来自“ 5位专家、24个观点,教你如何进入数据快车道 ” ;

推荐阅读:

2018年全球广告行业报告:5个现状、8个趋势~附PDF

互联网金融必读:移动互联网行为数据,在这6个场景帮到你

推荐活动:2018UBDC报名开启,共话【DI · 进化

(扫一扫,报名UBDC)

点击“阅读原文”,参与报名

算法男自述:很有料很枯燥,机器学习在营销中的应用相关推荐

  1. 阿里的推荐算法竞赛的宣传稿写得很不错,很生动,吸引眼球

    阿里的推荐算法竞赛的宣传稿写得很不错,很生动,吸引眼球.贴在这里,以后可以借鉴 ------------------------------------------------------------ ...

  2. 世界上有哪些代码量很少,但很牛逼很经典的算法或项目案例?

    来自公众号:五分钟学算法 今天分享四个代码量很少,但很牛逼很经典的算法或项目案例. 1.no code 项目地址: https://github.com/kelseyhightower/nocode ...

  3. 【很逗,很经典】【与靠谱IT男的浪漫闪婚记】——转个很可爱的帖子,貌似男女猪脚是咱IT人士呢...

    前言: 楼主和男猪脚刚认识的时候,楼主问:你谈了几个? 男猪脚说:1个谈9年,你认为我能谈几个? 顿了一会儿他说:那么你呢? 楼主沉思了一下,说:我数数看呢. 当时男猪脚就震惊了. (1) 楼主200 ...

  4. 【很逗,很经典】【与靠谱IT男的浪漫闪婚记】——转个很可爱的帖子,貌似男女猪脚是咱IT人士呢

    前言: 楼主和男猪脚刚认识的时候,楼主问:你谈了几个?  男猪脚说:1个谈9年,你认为我能谈几个?  顿了一会儿他说:那么你呢?  楼主沉思了一下,说:我数数看呢.  当时男猪脚就震惊了. (1) 楼 ...

  5. 编程很难?很枯燥?那我们就玩起来燥起来。

    编程很难?很枯燥?那我们就玩起来燥起来. 今天我们继续利用米思齐软件,来玩转物联网开发板,今天我们玩点好玩的又实用的,那就是利用开发板和DH11温湿度模块以及1602A LCD显示屏等材料制作一款高精 ...

  6. 什么是陀螺仪的dr算法_加速度计和陀螺仪指南(很详细的介绍)

    本帖翻译自IMU(加速度计和陀螺仪设备)在嵌入式应用中使用的指南. 这篇文章主要介绍加速度计和陀螺仪的数学模型和基本算法,以及如何融合这两者,侧重算法.思想的讨论 介绍 本指南旨在向兴趣者介绍惯性ME ...

  7. 图解算法岗求职实况:理想很丰满,现实很骨感

    来源:100offer 本文约5000字,建议阅读8分钟. 本文通过数据.采访与真实案例,带你走进2017年算法岗求职市场的真实现状. 人工智能火热的 2017 年,算法相关岗位无论在薪资还是受欢迎程 ...

  8. 有“肌肉”有“血管”!波兰团队耗时5年研发超逼真仿生机械臂,网友:很怪异也很牛掰...

    来源:大数据文摘 本文约1800字,建议阅读5分钟 本文为你介绍波兰团队研发的真仿生机械臂. 1970年,日本机器人专家森政弘提出,一个看上去和人类无异的实体可能会让人们产生一种寒冷和怪异的感觉. 那 ...

  9. 房东收电费1.5犯法吗_深圳房东租客少了,感到很困难压力很大,几栋楼房间空着!...

    深圳网友姜女士爆料,她是一名二手房东,疫情之下,租客少了,而自己还是要支付高额的整栋租金,虽然前几年赚了点钱,买完奔驰也没剩多少,自己主要经济来源就是靠租客退房收打扫卫生费,还有电费,水费,如今租客少 ...

最新文章

  1. OpenCV 笔记(02)— 图像显示、保存、腐蚀、模糊、canny 边缘检测(imread、imshow、namedWindow、imwrite)
  2. 有关于诚信:唐骏学历门
  3. java fastjson_java操作json数据之fastjson
  4. 【今晚七点】:对话快手张亮——聊聊音视频出海
  5. 创建Sonarqube项目
  6. 【2019icpc南京站网络赛 - F】Greedy Sequence(思维,贪心构造,STLset)
  7. 计算机音乐奔跑,跑起来!100首最适合跑步的音乐
  8. 12篇文章带你逛遍主流分割网络
  9. 微软推出一波AI新功能:自动生成图表、更贴心的Cortana和搜索
  10. java idle 机制_深入springboot原理——一步步分析springboot启动机制(starter机制)...
  11. Mac版IntelliJ IDEA上手的一些必要设置
  12. loj 1308(点双连通分量应用)
  13. ardupilot在Linux上设置SITL(FlightGear)
  14. C语言实现简单贪吃蛇代码
  15. 计算机房安全防范措施,机房安全防护方案
  16. openlayers2渐变色渲染
  17. 带阵列卡的服务器如何装系统,带阵列卡的服务器能不能做ghost
  18. smartbi连接mysql数据库_数据源连接 - Smartbi V7 帮助中心 - Smartbi 在线知识中心
  19. 【信息泄露】12306恐中招!400万数据遭泄露,请尽快更改密码!
  20. TX2(Ubuntu16.04)安装TP-link外接网卡驱动及AP热点创建

热门文章

  1. EventLogTags.logtags简单使用(EventLog.writeEvent)
  2. Java接口开发流程总结
  3. 开学第三周国旗下讲话演说稿
  4. Spring是一个开源框架
  5. 利用SURF特征检测和FLANN最近邻算法实现图像的目标提取
  6. 世界领先的电动汽车国际标准 一 ISO 15118全系列
  7. PCB设计之Stub
  8. hadoop集群常见问题
  9. 将链接地址转换为二维码并且复制
  10. PCB入门学习— CHIP类PCB封装的创建