一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种基于显式特征与隐式特征融合的兴趣点推荐方法

2022-05-11 15:52:42 来源:中国专利 TAG:


1.本发明涉及人工智能技术领域,特别是涉及一种基于深度神经网络的兴趣点推荐方法及系统。


背景技术:

2.随着城市轨道交通的不断发展,我们的户外活动变得更加丰富,同时,网络通信的便捷性使我们更容易了解到世界各地的发展状况,这就带来我们户外活动的地理多样性,在众多类型的兴趣点当中,我们可能一时无法选择下一个想去的兴趣点,兴趣点推荐算法帮助我们选择合适的兴趣点。基于协同过滤方法的传统推荐模型使用其他用户过去曾经浏览的物品为当前用户展开推荐,使用当前用户过去浏览的物品为其推荐相似的物品,这种推荐模型具有直观、可解释性强的特征,但其不具备较强的泛化能力,即热门物品与其他物品的相似度会很高,冷门物品与其他物品的相似度会很低,出现头部效应明显的问题,同时,用户-物品评分矩阵是一个稀疏矩阵,依靠相似性计算的方式为用户推荐物品无法准确捕获用户的兴趣。针对这些问题,矩阵分解算法被提出,该算法在协同过滤的基础上,加入了隐向量的概念,加强了模型处理稀疏矩阵的问题,然而,这种推荐方法依然存在一定的局限性,该方法不便于加入用户、物品的特征,因而其丧失了许多有效信息,限制了其推荐的准确性。
3.随着深度学习时代的到来,deep crossing、pnn、wide&deep等优秀的推荐模型被提出,丰富了特征交叉的方式,通过改变网络复杂程度优化推荐模型。目前的兴趣点推荐方法主要是在协同过滤算法和基于模型的算法上融入兴趣点上下文信息,这些传统的兴趣点推荐方法不能完全的对这些上下文信息加以利用,并且也不能充分的对用户的空间行为进行提取与表达,严重降低了兴趣点推荐的准确性与个性化。


技术实现要素:

4.本发明针对上述问题,采用矩阵分解的方式挖掘隐含特征的影响,并与时空信息融合,另外考虑兴趣点签到的时序性,提出一种基于显式与隐式特征融合的兴趣点推荐方法,提高兴趣点推荐的准确性和个性化。
5.根据本发明提供的一种基于显式特征与隐式特征融合的兴趣点推荐方法,包括如下步骤:
6.步骤s1:将用户的签到数据进行预处理,过滤不活跃用户和不活跃兴趣点;
7.步骤s2:从预处理后的数据中挖掘用户特征向量和兴趣点特征向量;
8.步骤s3:将提取到的特征向量输入矩阵分解模型中进行预训练;
9.步骤s4:将预训练后的数据输入深度神经网络中进行进一步的训练,学习每个用户的签到特征;
10.步骤s5:根据学习到的签到特征向每名用户推荐兴趣点;
11.可选地,步骤s1中通过删除签到次数少于10次的用户和访问次数少于10次的兴趣
点对数据集中的数据进行预处理;
12.可选地,步骤s2包括如下:
13.步骤s2.1:时间特征的提取;
14.步骤s2.3:空间特征的提取;
15.步骤s2.4:隐式特征的提取;
16.步骤s2.5:特征向量的融合;
17.可选地,步骤s3将得到的用户特征向量和兴趣点特征向量进行元素乘连接操作;
18.可选地,步骤s4将得到的特征向量f
pu
作为输入数据,将其输入全连接网络中进行模型的训练。
19.本发明还提供了一种基于显式特征和隐式特征融合的兴趣点推荐系统,包括:
20.数据获取模块,获取用户的历史签到数据;
21.特征提取模块,根据用户的历史签到数据,得到其时间特征和空间特征,另外选取一个隐特征维度,与时空特征进行拼接,得到用户特征向量和兴趣点特征向量;
22.模型训练模块,将得到的用户特征向量和兴趣点特征向量进行元素乘连接操作,将其结果作为dnn模型的输入,选取一个合适的网络深度进行深度神经网络的训练,将每次训练后的结果记录下来,与真实值进行对比,更新模型参数,然后进行下一次的训练,经过足够次数的训练之后,保存最终的模型参数。
23.兴趣点推荐模块,根据训练得到的模型参数,计算每个兴趣点的推荐得分,根据德芬的高低向用户推荐其没有访问过的兴趣点列表,完成推荐任务。
24.与现有技术相比,本发明具有如下有益效果:
25.(1)本发明的兴趣点推荐方法是一个时空感知推荐模型,能够融合时空特征,另外引入隐式的影响因素,代替其他显式声明的影响因素,提高推荐效果;
26.(2)本发明将协同过滤方法与深度学习方法进行的有效的综合,再经过矩阵分解的预训练后,再使用深度学习的方法进行推荐,使得推荐效果有明显提升。
附图说明
27.图1为根据本发明中基于显式特征和隐式特征融合的兴趣点推荐模型结构图;
28.图2为本方法在不同的学习率下,在foursquare数据集上hr的表现效果;
29.图3为本方法在不同的学习率下,在foursquare数据集上ndcg的表现效果;
30.图4为本方法在不同的隐式特征维度下,在foursquare数据集上hr的表现效果;
31.图5为本方法在不同的隐式特征维度下,在foursquare数据集上ndcg的表现效果;
32.图6为本方法在不同的网络深度下,在foursquare数据集上hr的表现效果;
33.图7为本方法在不同的网络深度下,在foursquare数据集上ndcg的表现效果。
具体实施方式
34.下面结合具体实施例对本发明进行详细说明。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
35.如图1所示,本发明提供了一种基于显式特征与隐式特征融合的兴趣点推荐方法,
包括如下步骤:
36.步骤s1:将用户的签到数据进行预处理,过滤不活跃用户和不活跃兴趣点;
37.步骤s2:从预处理后的数据中挖掘用户特征向量和兴趣点特征向量;
38.步骤s3:将提取到的特征向量输入矩阵分解模型中进行预训练;
39.步骤s4:将预训练后的数据输入深度神经网络中进行进一步的训练,学习每个用户的签到特征;
40.步骤s5:根据学习到的签到特征向每名用户推荐兴趣点;
41.具体地,进一步来说,步骤s1包含以下具体步骤:
42.我们在foursquare数据集上进行了兴趣点推荐实验,我们使用这个数据集中的用户签到部分和poi信息部分,用户签到信息记录了用户签到poi的具体时间,poi信息记录了每一个兴趣点的编号和经纬度位置信息,在经过预处理之后,数据集中包含24941名用户、28593个兴趣点和1196248条访问日志。我们将每个用户最新的10%访问日志用于评估,10%访问日志作为确定参数的验证集,过去80%访问日志作为训练集。
43.步骤s2.1:表1中记录了兴趣点推荐方法中涉及的符号说明;
44.表1符号说明
[0045][0046]
步骤s2.2:将每天的时间均匀划分为l个部分,以便于记录用户的签到时间特征;
[0047]
步骤s2.3:将兴趣点所在的区域进行网格化分区,记录每个兴趣点所在的区域;
[0048]
步骤s2.4:对用户的签到数据进行预处理,获取其时间特征和空间特征,表2记录了其具体的计算方式;
[0049]
表2特征提取算法
[0050][0051]
步骤s2.5:选取隐特征维度,采用矩阵分解方法得到每个用户和兴趣点的隐特征向量;
[0052]
步骤s2.6:将得到的显式特征向量与隐式特征向量进行简单的拼接,得到用户特征向量fu和兴趣点特征向量f
p

[0053]
可选地,步骤s3将得到的用户特征向量和兴趣点特征向量进行元素乘连接操作,即:
[0054][0055][0056][0057]
可选地,步骤s4将算法1得到的特征向量f
pu
作为输入数据,将其输入全连接网络中进行模型的训练,它的运算方法如下所示:
[0058][0059][0060]

[0061][0062]

[0063][0064][0065]
其中,l表示全连接层的网络层数,hi表示第i层的输入,分别表示训练过程中的权重矩阵、偏差向量,h
l 1
表示隐层的输出结果。
[0066]
经过深度神经网络训练后的得分矩阵需要进行归一化处理,得到每个用户对每个
候选兴趣点的评分,即
[0067][0068]
其中,w,b分别表示线性回归模型中的权重矩阵和偏置向量,σ(
·
)表示sigmoid函数,使用该函数将打分结果放置在0~1之间,以使得计算得到的损失较为精确。
[0069]
对于一个模型来说,损失函数和优化函数的选择是十分重要的,在进行poi推荐模型的训练过程中,我们需要求解
[0070][0071]
求解该目标函数的最优值时,本发明使用随机梯度下降算法,取学习率为0.001,λ=10-8

[0072]
基于兴趣点的推荐算法通常会为每个用户推荐k个该用户未访问的兴趣点,本次实验我们将取k为以下值:5,10,15,20.我们将分别计算k取这些值时推荐的hr和ndcg.
[0073]
hr反映了推荐出的兴趣点中用户实际访问兴趣点所占的比例;
[0074]
ndcg则反映用户实际访问兴趣点在推荐列表中的次序;
[0075]
以下几个公式为本发明的实验部分中对hr和ndcg的计算公式:
[0076][0077][0078][0079][0080]
其中,|u|表示用户的数量,r(u)表示用户u的兴趣点推荐列表,t(u)表示用户u实际访问的兴趣点列表,reli表示推荐列表中第i个位置的兴趣点pi与实际访问兴趣点的关联程度,在这里,当pi∈t(u)时,reli取1,否则为0。
[0081]
我们将本发明提出的兴趣点推荐模型eifjdnn同过去的一些推荐方法进行了一次推荐性能上的比较,表3记录了这些推荐模型的表现结果。
[0082]
从表3中,我们发现gmf模型和ncf模型在foursquare数据集上表现效果比较一般,nfm模型和dcn模型具有相似的推荐性能,eifjdnn模型的推荐性能在hr和ndcg方面均优于上述模型。
[0083]
表3不同模型的表现结果比较
[0084][0085]
在eifjdnn模型中,我们的评估结果受多种参数的影响,因此,为了使得我们的模型发挥其最佳推荐性能,我们将不同的参数应用于该模型中。其中,主要影响推荐的参数有:隐向量的维度、深度神经网络的层数、学习率、训练次数、激活函数等。对于隐向量的维度、深度神经网络的层数、学习率,我们将分别取隐向量的维度为0~20,深度神经网络的层数为0~6,学习率为[0.001,0.003,0.005,0.007,0.009].我们首先将训练次数设定为100次,考虑到算法的执行效率,我们每训练一次全部的数据集,就使用验证集计算推荐的性能,若经过3次连续的训练后,计算的结果并没有提升,则提前结束训练。对于激活函数,我们使用relu激活函数,即relu(x)=max(0,x)。
[0086]
在图3中我们对比了使用不同学习率时的评估结果,可以发现,在学习率取为0.001时,其各项评估指标都是几个学习率中最高的。
[0087]
在图4中我们对比了使用不同隐式特征维度时的评估结果,可以发现,当隐式特征维度为7时,他的各项评估结果处于最高的分值,在这里,当隐式特征维度为0时,表示当前模型的输入层只有显式特征,缺少隐式特征,此时的评估结果较低。当隐式特征维度在7以上时,模型计算的代价变大了,但其对评估结果并无明显提升,因此,对于foursquare数据集来说,我们取7维隐式特征维度时,就能达到一个较好的效果。
[0088]
在图5中我们在模型中使用不同的网络深度来对测试集进行评估,当深度为0时,表明当前的模型没有经过深度神经网络的训练,因此其评估效果不太好,当深度为1时,模型的评估结果是最好的。
[0089]
以上对本发明的具体实施例进行了描述。需要理解的是,本发明并不局限于上述特定实施方式,本领域技术人员可以在权利要求的范围内做出各种变化或修改,这并不影响本发明的实质内容。在不冲突的情况下,本技术的实施例和实施例中的特征可以任意相互组合。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献