计算广告中的lookalike是如何实现的?

计算广告中的lookalike是如何实现的?

2019.03.04 17:16:16字数1372阅读1968

什么是lookalike

lookalike算法是计算广告中的术语,不是单指某一种算法,而是一类方法的统称。其目的就是为了实现人群包扩充。

简单场景

广告主需要对100w人投放,但是,从选取的基础数据包中,只有30w,那么如何满足100w的投放需求,这时,就需要通过lookalike的方式进行扩充,既要保证人群数量,又要确保人群的相似。

如果只是简单的从公共池中选取70w,完成100w的匹配,很有可能出现无效用户。例如:高级消费品,尽可能的投放给中高级消费,且具有该品类偏好的人群。

如何进行lookalike

第一种,显式定位,广告主根据标签进行人群选择。

这种方式,最为简单,高效。广告主通过用户画像标签,筛选性别,年龄,品类偏好等。可以直接快速达到人群包提取目的。

但是,这种方法,又具有一定局限性,未必男性就不关心女性用品,也未必食品偏好的人群,就不关心护肤用品。标签的产出,本身基于用户行为,但单纯标签筛选,并不能把潜在相关用户提取出来。

计算广告中的lookalike是如何实现的?

因此,就需要采用第二种方法。

第二种,隐式定位,通过机器学习的方法,对种子用户进行建模。

以30w人群,扩展100w为例。我们需要将30w用户的共有特征提取出来,内容包含性别,学历,年龄,职业,常住地,购买力,RFM分值,最近浏览加购信息等。该人群特征提取完成之后,成为种子包,标记为正样本

接下来,我们需要有一个基础用户包,用于70w的人群扩展,可以是全量数据,可以是近三个月,近一个月的活跃用户,也可以是品类偏好用户,数据内容取决于具体业务。数据规模,取决于扩展人群数量。需要扩展70w,基础包数量,可以是300w,500w,或者更多。当然了,不是越多越好,数量越多,意味着后期模型转换耗时会更长。

假设基础包用户500w,我们需要从500w中随机抽取30w用户,标记为负样本

接下来,就是一串的特征处理,StringIndexer,VectorAssembler,OneHotEncoder,QuantileDiscretizer。总是,就是将离散型字符变量整数化,离散型整数变量编码,以减少不同类别之间的距离差,把连续性变量进行分箱,调整为离散型变量,以减少距离差。离散化、归一化、等分位,都是常用的特征处理手段,spark ML中提供了一堆。。。

特征处理完成后,进行模型训练,这里的分类算法,可以是LR,SVM或是其它,不同厂的做法都不相同。效果好就行。

模型训练完成后,重要环节,需要对500w的基础包进行transform,模型会对500w数据中的每条数据进行分类,并预测概率值。从500w数据中,抽取正样本,并按照概率从高到低排序,取出top 70w即可。

最后,将30w人群与70w人群进行合并,标记100w的扩展人群包,用于线上投放。

计算广告中的lookalike是如何实现的?

可能有读者已经意识到,直接把基础包中,随机抽取30w标记为负样本,也许不妥,有可能存在与种子包人群高相似用户。解决这个问题,只有一个办法,就是多跑几次。先以第一次的模型,对30w基础包用户进行分类,产出top,重新修正标记,再从公共池中,抽取等量用户补充,不断迭代,最终会训练一个理想模型出来。

使用技术

机器学习包很多,可以是基于python的sklearn,亦可是spark的mllib、ML,但笔者推荐pyspark。原因是python在数据处理上异常高效,但是无法解决分布式处理的问题,python代码只能在单机上处理。而spark本身基于分布式处理,速度上显然要快,但是spark自身支持的语言scala,又没有类似numpy,pandas这样的高效类库。因此pyspark就是不二之选。

后记

在机器学习中,模型的好坏,极大程度上取决于特征的选取及处理。算法上,可以采用一般的分类算法,亦可采用深度学习中的多层神经网络相关算法。总之,方法很简单,需要的是,对模型进行不断的优化。

以上有任何问题,可留言,或关注同名公众号“IN科技”。

 

3人点赞

 

日记本

 

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值