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

基于时间游走嵌入的增量动态社区发现方法及系统

文献发布时间:2023-06-19 19:30:30


基于时间游走嵌入的增量动态社区发现方法及系统

技术领域

本发明涉及网络社区技术领域,具体是涉及一种基于时间游走嵌入的增量动态社区发现方法及系统。

背景技术

复杂网络是复杂系统的抽象表示,其中,节点表示代表复杂系统中的实体,节点之间的连边表示实体之间依据某种规则形成的联系。在社交网络分析中,社区结构是社交网络的主要特征之一。社交网络的发展具有动态变化特性,对社区发现的研究提出新的要求。因此,社区发现不仅要关注网络的结构特征,还要关注网络节点的时序特征及其在社区中的演化行为。

真实数据统计发现,现实中的动态网络是缓慢发展的,网络中大部分的节点或连边没有改变,可以利用过去已经得到的社区结构来指导当前的网络社团划分。因此,研究局部增量变化节点的变化不仅能够加快动态社区发现的效率,而且能够保证社区的平稳演化发展。但是传统增量动态社区发现算法如郭昆等人于2018年在《模式识别与人工智能》期刊上发表的“基于密度聚类的增量动态社区发现算法”以及Duan等人于2012年在《ArtificialIntelligence Review》期刊上发表的“Incremental K-clique clustering in dynamicsocial networks”等大多是从局部演化角度出发,仅仅关注于节点和边的局部动态变化,无法考虑到网络整体演化过程,从而忽略了历史网络结构对当前网络的影响。同时传统的图嵌入方法大多是关注于静态网络的表示学习。例如,SDNE通过在静态网络结构上构建并优化一阶相似性和二阶相似性来获得节点的向量表示。这种方式仅仅关注到网络的拓扑结构,没有利用到边权重信息。在现实生活中动态网络的边存在时间属性,并且可以转化为边的权重信息。所以,仅仅针对动态网络的拓扑结构进行表示学习,无法将动态信息嵌入到节点向量表示中。

综上所述,现有的动态社区发现方法存在以下不足:在增量动态社区发现过程中无法考虑历史信息对当前网络结构的影响;传统图嵌入方法仅能处理静态网络特征信息。因此,需要提供一种基于时间游走嵌入的增量动态社区发现方法,旨在解决上述问题。

发明内容

针对现有技术存在的不足,本发明的目的在于提供一种基于时间游走嵌入的增量动态社区发现方法及系统,以解决上述背景技术中存在的问题。

本发明是这样实现的,一种基于时间游走嵌入的增量动态社区发现方法,所述方法包括以下两个阶段:

数据处理阶段:依次读取动态网络快照,构造带有时间边权重的网络;使用时间游走采样策略对每一个时间权重网络构造节点序列;使用时间游走嵌入学习节点特征表示;

社区发现阶段:将当前网络与数据处理阶段中获得的网络节点表示结合,构造动态属性网络;使用基于质量模块度的动态社区发现算法对动态属性网络进行社区发现。

作为本发明进一步的方案:数据处理阶段的时间边权重,具体表示为:

其中,

作为本发明进一步的方案:数据处理阶段的时间游走采样策略,具体表示为:

其中,P(v

作为本发明进一步的方案:数据处理阶段的时间游走嵌入,具体步骤为:

存在新节点加入到当前网络中,随机初始化该节点的特征向量;

将上一时间网络的节点嵌入特征作为当前时间快照的初始特征向量;

使用Skip-gram模型学习当前时间网络的节点特征。

作为本发明进一步的方案:社区发现阶段中构造动态属性网络的步骤,具体为:

将获取到的动态网络节点嵌入特征作为节点属性信息,构造为动态属性网络,使得网络表示满足式:G=(V,E,F),其中,V={v

作为本发明进一步的方案:社区发现阶段中基于质量模块度的动态社区发现算法,具体为:

社区重构,通过增量节点的归属划分,重新构造新的初始社区;

网络重构,将每个社区压缩为网络中的每个节点,然后构造新的网络;

节点划分,通过将惯性模块度增益最大化,从而优化整个网络社区的结构划分。

作为本发明进一步的方案:所述社区重构的步骤,具体为:

通过当前时间网络的增量节点和删除节点计算得出当前网络中没有发生变化的其它节点;

依据上一时间网络的社区划分结果,针对新增节点、删除节点、发生变化的现有节点和未发生变化的节点,根据节点处理方式,重新构造社区;节点处理方式为:对于新增节点,将其作为单节点社区;对于删除节点,直接从社区中删除;对于有变化的现有节点,将其从社区中移除,并作为单节点独立社区;对于未发生变化的节点,仍归属于其原本所在社区。

作为本发明进一步的方案:所述网络重构的步骤,具体为:

对于社区内部节点之间的边权重之和压缩为新节点自环的权重,节点之间属性距离之和转换为新节点的自环的属性距离;

社区之间边权重之和转化为新节点之间的边权重,社区之间属性距离之和成为新节点之间的属性距离;

计算目前该网络中的质量模块度。

作为本发明进一步的方案:所述增量节点,具体为:IncNode=ΔV∪Ns(ΔV),其中,IncNode表示增量节点,Ns(·)表示节点的邻域,ΔV表示发生变化的节点,增量节点为当前网络中新增加进来的节点以及在发生新添加边和断开边情况的节点。

与现有技术相比,本发明的有益效果是:

本发明鉴于传统增量动态社区发现方法忽略历史信息对与当前网络结构影响的缺点,提供了一种基于时间游走嵌入的增量动态社区发现方法,用于解决现有传统增量动态社区发现方法忽略历史信息对与当前网络结构影响以及传统图嵌入无法处理动态网络等问题。本发明充分利用图嵌入技术提取动态网络中节点的潜在的时空属性,同时将嵌入信息作为重要节点属性作为参考,使用社区发现方法进行社区划分。本发明具有较低的时间复杂度和较高的准确度,能够快速有效地处理大规模复杂网络数据,具有很强的适应性。

附图说明

图1为一种基于时间游走嵌入的增量动态社区发现方法的流程图。

图2为LFR网络生成器的μ参数变化时不同动态社区发现方法的标准化互信息指标变化示意图。

图3为PS数据集中不同动态社区发现方法的平均标准化互信息指标变化示意图。

图4为PS数据集中本发明在每个时间网络中的标准化互信息指标变化示意图。

具体实施方式

为了使本发明的目的、技术方案及优点更加清晰,以下结合附图及具体实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。

以下结合具体实施例对本发明的具体实现进行详细描述。

如图1所示,本发明实施例提供了一种基于时间游走嵌入的增量动态社区发现方法,所述方法包括以下两个阶段:

S100,数据处理阶段:依次读取动态网络快照,构造带有时间边权重的网络;使用时间游走采样策略对每一个时间权重网络构造节点序列;使用时间游走嵌入学习节点特征表示;

S200,社区发现阶段:将当前网络与数据处理阶段中获得的网络节点表示结合,构造动态属性网络;使用基于质量模块度的动态社区发现算法对动态属性网络进行社区发现。

本发明实施例中,构造带有时间边权重的网络的方法为历史权重与当前权重相融合的方法,能够保证随机游走的动态性,同时对历史权重使用时间衰减策略,用来确保当前权重的主体地位,时间边权重的计算公式为:

/>

其中,

进一步的,所述数据处理阶段的时间游走采样策略,具体表示公式为:

其中,P(v

优选的,所述数据处理阶段的时间游走嵌入,具体步骤为:存在新节点加入到当前网络中,随机初始化该节点的特征向量;将上一时间网络的节点嵌入特征作为当前时间快照的初始特征向量;使用Skip-gram模型学习当前时间网络的节点特征。即首先构造当前时间网络下的初始节点特征矩阵。接着使用时间采样策略进行节点采样,最后使用Skip-gram进行嵌入学习。优选的,所述初始节点特征矩阵的构造方法为:如果在当前网络中有节点新加入到当前网络中,只需要随机初始化该节点的特征向量即可,对于离开当前网络的节点,考虑到节点历史边权重对当前网络的影响重构了当前网络,因此离开的节点在当前时间网络中并没有从时间权重网络中消失,只是该节点与其邻域节点的边权重值较低,采样到该节点的概率较低。

优选的,所述社区发现阶段中构造动态属性网络的步骤,具体为:将获取到的动态网络节点嵌入特征作为节点属性信息,构造为动态属性网络,使得网络表示满足式:G=(V,E,F),其中,V={v

进一步的,基于质量模块度的动态社区发现算法是通过对Louvain算法进行改进,将节点嵌入作为动态网络节点的属性信息,对动态网络进行社区发现。对于节点含有属性信息的网络的处理,采用I-Louvain算法中全局网络质量度量函数QQ

进一步,模块度计算公式为:

其中,e

进一步,所述质量模块度计算公式为:

其中,属性距离dist(i,j)=Σ

进一步,基于改进模块度的动态社区发现算法(dyLouvain)的相关计算分为以下3个阶段:

S201,社区重构,通过增量节点的归属划分,重新构造新的初始社区;通过当前时间网络的增量节点IncNode和删除节点V

S202,网络重构,将每个社区压缩为网络中的每个节点,然后构造新的网络;其中,在压缩阶段对于社区内部节点之间的边权重之和压缩为新节点自环的权重,节点之间属性距离之和转换为新节点的自环的属性距离;社区之间边权重之和转化为新节点之间的边权重,社区之间属性距离之和成为新节点之间的属性距离,并计算目前该网络中的QQ

S203,节点划分,通过将惯性模块度增益(ΔQ

进一步的,划分操作时,通过当前时间网络的增量节点和删除节点计算得出当前网络中没有发生变化的其它节点;依据上一时间网络的社区划分结果,针对新增节点、删除节点、发生变化的现有节点和未发生变化的节点,根据节点处理方式,重新构造社区;节点处理方式为:对于新增节点,将其作为单节点社区;对于删除节点,直接从社区中删除;对于有变化的现有节点,将其从社区中移除,并作为单节点独立社区;对于未发生变化的节点,仍归属于其原本所在社区。

进一步的,所述增量节点,具体为:IncNode=ΔV∪Ns(ΔV),其中,IncNode表示增量节点,Ns(·)表示节点的邻域,ΔV表示发生变化的节点,增量节点为当前网络中新增加进来的节点以及在发生新添加边和断开边情况的节点。

进一步,所述ΔQ

其中,第一项表示由节点j在分配到新社区B后引起的惯性模块度差异变化,第二项表示从原始社区A中删除j所引起的惯性模块度变化。

本发明鉴于传统增量动态社区发现方法忽略历史信息对与当前网络结构影响的缺点,提供了一种基于时间游走嵌入的增量动态社区发现方法,用于解决现有传统增量动态社区发现方法忽略历史信息对与当前网络结构影响以及传统图嵌入无法处理动态网络等问题。本发明充分利用图嵌入技术提取动态网络中节点的潜在的时空属性,同时将嵌入信息作为重要节点属性作为参考,使用社区发现方法进行社区划分。本发明具有较低的时间复杂度和较高的准确度,能够快速有效地处理大规模复杂网络数据,具有很强的适应性。

下面结合具体案例对本发明进行更进一步的详细说明。

如图2、图3和图4所示,本案例以人工网络和真实网络为例,将本发明提供的所述基于时间游走嵌入的增量动态社区发现方法用于上述动态网络,并与其它典型动态社区发现方法和动态图嵌入方法进行比较。选取的典型动态社区发现方法包括:Dyperm和FacetNet。选取典型的动态图嵌入方法包括DynGEM和DynAE。本发明所述方法简称为DyCTWE。

为了更好地评价各种方法划分社区的性能,此处引入标准化互信息指标NMI。标准化互信息指标定义如下:

其中,H(T)和H(P)表示熵,H(P|T)表示条件经验熵。NMI的取值范围为[0,1],值越大表示划分的社区与真实社区越相似。

首先,借助LFR网络生成器生成人工复杂网络,利用动态人工复杂网络对本发明所述方法进行评估。LFR网络生成器有1个重要参数,是社区结构混合参数μ(mixingparameter of community structure)。该参数的变化将影响人工复杂网络的拓扑结构。图2显示了所述参数发生变化,不同动态社区发现方法和动态图嵌入方法的标准化互信息指标NMI的变化情况。可以看出:针对所述的动态人工复杂网络,本发明所述的方法(DyCTWE)能够获得最大的标准化互信息值。说明较之其它方法,本发明所述方法更能够细致、准确地发现人工复杂网络社区结构。

为了进一步说明本发明方法的性能,选取1个小规模的真实动态网络,分析比较所述动态社区发现方法的标准化互信息指标NMI。该小型动态网络为PS网络,为某小学中242名师生面对面交流接触网络,节点表示学校的师生,如果两人之间进行交流,就会产生连边。该动态社交网络由6个时间快照网络组成。

图3显示了用于社区发现方法和图嵌入方法对于PS数据集的社区划分的平均标准化互信息指标值。可以看出与其其它动态社区发现方法和动态图嵌入方法相比,本发明能够准确的划分出真实网络的社区。

为了进一步说明本发明方法的性能,图4显示了本发明对于PS网络中各个时间快照网络的标准化互信息指标值。可以看出:本发明对于PS数据集的划分质量随时间递减,说明该方法存在累积误差,使得社区发现结果逐渐降低,分析来看主要原因在于过多关注于局部增量节点的动态更新与计算,而忽略整体网络的演化质量。

为了进一步说明本发明方法的性能,选取的4种人工网络和4种真实网络,比较5种方法对于动态网络进行社区发现中处理每一个时间快照网络所消耗的时间。人工数据集为LFR2,LFR4,LFR6,LFR8,主要区分在于社区结构混合参数μ设置分别为0.2,0.4,0.6,0.8。真实网络为Brain网络,DBLP5网络,PS网络,CW网络。其中,Brain网络数据集是由功能磁共振成像数据生成的,节点代表脑组织的立方体,如果两个节点在同一时间段内表现出相似的激活程度,就会连接起来,网络共有5000个节点,由12个时间快照组成;DBLP5网络数据集是从DBLP网站中提取,该网站提供主要计算机科学期刊和会议的开放书目信息,节点代表作者,边代表论文合著关系,DBLP-5中作者节点分别在5种研究领域中并且没有改变研究领域,该数据以年为单位,收集相关作者的论文发表信息,网络共有6066个节点,由10个时间快照组成;PS动态网络为某小学中242名师生面对面交流接触网络,节点表示学校的师生,如果两人之间进行交流,就会产生连边,网络由6个时间快照网络组成;CW网络数据集为在法国某办公楼中里145名员工的联络网络,节点表示在该办公楼中的工作的员工,如果两人之间进行了电话交流,则两点之间建立连边,网络由8个时间快照网络组成。各个方法所对于每一个时间网络平均消耗时间如下表所示。可以看出,本发明对于人工网络和真实网络都能较为快速的进行社区发现。

平均运行时间比较(秒)

可见,本发明对给定的动态复杂网络能够将动态网络构造为动态权重网络,并且利用历史网络边权重信息来重构当前时间网络;接着,设计时间游走采样策略,使用词嵌入技术来获取节点的嵌入特征。然后,将节点嵌入作为节点属性构造动态属性网络,并提出增量元素概念;最后,设计基于改进模块度的动态社区发现算法,从而进行社区划分。本发明具有较低的时间复杂度,能够快速有效地处理大规模复杂网络数据,具有很强的适应性。

综上所述,本发明有效克服了现有技术中的种种缺点而具高度产业利用价值。

上述实施例仅例示性说明本发明的原理及其功效,而非用于限制本发明。任何熟悉此技术的人士皆可在不违背本发明的精神及范畴下,对上述实施例进行修饰或改变。因此,举凡所属技术领域中具有通常知识者在未脱离本发明所揭示的精神与技术思想下所完成的一切等效修饰或改变,仍应由本发明的权利要求所涵盖。

本发明实施例还提供了一种基于时间游走嵌入的增量动态社区发现系统,所述系统包括:

数据处理模块,用于执行数据处理阶段中的步骤,数据处理阶段包括:依次读取动态网络快照,构造带有时间边权重的网络;使用时间游走采样策略对每一个时间权重网络构造节点序列;使用时间游走嵌入学习节点特征表示;

社区发现模块,用于执行社区发现阶段中的步骤,社区发现阶段包括:将当前网络与数据处理阶段中获得的网络节点表示结合,构造动态属性网络;使用基于质量模块度的动态社区发现算法对动态属性网络进行社区发现。

以上仅对本发明的较佳实施例进行了详细叙述,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。

应该理解的是,虽然本发明各实施例的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,各实施例中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。

本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一非易失性计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。

本领域技术人员在考虑说明书及实施例处的公开后,将容易想到本公开的其它实施方案。本申请旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由权利要求指出。

相关技术
  • 基于密度聚类的增量动态社区发现方法
  • 一种基于MDL的增量式动态社区快速发现方法及系统
  • 基于时空图嵌入的动态网络社区发现方法和系统
技术分类

06120115936159