Press "Enter" to skip to content

广告主视角的信息流投放模型问题思考

本站内容均来自兴趣收集,如不慎侵害的您的相关权益,请留言告知,我们将尽快删除.谢谢.

 

 

分享嘉宾:呼广跃 博士  360数科

 

编辑整理: 郭鈭萌 中嘉华

 

出品平台:DataFunTalk

 

导读: 今 天跟大家探讨一下广告投放中遇到的痛点,以及我们探索出的解决方案。 主要包括以下几大部分:

 

广告主投放痛点

 

人群洞察

 

关系网络应用案例

 

投放模型的讨论

 

01

 

广告主投放痛点

 

流量寡头化: 现在互联网的流量主要集中在头部大厂。

 

竞争白热化: 现在投放的成本越来越高,之前有一篇新闻报道过一组关于企业营业收入、营销费用、付费学生数、获客成本,以及ARPU(单用户平均收入)的数据,其中有几家公司的营销费用已经超过了营业收入。 我们自己也深刻体会到竞争的激烈,获客成本水涨船高。

 

数据黑洞 : 具 体到数据问题,首先是流量寡头化导致数据垄断。 另外,行业内大家普遍认同一个观点: 投放的目的是拉新。 但获得一个新的设备号,得到的画像数据非常少。 在投放的过程中,以往的方式会有很大的合规风险。

 

02

 

人群洞 察

 

为了精准获客,我们做了一个人群洞察系统。 做这个系统的起因就是想充分利用媒体资源,精准筛选人群,联合建模。

 

1. 人群洞察

 

 

上图就是我们做的洞察系统的架构。这里列了三层:

 

最下面一层是数据层。数据来源主要有三大块:第一块:媒体,媒体的DEEP FM平台,媒体的联合建模平台以及媒体的点击监测数据。第二块:我们自己的数据,包括我们采集的数据,也包含我们积累的业务数据,如风控的数据,以及用户的行为数据。第三块:外接的外部数据源。

 

中间一层是模型层,是我们积累的投放中常用的模型。

 

最上面一层是基于这些模型生成的人群包,这里面人群包分为两类,就是定向包和排除包。目前我们线上积累的人群包大概有几百个,其中有几十个比较大的数据包用得比较多。

 

2. 模型生产

 

 

上图中的数据层和人群洞察那部分提到的是一致的,中间的训练层包括样本、种子、人群的上传。其中融合特征表示我们和媒体联合建模时,会提供一些我们自己设定的特征。

 

3. 人群包的产出

 

 

模型建好之后,基于模型生成人群包,一般一个模型既可以用来生成定向包,也可以用来生成排除包。在我们使用的过程中,往往需要定向包和排除包,或者多个定向包和多个排除包,组合使用才能够产生好的效果。

 

03

 

关系网络应用案例

 

关系网络在风控领域和营销领域应用都很广。 关于网络的应用有好多种思路,我们把它分为两大类,一类就是有监督学习的方法(基于手工特征的方式,基于随机游走的方法,端到端的方法),一类就是无监督学习的方法(关系图聚类)。

 

下图是关系网络的两个例子,左边是一个社交网络,右边是化学分子的结构图。从这两个例子我们可以看出,节点属性信息和结构信息都影响着功能。

 

 

1. 基于手工特征的方法

 

 

上图是一本书里的一个例子,用的是基于手工特征的方法。 从关系网络里把其中节点的一些属性抽象出来, 如节点的度、节点的中心度、节点的PageRank值。 再基于业务需求抽象出一些特征。

 

以风控为例,一个节点对应一个用户,邻居里面有多少人是授信用户,有多少人是申请被拒的用户,有多少人是欺诈黑名单的用户? 基于一度连接,二度连接,再加上业务标签,就衍生出很多特征。 基于这些特征,再接一些经典的模型,用这些特征入参,去训练目标。 这是关系网络的第一个使用思路。

 

2. 基于随机游走的方法

 

 

第二个思路也是比较常用的一种思路,叫基于随机游走的方法,也可以叫基于graph embedding的方法。所谓的graph embedding是通过一些影射,把每一个节点影射成一个向量。

 

比如这个例子里面就是列了三个路径,路径中经过的每一个节点,可以看作文档中的一个单词,每一个路径看作一个文档,这种和word2vec类似的思路,就可以把节点映射成向量。得到了embedding向量之后,可以和上面讲的那些手工的特征一起作为模型的入参,当然也可以只用embedding向量作为模型的入参,再做分类或者其他的任务。Graph embedding经典的代表算法有deepwalk,node2vex,structure2vec等。

 

3. 端到端的方法

 

 

第三种是端到端的方法,这个方法的典型代表就是GCN。它结合了 CNN 的思路,通过影射去学习,对图中的节点做一些分类,最终也是把这个节点生成向量,完成分类的任务。

 

三种代表算法:GCN,GAT和GraphSage。

 

4. 社区发现算法

 

 

第四种就是图聚类算法。上图列举了两个例子,分别是LPA算法和 Louvain算法,思路是把图中的节点进行聚类,相似的节点聚到一起。在我们的应用中,其实就是把目标用户聚成一类,把一些黑名单用户再聚成一类或多个类,最终我们筛选出需要的类,或者希望排除的类,拿来做投放。

 

现在关于关系网络的方法,在我们的投放中的消耗占比大概是10%,所以对于获客帮助很大。

 

04

 

投放模型的讨论

 

1. 单阶段建模  VS  跨阶段建模

 

 

以我们做过的互金领域为例。首先说明一下获客流程,如上图所示,主要六大步骤:点击、注册、申请、授信、提现。不同公司的业务目标可能不同,有些公司的目标是注册用户的增长,有些公司的目标是授信用户的增长,有些公司的目标是提现用户,还有一些公司的目标是余额的增长,业务目标决定了建模思路及建模的优化方向。

 

单阶段模型就是对上图中每一个流程都做一个模型。另外一种建模的思路就是跨阶段建模。不会做这幺多模型,可能就是一个点击到申请的模型,或者点击到授信的模型,又或者点击到提现的模型。要根据每个媒体的特点去选择模型。

 

还有一种在推荐领域常用的方法叫多任务学习。业务阶段比较多的时候,不会做跨阶段的模型和单阶段的模型,而是用多任务学习的思路,优化目标是两个或者两个以上。这里面典型的算法代表就是MMOE和 ESSM。

 

2. 媒体联合建模平台

 

 

媒体联合建模平台是很快捷投放起量的方法,因为媒体的数据能力肯定比广告主要强大,能够用到媒体的特征,快速搭建模型,快速生成人群包去投放,能提高开发效率。

 

外部的数据源周期一般会比较长,数据给出去,把特征跑出来,然后再跑批,少则半个月,多则一个月时间就过去了。但是联合建模平台,只要把数据传上去,很快模型就能训练出来。

 

联合建模也会遇到问题,媒体提供的特征的量是固定的,支持的算法也是固定的几个,有些复杂的算法,比如像DFM推荐点击率预估,媒体的联合建模平台暂时还都没有。也希望同行们能够一起推动媒体,提供更好的特征和更多的算法。

 

3. 归因口径

 

 

大多数公司触达用户的手段比较多,可能会遇到归因的问题。

 

比如说用户被我在媒体A曝光过了,但媒体A没有转化,后来短信也触达了,也没有转化,然后电销也触达了,也没有转化。最后通过API和其他大厂合作的时候转化了,那幺转化到底归因到哪里呢?这是归因的第一个坑。

 

团队架构,也会影响到建模、样本筛取等等。

 

上面所有的分享,都是我们在工作中积累的经验和教训。 随着工具平台越来越完善,我相信广告投放业务一定会更加专业。

 

05

 

精彩问答

 

Q:这里提到广告和数据这两个关键词,在广告里很多时候都是通过数据来找到合适的目标用户,但是在金融领域,由于各种原因数据的流通比较受限。刚才老师提到,可以通过联合建模等方式去规避一些风险。请问,目前这种联合建模平台能力能做到什幺程度,以及您如何看待数据安全性的问题?

 

A:我使用过几家大厂的联合项目平台,头部的两家使用体验我觉得还是非常好的。建模的效率比之前会有显着提升。但是也存在一些问题。举个简单例子,我们建完模型之后,有时候需要做一些更深入的分析,但在某家平台除了两个简单指标AUC、KS之外,想做更深一步的分析的功能没有提供,比如把数据上传到联合建模平台后,想用这个模型对我的数据打一下分,做一些分析。这个功能在腾讯的平台上是有的,但在另外一家就没有。我觉得媒体的开发资源有限,可能在这方面投入的不是特别多,在这里也是希望帮广告主呼吁一下,模型监控的一些简单功能,希望媒体可以开放给广告主使用。

 

Q: 广告推荐模型里面用的比较多的是哪种算法或者模型?

 

A:一般情况下,按照通常的广告思路模型是CTR(Click-Through Rate Prediction)。其实我刚才也提到了,不同公司、不同阶段,目标都不一样。比如在公司刚刚起步的时候,可能主要关注用户注册量,这个时候目标可能就是点击到注册。当积累了一定用户之后,可能追求的就是深度的转化,比如填申请单的用户量,就是完件用户,或者说前4要素的人群。再往后,可能目标就是授信人群的增长。更深一步考虑,还要考虑贷后的逾期,贷后的动支或者提现。但现在可能大多数同行定义的都是授信。

 

说到算法的话,其实最常用的还是最简单的。我们曾经探索过用一些像DeepFM、MMOE、ESSM模型,不是所有的媒体都能拿到好的效果。

 

另外,深度的模型,它对数据量的要求也比较大,在媒体联合建模平台也用不了。如果接外部数据商的话,有的外部数据商环境比较好一点,提供比如一些深度学习等方法,可能需要配TensorFlow、Pytorch的开发环境。有的这些环境都搭建得比较好,甚至提供训练需要的GPU。但并不是所有的数据商都配合得很好,因为数据商资源可能也很紧张。

 

Q:建模的过程中,人工干预程序这块,人工的比例到底要做多大,或者说投入多重的人工操作,我们才能够达到一个核心的比较理想的精度?

 

A:这个问题我觉得很难回答,一方面影响模型效果的因素其实有很多,比如特征的质量,调参的过程等等。

 

另外与媒体以及数据商的开放程度有关。比如有的数据商只提供一些他加工好的特征。而有的数据商可能会提供一些底层的聚合前的meadata,这个时候就可以尝试一些深度的方法。我们曾经和一家数据商合作,他愿意给我们底层的一些数据,但是只限于建模,建完模后,仍然是以模型分的形式输出。这一次尝试我们增益不少,当时不只是体现在AUCKS这些模型指标上的提升,更体现在了业务指标上,获客质量也有不少的增益。

 

Q: 改善模型质量非常依赖于数据,广告的数据要做预处理会有何不同?有哪些比较有效的提高数据质量的方法?

 

A:预处理的方法有很多,最关键的就是对业务的理解要深,要知道自家的优势是什幺,你所投放的媒体的优势是什幺?不同媒体的客群是不一样的;不同的广告主的客群也不一样,要双方客群联动起来,才可以做出合适的特征。

 

Be First to Comment

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注