推荐系统之阿里广告:Deep Interest Evolution Network for CTR

前言

阿里又出了篇DIEN,据传提高了20.7%,让我们拿来一睹为快。

亮点

1)构建兴趣提取层,并加入辅助loss来更有效学习兴趣状态。
2)构建AUGRU(GRU with Attention Update Gate),可以接住兴趣状态来model用户兴趣演化。
直接上图

推荐系统之阿里广告:Deep Interest Evolution Network for CTR_第1张图片
辅助 loss

用GRU的隐状态来提取每一步的用户兴趣状态,由于点击与否只在最后一步上对隐状态有最大化的指导作用,引入了辅助loss来帮助中间步的隐状态学习用户兴趣状态的表达。每个 T i T_i Ti都跟着一个无点击的采样。 L a u x = − 1 N ( ∑ i = 1 N ∑ t l o g σ ( h t , e b i [ t + 1 ] ) + l o g ( 1 − σ ( h t , e ^ b i [ t + 1 ] ) ) ) L_{aux}=-\frac{1}{N}(\sum_{i=1}^N\sum_t log \sigma (h_t, e_b^i[t+1]) +log(1-\sigma(h_t, \hat{e}_b^i[t+1]))) Laux=N1(i=1Ntlogσ(ht,ebi[t+1])+log(1σ(ht,e^bi[t+1])))
其中 σ ( x 1 , x 2 ) = 1 1 + e x p ( − [ x 1 , x 2 ] ) \sigma(x_1, x_2) = \frac{1}{1+exp(-[x_1,x_2])} σ(x1,x2)=1+exp([x1,x2])1 h t h_t ht表示GRU的隐状态, e b ∈ R T × n E e_b \in R^{T \times n_E} ebRT×nE表示时序的点击向量序列, e ^ b [ t ] \hat{e}_b[t] e^b[t]表示时序 T = t T=t T=t时的负样本向量序列。 N N N表示共有 N N N { e b i , e ^ b i } \{ e_b^i, \hat{e}_b^i \} {ebi,e^bi}来作一批训练集。类似负采样,但是仅仅一次采样负样本。总loss L = L t a r g e t + α ∗ L a u x L=L_{target} + \alpha * L_{aux} L=Ltarget+αLaux,其中 L t a r g e t L_{target} Ltarget是负log似然。

AUGRU

为了描述用户兴趣演化,借助上面的兴趣状态,对用户兴趣演化建模,将GRU的update gage替换为attention-score*update-gate。 u t ′ = u t ∗ a t ⟶ a t = e x p ( h t W e a ) ∑ j = 1 T e x p ( h j W e a ) u_t'=u_t * a_t \longrightarrow a_t=\frac{exp(h_t W e_a)}{\sum_{j=1}^T exp(h_j W e_a)} ut=utatat=j=1Texp(hjWea)exp(htWea)
标准的GRU组件,如下:
{ u t = σ ( W u i t + U u h t − 1 + b u ) r t = σ ( W r i t + U r h t − 1 + b r ) h ~ t = t a n h ( W h i t + r t ⊗ U h h t − 1 + b h ) h t = ( 1 − u t ) ⊗ h t − 1 + u t ⊗ h ~ t \left\{\begin{matrix} u_t = \sigma(W_u i_t + U_u h_{t-1} + b_u) & \\ r_t = \sigma(W_r i_t + U_r h_{t-1} + b_r) & \\ \tilde{h}_t = tanh(W_h i_t + r_t \otimes U_h h_{t-1} + b_h) \\ h_t = (1- u_t) \otimes h_{t-1} + u_t \otimes \tilde{h}_t \end{matrix}\right. ut=σ(Wuit+Uuht1+bu)rt=σ(Writ+Urht1+br)h~t=tanh(Whit+rtUhht1+bh)ht=(1ut)ht1+uth~t
将GRU的第四个式子的 u u u替换为 u t ′ u_t' ut即为AUGRU。

思考

1) 采样负样本时,是从哪些无点击data-set中采样的?是该用户有展现无点击里面采样,还是所有用户有展现无点击里面采样,还是所有用户点击中但该用户无点击里面采样?
2) 新闻推荐中,是否也适合这种方法呢?估计可以有很大提高。

你可能感兴趣的:(技术博客,Recommend,System,DIEN,Predict,CTR,AUGRU,Auxiliary,Loss)