【论文导读】2018阿里CTR预估模型---DIN(深度兴趣网络),后附TF2.0复现代码

本文介绍了阿里2018年的KDD论文《Deep Interest Network for Click-Through Rate Prediction》,该论文提出DIN模型,通过局部激活单元针对不同广告自适应地计算用户兴趣表示,解决了CTR预估模型表达用户多样兴趣的瓶颈。文中还探讨了两种工业级训练技术:小批量感知正则化和数据自适应激活函数。实验证明DIN模型在CTR预测任务中表现出色,尤其是在具有丰富用户行为的电商数据集上。此外,提供了TF2.0版本的代码复现。
摘要由CSDN通过智能技术生成

点击上方“潜心的Python小屋”关注我们,第一时间推送优质文章。

前言

大家好,我是潜心。今天分享一篇最近看的,阿里2018在KDD上发表的论文《Deep Interest Network for Click-Through Rate Prediction》。文章的 核心就是使用一个局部激活单元(类似Attention机制)来提高与候选广告相关的历史信息的权重。当然文章还提到了两个在工业深度网络上的技术。总体来说这是一篇偏向工程方面的论文,非常值得一读。本文文末还附上了自己用TF2.0复现的代码,有详细注释【官方给的开源代码难以读懂切为TF1.4版本】。

本文约5k字,预计阅读15分钟。

摘要与引言

背景

在工业领域例如在线广告上点击率(Click-through rate,CTR)预测是一个很重要的任务。在每次点击费用(cost-per-click,CPC)的广告系统中,广告按有效价格,即每千个有效成本(effective cost per mille,eCPM)排名,该价格是出价与CTR的乘积,而点击率则需要通过系统预估。因此,CTR预估模型的效果直接影响最终收益,并在广告系统中发挥关键作用。

现状(指2018之前)

如今,CTR预估广告有一个深度学习的Base Model,即Embedding + MLP。大规模稀疏输入特征首先被映射到低维Embedding向量中,然后转换为固定长度向量【sum pooling/avg pooling】,最后被连接在一起【concatenate】输入到MLP以学习特征之间的非线性关系。对比很多的逻辑回归模型,确实减少了很多的特征工程和增强模型的能力。常见的模型有Wide&Deep[1]、 DCN[2]、PNN[3]、DeepFM[4]等。

瓶颈

Embedding&MLP模型的瓶颈就是表达用户多样的兴趣。例如,在电子商务中,用户浏览电商网站时可以同时对多个不同的物品产生兴趣。在CTR预估问题中,就是从用户的浏览历史中去捕获用户的兴趣。而该方法不管候选广告是什么,都是将多个特征向量【Embedding】压缩到一个固定长度的表示向量来学习特定用户所有的兴趣表示,这限制了模型的能力,很难从历史行为中提取用户变化的兴趣。
解决这个问题最简单的方法就是扩展向量的维度,但这样会增加学习的参数和在有限的数据中有过拟合的风险。

启发与创新

其实不必将某个用户所有的兴趣【用户的历史购买记录】全部压缩到向量中,因为只有用户部分的兴趣会影响当前行为(对候选广告点击或不点击)。例如,一位女游泳运动员会点击推荐的护目镜,这主要是由于购买了泳衣而不是上周购物清单中的鞋子。
受到上述启发,作者提出了Deep Interest Network模型[5],它通过考虑【给定的候选广告】和【用户的历史行为】的相关性,来计算用户兴趣的表示向量。具体来说就是通过引入局部激活单元,通过软搜索历史行为的相关部分来关注相关的用户兴趣,并采用加权和来获得有关候选广告的用户兴趣的表示。与候选广告相关性较高的行为会获得较高的激活权重,并支配着用户兴趣。该表示向量在不同广告上有所不同,大大提高了模型的表达能力。

提出两个工业技术

训练具有大规模稀疏特征的工业深度网络是巨大的挑战。例如,基于SGD的优化方法仅更新出现在每个小批量中的稀疏特征【非零】的那些参数,因此需要加入正则化来降低过拟合的风险。但是,加上传统的l2正则化后,计算量过大,这需要为每个小型批处理在整个参数上计算L2范数。因此本文提出了一种工业技术:mini-batch aware regularization仅出现在每个微型批处理中的非零特征参数才参与L2-范数的计算,从而使计算可接受。
另外还提出data adaptive activation function,通过输入的分布自适应调整修正点来推广常用的PReLU。

贡献

概括上述创新点,文章的贡献为:

  • 指出使用固定向量来表示用户不同的兴趣的限制性和通过引入局部激活单元建立了一个新的模型DIN。

  • 提出两个训练工业神经网络的技术:小批量感知正则化器(a mini-batch aware regularizer),它可以节省具有大量参数的深度网络上正则化的大量计算,并且有助于避免过度拟合;数据自适应激活函数(a data adaptive activation function),它通过考虑输入的分布来概括PReLU,并显示出良好的性能。

  • 在对公共和Alibaba数据集进行了广泛的实验。结果证实了提出的DIN的有效性。

Base Model与DIN Model

特征表示(Feature Representation)

工业点击率预测任务中的数据大多采用多组类别的形式,如下图所示,这通常要通过转化为高阶稀疏二元特征【one-hot或者multi-hot】。

所有的特征为:

基本模型(Embedding&MLP)

Embedding layer

输入是高维稀疏二元向量,Embedding层将其转化为低维密集表示。

对于第 个特征组 ,用表示第 个embedding字典, 表示第 个特征组的维度。 是D维度的embedding向量。Embedding操作后伴随着一个表的查找机制:

  • 如果 是一个one-hot向量 ,则 的embedding表示是一个单一的embedding向量

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值