1.一种融合用户行为信息的餐馆推荐方法,其特征在于,所述方法包括以下步骤:S1:根据用户历史就餐数据,构建用户就餐行为序列网络;
S2:使用DeepWalk算法,对用户就餐行为序列网络节点进行表征学习;
S3:结合用户历史就餐行为,重构用户就餐行为成本特征;
S4:将用户评分数据与行为成本特征,并行地用于构建餐馆推荐模型;
所述步骤S3中,重构用户就餐行为成本特征,每个餐馆都有一组地理位置‑口味标签(c,t),将各餐馆的地理位置c对应的网络表征向量wc与口味标签t对应的网络表征向量wt合并为一个一维向量,记作[wc,wt],Yelp用户就餐行为相关的餐馆序列记为{S1,S2,…,Sn},其中Si表示该用户在第i次就餐行为所去的餐馆, 表示该餐馆所在的地理位置, 表示该用户在第i次就餐时的一种口味标签,那么该用户就餐行为序列所对应的餐馆表征向量表示为:
它表征该用户的就餐行为向量轨迹,将上式的均值向量定义为该Yelp用户的就餐兴趣中心点,其计算方式如下:
定义用户每次就餐行为的成本系数r′:其中,函数 表示向量 与 之间的欧氏距离。
2.如权利要求1所述的一种融合用户行为信息的餐馆推荐方法,其特征在于,所述步骤S1中,构建用户就餐行为序列网络,根据用户历史就餐行为时间序列{S1,S2,…,Sn},将用户在序列的第i个时刻对餐馆Si的就餐评分令为Ri,定义Q0为有限穿越视距,如果时间序列中任意两个点(Sa,Ra)、(Sb,Rb)之间的水平方向可视距离相隔Q个点,在这两点之间存在Q1:0<Q1<Q0个点满足:
Ri>Ra或Ri>Rb,a<i<b,且另外Q‑Q1个点满足:
Ri≤Ra且Ri≤Rb,a<i<b,则对应两点(Sa,Ra)、(Sb,Rb)在网络中,节点Sa与节点Sb存在一条连边,分别根据由其中餐馆口味标签、地理位置标签构成的用户就餐行为序列,构建两种不同类型标签为节点的用户就餐行为序列网络。
3.如权利要求1或2所述的一种融合用户行为信息的餐馆推荐方法,其特征在于,所述步骤S2中,分别对步骤S1得到的两类属性节点组成的用户就餐行为序列网络,进行网络节点表征学习,使用DeepWalk网络节点表征学习算法,提取网络中各个节点的向量表示,其学习过程如下:
DeepWalk算法首先以网络中每个节点作为起点,进行随机游走,然后合并各次随机游走的结果作为一整个随机游走序列,假设在网络G(V,E)生成的由节点V组成的随机游走序列中,将节点vi的左右两侧窗口区间为d的一组序列表示为vi‑d,…,vi‑1,vi+1,…,vi+d,Skip‑Gram模型要求以节点vi为中心所产生的这组两侧序列的概率最大化,即可以通过当前节点来推测出周围节点,其目标函数表示为:其中概率函数p(vi+j|vi)根据如下公式计算得:公式中的wv、w′v分别表示为节点v的输入向量与输出向量。
4.如权利要求1或2所述的一种融合用户行为信息的餐馆推荐方法,其特征在于,所述步骤S4中,推荐算法融合了用户就餐行为信息,将用户就餐行为的成本系数r′并行地用于构建推荐模型M′,得到在此意义下的用户对未知餐馆的评分估计 通过结合 与 的排序综合结果,最终获得融合信息下的推荐餐馆名单。