Deep Interest Evolution Network for Click-Through Rate Prediction
目标:CTR预估
文中指出以前的模型忽略了用户行为背后真实的用户兴趣,并且用户的兴趣是在不断进化的,捕捉兴趣的动态变化对于兴趣表达非常重要。
本文提出了Deep Interest Evolution Network(DIEN)模型,DIEN的两大核心模块为:
•从用户的行为中抽取隐含的时序兴趣。
•对兴趣的进化过程进行建模。
Deep Interest Evolution Network
DIEN主要由以下几部分组成:
•特征经过embedding layer的转换。
•Interest extractor layer基于用户的行为序列来抽取兴趣序列。
•Interest evolving layer对目标物品相关的兴趣进化过程建模。
•最后的兴趣表示向量和其他的embedding vector concatenate成一个长向量,放入MLP进行最终的预测。
显然整个模型的核心创新点在于Interest extractor layer和Interest evolving layer。
Interest Extractor Layer
用户的潜在兴趣体现在用户的行为中,当用户采取一个行为时,他的兴趣会发生一些变化。在Interest extractor layer,从用户的行为序列中抽取一系列的兴趣状态。
使用GRU单元来对用户行为建模,输入为根据发生时间排序的行为序列。GRU克服了RNN的梯度消失问题,并且快于LSTM,因此非常适用于电商系统。
GRU单元的公式为
(3)和(4)分别是更新门和相关门。
然而,hidden state h只是捕捉了行为直接的依赖关系,并不能有效的表达用户兴趣。对于目标物品的点击行为由最终的兴趣触发,最终的label Ltarget只是对最终兴趣的预测结果起到了监督作用,而历史状态ht不能得到有效的监督。(这里讨论时的loss为二分类的log loss)
考虑到每一步的兴趣状态直接导致了连续的行为,本文提出了auxiliary loss,使用行为b(t+1)来监督兴趣状态ht的学习。除了使用真实的下一行为作为正例,还从未点击的物品中采样一部分负样本。
(上面符号太多了,懒得手打一遍=.=)
总之,上面这部分定义了auxiliary loss,并且最终的loss由预测loss Ltarget和Laux两部分组成,并通过超参数α来调整权重。
引入auxiliary loss的好处在于:
•从兴趣学习的角度,auxiliary loss的引入使得GRU单元的隐状态更好的表达兴趣。
•从GRU优化的角度,auxiliary loss的引入使GRU减少了对长历史行为序列建模时back pop的难度。
•auxiliary loss的引入给embedding layer的learning带来了更多语义信息,可以获得更好的embedding matrix。
Interest Evolving Layer
用户兴趣随着时间在不断进化,对兴趣进化过程进行建模的优势在于:
•兴趣进化模块能够使最终兴趣的表达带有更多相关的历史信息。
•能够更好的预测目标物品的CTR。
在兴趣进化的过程中,会有两个现象:
•对于不同的兴趣,兴趣可能产生偏移现象。比如用户在一段时间内对书感兴趣,在另一段时间内对衣服感兴趣。
•虽然兴趣之间可能相互影响,但每个兴趣有自身的进化过程,比如对于书的兴趣和对于衣服的兴趣进化过程几乎是独立的。因此,只考虑和目标物品相关的进化过程。
在前面通过auxiliary loss已经获得了兴趣序列的表示。通过分析兴趣进化过程的特性,本文结合了attention机制的局部激活能力和GRU单元的序列学习能力来进行建模。GRU每一步中的局部激活可以增强相关兴趣的影响,减弱兴趣偏移的扰动。
和前面提到的式(3)-(6)一样,使用i't, h't来表示兴趣进化模块中GRU的输入和隐状态,GRU的输入为对应的Interest Extractor Layer抽取的兴趣状态,i't = ht。最终的隐状态h'T表示最后的兴趣状态。
兴趣进化模块的attention函数为
attention score综合考虑了广告ea和输入的兴趣ht,如果某一兴趣和目标广告相关程度高,那么attention score就大,反之则小。(这里的attention score计算方式是非常值得学习的)
接下来介绍了几种结合attention机制和GRU的方式。
GRU with attentional input (AIGRU)
AIGRU是本文提出的一种方法,通过attention score来影响interest evolving layer的输入,即
然而AIGRU的表现并不好,因为即使输入为0也能改变GRU单元的隐状态,因此不那么相关的兴趣仍然在影响兴趣进化的学习。
Attention based GRU(AGRU)
AGRU是在2016年关于question answering的paper中被第一次提出的。AGRU使用attention score来直接代替GRU中的更新门,直接改变了GRU中的隐状态
GRU with attentional update gate (AUGRU)
AGRU单元仍然有一些不足,attention score at是一个标量,代替了原来的更新门ut(向量),忽略了不同维度重要性的不同。本文又提出了AUGRU,更好的结合attention机制和GRU单元