KDD’19 | 预测用户和商品的动态嵌入趋势

  • Post author:
  • Post category:其他





阅读更多,欢迎关注公众号:论文收割机(paper_reader)



因为排版问题,很多图片和公式无法直接显示,欢迎关注我们的公众号点击

目录

来阅读原文。

“Predicting Dynamic Embedding Trajectory in Temporal Interaction Networks” KDD, 2019.


引言


推荐系统中一个很重要的问题就是建模用户和商品之前的序列交互。过去很多模型利用表达学习将用户和商品嵌入到欧几里得空间来得到他们的语义表达。对于序列问题而言,用循环神经网络(Recurrent Neural Network,RNN)来学习表达是一个经典的办法,但RNN只能建模历史序列,不能对未来的用户和商品的变化趋势进行预测。基于此问题,斯坦福大学的Jure Leskovec组提出了动态用户-商品共同嵌入模型(Joint Dynamic User-Item Embedding,JODIE)来解决此问题。


背景


对于当前的动态推荐方法而言,有4个基础性的问题有待解决。

第一,很多现有模型仅在用户和商品交互时产生表达。然而,用户和商品交互的时间间隔差距很大,有时候用户会在一周甚至一个月之后才会买下一个商品,此时用户的表达依然是上一次购买时候的表达,因此预测用户表达的变化趋势也是一个重要的事情。

第二,商品和用户都同时会有静态和动态的特征,所以需要在同一框架下同时考虑静态和动态的特征。

第三,许多当前的方法通过对每个用户可能感兴趣的商品进行排序预测用户和商品的交互,然而这种方法时间复杂度过高,在实际场景商品数过多的情况下并不好用

第四,过去的序列模型在训练时一次只能处理一个交互,这在大规模数据集会有很低的训练效率。

为了解决这个问题,作者提出了JODIE模型和t-Batch训练方法。如图1所示,我们不仅要预测用户未来要买的商品,同时还要预测用户和商品未来的变化。

图1. 预测用户和商品未来的变化趋势


模型


如图2所示,Jodie模型本质上采用了两条RNN和一个注意力层(Attention Layer)来得到用户和商品表达未来的变化轨迹。

图2. Jodie模型

公式1是用户和商品在训练时所用的双RNN模型。u代表用户,i代表商品,f是用户或商品的特征,Δu和Δi是用户和商品和自身上一次发生交互时相差的时间。这两个公式代表,在时刻t时,用户RNN的输入是上一次交互用户的表达,上一次交互商品的表达,用户特征和交互间相差的时间,商品RNN的输入是上一次交互商品的表达,上一次交互用户的表达,商品特征和交互间相差的时间。

公式1

在我们得到用户的表达后,我们希望知道用户在Δ时间之后的表达,所以作者定义了一个投影函数(projection function)来预测用户未来的表达。

公式2

在这个公式里,1+w可以被看作是一个时序的注意力向量来对用户表达作加权。在得到用户未来的表达后,我们需要对商品未来表达作预测,具体公式如公式3:

公式3

j在这个公式中代表用户u在Δ时刻后可能会购买的商品,i(t+Δ-)是用户上一次购买商品的表达(在购买i之前)。我们将这些表达作为基准(ground truth)来训练模型。图3表达了投影函数的意义,我们可以通过控制Δ的值来得到用户在不同时间可能交互的目标。Jodie的损失函数如下:

公式4

这个损失函数是为了最小化预测的表达和真实表达之间的差距。这里[x,y]是将两个向量链接起来,j(头顶直线)是用户未来真实购买的商品j的静态表达,用one-hot向量来表示,j(t-)是j这个商品的动态表达,是通过RNN在t+Δ时刻之后得到的表达。损失函数的后面两项是正则化项,意义是为了让用户和商品的表达和之前它们的表达不要过大。预测的时候就只需要找到和预测出的商品表达在欧式距离上最接近的商品就可以了。

图3. 投影函数

对于传统的RNN而言,每一个时刻只能处理当前时刻的用户商品交互,这样会导致运算资源浪费,从而影响训练效率。T-Batch本质上是定义一个最小时间片t,将这个时间片中的交互一起训练。具体来说,首先把所有(u,i)组合按时间排序,然后从前到后把t时间内所有不同的(u,i)放在一个集合里(同一个集合里每个u和i只能出现一次),从而每个集合就是一个batch。


实验


本文在Reddit,Wikipedia和LastFM三个数据集上对用户未来可能交互的商品进行了实验。和同类型的动态模型比,Jodie在实验效果上有明显的优势。


结论


Jodie这个模型给动态推荐模型一个新的思路,即通过预测表达来进行推荐,这样可以充分考虑时间因素带来的影响,同时还可以进行一些别的推荐模型做不到的事情,比如预测交互发生的时间。

参考文章

https://cs.stanford.edu/people/jure/pubs/jodie-kdd19.pdf




阅读更多,欢迎关注公众号:论文收割机(paper_reader)



因为排版问题,很多图片和公式无法直接显示,欢迎关注我们的公众号点击

目录

来阅读原文。



往期文章:


阅读原文



版权声明:本文为paper_reader原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。