1.一种基于门控循环单元神经网络的景点推荐方法,其特征在于:所述基于门控循环单元神经网络的景点推荐方法包括:
步骤一,采集旅游数据<uj1,sj2,vj3>,对旅游数据进行预处理,按照第j个游客的所有旅游数据按照时间顺序生成表征旅游轨迹的旅游序列T为<uj1,s12,v13>,<uj1,s22,v23>,...,<uj1,sj2,vj3>,...,<uj1,sN22,vN23>;
其中,uj1表示第j1个游客,sj2表示第j2个时刻,vj3表示第j3个景点,j1为小于等于N1的正整数,j2和j3均为小于等于N2的正整数;N1和N2为大于1的正整数,N2表示旅游轨迹长度;
步骤二,将步骤一的旅游序列输入到门控循环单元神经网络中,通过门控循环神经网络对旅游数据进行建模,建立门控循环单元神经网络学习模型;
步骤三,将步骤一的旅游序列T作为数据集同时输入步骤二的门控循环单元神经网络学习模型,将同批次的其他景点作为负例进行训练;
步骤四,定义损失函数,更新推荐列表,完成景点推荐。
2.根据权利要求1所述的基于门控循环单元神经网络的景点推荐方法,其特征在于:步骤一中的时刻为访问时间,访问时间为实际访问时间或评论时间,实际访问时间优先于评论时间。
3.根据权利要求1所述的基于门控循环单元神经网络的景点推荐方法,其特征在于:步骤一中还包括:剔除无效信息,无效信息包括旅游轨迹短于有效旅游轨迹阈值的旅游轨迹,以及相邻景点访问时间超过间隔时间阈值的。
4.根据权利要求1-3任一所述的基于门控循环单元神经网络的景点推荐方法,其特征在于:步骤二中的门控循环单元神经网络学习模型中包括景点特征学习层、GRU隐层及景点得分输出层:景点特征学习层中,所有景点使用独热编码表示,景点特征学习层输入的长度等于景点的个数,把独热编码表示嵌入到景点特征学习层用低维向量表示;
GRU隐层中,GRU隐层的输入是景点的独热编码表示;
景点得分输出层,景点得分输出层把GRU隐层的输出通过tanh激活函数后表示每个景点的得分,得分表征预测访问概率。
5.根据权利要求4所述的基于门控循环单元神经网络的景点推荐方法,其特征在于:步骤二中使用多条旅游轨迹同时训练。
6.根据权利要求5所述的基于门控循环单元神经网络的景点推荐方法,其特征在于:所述多条旅游轨迹同时训练包括:每条轨迹相对应的位置定义为同一批次,把同一批次中其他轨迹的景点作为负例来训练模型;
创建一个窗口,窗口大小为DX,DX表征DX条旅游轨迹同时训练;
对每个旅游轨迹进行排序,使用第一个旅游轨迹中的第一个景点作为第一个输入,第二个景点作为第二个输入,以此类推,直到一个旅游轨迹结束;
每一条旅游轨迹训练完成后均重置赋值权重矩阵;
在已有的负例集合上加入提前抽取好的有效负例集合组成全新的负例集合。
7.根据权利要求6所述的基于门控循环单元神经网络的景点推荐方法,其特征在于:所述有效负例集合中有效负例的产生方法如下:把其他旅游轨迹中同一批次中的旅游景点设为负例集合A;
把所有景点采取随机抽样的方法取出一部分作为额外的负例集合B;
所有景点里的得分最高的负例景点,把负例集合里的所有景点得分与得分最高的负例进行比值,得到每个景点的赋值权重;
将赋值权重用于更新更新损失函数。
8.根据权利要求7所述的基于门控循环单元神经网络的景点推荐方法,其特征在于:所述更新推荐列表采用Pairwise的方法进行排序,对应的损失函数为其中,Sn表示样本大小,Sm表示负例q与得分最高负例的比值,p代表正例,q代表负例,r代表景点的得分,rq表示景点q的得分,rp表示景点p的得分。