一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

动态社交网络社区演化预测方法、系统、存储介质及设备

2022-05-31 23:34:22 来源:中国专利 TAG:


1.本发明属于社交网络技术领域,具体涉及一种动态社交网络社区演化预测 方法、系统、存储介质及设备。


背景技术:

2.社交网络是指社会个体成员或组织之间通过相互作用而形成的相对稳定的 关系系统。社交网络通常用图表表示,节点表示个人或组织,边缘表示各种社 会互动,如伙伴关系和友谊。随着时间的推移,社交网络演变成基于用户活动 的动态网络。例如,以节点表示的新用户加入网络,以节点表示的旧用户停止 活动或离开网络。同时,边缘也会因为用户之间的互动而产生或消失。如今, 几乎每个人都是不同动态社交网络的一部分,如facebook、twitter。动态社会 网络中存在着许多有趣的模式或知识,使得社会网络分析(sna)领域越来越受 欢迎。
3.社区结构是网络中紧密连接的一组节点,是动态社会网络的一个重要特征。 随着动态社会网络的发展,不同的社区会经历不同的事件,即出生、死亡、成 长、收缩、合并和分裂。预测社区关键事件是sna现有研究的重要组成部分。 研究这种预测人口演化的方法在公共安全、公共卫生和市场营销等方面具有实 际应用价值。在公共安全领域,观察群体演化有助于识别支持或倾向于犯罪的 个人或群体。
4.现有的社区演化预测方法通常将动态网络划分为几个固定大小的快照,也 称为快照。动态图表示为不同时间段的静态快照序列。然后利用团体检测算法 对每个快照中的团体进行独立识别。然后,社区使用跟踪算法比较相邻快照中 包含的所有社区组合对,以匹配和确定关键事件。最后,根据社区跟踪算法识 别的关键事件找到社区演化序列,并从每个社区中提取若干特征,并建立一个 模型来预测社区可能经历的下一个事件。
5.brodka在其发表的论文“community evolution prediction in dynamic social networks”(ieee,2015年)中将数据集划分为不相交和重叠的时间戳。然后使用 ged社区跟踪方法跟踪社区。该分类器利用过去三个社区的历史事件类型、社 区规模和当前社区规模作为特征进行训练,最后预测下一个关键事件。dakiche 在其发表的论文“sensitive analysis of timeframe type and size impact on community evolution prediction”中根据网络活动手动划分网络。它们划分的网 络快照有不同的大小和重叠率。他们在网络活动较少的时期设置较大的时间框 架,而在网络活动较少的时期设置较高重叠率的较小时间框架。但手工方法不 容易推广,也没有严格的理论支持。后来dakiche等人又发明了一种方法来找 到不同网络的时间框架大小。该方法的快照大小是根据出现、消失和保留在两 个连续的独立快照中的节点数量来估计的。但是快照之间固定的重叠率意味着 这种划分方法并不完美。dakiche等提出了一种新的事件预测自定义网络分裂 框架(tnsep)。他们的框架计算不同时刻的边数。不同大小的快照的开始时间 和结束时间是通过将一个快照的边数分成一个固定的百分比来计算的。但尽管 dakiche等人的方法可以根据网络边缘的分布寻找一个不固定的时间段大小序 列,但tnsep仍然需要假设参数已经设置,时间段之间
的重叠率是固定的。重 叠率的设定也应该随着网络本身的变化而变化。在网络不活动期间,不仅要设 置大的时间框架,而且重叠率也不能太高,以免浪费过多的计算资源。当网络 处于活跃状态时,应该使用小的、高重叠的时间框架来捕获更多的网络演化细 节,避免遗漏太多信息。一系列时间框架的大小和它们之间的重叠率不应该是 固定的,而应该随着网络的变化而变化。这种网络分区机制正是该领域所需要 的,也是最适合网络的。


技术实现要素:

6.本发明所要解决的技术问题在于针对上述现有技术中的不足,提供一种动 态社交网络社区演化预测方法、系统、存储介质及设备,从时间窗划分机制的 通用性出发,建立基于优化的时间窗划分机制模型,时间框架能够根据具体网 络自适应调整时间窗口的大小和数量;通过在几个真实网络上的实验验证,能 够提高网络社区跟踪的质量,并在减少训练集的情况下保证预测的准确性。
7.本发明采用以下技术方案:
8.一种动态社交网络社区演化预测方法,包括以下步骤:
9.s1、基于设计的基因编码策略得到初始化种群,在初始化种群中随机选择 两个编码长度相同的双亲染色体,对双亲染色体使用两点交叉算子生成子代, 使用设定的约束条件对子代进行严格化;使用变异算子对生成的子代进行突变 操作并基于约束条件严格化子代;基于适应度函数,利用快速非支配排序算子 与个体拥挤距离算子对子代进行筛选,得到自适应时间窗口的最优划分方案;
10.s2、将动态社交网络按步骤s1得到的最优划分方案进行时间窗口划分, 得到每个窗口下的网络快照,使用派系过滤方法得到每个网络快照中的重叠社 区;
11.s3、对步骤s2得到的重叠社区集合按照所处快照时间戳从前到后的顺序, 使用ged社区跟踪方法计算相邻快照中两两社区的包含度,得到每个社区的社 区演化序列,根据社区演化序列识别演化事件,得到每个序列经历的关键事件;
12.s4、计算步骤s3得到的社区演化序列中所有社区的多种拓扑特征;对社 区演化序列中符合至少5个网络快照前存在的社区提取5个历史的社区特征, 并和其中经历过的4个演化事件拼接为一维特征,将社区下一时刻的演化事件 作为特征的标签;使用randomforest分类器对带标签特征数据进行机器学习, 利用训练好的randomforest分类器进行预测。
13.具体的,步骤s1中,基因编码策略使用时间窗口的起始时刻作为基因构成 一条染色体,使用时间窗口的结束时刻作为另一个染色体,两条染色体构成一 个完整的自适应时间窗划分方案;种群初始化选择长度从5至原始数据时间戳 个数,对于每种长度生成5个随机个体,完成窗口数目自适应的问题;具体为:
14.一个动态的社交网络被划分为t,每一组 自适应时间戳为一组包含两个染色体的个体,分别代表所有窗口的开始和结束 时间;生成初始个体的约束条件如下:
[0015][0016]
[0017][0018][0019]
其中,规定自适应时间框架从动态网络开始时开始,规定自 适应时间段的结束时间为动态社交网络的结束时间,和规定 了后一个时间段不完全包含前一个时间段,前一个时间段与后一个时间段之间 不存在缺失网络,并且相邻的时间窗口重叠或不重叠任何长度,
[0020]
具体的,步骤s1中,适应度函数如下:
[0021][0022]
f2=δ2(fl)
[0023][0024][0025][0026][0027]
其中,f1为波动的期望值与设定值误差,τ为时间窗口数目,δ为0至1 之间,fls相邻两个连续独立快照间的网络波动,fl为波动集合,f2为计算波动 集fl的标准差,为时间窗ti的快照,si为该快照中包含的节点数目,为时 间窗ti的快照,s
i 1
为该快照中包含的节点数目,na为两个连续独立快照间的出 现节点数目,nd为两个连续独立快照间的消失节点数,nr为两个连续独立快照 间的保持节点数目。
[0028]
具体的,步骤s3中,相邻快照间两两社区的相互的包含度计算 如下:
[0029][0030]
其中,第一部分为两个社区公共节点占第一个社区的比例,第二部分中 ni(x)为节点x在图中计算得到的一个节点指标,为时间窗tk的快照中 标号为i的社区,为时间窗t
k 1
的快照中标号为j的社区。
[0031]
具体的,步骤s3中,关键事件包括形成、生存、合并、分裂;溶解、生长 和收缩。
[0032]
具体的,步骤s4中,所有社区的多种拓扑特征如下:
[0033][0034]
其中,x1…
x7为时间窗tk对应快照中社区的多个拓扑特征,label为该 社区在下一时刻发生的事件,为特征与事件拼接得到的该社区特征。
[0035]
具体的,步骤s4中,一维特征的数据形式为:
[0036][0037]
其中,为一条社区演化序列中该社区在t
k-4
,t
k-3

tk时刻的社区特征。
[0038]
第二方面,本发明实施例提供了一种动态社交网络社区演化预测系统,其 特征在于,包括:
[0039]
划分模块,基于设计的基因编码策略得到初始化种群,在初始化种群中随 机选择两个编码长度相同的双亲染色体,对双亲染色体使用两点交叉算子生成 子代,使用设定的约束条件对子代进行严格化;使用变异算子对生成的子代进 行突变操作并基于约束条件严格化子代;基于适应度函数,利用快速非支配排 序算子与个体拥挤距离算子对子代进行筛选,得到自适应时间窗口的最优划分 方案;
[0040]
社区模块,将动态社交网络按划分模块得到的最优划分方案进行时间窗口 划分,得到每个窗口下的网络快照,使用派系过滤方法得到每个网络快照中的 重叠社区;
[0041]
跟踪模块,对社区模块得到的重叠社区集合按照所处快照时间戳从前到后 的顺序,使用ged社区跟踪方法计算相邻快照中两两社区的包含度,得到每个 社区的社区演化序列,根据社区演化序列识别演化事件,得到每个序列经历的 关键事件;
[0042]
预测模块,计算跟踪模块得到的社区演化序列中所有社区的多种拓扑特征; 对社区演化序列中符合至少5个网络快照前存在的社区提取5个历史的社区特 征,并和其中经历过的4个演化事件拼接为一维特征,将社区下一时刻的演化 事件作为特征的标签;使用randomforest分类器对带标签特征数据进行机器学 习,利用训练好的randomforest分类器进行预测。
[0043]
第三方面,一种计算机设备,包括存储器、处理器以及存储在所述存储器 中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时 实现上述动态社交网络社区演化预测方法的步骤。
[0044]
第四方面,本发明实施例提供了一种计算机可读存储介质,包括计算机程 序,所述计算机程序被处理器执行时实现上述动态社交网络社区演化预测方法 的步骤。
[0045]
与现有技术相比,本发明至少具有以下有益效果:
[0046]
本发明一种动态社交网络社区演化预测方法,从时间窗划分机制的通用性 出发,建立基于优化的时间窗划分机制模型,时间框架能够根据具体网络自适 应调整时间窗口的大小和数量;设计了一种可以根据不同时期的网络活动的选 择时间框架的大小和重叠率;减少了追踪社区演化追踪中的信息丢失,进一步 提升了跟踪算法所跟踪的社区进化序列的质量;与目前主流的预测模型相比, 本发明社区演化预测模型可以实现更好的预测精度。
[0047]
进一步的,本发明创新型的使用基因编码策略优化时间框架划分问题,使 用两条染色体配合,一条表示窗口期时时刻,一条表示窗口结束时刻,可以表 示所有不同的时间窗划分方案,保证了初始种群的完备性,结合本发明的约束 函数完美的使染色体符合动态社交网络领域研究。
[0048]
进一步的,本发明在提出了一套新的适应度函数,专门针对动态社交网络 领域。
大多数研究中,网络通常以月或年为单位任意划分为一系列具有固定重 叠率和大小的时间框架,但其大小和重叠率并不一定适合当前的网络。但不同 的动态网络具有各自的特点和结构,在网络的不同时段,网络也表现出不同的 活动状态。作为动态网络分析的第一步,时间帧的大小和重叠率的选择至关重 要,若在快速活动的网络时段使用过于粗大的时间窗会遗失信息与事件,若在 不活跃的网络时段使用细腻密集的时间窗会浪费资源,这都将直接影响后续的 社区跟踪结果和最终的预测精度。本发明设计的适应度函数利用相邻网络中出 现、消失、保留的节点数目估算出动态社交网络的活动状态,多目标的适应度 函数既保证了每个时间窗口跟随贴合当前网络的活动状态,又保证了时间窗口 之间的一致性。
[0049]
进一步的,本发明使用了更合理的社区间包含度计算方法。大多数研究中, 对两两社区的相似度计算只考虑公共节点数量的占比。但ged方法既考虑社区 成员的数量,也考虑社区成员的质量。数量由公式中第一部分反映,质量由公 式中的第二部分反映,即重要成员的贡献有多大。保证了多数不太重要成员的 大型社区和只有少数但重要成员的小型社区之间提供了一种平衡。
[0050]
进一步的,本发明可以实现7种社区演化事件的识别,根据社区间节点数 量以及质量计算得到的包含度,识别出的事件更加准确。最终的社区演化序列 具有更高的质量。
[0051]
进一步的,本发明考虑到多种社区拓扑特性,对于图网络结构的层次,具 有整个图层面的特征、子结构(社区)层面的特征、节点层面的特征。目前的 大多数研究只考虑到社区层面的特征,而忽视了特征的丰富性。本发明不仅包 括常见的社区大小、密度特征等社区层面的特征,还包含平均聚类系数、平均 度等节点层面的特征,使得特征的丰富性大大增加。
[0052]
进一步的,本发明考虑使用下一时刻的社区演化事件作为标签,使用多个 历史社区特征进行合并,这样做可以提高特征的数量,提高特征的多样性,保 证算法的鲁棒性。本发明将社区演化序列过程中包含的演化事件也作为一项特 征进行拼接,也扩充了社区特征。
[0053]
综上所述,本发明通过演化学习来得到最适合网络数据的不固定大小与重 叠率的时间窗口划分方案,以提升社区跟踪质量以及事件预测准确性。
[0054]
下面通过附图和实施例,对本发明的技术方案做进一步的详细描述。
附图说明
[0055]
图1为本发明的流程图,其中,(a)为原始数据划分时间窗口,社区发现, 演化追踪示例图,(b)为各步骤示意图;
[0056]
图2为传统时间框架与自适应时间框架示意图,其中,(a)为不相交时间 框架,(b)为重叠时间框架,(c)为自适应时间框架;
[0057]
图3为本发明的交叉算子示意图,其中,(a)为父辈染色体示例图,每组 染色体代表一种时间窗口划分方案,(b)为起始时刻染色体两点交叉示例图, (c)为结束时刻染色体的部分映射交叉和冲突检测示例图,(d)为子代的严格 化示例图;
[0058]
图4为本发明的社区演化事件识别示意图。
具体实施方式
[0059]
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清 楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部 的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳 动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0060]
在本发明的描述中,需要理解的是,术语“包括”和“包含”指示所描述特征、 整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、 整体、步骤、操作、元素、组件和/或其集合的存在或添加。
[0061]
还应当理解,在本发明说明书中所使用的术语仅仅是出于描述特定实施例 的目的而并不意在限制本发明。如在本发明说明书和所附权利要求书中所使用 的那样,除非上下文清楚地指明其它情况,否则单数形式的“一”、“一个”及“该
”ꢀ
意在包括复数形式。
[0062]
还应当进一步理解,在本发明说明书和所附权利要求书中使用的术语“和/ 或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包 括这些组合,例如,a和/或b,可以表示:单独存在a,同时存在a和b,单 独存在b这三种情况。另外,本文中字符“/”,一般表示前后关联对象是一种
ꢀ“
或”的关系。
[0063]
应当理解,尽管在本发明实施例中可能采用术语第一、第二、第三等来描 述预设范围等,但这些预设范围不应限于这些术语。这些术语仅用来将预设范 围彼此区分开。例如,在不脱离本发明实施例范围的情况下,第一预设范围也 可以被称为第二预设范围,类似地,第二预设范围也可以被称为第一预设范围。
[0064]
取决于语境,如在此所使用的词语“如果”可以被解释成为“在
……

”ꢀ
或“当
……
时”或“响应于确定”或“响应于检测”。类似地,取决于语境,短 语“如果确定”或“如果检测(陈述的条件或事件)”可以被解释成为“当确定 时”或“响应于确定”或“当检测(陈述的条件或事件)时”或“响应于检测(陈 述的条件或事件)”。
[0065]
在附图中示出了根据本发明公开实施例的各种结构示意图。这些图并非是 按比例绘制的,其中为了清楚表达的目的,放大了某些细节,并且可能省略了 某些细节。图中所示出的各种区域、层的形状及它们之间的相对大小、位置关 系仅是示例性的,实际中可能由于制造公差或技术限制而有所偏差,并且本领 域技术人员根据实际所需可以另外设计具有不同形状、大小、相对位置的区域/ 层。
[0066]
本发明提供了一种动态社交网络社区演化预测方法,根据具体网络自适应 调整每个时间窗口的大小和个数以及窗口之间的重叠率。本发明所提出的自适 应时间框架可以提高动态社交网络中社区跟踪的质量,并大大提升了社区演化 预测的准确性。
[0067]
请参阅图2,(a)为不相交时间框架,不相交的时间框架中所有窗口大小 相同且互不重叠。虽然它的设置很简单,只需要设定时间框架的大小。但由于 过于死板,对于快速变化的动态网络,会遗漏许多信息只能捕捉到价值有限的 信息。(b)为重叠时间框架,重叠时间框架中包含大小相同、重叠率固定的时 间窗。重叠的时间框架允许社区跟踪算法找到更多有价值的事件,但在网络内 部的变化较慢时浪费资源。(c)为自适应时间框架,自适应时间框架不拘泥于 固定的窗口数目以及大小,可以更好的匹配网络的活动程度,也将提高社区跟 踪和事件预测的质量。
[0068]
请参阅图1,本发明一种动态社交网络社区演化预测方法,包括以下步骤:
[0069]
s1、自适应时间窗口划分;
[0070]
s101、基于设计的基因编码策略生成初始化种群;
[0071]
基因编码策略选择使用时间窗口划分方案的所有快照的起始和结束时间作 为染色体,设一个动态的社交网络被划分为t(t={t
start
,t
end
|t
start
,t
end
∈{t1,

,tm}})。 每一组自适应时间戳被设计为一组包含两个染色体的个体,分别代表所有窗口 的开始和结束时间。根据动态网络分析任务的概念,设计如下生成初始个体的 约束条件:
[0072][0073][0074][0075][0076][0077]
其中,规定自适应时间框架从动态网络开始时开始,规定自 适应时间段的结束时间为动态社交网络的结束时间,其余公式规定了后一个时 间段不完全包含前一个时间段,前一个时间段与后一个时间段之间不存在缺失 网络,并且相邻的时间窗口可以重叠或不重叠任何长度。
[0078]
根据这样的公式,初始种群生成时间窗口数目从5至原始数据时间戳个数 n,每种时间窗口数目下5个满足约束条件的随机染色体,以代表不同的时间窗 口划分方案;
[0079]
s102、从交配池中随机选择两个编码长度相同的双亲染色体;
[0080]
请参阅图3,使用两点交叉算子生成所选方案的子代。染色体交叉后,可 能会出现不符合约束条件的基因,导致部分时间框架缺失或窗口反转。本发明 基于约束条件调整子代,对染色体中不符合约束条件的基因在符合约束条件的 范围内进行重新随机。
[0081]
s103、使用变异算子对生成的子代在符合约束条件的范围内进行变异操作;
[0082]
s104、基于设计的适应度函数利用快速非支配排序算子与个体拥挤距离算 子筛选子代;
[0083]
适应度函数如下:
[0084][0085]
f2=δ2(fl)
[0086][0087][0088][0089][0090]
[0091]
对于任何时间框架中的任意快照,其中包含的节点为本发明 使用两个连续独立时间快照的出现(na)、消失(nd)和保持(nr)节点数来计算网 络的波动(fls)。其中,fls越小,网络就越趋于静态,这就使得在社区演化过程 中很难捕获诸如合并、分裂、收缩和扩展等关键事件。同样,fls越大,网络变 化越快,这可能导致一些社区以非连续的方式发展。为了使低活动期交互聚合 到同一时间框架,而高交互活动的周期分为更多的时间框架,以确保网络不会浪 费太多资源分析期间的低活动期间,不会忽略信息的活动,本发明设计的自适应 时间框架的大小不是固定的,它们可能是不相交的,也可能是重叠的。
[0092]
其中,f1代表波动的期望值与设定值误差,δ设置在0至1之间,一般为 0.3,以确保相邻快照之间存在某种交互,但不是极端的,f2通过计算波动集fl 的标准差来保证时间戳在不同时期的活动一致。
[0093]
s105、当迭代次数不满足设定值时,返回步骤s102。
[0094]
s2、社区发现;
[0095]
s201、将动态社交网络按照得到的自适应窗口划分方案在每个窗口内聚合 静态网络,即快照;
[0096]
s202、使用cpm算法在每个快照内发现社区。
[0097]
派系过滤cpm方法(clique percolation method)用于发现重叠社区,派系 (clique)是任意两点都相连的顶点的集合,即完全子图。在社区内部节点之间连 接密切,边密度高,容易形成派系(clique)。因此,社区内部的边有较大可能形 成大的完全子图,而社区之间的边却几乎不可能形成较大的完全子图。通过找 出网络中的派系来发现社区。k-派系表示网络中含有k个节点的完全子图,如 果一个k-派系与另一个k-派系有k-1个节点重叠,则这两个k-派系是连通的。 由所有彼此连通的k-派系构成的集合就是一个k-派系社区。
[0098]
s3、ged社区跟踪与匹配;
[0099]
s301、计算相邻快照间两两社区的相互的包含度和包 含度评估函数不仅包括共享节点的数量,还包括共享节点的社会地位;
[0100]
计算公式如下:
[0101][0102]
其中,ni(x)是一个节点指标(如中心性、平庸性、页面排名等),用于评估社区 中节点的重要性。
[0103]
s302、识别关键事件。
[0104]
请参阅图4,ged方法支持七个关键事件的发现:形成、生存、合并、分 裂、溶解、生长和收缩,这些事件作为标记来训练社区演化预测模型。
[0105]
s4、社区演化预测。
[0106]
s401、计算每一条演化序列中所有社区的多种拓扑特征;
[0107]
根据ged的跟踪信息,为社区创建演化序列。每个序列包含一个社区实 例和该
社区在和下一帧中的发生的事件。
[0108]
s402、使用包含前5个历史的社区演化序列的特征输入randomforest分类 器中进行学习,并将该社区下一时刻发生的事件作为预测标签;
[0109]
对社区演化序列中所有社区计算其拓扑特征,包含的特征包含密度、凝聚 力、节点中心性等,参考表1。
[0110]
表1本发明使用的社区拓扑特征
[0111][0112][0113]
由社区实例的特征与其事件构成的结构是本发明训练和测试分类器数据的 最终形式,如下:
[0114][0115]
使用包含前5个历史的社区演化序列的特征输入randomforest分类器中进 行学习,并将该社区下一时刻发生的事件作为预测标签,形式如下:
[0116][0117]
s403、将需要预测事件的演化序列输入训练好的分类器中得到事件预测结 果。
[0118]
本发明再一个实施例中,提供一种动态社交网络社区演化预测系统,该系 统能够用于实现上述动态社交网络社区演化预测方法,具体的,该动态社交网 络社区演化预测系统包括划分模块、社区模块、跟踪模块以及预测模块。
[0119]
其中,划分模块,基于设计的基因编码策略得到初始化种群,在初始化种 群中随机选择两个编码长度相同的双亲染色体,对双亲染色体使用两点交叉算 子生成子代,使用设定的约束条件对子代进行严格化;使用变异算子对生成的 子代进行突变操作并基于约束条件严格化子代;基于适应度函数,利用快速非 支配排序算子与个体拥挤距离算子对子代进行筛选,得到自适应时间窗口的最 优划分方案;
[0120]
社区模块,将动态社交网络按划分模块得到的最优划分方案进行时间窗口 划分,得到每个窗口下的网络快照,使用派系过滤方法得到每个网络快照中的 重叠社区;
[0121]
跟踪模块,对社区模块得到的重叠社区集合按照所处快照时间戳从前到后 的顺序,使用ged社区跟踪方法计算相邻快照中两两社区的包含度,得到每个 社区的社区演化序列,根据社区演化序列识别演化事件,得到每个序列经历的 关键事件;
[0122]
预测模块,计算跟踪模块得到的社区演化序列中所有社区的多种拓扑特征; 对社区演化序列中符合至少5个网络快照前存在的社区提取5个历史的社区特 征,并和其中经历过的4个演化事件拼接为一维特征,将社区下一时刻的演化 事件作为特征的标签;使用randomforest分类器对带标签特征数据进行机器学 习,利用训练好的randomforest分类器进行预测。
[0123]
本发明再一个实施例中,提供了一种终端设备,该终端设备包括处理器以 及存储器,所述存储器用于存储计算机程序,所述计算机程序包括程序指令, 所述处理器用于执行所述计算机存储介质存储的程序指令。处理器可能是中央 处理单元(central processing unit,cpu),还可以是其他通用处理器、数字信号 处理器(digital signal processor、dsp)、专用集成电路(application specific integrated circuit,asic)、现成可编程门阵列(field-programmable gate array, fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件 等,其是终端的计算核心以及控制核心,其适于实现一条或一条以上指令,具 体适于加载并执行一条或一条以上指令从而实现相应方法流程或相应功能;本 发明实施例所述的处理器可以用于动态社交网络社区演化预测方法的操作,包 括:
[0124]
基于设计的基因编码策略得到初始化种群,在初始化种群中随机选择两个 编码长度相同的双亲染色体,对双亲染色体使用两点交叉算子生成子代,使用 设定的约束条件对子代进行严格化;使用变异算子对生成的子代进行突变操作 并基于约束条件严格化子代;基于适应度函数,利用快速非支配排序算子与个 体拥挤距离算子对子代进行筛选,得到自适应时间窗口的最优划分方案;将动 态社交网络按最优划分方案进行时间窗口划分,得到每个窗口下的网络快照, 使用派系过滤方法得到每个网络快照中的重叠社区;对得到的重叠社区集合按 照所处快照时间戳从前到后的顺序,使用ged社区跟踪方法计算相邻快照中两 两社区的包含度,得到每个社区的社区演化序列,根据社区演化序列识别演化 事件,得到每个序列经历的关键事件;计算社区演化序列中所有社区的多种拓 扑特征;对社
区演化序列中符合至少5个网络快照前存在的社区提取5个历史 的社区特征,并和其中经历过的4个演化事件拼接为一维特征,将社区下一时 刻的演化事件作为特征的标签;使用randomforest分类器对带标签特征数据进 行机器学习,利用训练好的randomforest分类器进行预测。
[0125]
本发明再一个实施例中,本发明还提供了一种存储介质,具体为计算机可 读存储介质(memory),所述计算机可读存储介质是终端设备中的记忆设备, 用于存放程序和数据。可以理解的是,此处的计算机可读存储介质既可以包括 终端设备中的内置存储介质,当然也可以包括终端设备所支持的扩展存储介质。 计算机可读存储介质提供存储空间,该存储空间存储了终端的操作系统。并且, 在该存储空间中还存放了适于被处理器加载并执行的一条或一条以上的指令, 这些指令可以是一个或一个以上的计算机程序(包括程序代码)。需要说明的是, 此处的计算机可读存储介质可以是高速ram存储器,也可以是非不稳定的存 储器(non-volatile memory),例如至少一个磁盘存储器。
[0126]
可由处理器加载并执行计算机可读存储介质中存放的一条或一条以上指令, 以实现上述实施例中有关动态社交网络社区演化预测方法的相应步骤;计算机 可读存储介质中的一条或一条以上指令由处理器加载并执行如下步骤:
[0127]
基于设计的基因编码策略得到初始化种群,在初始化种群中随机选择两个 编码长度相同的双亲染色体,对双亲染色体使用两点交叉算子生成子代,使用 设定的约束条件对子代进行严格化;使用变异算子对生成的子代进行突变操作 并基于约束条件严格化子代;基于适应度函数,利用快速非支配排序算子与个 体拥挤距离算子对子代进行筛选,得到自适应时间窗口的最优划分方案;将动 态社交网络按最优划分方案进行时间窗口划分,得到每个窗口下的网络快照, 使用派系过滤方法得到每个网络快照中的重叠社区;对得到的重叠社区集合按 照所处快照时间戳从前到后的顺序,使用ged社区跟踪方法计算相邻快照中两 两社区的包含度,得到每个社区的社区演化序列,根据社区演化序列识别演化 事件,得到每个序列经历的关键事件;计算社区演化序列中所有社区的多种拓 扑特征;对社区演化序列中符合至少5个网络快照前存在的社区提取5个历史 的社区特征,并和其中经历过4个演化事件拼接为一维特征,将社区下一时刻 的演化事件作为特征的标签;使用randomforest分类器对带标签特征数据进行 机器学习,利用训练好的randomforest分类器进行预测。
[0128]
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明 实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然, 所描述的实施例是本发明一部分实施例,而不是全部的实施例。通常在此处附 图中的描述和所示的本发明实施例的组件可以通过各种不同的配置来布置和设 计。因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要 求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于本发明中的 实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他 实施例,都属于本发明保护的范围。
[0129]
下面结合仿真实验对本发明的效果做进一步的描述。
[0130]
1.仿真条件:
[0131]
本发明的仿真实验的硬件平台为:cpu为intel(r)core(tm)i7-7700hq, 主频为2.8ghz,内存16gb,gpu为nvidia 1060。
[0132]
本发明的仿真实验的软件平台为:windows操作系统和python3.6。
[0133]
2.仿真内容与结果分析:
[0134]
本发明的仿真实验是采用本发明和四个现有技术使用多个数据集进行实验, 对比了社区跟踪后得到的社区序列质量以及最终社区事件预测性能。
[0135]
本发明仿真实验所使用的数据集为四个真实的数据集,分别是:dblp数据 集、autonomous system数据集、yelp数据集、as-caida数据集。
[0136]
dblp数据集包含由计算机领域的作者共同发表的文章的统计数据。dblp 数据集包含标题、作者、年份、出版地点。论文索引识别,以及每篇发表论文 的参考文献识别。本发明选取了1995-2015年的合作文章构形图。每个节点代 表一个作者,每条边代表由两个作者合著的论文。
[0137]
as数据集包含bgp日志中的日常通信网络。本发明在选取了1998年12 月30日至1999年2月27日的数据,并在每日通讯记录上建立社交网络。其中, 每个标识符被视为节点,两个标识符之间的每个关系被视为边。
[0138]
as-caida数据集类似于as数据集。但是as-caida是关于提供者到客户 的信息和提供者到提供者的信息。本发明使用2007年1月至2009年12月的供 应商信息来构建动态的社交网络。
[0139]
yelp数据集是商户、评论和用户数据的集合。本发明使用用户对象数据, 从2010年7月到2014年7月,在每个用户和他或她的朋友之间创建了边界。
[0140]
在仿真实验中,采用的四个现有技术是指:
[0141]
bordka等人在其发表的论文“predicting community evolution in socialnetworks”(ieee,2015)中提出的社区演化事件预测方法,该方法将数据集划分 为传统的不相交和重叠的快照,然后使用ged社区跟踪方法对社区进行跟踪, 最终使用分类器进行训练与预测。
[0142]
ilhan等人在其发表的论文“predicting community evolution based on time series modeling”(ieee,2015)中提出的社区演化事件预测方法。该方法将 arima技术应用于预测下一个时间段的社区特征,并使用预测到的社区特征 来预测下一时刻的社区演化事件。
[0143]
dakiche等人在发表的论文“community evolution prediction in dynamicsocialnetworksusing community features’change rates”(asonam,2019)提出 了的一种社区演化预测方法,该方法利用社区特征的变化率而不是绝对值来预 测社区关键事件的方法。
[0144]
tajeuna等人在其发表的论文“modeling and predicting community structurechanges in time-evolving social networks”(tkde,2019)中提出的一种社区演 化事件预测方法。他们设计了一种方法来找到最适合网络的时间窗口大小。该 方法的时间窗口大小是根据出现、消失和保留在两个连续的独立快照中的节点 数量来估计的。
[0145]
首先对于每一个数据集,本发明研究了三种类型的时间框架,每种时间框 架的大小都不同。本发明使用cpm算法检测每个时间段的社区结构,再使用 ged方法来确定演化事件。在得到社区随时间演化的社区序列后,使用两个一 般标准(apcc,apnp)来评估了在三种不同时间框架下获得的社区序列的质量。
[0146]
由于发现的社区在不同的时间框架下是有差异的,本发明比较了不同时间 框架下所有社区演化序列的平均得分。
[0147]
首先,社区和之间的相似度,用流行的pearson相关系数来评估,定义如 下:
[0148][0149]
其中,vi和vj分别为社区和对应的转移概率向量。vi或vj反应了或与整个时间序列内发现的每个社区共享节点的比例。本发明使用平均皮尔逊相关 系数(apcc)计算社区演化序列sc的全局相似度,如下:
[0150][0151]
另一个标准用来衡量原始社区的节点在社区演化序列中是否漂移,即原始社
[0152][0153]
区的节点在后续社区中是否保留。社区演化序列sc中节点存留(apnp)的平均比例, 表示为:
[0154][0155]
其中为社区中包含的所有节点,在实验中对这些值进行归一化。
[0156]
表2中的“self-adaptive”代表本发明提出的自适应时间窗口划分方法,
ꢀ“
disjoint”代表传统不相交时间窗口划分方法,“overlapping”传统重叠时间窗口划 分方法。
[0157]
表2本发明与现有窗口划分方法跟踪社区演化序列的性能评价表
[0158]
[0159][0160]
结合表2可以看出,在as和as-caida中,不相交时间窗口划分方案下跟 踪的社区演化质量略好于重叠时间窗口划分方案下跟踪的社区演化质量,而本 发明提出的自适应时间窗口划分方法在as、as

caida、dblp、facebook所 有数据集上得到的社区序列质量最优。
[0161]
本发明继续对社区演化事件进一步进行了实验,将社区演化预测作为一个 有监督的学习任务,其中使用一个社区演化的历史来预测其未来。
[0162]
本发明通过f-measure对预测结果进行评价,f-measure是precision和recall 的调和平均值,如下:
[0163][0164]
表3本发明与现有社区演化预测方法的预测性能评价表
[0165]
[0166][0167]
结合表3显示的不同预测模型和本发明提出的自适应时间段预测模型的预 测结果,本发明提出的自适应时间窗口划分方法大大的提升了预测精度,在几 乎所有方面都优于现有的传统划分方法。对于as数据集和as-caida从结果可 以看出,本发明提出的自适应时间框架的预测精度在溶解、收缩方面较好。然 而,它与使用传统重叠时间框架的其他算法没有太大不同,这可能是因为数据 本身的活动更平衡。对于dblp和facebook数据集,自适应时间框架预测在所 有事件中取得了最好的结果,并有显著的改进。
[0168]
以上仿真实验表明:本发明提出的自适应时间窗口划分方法可以减少社区 跟踪过程中的事件误判和遗漏,检测到的社区演化序列具有较高的质量。该发 明在可以明显提升动态社交网络数据在社区跟踪和社区事件预测方面的效果。 本发明通过分析网络活动设计了一种非常优异的自适应时间窗口划分方法。
[0169]
综上所述,本发明一种动态社交网络社区演化预测方法、系统、存储介质 及设备,利用优化的思想,根据不同时期网络的活动选择最合适的时间窗口大 小和重叠率。本发明方法减少了追踪不同时期社区演化过程中的信息丢失,从 而保证了跟踪算法所跟踪的社区进化序列的质量。建立了一种新的社区演化预 测模型,与目前主流的预测模型相比,本
发明社区演化预测模型在现实网络中 可以实现更好的预测精度。
[0170]
本领域内的技术人员应明白,本技术的实施例可提供为方法、系统、或计 算机程序产品。因此,本技术可采用完全硬件实施例、完全软件实施例、或结 合软件和硬件方面的实施例的形式。而且,本技术可采用在一个或多个其中包 含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、 cd-rom、光学存储器等)上实施的计算机程序产品的形式。
[0171]
本技术是参照根据本技术实施例的方法、设备(系统)、和计算机程序产品 的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/ 或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或 方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式 处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机 或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流 程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
[0172]
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备 以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的 指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流 程和/或方框图一个方框或多个方框中指定的功能。
[0173]
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使 得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理, 从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程 或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
[0174]
以上内容仅为说明本发明的技术思想,不能以此限定本发明的保护范围, 凡是按照本发明提出的技术思想,在技术方案基础上所做的任何改动,均落入 本发明权利要求书的保护范围之内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献