美文网首页工业推荐系统
点击率预估模型:DIEN

点击率预估模型:DIEN

作者: blackboyZhang | 来源:发表于2018-12-31 22:27 被阅读0次

    背景

            CTR(Click-through rate)模型预估是现在广告系统中的核心,用来预测用户(user)对某一物品(item)的点击概率。在这类模型构建中,用户的历史行为序列(比如:根据时间顺序用户点击的电商产品,看过的所有电影,购卖的所有书籍等)对模型来讲非常重要,因为这些行为代表着用户的兴趣点(attention),根据用户的历史行为序列,模型就可以学习到用户的兴趣(喜欢什么样的商品,电影,书籍等),提高模型的预估能力。

            但以往的模型一般对用户的行为数据利用并没达到极致。一般表现在以下两点:

    1. 用户的历史行为直接入模型,并不考虑具体行为后面的隐藏兴趣(点击过什么,就直接把对应的点击特征feed给模型)。

    2. 用户的兴趣点是多样的,且会有变化。不同时间用户的点击序列表现的很飘移(比如:点击完衣服类的东西,又去看书籍了),很少模型能捕获到模型的兴趣趋势信息。

            针对 以上这种情况,一个新的点击模型出现了:DIEN(Deep Interest Evolution Network for Click-Throgh Rate Prediction,地址:https://arxiv.org/pdf/1809.03672.pdf)

    DIEND主要的改动点就是在通用的行为序列网络中新加了两层网络:

    1. 兴趣抽取层(Interest Extractor Layer):  主要用来从历史行为序列中捕获用户的短期兴趣点,同时新加辅助损失函数,用来监督学习每一步的兴趣点抽取。

    2. 兴趣演进层(Interest Evolving Layer): 主要用来捕获用户的兴趣的演进过程。兴趣的演进主要是和点击的目标物品相关。兴趣点(当然是embeding之后的值)特征在这一层会根据点击目标的不同而进行权重的修正(根据不同的目标,对有用的行为进行加强,反之减弱)

            在公开数据及工业数据中,DIEN都表现出最牛的成果。尤其在淘宝的展现广告系统中),CTR提升了20.7%.

    介绍

            CPC(cost per click)结算,是广告商按每次点击来支付费用的,因此CTR预估在广告系统中显得尤为重要。因为它不仅影响平台的总收入,而且影响用户对平台的满意程度。对用户兴趣进行建模已经在工业界及学术界引起高度的重视。

            在所有无搜索的商业场景中,用户不再显示的表达当前的兴趣,因此设计模型来捕获用户的兴趣点及动态是CTR模型提高预估能力的关键。最近许多CTR模型由传统的方法向深度CTR模型转移。但许多深度模型把重点放在捕获各领域兴趣点的交互上,并没有关注用户兴趣点的表达上。其中DIN(Deep Interest Network) 强调用户兴趣是多样的,设置模型根据不同的目标来捕获用户的对应的兴趣并进行特征表达。然而包括DIN在内的所有模型在利用用户行为序列特征时,都是直接把“用户行为”直接做为“兴趣”特征进入模型。 这样有个问题,“隐含的兴趣”却很难被“显示的行为”更全面的表达出来。之前的模型忽略了行为之后隐藏的用户兴趣点。并且,用户的兴趣一直在变动,捕获这些兴趣的动态对兴趣表达上是相当重要的。

    针对以上的情况,我们提出DIEN模型来提高CTR模型的预估能力。在DIEN的网络中有两个建模关键点。

    其一:从显示的行为中抽取用户隐含的短期兴趣(兴趣抽取层)

    其二:对用户兴趣演进的过程进行建模(兴趣演进层)

            合理恰当的兴趣表达是兴趣演进的基础,因此想要网络精确的捕获用户兴趣演进的过程,就需要对兴趣抽取层进行优化。DIEN采用GRU 来为用户行为进行建模,因为这些行为存在依赖关系,GRU能更好的捕获这些信息。此外,在抽取层引入辅助损失函数(auxiliary loss)用下一个行为来监督学习当前行为的隐含兴趣的状态(因为下一个行为就是当前行为的预估的正例)。因为有了监督,让模型更精确的捕获每次行为对兴趣状态的影响,并且促使GRU在提炼兴趣表达上更高效。

            此外,用户的兴趣是多样性的,仅从用户的行为序列看,会有一个明显的飘移行为。比如一个用户在点击了多个衣服后,又点击了一些书籍信息。因为用户的兴趣往往不是单一的。如果仅通过点击的衣服行为,很难把书籍的点击率预估的很高。因此一个具体的点击行为不仅和最近的点击有关,还和一段时间以前的某些点击有关。同时也说明针对不同的目标(item)用户的点击行为发挥的作用(weight)是不同的。基于兴趣抽取层之上得到的兴趣序列,DIEN中设置了AUGRU(Attentional Update GRU)。AUGRU输入兴趣状态(抽取层得到)与目标ITEM(下一个点击目标)来计算二者的相关性,从而在兴趣进行飘移时,强化相关兴趣,弱化无关兴趣,刻画兴趣的真实演进。DIEN为了达到这个目标,主要的贡献如下:

    1. 在商务系统中,聚集用户的兴趣演进现象,提出一个新的网络结构来为兴趣演进过程进行建模。这个模型具体更强的兴趣表达能力,更准确的CTR预估。

    2. 与直接把行为序列做为兴趣输入模型不同,我们设计了兴趣抽取层。针对GRU的兴趣状态在在表达用户兴趣时缺少指导目标(没有loss,没办法监督学习来优化),我们提出辅助损失的方法。此辅助损失利用连续的行为在每一步去监督学习隐含兴趣状态,从而让隐含兴趣状态更好的表达隐含兴趣。

    3. 设计兴趣演进层,GRU(原文是GPU写错了)升级为AUGRU (AU代表attention update)加强了兴趣与目标之前的相关性,克服了由兴趣漂移带来的预估不准的问题。

            在利用“公开数据”(亚马逊数据)及“工业数据”(淘宝数据)实验中,DINE都表现出色,在各种维度评估下都取得了显著进步。

    ( 待续。。。)

    相关文章

      网友评论

        本文标题:点击率预估模型:DIEN

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