CN114707066A - 基于社区感知和自适应随机游走的景点推荐方法及系统 - Google Patents
基于社区感知和自适应随机游走的景点推荐方法及系统 Download PDFInfo
- Publication number
- CN114707066A CN114707066A CN202210352673.8A CN202210352673A CN114707066A CN 114707066 A CN114707066 A CN 114707066A CN 202210352673 A CN202210352673 A CN 202210352673A CN 114707066 A CN114707066 A CN 114707066A
- Authority
- CN
- China
- Prior art keywords
- node
- user
- random walk
- community
- scenic spot
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000005295 random walk Methods 0.000 title claims abstract description 127
- 238000000034 method Methods 0.000 title claims abstract description 39
- 230000008447 perception Effects 0.000 title claims abstract description 13
- 239000013604 expression vector Substances 0.000 claims abstract description 30
- 238000005457 optimization Methods 0.000 claims abstract description 23
- 238000004422 calculation algorithm Methods 0.000 claims abstract description 19
- 239000013598 vector Substances 0.000 claims abstract description 18
- 238000012549 training Methods 0.000 claims abstract description 15
- 238000010276 construction Methods 0.000 claims abstract description 14
- 238000004364 calculation method Methods 0.000 claims abstract description 12
- 230000007246 mechanism Effects 0.000 claims abstract description 11
- 230000003044 adaptive effect Effects 0.000 claims abstract description 10
- 239000011159 matrix material Substances 0.000 claims description 21
- 230000007704 transition Effects 0.000 claims description 20
- 230000005012 migration Effects 0.000 claims description 17
- 238000013508 migration Methods 0.000 claims description 17
- 238000011156 evaluation Methods 0.000 claims description 8
- 230000008569 process Effects 0.000 claims description 8
- 230000006870 function Effects 0.000 claims description 6
- 238000005516 engineering process Methods 0.000 claims description 4
- 230000003993 interaction Effects 0.000 claims description 4
- 238000013459 approach Methods 0.000 claims description 3
- 238000013461 design Methods 0.000 claims description 3
- 230000009467 reduction Effects 0.000 claims description 3
- 238000005070 sampling Methods 0.000 claims description 3
- 230000006399 behavior Effects 0.000 abstract 1
- 238000011161 development Methods 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000007405 data analysis Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000003012 network analysis Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/953—Querying, e.g. by the use of web search engines
- G06F16/9535—Search customisation based on user profiles and personalisation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/35—Clustering; Classification
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/953—Querying, e.g. by the use of web search engines
- G06F16/9537—Spatial or temporal dependent retrieval, e.g. spatiotemporal queries
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/955—Retrieval from the web using information identifiers, e.g. uniform resource locators [URL]
- G06F16/9562—Bookmark management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q50/00—Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
- G06Q50/10—Services
- G06Q50/14—Travel agencies
Landscapes
- Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Business, Economics & Management (AREA)
- Tourism & Hospitality (AREA)
- Human Resources & Organizations (AREA)
- General Business, Economics & Management (AREA)
- Strategic Management (AREA)
- Primary Health Care (AREA)
- Marketing (AREA)
- General Health & Medical Sciences (AREA)
- Economics (AREA)
- Health & Medical Sciences (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本发明涉及一种基于社区感知和自适应随机游走的景点推荐方法及系统。所述系统包括用户旅游景点推荐网络构建模块、随机游走参数自适应计算模块、随机游走模块、节点表示向量优化模块、聚类和景点推荐模块;先根据用户行为和特征构建用户旅游景点推荐网络,再使用基于度中心性的随机游走自适应策略确定随机游走参数,接着在用户旅游景点推荐网络中进行对高度节点和低度节点分别进行基于社区隶属度的随机游走和基于重启机制的启发式随机游走,利用Skip‑Gram模型训练用户节点表示向量,结合聚类算法得到相关用户形成的社区,从而用于个性化推荐以提高景点推荐的合理性和准确性。
Description
技术领域
本发明涉及大数据分析领域,具体涉及一种基于社区感知和自适应随机游走的景点推荐方法及系统。
背景技术
随着时代的发展和科技的进步,人们的很多日常生活逐渐从线下转移到了线上,在线旅游景点推荐就是一个很典型的例子。在线旅游景点推荐通过互联网根据用户的旅游经历和评价连接各个用户,向用户推荐其最可能喜欢的景点。然而,随着网络规模的扩大和旅游行业的迅速发展,也使得旅游景点推荐网络变得更为复杂,如何对用户进行精准的景点推荐,使得各个用户能够更大概率选择到自己喜欢的景点,这对于用户旅游景点推荐来说是非常有意义的。然而传统的景点推荐方法,没有对用户之间的高阶关系更加精准的建模,导致传统的景点推荐存在较大的误差,影响用户体验。因此,本发明在对用户之间的高阶关系进行精准建模,提高了景点推荐的准确性,进而提高用户体验,具有一定的价值。
发明内容
本发明的目的在于提供一种基于社区感知和自适应随机游走的景点推荐方法及系统,对用户旅游景点推荐网络进行了更加精细化的建模,在随机游走过程中根据具有不同度数节点的特性,进行针对性的随机游走设计,有效地提高了景点推荐的准确性。
为实现上述目的,本发明的技术方案是:一种基于社区感知和自适应随机游走的景点推荐方法,包括如下步骤:
步骤S1、根据用户特征和用户旅游记录及对旅游景点的评价来构建用户旅游景点推荐网络;
步骤S2、基于用户旅游景点推荐网络,通过一种基于节点度中心性的随机游走参数自适应计算策略来确定后续随机游走参数值;
步骤S3、基于用户旅游景点推荐网络,利用多标签传播方法生成节点社区隶属度信息,并将其转换为随机游走的转移概率矩阵;对于用户旅游景点推荐网络中的高度节点,根据随机游走的转移概率矩阵执行一种基于社区信息指导的随机游走策略;
步骤S4、对于用户旅游景点推荐网络中的低度节点,执行一种基于重启机制的启发式随机游走策略;
步骤S5、基于随机游走得到的节点序列,训练Skip-Gram模型得到网络中各个用户节点表示向量;
步骤S6、基于Skip-Gram模型训练得到的用户节点表示向量,先使用C-means算法对用户节点表示向量进行聚类,得到内部相互联系紧密的用户集合,针对要进行景点推荐的用户,从其所在社区中选择若干个在表示向量空间中距离最近的用户,根据其对旅游景点的评价选择其旅游过的最喜爱的若干个景点作为其推荐景点。
在本发明一实施例中,所述步骤S2具体为:
步骤S21、对于步骤S1得到的用户旅游景点推荐网络,计算出每个用户节点的中心性,并且将每个节点按中心性降序排列,生成一个有序的节点中心性序列Sc;
步骤S22、从节点中心性的降序序列Sc中选择前α比例的节点作为基于节点度中心性的随机游走的起始节点,构筑起始节点集合Sstart;
步骤S23、以Sstart中的每个节点作为社区中心分别设计两种不同类型的固定游走策略去构筑不同的节点路径集合,估计以相应节点为社区中心的最大社区半径和最小社区半径,分别将通过第一种类型和第二种类型的游走策略得到的节点路径序列集合标识为Sp1和Sp2;
步骤S24、通过步骤S23两种不同类型的固定游走策略生成两种类型游走对应的路径集合之后,计算根据第一种类型的游走策略游走路径长度的均值r1以及根据第二种类型的游走策略游走路径长度的均值r2,进而近似计算网络中平均最大社区半径rmax和平均最小社区半径rmin如下:
rmax=max(r1,r2)
rmin=min(r1,r2)
其中,len(p)为随机游走路径p的长度,n为网络中节点总数。
步骤S25、基于步骤S24得到的网络中平均最大社区半径以及平均最小社区半径,结合随机游走长度walk_length、窗口长度window_size以及每个节点随机游走次数number_walks各自的含义,自适应计算如下:
number_walks(u)=min(d(u),nummax)
其中,d(u)为节点u的度,nummax为事先人为设定的游走次数上限。
在本发明一实施例中,所述步骤S23具体为:两种不同类型的固定游走策略在节点跳转的时候有着不同的节点选择依据,设游走的当前的节点为u,第一种类型的游走策略每次在比节点u中心性小的邻居节点里选择与节点u中心性差值的绝对值最小的邻居节点作为下一跳节点,即每次都沿着中心性梯度减小最小的方向前进;与之相反,第二种类型的游走策略每次在比节点u中心性小的邻居节点里选择与节点u中心性差值的绝对值最大的邻居节点作为下一跳节点,即每次都沿着中心性梯度减小最大的方向前进;两种类型的游走都根据其策略选择固定的下一跳节点,直到中心性梯度不能再减小就停止,即节点邻居的中心性都大于等于当前节点。
在本发明一实施例中,所述步骤S3使用图多标签传播算法BMLPA计算节点u隶属于社区ck的条件概率p(u|ck),基于该条件概率,计算节点u到其邻居v的转移概率如下:
其中,C是由多标签传播算法BMLPA得到的节点u和v公共社区标签;对于用户旅游景点推荐网络中的高度节点,根据转移概率矩阵依概率选择下一跳节点进行随机游走。
在本发明一实施例中,所述步骤S4基于重启机制的启发式随机游走策略具体为:
步骤S41、选择一个低度节点u作为源节点来开始一个随机游走过程;
步骤S42、当从低度节点u向前随机游走了t步之后,随机游走以目前生成的节点序列中低度节点u的下一跳节点v作为源节点重新启动;
步骤S43、重复步骤S42直到所有得到序列的总长度和到达确定的随机游走长度walk_length;
步骤S44、连接所有短序列得到最终完整的从低度节点u开始的随机游走路径。
在本发明一实施例中,所述步骤S5具体实现如下:
Skip-Gram模型假设网络中所有节点是互相独立的,以节点之间连乘的概率来逼近节点共现的联合概率,以最大化该概率为优化目标,如下公式所示:
其中w为窗口的大小,f(vi)∈Rd为节点vi的d维中心向量表示,{vi-w,...,vi+w}\vi为随机游走的序列中以节点vi为中心的窗口内不包括节点vi的其他节点;考虑到概率计算的复杂性,引入负采样技术加快Skip-Gram模型训练过程并且利用随机梯度下降SGD来优化模型。
在本发明一实施例中,所述步骤S6具体实现如下:
使用C-means算法对用户节点的表示向量进行聚类,通过迭代优化的方法最小化代价函数得到联系紧密的用户集群,优化函数如下:
其中ui、uj为用户集群C中的中心表示向量;对于C-Means聚类算法,通过指定社区数k获取节点之于k个社区的隶属度矩阵U,其第i行第j列元素值uij表示节点vi对社区cj的隶属概率;接着,通过指定一个社区阈值δ来为每个节点生成隶属的社区集合,即如果节点vi之于社区cj的隶属度uij≥δ,那么将节点vi分配到社区cj中;如果节点vi对于所有社区的隶属度都小于δ,那么这个节点将作为一个孤立节点,被包含在一个孤立社区中,这个社区中的成员仅包含节点vi;
通过迭代优化得到各个用户社群集合后,针对要进行景点推荐的用户,从其所在社区集群中选择若干个距离最近的用户,以这些用户最喜欢的旅游景点作为推荐景点。
本发明还提供了一种基于社区感知和自适应随机游走的景点推荐方系统,包括用户旅游景点推荐网络构建模块、随机游走参数自适应计算模块、随机游走模块、节点表示向量优化模块、聚类和景点推荐模块,
所述用户旅游景点推荐网络构建模块从需要进行景点推荐的用户出发,根据其与其他用户的互动记录和个人特征构建用户旅游景点推荐网络;
所述随机游走参数自适应计算模块,在用户旅游景点推荐网络构建模块所构建的用户旅游景点推荐网络基础上,进行基于节点度中心性的随机游走参数自适应计算策略来确定合适的后续随机游走参数值;
所述随机游走模块,基于用户旅游景点推荐网络构建模块得到的用户旅游景点推荐网络,利用多标签传播方法生成节点社区隶属度信息,并将其转换为随机游走的转移概率矩阵;对于用户旅游景点推荐网络中的高度节点,根据转移概率矩阵执行一种基于社区信息指导的随机游走策略;对于用户旅游景点推荐网络中的低度节点,执行一种基于重启机制的启发式随机游走策略;
所述节点表示向量优化模块,基于随机游走得到的节点序列,作为Skip-Gram模型的输入,训练得到网络中各个用户节点的表示向量;
所述聚类和景点推荐模块,在节点表示向量优化模块得到的节点表示向量的基础上,先使用如C-means算法对用户节点向量进行聚类,得到联系紧密的多个用户群体,并针对要进行景点推荐的用户,从其所在的用户群体中选择若干个向量距离最近的用户,选择其最喜欢的若干个旅游景点作为其推荐景点。
在本发明一实施例中,所述随机游走模块,具体的:根据高度和低度节点的各自特征,分别设计针对性的社区感知随机游走策略;基于社区隶属度的随机游走策略能够精确捕获高度节点的社区中心特征;基于启发式策略的随机游走有助于清晰地捕获低度节点的社区边界特征。
在本发明一实施例中,所述聚类和景点推荐模块,具体的:根据用户特征和历史旅游记录以及旅游评分情况将类似的用户聚类在一起,对于需要推荐旅游景点的用户,首先找到其所在的类簇,其次寻找向量距离最接近的用户,从其旅游过的景点评分集合中找出评分最高的若干个景点,作为推荐景点。
相较于现有技术,本发明具有以下有益效果:
1、本发明在对用户之间的高阶关系进行精准建模,提高了景点推荐的准确性;
2、本发明随机游走参数确定的难点,以各个随机游走参数的含义设置自适应策略,提高了本发明使用的便利性。
附图说明
图1为本发明方法流程图。
具体实施方式
下面结合附图,对本发明的技术方案进行具体说明。
本发明一种基于社区感知和自适应随机游走的景点推荐方法,包括如下步骤:
步骤S1、根据用户特征和用户旅游记录及对旅游景点的评价来构建用户旅游景点推荐网络;
步骤S2、基于用户旅游景点推荐网络,通过一种基于节点度中心性的随机游走参数自适应计算策略来确定后续随机游走参数值;
步骤S3、基于用户旅游景点推荐网络,利用多标签传播方法生成节点社区隶属度信息,并将其转换为随机游走的转移概率矩阵;对于用户旅游景点推荐网络中的高度节点,根据随机游走的转移概率矩阵执行一种基于社区信息指导的随机游走策略;
步骤S4、对于用户旅游景点推荐网络中的低度节点,执行一种基于重启机制的启发式随机游走策略;
步骤S5、基于随机游走得到的节点序列,训练Skip-Gram模型得到网络中各个用户节点表示向量;
步骤S6、基于Skip-Gram模型训练得到的用户节点表示向量,先使用C-means算法对用户节点表示向量进行聚类,得到内部相互联系紧密的用户集合,针对要进行景点推荐的用户,从其所在社区中选择若干个在表示向量空间中距离最近的用户,根据其对旅游景点的评价选择其旅游过的最喜爱的若干个景点作为其推荐景点。
本发明还提供了一种基于社区感知和自适应随机游走的景点推荐方系统,包括用户旅游景点推荐网络构建模块、随机游走参数自适应计算模块、随机游走模块、节点表示向量优化模块、聚类和景点推荐模块,
所述用户旅游景点推荐网络构建模块从需要进行景点推荐的用户出发,根据其与其他用户的互动记录和个人特征构建用户旅游景点推荐网络;
所述随机游走参数自适应计算模块,在用户旅游景点推荐网络构建模块所构建的用户旅游景点推荐网络基础上,进行基于节点度中心性的随机游走参数自适应计算策略来确定合适的后续随机游走参数值;
所述随机游走模块,基于用户旅游景点推荐网络构建模块得到的用户旅游景点推荐网络,利用多标签传播方法生成节点社区隶属度信息,并将其转换为随机游走的转移概率矩阵;对于用户旅游景点推荐网络中的高度节点,根据转移概率矩阵执行一种基于社区信息指导的随机游走策略;对于用户旅游景点推荐网络中的低度节点,执行一种基于重启机制的启发式随机游走策略;
所述节点表示向量优化模块,基于随机游走得到的节点序列,作为Skip-Gram模型的输入,训练得到网络中各个用户节点的表示向量;
所述聚类和景点推荐模块,在节点表示向量优化模块得到的节点表示向量的基础上,先使用如C-means算法对用户节点向量进行聚类,得到联系紧密的多个用户群体,并针对要进行景点推荐的用户,从其所在的用户群体中选择若干个向量距离最近的用户,选择其最喜欢的若干个旅游景点作为其推荐景点。
以下为本发明具体实现过程。
请参照图1,本发明提供一种基于社区感知和自适应随机游走的景点推荐方法,提供一系统,该系统包括:用户旅游景点推荐网络构建模块、随机游走参数自适应计算模块、随机游走模块、节点表示向量优化模块、聚类和景点推荐模块;
步骤S1、根据用户特征和用户历史交互记录及对景点的评价等信息来搭建整个用户旅游景点推荐网络,以用于后续的网络分析任务;
步骤S2、在进行随机游走采集节点序列之前,执行一种基于节点度中心性的随机游走参数自适应计算策略来确定合适的后续随机游走参数值;
步骤S3、利用多标签传播方法生成节点社区隶属度信息,并将其转换为随机游走的转移概率矩阵;对于用户旅游景点推荐网络中的高度节点,根据转移概率矩阵执行依概率的随机游走,该随机游走结合了网络结构本身反映的节点社区信息;该基于社区信息的游走更偏向于高度节点局部结构的游走,从而能够有助于社区中心的捕获;
步骤S4、对于用户旅游景点推荐网络中的低度节点,执行一种基于重启机制的启发式随机游走,该重启机制更偏向于低度节点局部结构的游走,从而能够有助于社区边界的捕获;
步骤S5、降随机游走得到的节点序列作为Skip-Gram模型的训练语料库,最终得到网络中各个用户节点的表示向量;
步骤S6、基于Skip-Gram模型训练得到的节点表示向量,先使用C-means算法对用户节点的表示向量进行聚类,得到内部相互联系紧密的用户集合,针对要进行景点推荐的用户,从其所在社区中选择若干个在表示向量空间中距离最近的用户,并且根据其对景点的评价选择其最喜欢的若干个景点作为其推荐景点。
优选的,在本实施例中,步骤S2具体包括如下步骤:
步骤S21、对于步骤S1得到的用户旅游景点推荐网络,计算出每个用户节点的中心性,并且将每个节点按中心性降序排列,生成一个有序的节点中心性序列Sc;
步骤S22、从节点中心性的降序序列Sc中选择前α比例的节点作为基于中心性的游走的起始节点,构筑起始节点集合Sstart;
步骤S23、以Sstart中的每个节点作为社区中心分别设计两种不同类型的固定游走策略去构筑不同的节点路径集合,估计以该节点为社区中心的最大社区半径和最小社区半径,分别将通过第一种类型和第二种类型的游走策略得到的节点路径序列集合标识为Sp1和Sp2;
步骤S24、通过步骤S23游走策略生成两种类型游走对应的路径集合之后,计算根据第一种类型的游走策略游走路径长度的均值r1以及根据第二种类型的游走策略的游走路径长度的均值r2,进而可以近似计算网络中平均最大社区半径rmax和平均最小社区半径rmin如下:
rmax=max(r1,r2)
rmin=min(r1,r2)
其中,len(p)为随机游走路径p的长度,n为网络中节点总数。
步骤S25、基于步骤S24得到的网络中平均最大社区半径以及平均最小社区半径,结合随机游走长度walk_length、窗口长度window_size以及每个节点随机游走次数number_walks各自的含义,自适应计算如下:
number_walks(u)=min(d(u),nummax)
其中,d(u)为节点u的度,nummax为事先人为设定的游走次数上限。
优选的,在本实施例中,步骤S3具体包括如下步骤:
使用传统图多标签传播算法BMLPA计算节点u隶属于社区ck的条件概率p(u|ck),基于该条件概率,计算节点u到其邻居v的转移概率如下:
其中,C是由多标签传播算法BMLPA得到的节点u和v公共社区标签。对于用户旅游景点推荐网络中的高度节点,根据转移概率矩阵依概率选择下一跳节点进行随机游走;
优选的,在本实施例中,步骤S4具体包括如下步骤:
步骤S41、选择一个低度节点u作为源节点来开始一个随机游走过程;
步骤S42、当从低度节点u向前随机游走了t步之后,随机游走以目前生成的节点序列中低度节点u的下一跳节点v作为源节点重新启动;
步骤S43、重复步骤S42直到所有得到序列的总长度和到达先前步骤S35自动确定的随机游走长度walk_length。
步骤S44、连接以上所有短序列得到最终完整的从低度节点u开始的随机游走路径。
优选的,在本实施例中,步骤S5具体包括如下步骤:
Skip-Gram模型假设网络中所有节点是互相独立的,以节点之间连乘的概率来逼近节点共现的联合概率,以最大化该概率为优化目标,如下公式所示
其中w为窗口的大小,f(vi)∈Rd为节点vi的d维中心向量表示,{vi-w,...,vi+w}\vi为随机游走的序列中以节点vi为中心的窗口内不包括节点vi的其他节点。考虑到概率计算的复杂性,引入负采样技术加快Skip-Gram模型训练过程并且利用随机梯度下降SGD来优化模型。
优选的,在本实施例中,步骤S6具体包括如下步骤:
使用C-means算法对用户节点的表示向量进行聚类,通过迭代优化的方法最小化代价函数得到联系紧密的用户集群,优化函数如下:
其中ui、uj为用户集群C中的中心表示向量。对于C-Means聚类算法,通过指定社区数k获取节点之于k个社区的隶属度矩阵U,其第i行第j列元素值uij表示节点vi对社区cj的隶属概率。接着,我们通过人工指定一个社区阈值δ来为每个节点生成隶属的社区集合,即如果节点vi之于社区cj的隶属度uij≥δ,那么将节点vi分配到社区cj中。如果节点vi对于所有社区的隶属度都小于δ,那么这个节点将作为一个孤立节点,被包含在一个孤立社区中,这个社区中的成员仅包含节点vi。
通过迭代优化得到各个用户社群集合后,针对要进行景点推荐的用户,从其所在社区集群中选择若干个距离最近的用户,并且根据这些用户的最喜欢的旅游景点进行推荐。
以上是本发明的较佳实施例,凡依本发明技术方案所作的改变,所产生的功能作用未超出本发明技术方案的范围时,均属于本发明的保护范围。
Claims (10)
1.一种基于社区感知和自适应随机游走的景点推荐方法,其特征在于,包括如下步骤:
步骤S1、根据用户特征和用户旅游记录及对旅游景点的评价来构建用户旅游景点推荐网络;
步骤S2、基于用户旅游景点推荐网络,通过一种基于节点度中心性的随机游走参数自适应计算策略来确定后续随机游走参数值;
步骤S3、基于用户旅游景点推荐网络,利用多标签传播方法生成节点社区隶属度信息,并将其转换为随机游走的转移概率矩阵;对于用户旅游景点推荐网络中的高度节点,根据随机游走的转移概率矩阵执行一种基于社区信息指导的随机游走策略;
步骤S4、对于用户旅游景点推荐网络中的低度节点,执行一种基于重启机制的启发式随机游走策略;
步骤S5、基于随机游走得到的节点序列,训练Skip-Gram模型得到网络中各个用户节点表示向量;
步骤S6、基于Skip-Gram模型训练得到的用户节点表示向量,先使用C-means算法对用户节点表示向量进行聚类,得到内部相互联系紧密的用户集合,针对要进行景点推荐的用户,从其所在社区中选择若干个在表示向量空间中距离最近的用户,根据其对旅游景点的评价选择其旅游过的最喜爱的若干个景点作为其推荐景点。
2.根据权利要求1所述的基于社区感知和自适应随机游走的景点推荐方法,其特征在于,所述步骤S2具体为:
步骤S21、对于步骤S1得到的用户旅游景点推荐网络,计算出每个用户节点的中心性,并且将每个节点按中心性降序排列,生成一个有序的节点中心性序列Sc;
步骤S22、从节点中心性的降序序列Sc中选择前α比例的节点作为基于节点度中心性的随机游走的起始节点,构筑起始节点集合Sstart;
步骤S23、以Sstart中的每个节点作为社区中心分别设计两种不同类型的固定游走策略去构筑不同的节点路径集合,估计以相应节点为社区中心的最大社区半径和最小社区半径,分别将通过第一种类型和第二种类型的游走策略得到的节点路径序列集合标识为Sp1和Sp2;
步骤S24、通过步骤S23两种不同类型的固定游走策略生成两种类型游走对应的路径集合之后,计算根据第一种类型的游走策略游走路径长度的均值r1以及根据第二种类型的游走策略的游走路径长度的均值r2,进而近似计算网络中平均最大社区半径rmax和平均最小社区半径rmin如下:
rmax=max(r1,r2)
rmin=min(r1,r2)
其中,len(p)为随机游走路径p的长度,n为网络中节点总数;
步骤S25、基于步骤S24得到的网络中平均最大社区半径以及平均最小社区半径,结合随机游走长度walk_length、窗口长度window_size以及每个节点随机游走次数number_walks各自的含义,自适应计算如下:
number_walks(u)=min(d(u),nummax)
其中,d(u)为节点u的出度,nummax为事先人为设定的游走次数上限。
3.根据权利要求2所述的基于社区感知和自适应随机游走的景点推荐方法,其特征在于,所述步骤S23具体为:两种不同类型的固定游走策略在节点跳转的时候有着不同的节点选择依据,设游走的当前的节点为u,第一种类型的游走策略每次在比节点u中心性小的邻居节点里选择与节点u中心性差值的绝对值最小的邻居节点作为下一跳节点,即每次都沿着中心性梯度减小最小的方向前进;与之相反,第二种类型的游走策略每次在比节点u中心性小的邻居节点里选择与节点u中心性差值的绝对值最大的邻居节点作为下一跳节点,即每次都沿着中心性梯度减小最大的方向前进;两种类型的游走都根据其策略选择固定的下一跳节点,直到中心性梯度不能再减小就停止,即节点邻居的中心性都大于等于当前节点。
5.根据权利要求1所述的基于社区感知和自适应随机游走的景点推荐方法,其特征在于,所述步骤S4基于重启机制的启发式随机游走策略具体为:
步骤S41、选择一个低度节点u作为源节点来开始一个随机游走过程;
步骤S42、当从低度节点u向前随机游走了t步之后,随机游走以目前生成的节点序列中低度节点u的下一跳节点v作为源节点重新启动;
步骤S43、重复步骤S42直到所有得到序列的总长度和到达确定的随机游走长度walk_length;
步骤S44、连接所有短序列得到最终完整的从低度节点u开始的随机游走路径。
7.根据权利要求1所述的基于社区感知和自适应随机游走的景点推荐方法,其特征在于,所述步骤S6具体实现如下:
使用C-means算法对用户节点的表示向量进行聚类,通过迭代优化的方法最小化代价函数得到联系紧密的用户集群,优化函数如下:
其中ui、uj为用户集群C中的中心表示向量;对于C-Means聚类算法,通过指定社区数k获取节点之于k个社区的隶属度矩阵U,其第i行第j列元素值uij表示节点vi对社区cj的隶属概率;接着,通过指定一个社区阈值δ来为每个节点生成隶属的社区集合,即如果节点vi之于社区cj的隶属度uij≥δ,那么将节点vi分配到社区cj中;如果节点vi对于所有社区的隶属度都小于δ,那么这个节点将作为一个孤立节点,被包含在一个孤立社区中,这个社区中的成员仅包含节点vi;
通过迭代优化得到各个用户社群集合后,针对要进行景点推荐的用户,从其所在社区集群中选择若干个距离最近的用户,以这些用户最喜欢的旅游景点作为推荐景点。
8.一种基于社区感知和自适应随机游走的景点推荐方系统,其特征在于,包括用户旅游景点推荐网络构建模块、随机游走参数自适应计算模块、随机游走模块、节点表示向量优化模块、聚类和景点推荐模块,
所述用户旅游景点推荐网络构建模块从需要进行景点推荐的用户出发,根据其与其他用户的互动记录和个人特征构建用户旅游景点推荐网络;
所述随机游走参数自适应计算模块,在用户旅游景点推荐网络构建模块所构建的用户旅游景点推荐网络基础上,进行基于节点度中心性的随机游走参数自适应计算策略来确定合适的后续随机游走参数值;
所述随机游走模块,基于用户旅游景点推荐网络构建模块得到的用户旅游景点推荐网络,利用多标签传播方法生成节点社区隶属度信息,并将其转换为随机游走的转移概率矩阵;对于用户旅游景点推荐网络中的高度节点,根据转移概率矩阵执行一种基于社区信息指导的随机游走策略;对于用户旅游景点推荐网络中的低度节点,执行一种基于重启机制的启发式随机游走策略;
所述节点表示向量优化模块,基于随机游走得到的节点序列,作为Skip-Gram模型的输入,训练得到网络中各个用户节点的表示向量;
所述聚类和景点推荐模块,在节点表示向量优化模块得到的节点表示向量的基础上,先使用如C-means算法对用户节点向量进行聚类,得到联系紧密的多个用户群体,并针对要进行景点推荐的用户,从其所在的用户群体中选择若干个向量距离最近的用户,选择其最喜欢的若干个旅游景点作为其推荐景点。
9.根据权利要求8所述的一种基于社区感知和自适应随机游走的景点推荐方系统,其特征在于,所述随机游走模块,具体的:根据高度和低度节点的各自特征,分别设计针对性的社区感知随机游走策略;基于社区隶属度的随机游走策略能够精确捕获高度节点的社区中心特征;基于启发式策略的随机游走有助于清晰地捕获低度节点的社区边界特征。
10.根据权利要求8所述的一种基于社区感知和自适应随机游走的景点推荐方系统,其特征在于,所述聚类和景点推荐模块,具体的:根据用户特征和历史旅游记录以及旅游评分情况将类似的用户聚类在一起,对于需要推荐旅游景点的用户,首先找到其所在的类簇,其次寻找向量距离最接近的用户,从其旅游过的景点评分集合中找出评分最高的若干个景点,作为推荐景点。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210352673.8A CN114707066A (zh) | 2022-04-01 | 2022-04-01 | 基于社区感知和自适应随机游走的景点推荐方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210352673.8A CN114707066A (zh) | 2022-04-01 | 2022-04-01 | 基于社区感知和自适应随机游走的景点推荐方法及系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114707066A true CN114707066A (zh) | 2022-07-05 |
Family
ID=82173422
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210352673.8A Pending CN114707066A (zh) | 2022-04-01 | 2022-04-01 | 基于社区感知和自适应随机游走的景点推荐方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114707066A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116090525A (zh) * | 2022-11-15 | 2023-05-09 | 广东工业大学 | 基于层次随机游走采样策略的嵌入向量表示方法及系统 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20120226651A1 (en) * | 2011-03-03 | 2012-09-06 | Xerox Corporation | System and method for recommending items in multi-relational environments |
CN107609063A (zh) * | 2017-08-29 | 2018-01-19 | 重庆邮电大学 | 一种多标签分类的手机应用推荐系统及其方法 |
CN108734223A (zh) * | 2018-05-27 | 2018-11-02 | 北京工业大学 | 基于社区划分的社交网络好友推荐方法 |
CN112632731A (zh) * | 2020-12-24 | 2021-04-09 | 河北科技师范学院 | 一种基于类型与节点约束随机游走的异构网络表示学习方法 |
CN113239264A (zh) * | 2021-04-07 | 2021-08-10 | 中国人民解放军战略支援部队信息工程大学 | 基于元路径网络表示学习的个性化推荐方法及系统 |
CN114169975A (zh) * | 2021-12-17 | 2022-03-11 | 福州大学 | 基于随机游走异构注意力的购物网络商品推荐方法及系统 |
-
2022
- 2022-04-01 CN CN202210352673.8A patent/CN114707066A/zh active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20120226651A1 (en) * | 2011-03-03 | 2012-09-06 | Xerox Corporation | System and method for recommending items in multi-relational environments |
CN107609063A (zh) * | 2017-08-29 | 2018-01-19 | 重庆邮电大学 | 一种多标签分类的手机应用推荐系统及其方法 |
CN108734223A (zh) * | 2018-05-27 | 2018-11-02 | 北京工业大学 | 基于社区划分的社交网络好友推荐方法 |
CN112632731A (zh) * | 2020-12-24 | 2021-04-09 | 河北科技师范学院 | 一种基于类型与节点约束随机游走的异构网络表示学习方法 |
CN113239264A (zh) * | 2021-04-07 | 2021-08-10 | 中国人民解放军战略支援部队信息工程大学 | 基于元路径网络表示学习的个性化推荐方法及系统 |
CN114169975A (zh) * | 2021-12-17 | 2022-03-11 | 福州大学 | 基于随机游走异构注意力的购物网络商品推荐方法及系统 |
Non-Patent Citations (2)
Title |
---|
应翔: ""社区发现算法推荐系统的设计与实现"", 《中国优秀硕士学位论文全文数据库(信息科技辑)》, no. 02, 15 February 2019 (2019-02-15), pages 138 - 2517 * |
张萌;南志红;: "基于用户偏好的信任网络随机游走推荐模型", 计算机应用, no. 12, 10 December 2016 (2016-12-10), pages 131 - 136 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116090525A (zh) * | 2022-11-15 | 2023-05-09 | 广东工业大学 | 基于层次随机游走采样策略的嵌入向量表示方法及系统 |
CN116090525B (zh) * | 2022-11-15 | 2024-02-13 | 广东工业大学 | 基于层次随机游走采样策略的嵌入向量表示方法及系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110555112B (zh) | 一种基于用户正负偏好学习的兴趣点推荐方法 | |
Pham et al. | A general recommendation model for heterogeneous networks | |
CN112115377B (zh) | 一种基于社交关系的图神经网络链路预测推荐方法 | |
CN112232925A (zh) | 一种融合知识图谱对商品进行个性化推荐的方法 | |
CN111949865A (zh) | 基于图神经网络与用户长短期偏好的兴趣点推荐方法 | |
US11030265B2 (en) | Cross-platform data matching method and apparatus, computer device and storage medium | |
CN110032682B (zh) | 一种信息推荐列表生成方法、装置及设备 | |
CN112765477B (zh) | 信息处理、信息推荐的方法和装置、电子设备和存储介质 | |
CN109190030B (zh) | 融合node2vec和深度神经网络的隐式反馈推荐方法 | |
CN111581519B (zh) | 基于会话中用户意图的物品推荐方法和系统 | |
Kashef | Enhancing the role of large-scale recommendation systems in the IoT context | |
CN114265986B (zh) | 一种融合知识图谱结构与路径语义的信息推送方法和系统 | |
CN110264372A (zh) | 一种基于节点表示的主题社团发现方法 | |
CN115270007A (zh) | 一种基于混合图神经网络的poi推荐方法及系统 | |
Thiengburanathum et al. | A decision tree based recommendation system for tourists | |
CN114971784B (zh) | 一种融合自注意力机制基于图神经网络的会话推荐方法与系统 | |
CN114707066A (zh) | 基于社区感知和自适应随机游走的景点推荐方法及系统 | |
CN113742586B (zh) | 一种基于知识图谱嵌入的学习资源推荐方法及系统 | |
CN111008334B (zh) | 基于局部成对排序和全局决策融合的Top-K推荐方法和系统 | |
CN112231579A (zh) | 基于隐式社群发现的社会化视频推荐系统与方法 | |
CN116756600A (zh) | 一种基于随机游走的属性网络嵌入和社区发现方法 | |
CN116974249A (zh) | 柔性作业车间调度方法和柔性作业车间调度装置 | |
Sun et al. | Tcsa-net: a temporal-context-based self-attention network for next location prediction | |
CN113312523B (zh) | 字典生成、搜索关键字推荐方法、装置和服务器 | |
CN116189047A (zh) | 一种基于多模态信息聚合的短视频分类方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |