头图

导读:广告主不能像广告平台一样,获取到比较多的用户维度的曝光数据,并且在广告主侧获取不到端外新用户的特征。本次分享会着重讲一下哈啰出行作为广告主,是如何在这些挑战下进行信息流广告算法建模探索的。

本次介绍会围绕下面四点展开:

  • 信息流广告投放现状
  • 哈啰业务背景介绍
  • 广告主侧的算法优化方案
  • 未来方向

信息流广告投放现状

发展历程

image.png

我们在刷朋友圈、抖音、头条时,应该都看过信息流类型的广告。它是一种嵌入在媒体内容流中的广告形式,内容包括图片、图文、视频等等。它的主要特性是内容的价值性和原生性。对于受众来说,信息流广告能够为用户提供更多有内容,有价值的东西,而不是单纯的广告。所以它的内容植入和呈现不会破坏页面本身的和谐度,用户角度体验感也是比较好的。

上图左边的图展示了信息流广告的发展史,信息流广告最早在2006年出现在Facebook上,11年出现在Twitter上,12年应用在微博,14年头条,15年朋友圈。直到16年进入了全面爆发阶段,百度、快手、UC等都相应地推出了信息流广告。上图右侧的图展示了搜索广告、电商广告、信息流广告在整个市场上的占比。可以看出,从2015年到2021年信息流广告的占比逐年增加。到了2022年预计可以达到40.8%。目前信息流广告被多数广告主选用在拉新促活的用户增长手段,所以哈啰出行也选择了信息流广告作为站外拉新的主要方式。

投放流程

image.png

上图是平台视角和广告主视角两个角度下的广告投放流程。

平台视角,用户在流量主侧产生浏览行为,流量主会向ADX(ad exchange广告实时竞价交易平台)发送广告请求,广告交易平台在接收到广告交易请求,接着会向DSP(demand side platform,广告投放平台)发送请求。DSP在接受到这个竞价请求后,内部会进行一系列包括从流量筛选到广告召回,然后排序、出价等操作。目前大家常说的广告算法,更多的是嵌入在DSP内部的召回,排序等算法,并且这种广告算法在业界内也比较成熟。

广告主视角,这里指的是广告主针对线上投放所能够做的操作。一开始会经过一个竞价机制。当一个广告请求过来,对于这个请求带过来的用户,我们来决定要不要参与对这个用户的竞价。这个竞价机制在以下四个方面进行了考量:转化情况,用户价值,曝光情况,还有其他的干扰策略等等。在竞价机制后就到了投放机制,投放机制更偏向于线上的实际投放,包含了账户设置、异常监测、数据监控和自动投放等等。

哈啰业务背景介绍

下面介绍一下哈啰出行外投业务背景。

哈啰外投发展阶段

image.png

广告主投放能力的发展历程会经过以下四个阶段:

  • 第一个阶段是探索阶段,在这个阶段广告主业务一般是刚刚起步,它需要通过投放广告来摸索市场。此时广告主所需要做的就是直接在平台上面开户。
  • 经过前期的探索,验证了广告的投放效果之后就进入到第二阶段,投放初步阶段。这个阶段的目的是迅速占领市场,所以会在市场上投入大量的广告,提升投放效率。在这个阶段广告主需要技术支持来进行后续的转化归因,监测体系,数据监控等等。
  • 提效之后就到了以降本为目的的发展阶段。经过前期的大量的市场投放后,广告的获客成本会越来越高,这个时候需要对流量做精细化运营,所以需要更多的技术能力来支撑和实现降本的目标。现在发展比较成熟的有DMP,平台提供的人群管理API,包括后面我要提到的marketing API。
  • 经历过以上三步之后,就到达了成熟阶段,成熟期的目标就是智能化,拥有全链路的算法和自动化实现,不再需要人工参与。

目前哈啰已经在发展阶段,技术能力和数据能力都已经比较成熟。

外投系统框架

image.png

上图是哈啰的外投系统框架。在业务上对接的比较大的三个渠道是巨量引擎,广点通和快手。

因为涉及到一些接口对接,所以在服务端要建立一个统一接口网关,然后进入到存储层,存储层使用了业界比较通用的组件包括:redis,MYSQL,HBASE,Elasticsearch等等。再经过数据层后,到达应用层。应用层主要列了三点,就是决策机制,自动化运营和归因机制。决策机制也是我后面主要介绍的重点。因为算法更多是作用在决策机制层。

广告主侧的算法优化方案

第三部分具体讲一下上面提到的决策机制里面的算法优化方案。主要从三个方面进行介绍:广告计划维度,创意维度,以及竞价前的预判机制。

广告计划维度

image.png

首先是广告计划维度, 上图的上半部分图列出了用户从被广告曝光到完单的整体链路。以哈啰车主拉新为例,一个新用户需要经过曝光、点击/三秒曝光、注册成为哈啰用户、提交认证成车主这几步后,才能进行完单行为。对于广告主来说,完单才是最终能产生价值的行为。但目前对接的几家比较大的渠道,都是以提交认证成本来作为获客成本。现业务上一个痛点是提交认证到完单的比例比较低,大概百分之二三十左右。这对广告主是不利的,因为广告主花费了钱来拉用户,但用户在端内并没有产生价值,这部分就是无效的预算。上图中下半部分的图,结合了广告账户平台结构重新解释了上面提到的业务痛点。平台上面通用的广告账户结构是一个账户下包含着不同的广告组,不同的广告组又包含着不同的广告计划。

为了比较形象地表示从提交认证到完单这部分比例比较低的情况,可以看一下上图用红框和蓝框中的两个广告计划。上面这个广告计划是质量比较低的广告计划。下面的是质量比较高的。可以看到这两个计划在提交认证,也就是转化这一步都假设有四个人转化。但上面的这个计划,只有一个人完单,完单率只有25%。而下面这个广告计划的完单率达到了75%。很明显,下面这个广告计划的质量比上面的质量要高。针对这个问题,我们进行了算法方案优化的探索。

目前面临的第一个挑战是在线上起量的计划的量级比较小。因为算法建模是基于数据,如果能用的数据量少,就会直接影响到后续建模的精确度。第二个挑战是我们不能获得广告平台商的曝光点击和竞价等明细数据。针对这两个挑战,做了一个问题的转化,从计划质量识别转化为劣质流量识别,再转化为用户完单率预估的问题。

因为我们的用户都是在广告计划下面转化的,所以最初的目的是进行计划质量识别。但因为数据量等原因,将问题转化成了劣质流量识别。而对于广告主来说劣质流量可以定义成没有产生价值的流量,所以问题就变成判断用户在提交认证之后是否能够完单。这样问题会简单很多,且虽然他可能在端外是新用户,但他在提交认证之后,我们就可以取到他端内的画像数据特征,所以有足够的数据来解决这个问题。

image.png

上图是完单模型的建模思路。由数据分析,样本构建,特征选取,模型训练四部分构成。

在数据分析部分,我们通过分析发现,大部分用户从提交认证到产生完单行为的时间间隔是在七天之内的。如果超过七天他还没有完单,那大概率上就不会完单了,就变成了刚刚提到的劣质流量了。所以在样本构建部分,通过提交认证之后,是否能在七天之内完单这个逻辑来构建正负样本。上图的submit_pt代表的是用户提交认证的时间。

但是车主能否完单,其实是受很多外部因素制约的。并且样本的数据量也是比较小的,为了更贴合业务情况,进行了数据增强操作。将原始的用户维度采样增强为以订单维度采样,具体为在用户进行提交认证之后,将每次在发单页面有过访问或者点击行为的日期作为基点来预测它之后七天内完单的概率。

然后是特征选取部分。特征选取使用了用户特征,环境特征,广告特征,时间特征等特征。时间特征使用了用户发生转化到浏览的时间间隔作为特征。

模型选择遵循了奥卡姆剃刀原理,选择了简单高效的lightGBM。

创意维度

image.png

在实际的业务下,广告优化师会因为不确定广告投放效果,在不同的账户或者不同的计划下面堆积大量相似创意,去测试其效果。这就导致线上会存在着大量的无效素材,他们并不能起量,但是会产生一些小额消耗,浪费了预算。

并且相似的创意,因为不同的账户的历史表现不一样,所以广告平台的算法对相似创意预估出的分值可能会不一样,针对这个问题这边构建了一个预估新创意能否起量的模型,来指导广告优化师后续的方案调整。决定创意能否起量的因素是质量度。不同的渠道对质量度有着不同的侧重,从上方的表格可以看出,巨量引擎可能更侧重于效果的反馈。广点通更注重eCPM,百度则侧重于定向方式。对于广告主而言,定向方式和效果反馈是没办法干预的,所以更多的是干预eCPM。从上面列出的ecpm的公式可以看出,预估创意是否能够起量,更多的是偏向于ctr方面。所以这边列了三点,定向,创意,“户口”。“户口”是指账户的历史表现,比如说他在线上已经投放了多少天,用户的转化和完单等数据。

image.png

上图展示了构建模型的挑战,第一个挑战点在最开始也介绍了,就是数据的制约,从左图上的自定义列,可以看到广告主能够拿到的一些数据,计划的预算以及左图上展现的数据都偏向于广告计划维度。对于一些数值信息,比如展现数据,转化数据等,广告主所能够拿到的数据也都是相对粗粒度的。由右图所示,我们只能拿到这一条广告计划下面的消耗、展示量、点击率等。针对用户维度的详细的数据,比如曝光、参竞数据等,广告主是拿不到的。

第二个挑战是新创意只有刚配置完的配置信息,缺少后续投放的相关数据。

针对以上两个问题,主要是在构建样本和特征工程两个方面进行解决的,针对新创意没有相关投放数据的问题,解决方法是在样本构建时同时选取了新创意和老创意,新创意是能够学习到配置特征的重要性。老创意可以学习到更偏向于右边这张图的投放特征。通过这个方式让模型同时学到创意维度或者计划维度的配置数据和一些投放的数值特征。

特征工程中主要应用了特征交叉去获取更多的数据,由下图所示:

image.png

上图就是特征工程,通过特征交叉解决了数值型数据比较少的问题。这张图的左边是创意ID,中间框出来的是特征工程比较核心的部分。主要是做了三部分内容:

  • 第一部分是将ID特征使用word2vector产生ID特征序列。一个创意属于一个计划下。一个计划则属于一个广告组下。所以从账户ID到广告组ID到计划ID,都是一对多的关系。而一个创意是由不同的素材构成的,不同的素材包含着不同的视频、封面、标题等。针对这部分ID特征就是做了一个ID特征序列,将他们展成文本序列,然后使用word2vector转化成向量。
  • 第二部分是针对投放的数值特征的处理方式。对于投放的数值特征部分以及配置参数特征部分,主要是进行了不同维度的特征交叉,比如说一个创意ID和一个计划ID交叉来拿到计划ID下相应的数值特征。在做了各种交叉之后,就拿到了不同的视频、封面、标题、计划ID下面的数据特征。
  • 第三部分是针对广告配置参数特征的处理方式。配置参数特征其实就是广告在进行投放时配置的定向参数的特征,比如说投放时间,用户定向,投放城市等。处理方式与第二部分类似,也是经过交叉拿到计划的配置特征和创意的配置特征。

经过这整个特征处理之后,会进行模型训练,最后我们选择了使用多分类模型。因为一开始在解决这个问题时,有尝试过回归,但回归预测出来效果不是很好,MSE特别高,所以后面将问题转化为多分类,相对来说多分类会比回归效果好很多,准确率也高很多。

image.png

上图是整体模型框架图,从下至上展示了数据从输入到输出,下半部分就是前面特征工程的汇总,最下面是特征输入,包括刚刚说过的数值特征,类别特征和ID特征。数值特征经过归一化,离散化后进行embedding。类别特征也是进行embedding。ID特征首先展成文本序列,然后经过word2vector产生向量。然后embedding产生的向量和word2vector产生向量这两部分同时输到模型里面,再经过一个concat层,最后使用softmax输出不同类别的概率。

image.png

上图是人工账户与算法操作账户的效果数据对比。蓝色的是人工账户,橙色的是算法操作账户。由图所示,不管是在转化成本或者首单成本,算法操作账户提升比较高的,大概能够降低到10~20%左右,效果还是比较显著的。

竞价前预判机制

image.png

这个机制更偏向于前置策略,也就是说一个用户过来,我们能够决定对这个用户到底进不进行曝光,或者说有一些其他的干扰用户质量分。

从上方的左图大家可以看到,现在业界比较主流的针对老客拉活的操作是RTB,RTB电商做的比较多。而对于新客主要是做RTA,因为RTA更偏向于流量屏蔽。对于老客和新客都适用的就是中间的交叉部分增强RTA,现在比较主流的媒体,像腾讯,头条等都有接口能够支持的。针对中间交叉部分,我们使用了因果推断的uplift模型构建了促活模型。

在构建样本时考虑到了用户意愿,选取选信息流广告下转化的用户为正样本,自然转化的用户为负样本。uplift分值可以体现用户的意愿度,它是有需要外部的广告激励才能转化,还是它本身就有意愿转化。公式里的T代表是否存在广告干预。然后依据uplift的分值从0到5将用户进行分档,0是已经转化的用户,这部分用户我们会直接屏蔽掉,不会对他们出价。1是自然转化,2~4为营销敏感度低、中、高用户,5是新用户,因为我们没有办法拿到新用户的数据,所以我们会返回最高的用户质量分。这个机制实现了用户价值分层阶梯出价买量,线上效果降本明显。

未来方向

下面从前置策略和线上投放两方面介绍我们的未来规划。

image.png

前置策略拉新场景下的后续目标,更偏重于精准屏蔽的模型,目前我们只是针对端内已经转化的用户进行屏蔽,当我们接入曝光数据后,就可以深入挖掘曝光数据来制定策略,例如一个用户最大曝光次数等,来进行精准屏蔽。拉活场景下的用户投放更侧重于RTB,因为目前哈啰用户体量比较大,也有足够的数据支撑去做RTB。

规划的第二个方向是全自动线上投放,闭环管理。通过算法来选择最优方案构建创意和计划,减少人工手动配置。进行不同创意不同计划之间的预算分配,以达到广告计划ROI最大为目的设置用户定向。

右边这张大图可以看成是整个规划的概览图。里面左下角的小图是算法能力的建设,包括出价管理,跨渠道管理,RTB预算分配,DPA等。右边的小图列出了算法能力的技术支撑,包括uplift,强化学习,在业务场景内融入业界比较成熟的ctr算法,以及使用CV相关算法实现素材的创新,针对不同的用户展示不同的素材。

精彩问答

Q:如果存在多业务拉活,怎么去避免恶性竞争抬价呢?

A:不同业务针对的人群大概率是不一样的。比如做四轮车主拉新的人群一定是有车人群。如果是两轮业务拉新,那么更偏向的是没有车的人群。在不同的业务线针对的用户不一样的情况下,中间的交叉应该不会特别严重。

Q:相似素材为什么在不同账户下的表现会不同呢?

A:因为平台方会从很多方面来判断是否要给一个计划或者一个素材放量。举个例子来说,一个在线上已经跑得比较好的账户,它下面会有很多的用户转化,如果拿他跟一个刚起量的账户对比,那平台的侧重一定是不一样的。所以相同的素材在线上跑得比较稳定的计划下和在线上刚跑的计划下,肯定是在比较稳定的计划或者账户下更容易起量。

Q:在未来规划的那页PPT中,拉活部分的潜客模型是准备通过RTB而不是RTA来达到的?

A:RTB和RTA从本身的概念讲是不可以互相替换的,RTB是一个实时竞价的框架,而RTA只是一个接口,这页PPT主要想表达的意思是将RTB的核心功能点集成到RTA里面,通过RTA的接口,来实现实时竞价。

(本文作者:周冰倩)

image.png


哈啰技术
89 声望51 粉丝

哈啰官方技术号,不定期分享哈啰的相关技术产出。