论文《Recurrent Recommender Networks》来自卡内基梅隆大学的Alex Smola的实验室以及谷歌研究院的Amr Ahmed,阵容可谓非常强大。
从传统的概率图模型(Probabilistic Graphical Model)的角度来说,要想能够对时间信息(Temporal)进行有效建模,则必须采用Sequential Monte Carlo等其他办法。这些办法往往计算非常复杂而且极易出错。所以,这篇文章希望通过RNN来帮助这样的建模场景。
说白了,文章就是希望能够用RNN来对现在的观测值以及模型参数的时间变化进行统一建模。当然,另外一个比较好的选择就是LSTM。这篇文章采用了LSTM。有了时间的变化以后,在单一时间的Rating Prediction,则是用户方面信息和物品(文章中采用的是电影)信息的点积,非常类似传统的矩阵分解模式。有一个小改动的地方来自于最后的预测结果是一个与时间有关的变化和与实践无关变量的一个分解。这一点主要是为了让不同时间段的变化都能够被模型解释。这么看似简单一个模型最大的问题其实是优化算法,如果使用简单的Back-propagation,计算量则会很大。这篇文章采用了一个叫Subspace Descent的方法,使得优化算法本身能够比较便捷。
在实验中,文章比较了TimeSVD++以及之前提出的AutoRec,在IMDB和Netflix的数据集上都有显著的提高。当然,从比较大的角度来看,这篇文章的意义其实非常有限,主要是最近类似思路的文章其实已经有不少,并且从学术贡献来看,这篇文章并且真正完全解答如何用深度学习和推荐系统结合的更加的根本问题。这篇文章适合熟悉推荐系统的读者快速阅读。
链接:
http://alexbeutel.com/papers/rrn_wsdm2017.pdf
原文链接:
http://weibo.com/ttarticle/p/show?id=2309404079194219887107