掌桥专利:专业的专利平台
掌桥专利
首页

一种基于旅游知识图谱的景点推荐方法及设备

文献发布时间:2023-06-19 10:38:35


一种基于旅游知识图谱的景点推荐方法及设备

技术领域

本发明属于智能信息处理领域,具体涉及一种基于旅游知识图谱的景点推荐方法及设备。

背景技术

随着信息化时代的发展以及生活水平的不断提高,越来越多的人们选择在节假日里出外旅游,但是通常情况下,节假日较短而且景点信息量较大,游客短时间段内难以做出合理的选择,因此对于旅游推荐系统的研究越来越重视。如何根据用户的历史信息设计推荐系统,向用户提供更为精准的推荐成为当前研究的热门问题。一方面,传统协同过滤推荐算法往往存在项目冷启动和数据稀疏的问题,无法为目标任务做出准确的推荐。另一方面,目前对于特定领域的知识图谱构建还处于不成熟的阶段,对于基于旅游知识图谱的推荐研究仍旧存在较大的问题。知识图谱本质上就是一种将知识信息中的实体和关系联系在一起的语义网络,并可以将大量知识表示出来,以“实体-关系-实体”这样的三元组方式进行存储。

发明内容

本发明的目的在于针对上述现有技术中旅游景点不能够个性化给用户进行推荐的问题,提供一种基于旅游知识图谱的景点推荐方法及设备,帮助用户做出合理的出行选择。

为了实现上述目的,本发明有以下的技术方案:

一种基于旅游知识图谱的景点推荐方法,包括以下步骤:

S1、爬取旅游网站数据信息并进行清洗和整理,构建旅游领域知识图谱;

S2、将旅游领域知识图谱的实体和关系嵌入低维向量,并计算景点与景点之间的相似度;

S3、构建用户-景点评分矩阵,并根据用户-景点评分矩阵计算景点与景点之间的相似度;

S4、利用步骤S2以及步骤S3计算出的相似度进行融合,得到最终的相似度;

S5、根据最终的相似度得出与目标实体相似度最高的前K个实体,形成推荐列表。

优选的,所述的步骤S1具体包括以下步骤:

使用Python中的网络爬虫爬取相关旅游网站上的数据信息,并对数据进行清洗和整理,确保数据的完整性,将旅游数据中的实体导入neo4j图数据库,并设置实体之间的关系属性,构成旅游知识图谱,得到“实体-属性-属性值”这样包含结构化知识的三元组。

优选的,所述的步骤S2具体包括以下步骤:将旅游知识图谱中的三元组集,由头实体h,尾实体t和关系向量r组成,将所有的三元组集表示为“头实体-关系-尾实体”,即为(h,r,t),通过知识图谱表示学习算法,将头实体向量h通过关系向量r映射于尾实体t,并结合知识图谱的网络结构特征学习,将知识图谱中的实体和关系表示为稠密低维实值向量。

优选的,通过表示出的低维稠密向量计算实体之间的语义相似度包括以下步骤:

2.1)三元组表示学习;

三元组表示学习是通过构建旅游知识图谱,获取实体和关系的三元组集合,通过知识图谱表示算法将实体和关系映射到连续的低维稠密向量空间中,以数值的方式表示实体和关系;初始化共享向量,并将学习到的知识表示向量存储到共享向量中;

2.2)结构特征学习;

结构特征学习是根据知识图谱中的语义网络结构的特点,并准确反映实体与实体之间的多个关系;使用多阶近邻实体和关系的向量来表示目标实体向量;将目标实体的近邻结构中的实体向量和关系向量输入到神经网络结构中,对近邻结构中的实体和关系的向量累加求和,计算求得的和占据所有实体向量和的比率,即为目标实体的值,然后更新到共享向量中;

2.3)相似度计算;

根据共享向量,利用余弦相似度公式计算实体之间的相似度,构建实体相似度矩阵。

优选的,所述的步骤S3构建用户-景点评分矩阵具体包括以下步骤:

根据爬取的旅游网站数据信息,整理出游客对于景点的评分数据,将游客作为矩阵的行,景点作为矩阵的列,构造游客-景点评分矩阵,由此可以得到每个景点基于游客的评分向量,然后计算景点与景点之间的相似度。

优选的,所述的步骤S4通过融合权重计算相似度,具体包括以下步骤:

将步骤S2计算得到的相似度与步骤S3计算得到的相似度之间设置融合因子进行相加,得到景点与景点之间最终的相似度。

优选的,所述的步骤S5具体包括以下步骤:

先设定目标实体,再计算目标实体与其他实体之间最终的相似度,按照相似度值的大小进行排序,选取相似度值最高的前k位实体作为目标实体的推荐列表。

本发明还提供一种基于旅游知识图谱的景点推荐系统,包括:

知识图谱构建模块,用于通过爬取旅游网站数据信息并进行清洗和整理,构建旅游领域知识图谱;

相似度知识表示计算模块,利用知识图谱表示学习算法将旅游领域知识图谱的实体和关系嵌入低维向量,并计算景点与景点之间的相似度;

相似度用户-景点评分矩阵计算模块,根据爬取到的旅游网站数据构建用户-景点评分矩阵,并根据用户-景点评分矩阵计算景点与景点之间的相似度;

相似度融合权重计算模块,将相似度知识表示计算模块计算出的相似度与相似度用户-景点评分矩阵计算模块计算出的相似度进行融合得到两个景点之间最终的相似度;

推荐列表生成模块,根据相似度融合权重计算模块计算出的相似度得出与目标实体相似度最高的前K个实体,形成推荐列表。

本发明还提供一种终端,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如所述基于旅游知识图谱的景点推荐方法的步骤。

本发明还提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现所述基于旅游知识图谱的景点推荐方法的步骤。

相较于现有技术,本发明具有如下的有益效果:通过爬取有关旅游网站的数据信息,并对数据进行整理,保证了数据的完整性,设置数据中的实体,属性以及属性值,从而构建出知识图谱。通过知识图谱表示学习可以将实体和关系嵌入低维稠密向量,以数学的方式衡量实体之间的关系,弥补了传统推荐技术的问题,有效解决传统推荐系统中的项目冷启动以及数据稀疏性问题。本发明融合了知识图谱表示学习、推荐技术、融合相似度计算等方法完成对目标实体的推荐,同时考虑实体本身的特性和用户的显示反馈信息,提高了该推荐方法的准确性。本发明将通过旅游知识图谱表示学习结合用户-景点评分矩阵计算出的相似度进行融合,采用协同过滤较传统推荐技术能够更加准确的为目标任务做出个性化的推荐。

附图说明

图1本发明构建旅游知识图谱的流程图;

图2本发明基于旅游知识图谱的景点推荐方法流程图;

具体实施方式

下面结合附图对本发明做进一步的详细说明。

参见图1,构建旅游知识图谱为本发明基于旅游知识图谱的景点推荐方法的第一步,根据本发明的需求构建旅游知识图谱,学习知识图谱中的语义关系网络并将其应用到推荐技术研究中,能够达到为不同的用户推荐最符合他们的物品,提高推荐的准确性。

构建旅游知识图谱的具体步骤如下:

步骤一,分析数据需求。根据本发明基于知识图谱的推荐方法,分析推荐过程中需要的实体,属性以及属性值,比如景点的名称、地址、等级、评分等,然后爬取相应的数据信息。

步骤二,爬取旅游数据信息。

设计Python程序爬取旅游网站上的旅游数据信息,保存到csv文件中。

步骤三,处理数据信息。对来自不同旅游网站爬取得到的csv文件中信息进行清洗,整合,删除爬取过程中出现的错误或者不匹配的信息,将存储在不同文件中的信息按照属性、属性值进行整合,补充文件中某些实体缺少的属性或者属性值。

步骤四,导入neo4j数据库。将整理好的数据信息分别按照实体、属性导入neo4j数据库中,然后再根据实体之间的实际联系建立实体之间的关系。

步骤五,导出数据并构建三元组。将neo4j中的数据导出,存储为csv文件,三元组的存储格式为“实体-关系-实体”,读取csv文件中的数据,将多余的信息删除,实体、关系、实体之间使用空格隔开,构建三元组集合。

参见图2,根据构建好的知识图谱设计基于知识图谱的推荐方法。本发明基于知识图谱的推荐技术是利用改进的TransE算法TransGraph进行知识表示学习结合基于物品的协同过滤算法进行设计。首先通过知识表示学习,同时学习过程中结合知识图谱网络结构特征,将三元组嵌入到低维稠密向量,计算实体之间的相似度,然后通过协同过滤算法计算实体之间基于用户评分的相似度,最后将两种方法计算的相似度融合计算,将目标实体与其他实体计算的相似度值进行降序排序,推荐与目标实体最相似的前K位。

基于知识图谱的推荐技术方法实现的具体步骤如下:

步骤一,知识表示学习。

将由构建的知识图谱得到的三元组集,由头实体h,尾实体t,和关系向量r组成,所有的三元组集表示为“头实体-关系-尾实体”,即为(h,r,t)。通过知识图谱表示学习算法,将头实体向量h通过关系向量r映射于尾实体t,并结合知识图谱的网络结构特征学习,将知识图谱中的实体和关系表示为稠密低维实值向量。这种表示包含了知识图谱中原有的语义信息,充分考虑了实体本身的特性,通过表示出的低维稠密向量计算实体之间的语义相似度。具体是:

1.根据三元组集合构造哈夫曼树;

将实体和关系在三元组中出现的频率作为哈夫曼树叶子节点的权值。

2.初始化共享向量;

假设三元组中有m个实体,n个关系,将实体和关系的向量进行初始化构成共享向量矩阵V

3.三元组表示学习;

三元组表示学习是通过构建旅游知识图谱,获取实体和关系的三元组集合。使用TransE算法进行训练学习,对于知识图谱中的一个三元组(h,r,t)定义为正样本,将正样本的三元组的头实体或者尾实体随机替换成其他实体得到负样本(h',r,t'),根据损失函数公式(1)进行训练:

其中,S表示三元组集合,S’表示三元组集S的负采样集,l为间隔距离参数,[x]

4.结构特征学习;

结构特征学习是根据知识图谱中的语义网络结构的特点,并准确反映实体与实体之间的多个关系。使用多阶近邻实体和关系的向量来表示目标实体向量。将目标实体的近邻结构中的实体向量和关系向量累加求和得到中间向量,接下来查询哈夫曼树中根节点到目标节点的路径,每次分支做二分类,将分支产生的概率相乘即为目标实体的概率,计算更新的梯度值,然后更新到共享向量中。具体实现步骤如下所示:

1)计算中间向量X

获取实体t的邻接结构N

其中N

2)计算当前实体t的概率J

在构建的哈夫曼树中查询根节点到实体t的路径,路径上的每次分支进行二分类,并产生一个概率,将分支产生的概率依次相乘即为当前实体t的概率J

其中,d

3)更新辅助向量θ和梯度。根据公式(2)更新辅助向量的值,以及公式(3)更新梯度的值。

4)更新实体和关系的向量。将上一步中更新的u值分配到邻接结构中的实体和关系对应的共享向量中,即共享向量中邻接结构的每个实体和关系的值都加上更新的梯度值。

5.交叉训练;

将三元组表示学习得到的实体和关系的向量更新到共享向量中,结构特征学习时再以共享向量为初始向量进行训练,将训练得到的结果更新到共享向量中,三元组表示学习继续以共享向量为初始向量进行学习,由此实现交叉训练。

步骤二,知识表示相似度计算。

三元组表示学习结合结构特征学习能够真实地反映实体与实体之间的多个关系,避免传统知识表示学习只能学习实体之间的单个关系,造成实体之间计算的相似度存在误差。根据知识表示学习得到的共享向量,利用余弦相似度公式计算实体之间的相似度,计算出相似度值越大,则表示两个实体越相似,构建实体相似度矩阵。公式(4)如下:

其中,I

步骤三,构建用户-物品评分矩阵。

使用基于物品的协同过滤算法,根据物品历史被反馈的数据来判断物品之间的相似性。通过爬取的数据获取游客对于景点的评分数据,构建游客-景点评分矩阵。考虑到不同用户对于景点的评分存在差异,在计算景点之间基于游客评分的相似度时,先计算景点的平均评分,结合平均评分计算景点之间的余弦相似度。公式(5)如下:

步骤四,融合权重计算相似度。

将通过知识表示学习计算的实体之间的相似度Sim

Sim=x*Sim

步骤五,计算推荐列表。通过知识图谱表示学习将知识图谱引入传统推荐技术中,提高推荐系统的准确性。设定目标实体,根据相似度融合的方法计算目标实体与其他实体的融合相似度,按照最终计算的相似度矩阵,将目标实体的相似度值的大小进行排序,选取相似度值最高的前k位实体作为目标实体的推荐列表。

本发明还提供一种基于旅游知识图谱的景点推荐系统,包括:

知识图谱构建模块,用于通过爬取旅游网站数据信息并进行清洗和整理,构建旅游领域知识图谱;

相似度知识表示计算模块,利用知识图谱表示学习算法将旅游领域知识图谱的实体和关系嵌入低维向量,并计算景点与景点之间的相似度;

相似度用户-景点评分矩阵计算模块,根据爬取到的旅游网站数据构建用户-景点评分矩阵,并根据用户-景点评分矩阵计算景点与景点之间的相似度;

相似度融合权重计算模块,将相似度知识表示计算模块计算出的相似度与相似度用户-景点评分矩阵计算模块计算出的相似度进行融合得到两个景点之间最终的相似度;

推荐列表生成模块,根据相似度融合权重计算模块计算出的相似度得出与目标实体相似度最高的前K个实体,形成推荐列表。

本发明还提供一种终端,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如所述基于旅游知识图谱的景点推荐方法的步骤。

本发明还提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现所述基于旅游知识图谱的景点推荐方法的步骤。

所述的计算机程序可以被分割成一个或多个模块/单元,所述一个或者多个模块/单元被存储在所述存储器中,并由所述处理器执行,以完成本发明的方法。所述终端可以是桌上型计算机、笔记本、掌上电脑及云端服务器等计算设备,也可以是处理器、存储器。

处理器可以是中央处理单元(CentralProcessingUnit,CPU),还可以是其他通用处理器、数字信号处理器(DigitalSignalProcessor,DSP)、专用集成电路(ApplicationSpecificIntegratedCircuit,ASIC)、现成可编程门阵列(Field-ProgrammableGateArray,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。存储器可用于存储所述计算机程序和/或模块,所述处理器通过运行或执行存储在所述存储器内的计算机程序和/或模块,以及调用存储在存储器内的数据,实现所述基于旅游知识图谱的景点推荐系统模块的各种功能。

以上所述仅仅是本发明的较佳实施例,并不用以对本发明的技术方案进行任何限制,本领域技术人员应当理解的是,在不脱离本发明精神和原则的前提下,该技术方案还可以进行若干简单的修改和替换,这些修改和替换也均属于权利要求书所涵盖的保护范围之内。

相关技术
  • 一种基于旅游知识图谱的景点推荐方法及设备
  • 一种基于知识图谱的个性化旅游景点推荐方法
技术分类

06120112623722