一种基于加权异构信息网络的景点推荐方法
文献发布时间:2023-06-19 11:05:16
技术领域
本发明属于数据挖掘推荐技术领域,涉及一种基于加权异构信息网络的景点推荐方法。
背景技术
随着旅游者消费观念的转变以及消费能力的提高,用户旅游消费习惯逐渐向“刚需化发展”,旅游需求日益趋于个性化。目前国内外互联网在线旅游平台为用户提供了方便快捷的信息服务,但与此同时用户被大量的信息淹没,推荐方法的出现为解决信息过载问题提供了一条有效途径。景点推荐方法通过分析用户的兴趣和需求,推断与之相关的目的地或景点集,从而过滤掉大量的无关信息,辅助人们的出游规划。目前现有的景点推荐方法虽然有一定的效果,但大多只利用了用户和景点的评分交互信息,未考虑其他重要的辅助信息。由于旅游本身周期长,频次低,用户景点评分交互信息少,数据稀疏,只利用评分因素会导致算法的推荐精度低。
发明内容
本发明的目的是提供一种基于加权异构信息网络的景点推荐方法,解决了现有的景点推荐方法数据稀疏,推荐精度低的问题。
本发明所采用的技术方案是,一种基于加权异构信息网络的景点推荐方法,具体按照以下步骤实施:
步骤1、获取用户旅游数据集,经去重,剔除无效数据的处理操作后,得到最终的有效数据集;
步骤2、根据步骤1用户旅游数据集的结构特征,将用户旅游数据集的关系构建为加权异构信息网络;
步骤3、根据步骤2得到的加权异构信息网络的节点类型以及节点类型之间的关系,将加权异构信息网络抽象为加权异构网络模式。只保留节点之间的类型关系,对网络中节点和边的类型进行限制,使得异构信息网络半结构化;
步骤4、基于步骤3中加权异构网络模式,获取多条从用户类型到用户类型的元路径集,引入加权元路径;
步骤5、根据步骤4中加权和非加权元路径,计算每条元路径上用户之间的相似度;
步骤6、根据步骤5中求得元路径上用户相似度值,计算每条元路径上用户对景点的预测评分;经过融合得到最终目标用户对景点的预测评分;
步骤7、将步骤6中的预测评分以降序方式排列,生成景点推荐列表;选取TOP-N的景点集作为结果推荐给用户。
本发明的特点还在于,
步骤2具体步骤为:定义用户景点加权异构网络模型G=
步骤3具体步骤为,根据步骤2中的加权异构信息网络中的实体及关系,以实体类型为节点,连接关系类型为边,边上的权值为权重,构建其网络模式图,记为T
在步骤4中基于步骤3中加权网络模式,利用广度优先的图搜索方法,获取多条从用户类型到用户类型的元路径,根据旅游领域知识分析,用户是否选择一个景点受“吃、住、行、游、娱、购”六要素的影响,设置用户到每个要素的元路径,用户到“游”要素的元路径的权值为用户对景点的评分,用户到“吃、住、行、娱、购”要素以及景点主题属性的元路径的权值设为1,从语义上,不同元路径代表的物理意义不同,所体现出的节点间关联程度也不同。
步骤4中引入元路径的具体过程为,在加权网络模式上定义加权元路径P,加权元路径对关系属性值有所约束的一种扩展元路径,表示为
在步骤5计算元路径上用户相似度时,对于加权元路径首先按照具体的权值分解为多个原子元路径,然后用基于元路径的相似度计算方法PathSim计算每条原子元路径的用户相似度,最后将带权元路径的所有原子元路径的用户相似度求和,得到加权元路径下的用户相似度;对于非加权元路径,直接使用PathSim方法计算非加权元路径下的用户相似度。
步骤6中通过基于步骤5中的元路径计算得到的不同元路径上的用户相似度值,应用于基于用户的协同过滤推荐算法中,得到不同元路径影响的用户对景点的预测评分值,然后采用线性回归方法预测评分值赋予不同的权重,融合为最终的预测评分。
步骤5的具体过程为:
步骤5.1、将加权元路径P按照具体的权值分解为多个原子元路径P
步骤5.2、用基于元路径的相似度计算方法PathSim,计算每个原子元路径上用户的相似度;给定一个对称的原子元路径P
其中p
步骤5.3、将该带权元路径的所有原子元路径的相似度求和,得到加权元路径P下的用户相似度如公式(2)所示,通过原子元路径上所有用户的相似度矩阵,将该带权元路径的所有原子元路径的相似度求和,得到加权元路径下的用户相似度矩阵:
在用户对景点的评分元路径上使用PathSim,计算用户相似度的过程时,若有3个用户对2个景点的评分矩阵,评分分值为1和5;用户对景点的评分元路径为U-A-U,属于加权元路径,首先将其分解为原子元路径
步骤5.4、使用PathSim方法计算非加权元路径下用户的相似度,如步骤5.2中公式(1)所示。
步骤6的过程具体为:
步骤6.1、基于步骤5中的元路径,求得用户相似度值,对每条元路径上的相似度值进行排序,根据K近邻的方法找出和当前用户u拥有相似偏好的K名用户集合K
式(3)中,P
步骤6.2、将步骤6.1得到不同元路径影响的用户对景点的预测评分后,采用线性回归方法为每一个基于单一元路径的预测评分值赋予不同的权重,融合为最终的预测评分。
获取用户旅游数据集包括用户、景点、以及景点附近相关要素,景点附近相关要素包括吃住行娱购,即景点附近餐饮、住宿、交通、娱乐、购物的数据。
本发明的有益效果是,本发明一种基于加权异构信息网络的景点推荐方法,针对用户旅游数据的稀疏性问题,在考虑到用户景点的交互信息的同时,还通过增加元路径数量考虑了景点的属性附加信息,从而丰富有效数据,缓解稀疏性问题,提高了推荐的准确性和多样性。
附图说明
图1是本发明一种基于加权异构信息网络的景点推荐方法的流程图;
图2是现有景点推荐方法的用户和景点之间交互的简单示例图;
图3是本发明中用户景点加权异构信息网络示意图;
图4是本发明中加权异构信息网络的加权网络模式图;
图5是本发明中基于加权元路径的PathSim相似度度量示例。
具体实施方式
下面结合附图和具体实施方式对本发明进行详细说明。
本发明一种基于加权异构信息网络的景点推荐方法,如图1所示,具体包括以下步骤:
步骤1、获取用户旅游数据集,经去重,剔除无效数据的处理操作后,得到最终的有效数据集。
获取用户旅游数据集包括用户、景点、以及景点附近相关要素,景点附近相关要素包括吃住行娱购,即包括景点附近餐饮、住宿、交通、娱乐、购物的数据;
步骤2、根据步骤1中用户旅游数据集的结构特征,将用户旅游数据集的关系构建为加权异构信息网络;
构建加权异构信息网络时,根据用户和景点的评分矩阵,景点的主题属性以及景点与各个要素之间的距离构建加权异构信息网络。
步骤2具体步骤为:定义用户景点加权异构网络模型G=
步骤3、根据步骤2得到的异构信息网络的节点类型以及节点类型之间的关系,将加权异构信息网络图抽象为加权异构网络模式,只保留节点之间的类型关系,对网络中节点和边的类型进行限制,使得异构信息网络半结构化,加权异构网络模式便于语义探索和模式挖掘。
步骤3具体步骤为:根据步骤2中的加权异构信息网络中的实体及关系,以实体类型为节点,连接关系类型为边,边上的权值为权重,构建其网络模式图,记为T
步骤4、基于步骤3中加权异构网络模式,获取多条从用户类型到用户类型的元路径集,引入加权元路径;
步骤4中利用广度优先的图搜索方法,获取多条从用户类型到用户类型的元路径,根据旅游领域知识分析,用户是否选择一个景点受“吃、住、行、游、娱、购”六要素的影响,设置用户到每个要素的元路径,用户到“游”要素的元路径的权值为用户对景点的评分,用户到“吃、住、行、娱、购”要素以及景点主题属性的元路径的权值设为1,从语义上,不同元路径代表的物理意义不同,所体现出的节点间关联程度也不同。
步骤4中引入元路径的具体过程为:在加权网络模式上定义加权元路径P,加权元路径对关系属性值有所约束的一种扩展元路径,表示为
步骤5、根据步骤4中加权和非加权元路径,计算每条元路径上用户之间的相似度;
在步骤5计算用户相似度时,对于加权元路径首先按照具体的权值分解为多个原子元路径,然后用基于元路径的相似度计算方法PathSim计算每条原子元路径的用户相似度,最后将带权元路径的所有原子元路径的用户相似度求和,得到加权元路径下的用户相似度;对于非加权元路径,直接使用PathSim方法计算非加权元路径下的用户相似度。
步骤5的具体过程为:
步骤5.1、将加权元路径P按照具体的权值分解为多个原子元路径P
步骤5.2、用基于元路径的相似度计算方法PathSim,计算每个原子元路径上用户的相似度;给定一个对称的原子元路径P
其中p
步骤5.3、将该带权元路径的所有原子元路径的相似度求和,得到加权元路径P下的用户相似度如公式(2)所示,通过原子元路径上所有用户的相似度矩阵,将该带权元路径的所有原子元路径的相似度求和,得到加权元路径下的用户相似度矩阵:
在用户对景点的评分元路径上使用PathSim,计算用户相似度的过程时,若有3个用户对2个景点的评分矩阵,评分分值为1和5;用户对景点的评分元路径为U-A-U,属于加权元路径,首先将其分解为原子元路径
步骤5.4、使用PathSim方法计算非加权元路径下用户的相似度,如步骤5.2中公式(1)所示。
步骤6、根据步骤5中求得元路径上用户相似度值,计算每条元路径上用户对景点的预测评分;经过融合得到最终目标用户对景点的预测评分;
通过基于步骤5中的元路径计算得到的不同元路径上的用户相似度值,应用于基于用户的协同过滤推荐算法中,得到不同元路径影响的用户对景点的预测评分值,然后采用线性回归方法为每条元路径的预测评分值赋予不同的权重,融合为最终的预测评分。
步骤6的过程具体为:
步骤6.1、基于步骤5中的元路径,求得用户相似度值,对每条元路径上的相似度值进行排序,根据K近邻的方法找出和当前用户u拥有相似偏好的K名用户集合K
式(3)中,P
步骤6.2、将步骤6.1得到不同元路径影响的用户对景点的预测评分后,采用线性回归方法为每一个基于单一元路径的预测评分值赋予不同的权重,融合为最终的预测评分。
步骤7、将步骤6中的预测评分以降序方式排列,生成景点推荐列表;选取TOP-N的景点集作为结果推荐给用户。
实施例
现有方法如果只利用图2中的(a)在用户景点评分交互矩阵,使用协同过滤方法可以推断出,用户u
本实施例一种基于加权异构信息网络的景点推荐方法,具体实现过程如下:
步骤1、通过爬虫技术获取西安市旅游数据集,经去重,对数据进行无效剔除处理操作后,得到最终的有效数据集,数据集中用户对景点的评分数据共10544条;用户有11203个,景点有1849个;景点附近相关要素:餐饮有6种类型包括大排档、快餐服务点、特色餐厅、宴会餐厅、主题餐厅、农家乐和户外烧烤;住宿有7种类型包括星级酒店、民宿客栈、公寓、别墅农家院、青年旅舍、招待所;交通有8种类型包括飞机、火车、高铁、轮船、地铁、公交、出租、自驾;娱乐有4种类型包括消闲类、文化类、体育类、娱乐类;购物有5种类型包括免税店、景区购物中心、景区购物市集、团队安排购物场所、景区边小店;景点主题属性有6种类型包括自然景观类、人文景观类、乡村田园类、现代娱乐类、博物馆类、综合吸引类。
步骤1中数据集中定义实体类型、表示及数目,实体类型包括用户、景点、餐饮、住宿、交通、娱乐,购物,主题;表示是指每种实体类型的表示字符,字符U表示用户类型,字符A表示景点类型,字符R表示餐饮类型,字符H表示住宿类型,字符T表示交通类型,字符E表示娱乐类型,字符S表示购物类型,字符M表示主题类型,数据集元素示例具体如表1所示:
表1数据集元素示例
步骤2、构建加权异构信息网络时,首先把用户景点实体以及景点附近餐饮住宿交通娱乐购物方面的属性映射为如图3所示中相应的节点;
根据加权异构信息网络的定义,具体的构建过程如下:首先把用户景点实体以及景点在餐饮住宿交通游览娱乐购物主题方面的属性映射为图中相应的节点;用实体或属性的类型作为相应节点的类型。根据景点拥有的属性值,添加从景点指向属性的边,比如景点与主题,景点与住宿,景点与餐饮等,这些关系为单值关系,权重设定为1,可认为是非加权边。若用户对景点有评分信息,则添加从该用户指向景点的边,边的权重为用户对景点的评分,评分范围为1-5分。异构信息网络中的每一个节点都拥有与实际物理类型一致的节点类型。
步骤3、构建加权异构网络模式具体根据图3中的加权异构信息网络中的实体及关系,以实体类型为节点,连接关系类型为边,边上的权值为权重,构建其网络模式图,图3的网络模式中,用户和景点有评分和被评分关系,景点和餐饮住宿交通娱乐购物有拥有和被拥有关系,景点和主题有属于和包含关系。
步骤4、根据元路径的定义,本实施例从吃住行游娱购六要素方面出发,定义用户元路径集,如表2所示;
表2用户元路径集
步骤5、计算用户相似度,如图5所示,在用户对景点的评分元路径上使用PathSim计算用户相似度的过程,以3个用户对2个景点的评分矩阵为例,用户对景点的评分元路径为U-A-U,属于加权元路径,首先将其分解为原子元路径
步骤6、计算用户对景点的预测评分时,基于表2中的7条元路径,在步骤5中求得两用户在餐饮、住宿、交通等方面的7个相似度值,对每条元路径上的相似度值进行排序,根据K近邻的方法找出和当前用户u拥有相似偏好的K名用户集合K
步骤7、将最终的预测评分以降序方式排列,选取TOP-N的景点集作为结果推荐给用户。
- 一种基于加权异构信息网络的景点推荐方法
- 一种基于加权异构信息网络的电影推荐方法