好啦,是时候继续我们推荐系统的学习了,从本篇开始,我们来一起了解一下Session-Based Recommendation。今天,我们介绍的文章题目为《SESSION-BASED RECOMMENDATIONS WITH RECURRENT NEURAL NETWORKS》,通过循环神经网络来进行会话推荐。论文下载地址为:http://arxiv.org/abs/1511.06939。
另外,本文代码的地址为:https://github.com/princewen/tensorflow_practice/tree/master/recommendation/Basic-SessionBasedRNN-Demo
参考的Python2版本代码地址为:https://github.com/Songweiping/GRU4Rec_TensorFlow
先来理解一下Session-Based Recommendation的定义。它的中文翻译是基于会话的推荐,我们可以理解为从进入一个app直到退出这一过程中,根据你的行为变化所发生的推荐;也可以理解为根据你较短时间内的行为序列发生的推荐,这时session不一定是从进入app到离开,比如airbnb的论文中,只要前后两次的点击不超过30min,都算做同一个session。
1、模型介绍
1.1 背景介绍
在本文出现之前(2016年),基于会话的推荐方法,主要有基于物品的协同过滤和基于马尔可夫决策过程的方法。
基于物品的协同过滤,需要维护一张物品的相似度矩阵,当用户在一个session中点击