当前位置: 首页 > 专利查询>东北大学专利>正文

一种大规模时序图顶点相似度计算方法技术

技术编号:20992742 阅读:44 留言:0更新日期:2019-04-29 22:40
本发明专利技术涉及一种大规模时序图顶点相似度计算方法,其包括如下步骤:S1、将社交网络各个顶点的数据抽象为时序图;S2、通过随机游走方法和路径融合方法建立树形索引,使用Bootstrap抽样方法估计索引树中每层节点时间差的期望,使用Monte Coral方法计算目标顶点与其他顶点的相似度;S3、根据步骤S2计算出的目标顶点与其他顶点相似度,找出与目标定点最相似的k个顶点。本发明专利技术的技术方法,使顶点相似度计算的更加准确,用于推荐系统中能够更加精确的对用户进行推荐。

A Vertex Similarity Computation Method for Large Scale Time Series Graphs

The present invention relates to a method for calculating vertex similarity of large-scale time series graphs, which includes the following steps: S1, abstracting the data of each vertex of social network into time series graphs; S2, building tree index by random walk method and path fusion method, estimating the expectation of time difference of each node in index tree by Bootstrap sampling method, and calculating target vertex and time difference by Monte Coral method. The similarity of other vertices; S3, the similarity of target vertices and other vertices calculated according to The technical method of the present invention makes the vertex similarity calculation more accurate and can be used to recommend users more accurately in the recommendation system.

【技术实现步骤摘要】
一种大规模时序图顶点相似度计算方法
本专利技术涉及一种大规模时序图顶点相似度计算方法,属于数据库

技术介绍
现实生活中的许多场景可以抽象成图模型,从而进行数据的处理和分析。近年来随着数据科学的迅猛发展,人们对于数据分析结果的精确具有较高的要求,然而当前对于图模型的研究大多集中在静态图上。静态图模型忽略了真实场景中的时间因素,这使得在静态图中的数据分析结果不准确。顶点相似性计算是图论中的基本问题,广泛应用于社交网络、推荐系统等现实应用。以社交网络为例,可以使用图结构来表示社交网络的拓扑结构,图中顶点表示社交网络中的用户,图中的边可以表示社交网络中用户之间的联系,在社交网络中可以根据用户间的相似性进行朋友推荐等活动,因此计算图中顶点相似性是一个十分重要的问题。当前的研究大多使用静态图对现实场景进行建模,忽略了现实场景中的时间因素,对分析结果造成了很大影响。针对这种情况,应使用时序图对现实场景进行建模,保留时间因素对现实场景的影响。因此如何高效地处理时序图中顶点相似性计算是一个亟待解决的问题。
技术实现思路
(一)要解决的技术问题为了解决现有技术的上述问题,本专利技术提供一种大规模时序图顶点相似度计算方法。(二)技术方案为了达到上述目的,本专利技术采用的主要技术方案包括:一种大规模时序图顶点相似度计算方法,包括如下步骤:S1、将社交网络各个顶点的数据抽象为时序图;S2、通过随机游走方法和路径融合方法建立树形索引,使用Bootstrap抽样方法估计索引树中每层节点时间差的期望,使用MonteCoral方法计算目标顶点与其他顶点的相似度;S3、根据步骤S2计算出的目标顶点与其他顶点相似度,找出与目标定点最相似的k个顶点。如上所述的计算方法,优选地,在步骤S1中,所述时序图表示为GT=(V,E,T),其中V表示社交网络中的顶点集合,E表示的是网络中时序边的集合,T表示的各个顶点联系时刻的集合。如上所述的计算方法,优选地,在步骤S2中,所述树形索引的建立包括:S20101、对所述时序图GT=(V,E,T)中任意顶点u∈V,创建一颗以u为叶节点的单节点树,并记level(u)=0;S20102、对每个叶节点进行反向随机游走,即对叶节点u进行反向随机游走,得到时序路径pu=(u,v),其中v∈Γin(u,G);记level(v)=level(u)+1,且节点u到达节点v的时间记为tv(u);S20103、判断任意两个叶节点生成的时序路径是否符合路径融合条件,若符合则进行路径融合;否则继续进行反向随机游走;直到节点的入邻节点集为空,或者节点的入邻节点集合均不符合时序路径条件,此时停止生成索引;S20104、重复步骤S20101-S20103直到生成索引数量达到预期数量。如上所述的计算方法,优选地,在步骤S2中,使用Bootstrap抽样方法估计索引树中每层节点时间差的期望就是估计索引树中不同level中节点的时间差的期望进行估计;对索引树中level=i层节点时间差的期望记为ti。如上所述的计算方法,优选地,在步骤S2中,所述使用MonteCoral方法计算目标顶点与其他顶点的相似度包括:对于目标时序图GT=(V,E,T),建立了r个索引;对于给定目标顶点x,即需要计算顶点x与其他所有顶点的相似度。在每个索引的叶节点集合上找到节点x,之后记录与节点x在同一颗树上的其他叶节点,并记录该节点与目标节点到达最近的公共祖先节点的路径长度。进一步地,假设节点v与目标节点x具有公共祖先,并且到达公共祖先的路径长度为i,则说明顶点u和v在路径长度为i是首次相遇,记为first(px,pv)=i,根据公式(1)近似计算顶点相似度,其中,px=(x1,x2,…,xt),pv=(v1,v2,…,vt),1≤i≤k,(三)有益效果本专利技术的有益效果是:本专利技术提供的大规模时序图顶点相似度计算方法,与传统相识度相比,该方法考虑到时间因素对于顶点相似度计算的影响,使顶点相似度计算的更加准确。在现实生活中具有广泛的应用,例如在点对点通信网络中计算用户之间的相似度并进行相应的推荐,在社交网络中可以根据时间因素进行更加精准的数据挖掘,在连接预测的过程中可以依据时间因素进行更准确的预测。附图说明图1是本专利技术具体实施方式的时序图的结构示意图;图2是本专利技术中索引建立过程示意图;图3是本专利技术具体实施的方法流程图;图4是本专利技术具体实施结果的近似精确度曲线图;图5是本专利技术方法TaSimRank-R与现有技术方法TaSimRank-base相似度的查询时间图。具体实施方式为了更好的解释本专利技术,以便于理解,下面结合附图,通过具体实施方式,对本专利技术作详细描述。本专利技术所用符号及其意义见表1。表1符号和意义定义1时序图:给定时序图GT=(V,E,T),其中V表示图中顶点的集合,E表示图中边的集合,T表示图中时间的集合。对于图中任意一条边e∈E,可以表示为(u,v,t),其中u,v∈V,t∈T。定义2时序路径:对于时序图G=(V,E,T),有顶点序列p=(v1,v2,…,vk,vk+1)其中对于任意1≤i≤k满足条件(vi,vi+1,ti)∈E且ti<ti+1。则称p为时序图G中的一条路径。定义3顶点相遇:时序图G=(V,E,T)中,对于任意顶点u,v∈V,存在长度为t的路径pu=(u1,u2,…,ut)和pv=(v1,v2,…,vt)对于1≤i≤k,有ui=vi则说明顶点u和v在路径长度为i是首次相遇,记为first(pu,pv)=i。定义4顶点相似度:在时序图G=(V,E,T)中,对于顶点u,v,x∈V,可以计算顶点u,v的相似度s(u,v):其中tj为当前时刻顶点的时刻差,C为衰减系数。实施例1一种面向大规模时序图的顶点相似度计算方法,包括如下步骤:步骤1:采用时序图GT=(V,E,T)来表示将社交网络各个顶点的数据抽象为时序图,其中V表示社交网络中的顶点集合,E表示的是网络中时序边的集合,T表示的各个顶点联系时刻的集合。时序图的数据结构采用和邻接表一样的数据结构,只是在边的权重上需要保存节点间的所有相连时刻和节点间的传播概率。步骤2:计算时序图中目标顶点与其他顶点的相似度,具体方法如下:步骤2.1:通过随机游走方法建立树形索引;本方法结合随机游走方法和路径融合方法建立树形索引,之后结合Bootstrap和MonteCoral方法来近似计算目标顶点与其他顶点的相似度。该方法是近似方法,运行时间较快,但是有误差,误差的大小通常与建立索引的数量有关。简单介绍路径融合:对任意顶点u,v∈V,对顶点u,v进行反向随机游走得到长度为t的时序路径pu=(u0,u1,…,ut)和pv=(v0,v1,…,vt)。对于1≤i≤t如果有ui=vi,则在ui对着两条时序路径进行融合,融合后沿着同一条路径继续进行反向随机游走。建立索引的方法主要分为以下几个步骤:对时序图GT=(V,E,T)中任意顶点u∈V,创建一颗以u为叶节点的单节点树,并记level(u)=0。对每个叶节点进行反向随机游走,即对叶节点u进行反向随机游走,得到时序路径pu=(u,v),其中v∈Γin(u,G)。记level(v)=level(u)+1,且节点u到达节点v的时间记为tv(u)。判断任意两个叶节点生成的时序路径本文档来自技高网...

【技术保护点】
1.一种大规模时序图顶点相似度计算方法,其特征在于,其包括如下步骤:S1、将社交网络各个顶点的数据抽象为时序图;S2、通过随机游走方法和路径融合方法建立树形索引,使用Bootstrap抽样方法估计索引树中每层节点时间差的期望,使用Monte Coral方法计算目标顶点与其他顶点的相似度;S3、根据步骤S2计算出的目标顶点与其他顶点相似度,找出与目标定点最相似的k个顶点。

【技术特征摘要】
1.一种大规模时序图顶点相似度计算方法,其特征在于,其包括如下步骤:S1、将社交网络各个顶点的数据抽象为时序图;S2、通过随机游走方法和路径融合方法建立树形索引,使用Bootstrap抽样方法估计索引树中每层节点时间差的期望,使用MonteCoral方法计算目标顶点与其他顶点的相似度;S3、根据步骤S2计算出的目标顶点与其他顶点相似度,找出与目标定点最相似的k个顶点。2.如权利要求1所述的计算方法,其特征在于,在步骤S1中,所述时序图表示为GT=(V,E,T),其中V表示社交网络中的顶点集合,E表示的是网络中时序边的集合,T表示的各个顶点联系时刻的集合。3.如权利要求1所述的计算方法,其特征在于,在步骤S2中,所述树形索引的建立包括:S20101、对所述时序图GT=(V,E,T)中任意顶点u∈V,创建一颗以u为叶节点的单节点树,并记level(u)=0;S20102、对每个叶节点进行反向随机游走,即对叶节点u进行反向随机游走,得到时序路径pu=(u,v),其中v∈Γin(u,G);记level(v)=level(u)+1,且节点u到达节点v的时间记为tv(u);S20103、判断任意两个叶节点生成的时序路径是否符合路径融合条...

【专利技术属性】
技术研发人员:袁野王国仁苗壮王一舒马玉亮
申请(专利权)人:东北大学
类型:发明
国别省市:辽宁,21

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1