美文网首页计算广告
基于深度学习的广告CTR预估系统实践

基于深度学习的广告CTR预估系统实践

作者: awmx | 来源:发表于2018-09-26 15:58 被阅读351次

    前言

    广告CTR预估,也就是点击率预估,是广告系统中十分重要的一个环节,对广告的排序效果和收入有着直接的影响。

    如果想要深入一些了解CTR预估,可以参考这里:机器知道你会点广告:写给普通人的CTR预估科普

    CTR预估系统的实现

    1、最简单的方式是统计一个广告的历史点击率,并把这个值当作预估点击率,显而易见,这种方式有效但是也有很大的局限性。

    2、更进一步,我们可以统计广告相关的统计量,并通过一定的规则运算得出一个数值作为预估点击率,这种方式也有着明显的缺点。

    3、机器学习,这是现在最有效,应用最为广泛的一种方式,其原理是使用历史请求训练模型,并通过模型预估点击率,而利用深度学习搭建CTR预估系统,是当前的诸多方向中效果最好,最有发展前景的。

    图1(图片来源: 机器知道你会点广告:写给普通人的CTR预估科普

    一个典型的机器学习系统架构如下:

    (图片来源:深度学习在美团推荐平台排序中的运用

    基于深度学习的CTR预估系统

    深度学习也是机器学习的一种,基于深度学习的模型实际上是一个大的神经网络,称作DNN,参考图1,这个模型输入的特征需要通过某种方式转为向量,我们把这个过程叫做Embedding,由于计算量和模型效果等因素,基于深度学习的CTR预估,其关键就在于Embedding。

    Embedding算法简介

    FM与FNN

    FM是一种机器学习算法,这个算法的核心正是将特征转为向量,在深度学习兴起之后,有人将FM与DNN结合起来,形成了FNN的结构。

    Word2Vec

    Word2Vec是一个用于产生词向量的模型,在自然语言处理中应用广泛,我们将Word2Vec迁移应用到CTR预估模型中,也取得了良好的效果。


    下面简单介绍我们搭建的CTR预估系统,分为算法和工程两部分。

    算法架构

    总体架构

    可以看出,总体架构与FNN相似,在此基础上我们对Embedding的方式做了一些更多的探索,从而提取到更多的特征,并且可以在更多的场景下使用。

    两种Embedding的方式

    使用FM进行Embedding是FNN的核心思想,我们在此基础上引入了Word2Vec与LDA,并将FM输出的隐向量与Word2Vec输出的词向量进行全连接。

    一些实践经验

    1、单品广告可以通过Item2Vec,也就是Word2Vec的一个特例进行Embedding。

    2、搜索广告可以提取中心词,并将多个中心词对应的词向量计算平均值。

    工程架构

    在工程设计上,我们尽可能保持了整体架构上的简单,多处复用了相同的特征库和编码器,减少了开发的成本,并且避免了多种实现导致的一致性问题。

    小结

    通过对算法和架构上的改进,我们在算法和工程上都获得了良好的扩展性。

    算法上可以方便地引入更多的Embedding方式,例如应用CNN与RNN。

    工程上可以方便地将CTR预估扩展到多种场景,也可以更进一步,应用于更多指标的预测。

    相关文章

      网友评论

        本文标题:基于深度学习的广告CTR预估系统实践

        本文链接:https://www.haomeiwen.com/subject/tpodoftx.html