基于Node2Vec的重叠社区搜索方法及设备技术

技术编号:25042401 阅读:13 留言:0更新日期:2020-07-29 05:33
本发明专利技术提供一种基于Node2Vec的重叠社区搜索方法及设备,所述方法包括获取由多个节点组成的复杂网络;利用Node2vec模型计算出各个所述节点的影响力值;根据各个所述节点的影响力值从所述节点中确定若干种子节点;利用相似度阈值分别以各个所述种子节点为核心确定所述复杂网络中可重叠的社区结构。本方发明专利技术提供的技术方案能够解决现有算法存在的不稳定和不适合大规模数据集的问题。

【技术实现步骤摘要】
基于Node2Vec的重叠社区搜索方法及设备
本专利技术涉及网络信息挖掘领域,具体涉及一种基于Node2Vec的重叠社区搜索方法及设备。
技术介绍
现实世界中的很多系统都可以抽象为复杂网络,如社交网络、技术网络、生物网络,这些网络都具有一种普遍的特性——社区结构。在不同类型的网络中,社区有着不同的含义,但是所有社区内部节点间的联系总是比不同社区节点间的联系密切,准确地发现社区结构是在中观层面上理解网络结构进而研究复杂系统的有效途径。社区发现的研究历史可以追溯到1927年,Rice等人基于投票模式的相似性发现小的政治团体中的社区,早期的研究工作大部分都围绕非重叠社区发现展开,此类算法将复杂网络划分成若干个互不相连的社区结构且一个节点只能隶属于一个社区,然而,现实中网络社区之间往往是相互重叠的,硬划分的社区发现算法无法满足需求。近年来,学者们相继提出了大量能够识别重叠社区的算法。Palla等提出了一种基于最大团的派系过滤算法CPM来分析重叠的社区结构,并以此算法为原理开发了应用软件CFinder,该算法易受k值影响,且以最大团为种子计算复杂度较高。COPRA算法对基于标签传播的非重叠社区发现算法进行改进,在标签后面附上节点对该标签的归属系数,以便衡量该节点包含多个社区的信息比重,在迭代更新节点标签的过程中允许一个节点同时拥有多个标签,以发现网络中的重叠社区,该算法每次迭代的时间复杂度接近线性但稳定度较差。由此可见,现有的重叠社区划分方式存在不稳定和不适合大规模数据集的问题。专利技术内容有鉴于此,本专利技术实施例提供一种基于Node2Vec的重叠社区搜索方法,包括:获取由多个节点组成的复杂网络;利用Node2vec模型计算出各个所述节点的影响力值;根据各个所述节点的影响力值从所述节点中确定若干种子节点;利用相似度阈值分别以各个所述种子节点为核心确定所述复杂网络中可重叠的社区结构。可选地,利用Node2vec模型计算出各个所述节点的影响力值,包括:利用Node2vec模型计算各个所述节点的向量;根据各个所述节点的向量计算各个所述节点间的相似度;根据各个所述节点间的相似度及各个所述节点间的度计算出各个所述节点的影响力值。可选地,利用Node2vec模型计算各个所述节点的向量;根据p、q两个超参数的值确定对所述复杂网络中的节点的遍历方式;基于所述遍历方式遍历节点,采用skip-gram模型进行训练进而获得节点的向量表示。可选地,采用如下方式计算出各个所述节点的影响力值:其中u和v表示两个所述节点,D(u)和D(v)分别表示节点u和v的度,sim(u,v)表示u和v的相似度,N(u)表示u的邻居节点的集合。可选地,所述复杂网络表示为无向图G=(V,E),其中V表示图中n个节点的集合,E表示图中m条边的集合,N(u)={u:v∈V,(u,v)∈E}。可选地,利用相似度阈值分别以各个所述种子节点为核心确定所述复杂网络中可重叠的社区结构,包括:以每个所述种子节点为核心构建社区,在此过程中分别判断各个节点与种子节点的相似度是否大于所述相似度阈值;若节点与种子节点的相似度大于所述相似度阈值,则将节点划入所述种子节点所属的社区结构。可选地,对于尚未被划分的节点,比较其与各个种子节点的相似度,从而选取与之最相似的种子节点,加入其所在社区结构。可选地,所述相似度阈值范围为0.3-0.7。相应地,本专利技术提供一种基于Node2Vec的重叠社区搜索设备,包括:至少一个处理器;以及与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器执行上述基于Node2Vec的重叠社区搜索方法。根据本专利技术提供的基于Node2Vec的重叠社区搜索方法及设备,首先获得网络中各节点对其邻居节点的影响力,并根据影响力的大小选择出种子节点,然后以每个种子节点为核心进行社区扩张,由此可以更准确地发现复杂网络中的社区,挖掘出大规模数据集中高质量的重叠社区结构,以对研究复杂网络对应的系统提供更可靠的数据支撑。附图说明为了更清楚地说明本专利技术具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本专利技术的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1为本专利技术实施例中基于Node2Vec的重叠社区搜索方法的流程图;图2为本专利技术实施例中的随机游走过程示意图;图3为本专利技术实施例中的实验数据图。具体实施方式下面将结合附图对本专利技术的技术方案进行清楚、完整地描述,显然,所描述的实施例是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。此外,下面所描述的本专利技术不同实施方式中所涉及的技术特征只要彼此之间未构成冲突就可以相互结合。本专利技术实施例提供一种基于Node2Vec的重叠社区搜索方法,可由计算机、服务器等电子设备执行,如图1所示该方法包括如下步骤:S1,获取由多个节点组成的复杂网络。本申请所述复杂网络可以是任何现实中的系统都抽象出的网络,比如各种社交网站、学术论坛网站、电子邮件网络等等。通常,一个网络可以用无向图G=(V,E)表示,其中V表示图中n个节点的集合,E表示图中m条边的集合,所述节点可以是网站中的网页,这些网页之间的链接关系为边。S2,利用Node2vec模型计算出各个节点的影响力值。Node2vec模型可通过遍历各个节点来计算节点之间的相似度,进而根据相似度计算出各个节点的影响力。关于节点的影响力,专利技术人认为其数值的大小与其邻居节点的数量、度数以及相异度有关,可以定义公式来计算影响力。S3,根据各个节点的影响力值从节点中确定若干种子节点。影响力越大,节点越有机会成为种子节点,具体可以按照如下方式选择种子节点:比对某节点与其所有邻居节点的影响力值,如果该节点的影响力值比其所有邻居节点的影响力值都大,则将该节点加入到种子节点的集合中。由此可以得到分布均匀、影响力大的种子节点。S4,利用相似度阈值分别以各个种子节点为核心确定复杂网络中可重叠的社区结构。具体地,可分为一个或两个处理阶段,第一阶段从是每个种子节点出发进行社区扩展,首先,以集合中的每个种子节点为核心构建社区,若节点与种子节点的相似度大于相似度阈值,则将该节点划入该种子节点所属的社区结构。通常情况下,通过设定合适的相似度阈值能够使得大部分节点经过上述处理都能划入相应的社区结构。经过上述第一阶段的划分后,仍可能有节点未被划分到任何社区结构中,由此需要进行第二阶段的划分处理:对于尚未被划分的节点,比较其与各本文档来自技高网...

【技术保护点】
1.一种基于Node2Vec的重叠社区搜索方法,其特征在于,包括:/n获取由多个节点组成的复杂网络;/n利用Node2vec模型计算出各个所述节点的影响力值;/n根据各个所述节点的影响力值从所述节点中确定若干种子节点;/n利用相似度阈值分别以各个所述种子节点为核心确定所述复杂网络中可重叠的社区结构。/n

【技术特征摘要】
1.一种基于Node2Vec的重叠社区搜索方法,其特征在于,包括:
获取由多个节点组成的复杂网络;
利用Node2vec模型计算出各个所述节点的影响力值;
根据各个所述节点的影响力值从所述节点中确定若干种子节点;
利用相似度阈值分别以各个所述种子节点为核心确定所述复杂网络中可重叠的社区结构。


2.根据权利要求1所述的方法,其特征在于,利用Node2vec模型计算出各个所述节点的影响力值,包括:
利用Node2vec模型计算各个所述节点的向量;
根据各个所述节点的向量计算各个所述节点间的相似度;
根据各个所述节点间的相似度及各个所述节点间的度计算出各个所述节点的影响力值。


3.根据权利要求2所述的方法,其特征在于,利用Node2vec模型计算各个所述节点的向量;
根据p、q两个超参数的值确定对所述复杂网络中的节点的遍历方式;
基于所述遍历方式遍历节点,采用skip-gram模型进行训练进而获得节点的向量表示。


4.根据权利要求2所述的方法,其特征在于,采用如下方式计算出各个所述节点的影响力值:



其中u和v表示两个所述节点,D(u)和D(v)分别表示节点u和v的度,sim(u,v)表示u和v的相似度,N(u)表示u...

【专利技术属性】
技术研发人员:陈卓姜鹏杜军威
申请(专利权)人:青岛科技大学
类型:发明
国别省市:山东;37

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

1