一种基于长短时记忆网络的动态网络结构预测方法技术

技术编号:20682224 阅读:25 留言:0更新日期:2019-03-27 19:18
本发明专利技术公开了一种基于长短时记忆网络的动态网络结构预测方法,包括:(1)收集动态网络数据,确定时间间隔Δ,将数据分割成N个时刻的静态网络G1,G2,…,GN;(2)设定训练时间步长t,根据训练时间步长t将静态网络划分为一系列的数据样本,组成训练集用于模型的训练;(3)根据动态网络中的节点数量,确定模型中的隐藏层层数和每一个隐藏层的单元数量,并搭建模型;(4)将训练集中的数据样本输入模型进行训练,当达到最大训练步数或模型收敛后,模型训练完毕;(5)输入待测试的序列,进行网络结构预测。利用本发明专利技术,能够同时学习网络的非线性特征和时间上的结构演化特征,从而准确预测下一时刻网络的整体结构。

【技术实现步骤摘要】
一种基于长短时记忆网络的动态网络结构预测方法
本专利技术涉及数据挖掘与网络科学领域,尤其是涉及一种基于长短时记忆网络的动态网络结构预测方法。
技术介绍
复杂系统常常用复杂网络来进行建模分析,节点代表系统中的个体,邻边代表个体与个体之间的关系。现实生活中的复杂系统往往是动态演化的,包括个体数量的增加或减少和个体与个体之间关系的变化,例如社交网络中新用户的加入和新的朋友关系的建立。这些动态演化的系统通常用动态网络来描述。动态网络的链路预测能够利用网络演化的历史数据对网络中可能出现或者消失的边进行判断,预测网络的发展趋势,从而使人们可以进一步把握网络演化的内在规律。这对社交网络、经济网络、电力网络和生物网络等典型动态网络的研究具有重要意义。动态网络中包含空间上的结构分布特征和时间上的结构演化特征这两部分主要信息。只考虑其中的一方面信息不能够对网络的演化做出准确预测。传统的网络结构预测算法主要利用的是静态网络结构特征,如CommonNeighbors、JaccardIndex和Katz等。这一类算法依靠的是静态网络结构的统计特征,不仅无法有效提取网络的非线性结构特征,而且无法充分利用网络演变的动态特征,因此不适用于动态网络的结构预测。近年来,随着人工智能学习的兴起,神经网络被广泛应用于检测、分类以及预测等领域。现有的技术方案中,在利用机器学习对网络演化进行预测时,只能对下一时刻中网络中增加的邻边进行预测,而无法预测网络的整体结构变化。
技术实现思路
本专利技术的目的是提供一种基于长短时记忆网络的动态网络结构预测方法,能够在一个端到端的模型内同时学习网络的非线性特征和时间上的结构演化特征,从而能够准确预测下一时刻网络的整体结构。本专利技术的技术方案如下:一种基于长短时记忆网络的动态网络结构预测方法,包括以下步骤:(1)收集动态网络数据,确定时间间隔Δ,将数据分割成N个时刻的静态网络G1,G2,…,GN;(2)设定训练时间步长t,根据训练时间步长t将静态网络划分为一系列的数据样本,组成训练集用于模型的训练;(3)根据动态网络中的节点数量,确定模型中的隐藏层层数和每一个隐藏层的单元数量,并搭建模型,所述的模型包括编码器、LSTM和解码器3个部分;(4)将训练集中的数据样本输入模型进行训练,当训练达到最大训练步数或模型收敛后,模型训练完毕;(5)输入待测试的序列,进行网络结构预测。步骤(1)中,所述的时间间隔Δ根据整个动态网络数据集的时间跨度确定,确定的原则是要保证能够产生足够的训练和测试样本,一般保证分割得到的静态网络的序列大于300个。例如,整个动态网络的时间跨度为1个月,则可以将Δ设定为2个小时,这样可以将整个动态网络分割为一个包含420个静态网络的序列。这些网络可以是无向网络,也可以是有向网络,但本专利技术方法只限于无权网络,即预测连边是否存在。同时,考虑到现实中人与人之间的交互总是会存在一段时间,在构建网络时,除了增加新出现的连边,也会移除4Δ时间段内没有再次出现的连边。步骤(2)中,训练时间步长t一般设定为1~20之间的整数,t越大,则包含的历史信息越多,但也会增加模型的计算量。所述数据样本的划分方法为:按照顺序取{Gk+1,Gk+2,…,Gk+t,Gk+t+1}构成一个样本,其中,前t个网络组成一个序列用于模型的输入,而Gk+t+1为该数据样本对应的实际值。步骤(3)中,在搭建模型之间需要确定模型中隐藏层层数和每一个隐藏层的单元数量,动态网络中包含的节点数量越多,编码器中隐藏层的单元数量越多。解码器与编码器的结构相同,一般都分别包含1~3个隐藏层,LSTM包含1~2个隐藏层,模型中隐藏层可以加速模型的收敛,其激活函数设定为:其中,α表示在模型中隐藏层的激活度值。模型的输出层的激活函数用于判断连边是否存在,其激活函数设定为:其中,x为模型输出。模型的输出层采用sigmoid作为激活函数,因此输出的值为0~1之间的小数。为了与真实的网络结构进行比较(其值为0或1),确定0.5作为阈值。若输出≥0.5,则存在连边;反之则不存在。此外,还可以利用网络中的已知信息对预测结果进行改善:1)网络中不存在自连边,因此将预测得到的网络的对角线置0;2)若网络为无向网络,则需要将预测得到的网络规则化为对称矩阵,本专利技术方法中取预测结果的上三角矩阵及其转置组合得到的矩阵作为预测的下一时刻网络结构。步骤(4)中,模型选用Adam作为反向传播的优化器,在模型训练之前,设置学习率、最大训练步数和最大容忍误差,模型收敛的条件为训练误差小于最大容忍误差,当训练步数到达最大训练步数或者模型收敛时,停止训练。所述模型的训练误差为拟合误差与正则项之和,拟合误差和正则项。拟合误差与正则项的具体公式如下:其中,X代表真实数据,代表预测结果,P为惩罚系数矩阵,n为总节点数,若节点i和j之间存在连边,则pi,j=η>1;反之,则pi,j=1。其中,We为编码器的权重,Wd为解码器的权重,K为组成编码器和解码器的全连接层层数;Wf为LSTM中的遗忘门的权重,Wi和WC为输入门的权重,Wo为输出门的权重,l为LSTM层数。本专利技术通过在一个端到端的模型中,同时学习网络的静态结构特征与随时间演化的动态特性,将两者进行有机融合,判断网络中每一个节点对是否会在下一时刻增加或者减少连边,能够更准确地预测下一时刻网络的整体结构。附图说明图1为本专利技术实施例的基于长短时记忆网络的动态网络结构预测方法的流程图。图2为本专利技术实施例的基于长短时记忆网络的动态网络结构预测方法的模型结构图。具体实施方式为使本专利技术的目的、技术方案及优点更加清楚明白,以下结合附图及实施例对本专利技术进行进一步的详细说明。应当理解,此处所描述的具体实施方式仅仅用以解释本专利技术,并不限定本专利技术的保护范围。本实施例使用公开数据集CONTACT来验证和说明本专利技术方法的有效性。CONTACT数据集包含一个人与人之间交互产生的有向无权的动态网络,其中的节点代表用户,连边表示用户之间的联系。整个数据集包含274个节点,2.82×104条动态连边,共记录了3.97天内的用户间的交流信息。如图1所示,一种基于长短时记忆网络的动态网络结构预测方法,包括以下步骤:S1:确定时间间隔Δ=10min,截取整个数据集中的前56个小时,CONTACT动态网络分割成为一个由336个静态网络组成的序列。由于深度学习模型需要大量的训练数据,因此需要将该动态网络分割为较多的时间片。再考虑人与人之间的面对面交流的实际情况,令Δ=10min是较为合适的。S2:综合考虑模型计算效率与精度,本实施例将模型训练步长t设为10,并据此划分训练集和测试集数据。每一个数据样本为一个由11个静态网络组成的序列{Gk+1,Gk+2,…,Gk+t,Gk+t+1}。其中,前10个网络{Gk+1,Gk+2,…,Gk+t}用于模型的输入,第11个网络为该序列对应的真实数据,与预测结果进行比较,通过反向传播参与模型的训练过程。按照t=10划分336个静态网络,共可得到320个数据样本,即k∈[1,320]。设定训练集和测试集的数据比例为3∶1,即前240个样本数据作为训练集,后80个样本作为测试集。S3:本实施例中所用的模型包括编码器、LSTM和解码器3个部分。编码器和解码器具本文档来自技高网...

【技术保护点】
1.一种基于长短时记忆网络的动态网络结构预测方法,其特征在于,包括以下步骤:(1)收集动态网络数据,确定时间间隔Δ,将数据分割成N个时刻的静态网络G1,G2,…,GN;(2)设定训练时间步长t,根据训练时间步长t将静态网络划分为一系列的数据样本,组成训练集用于模型的训练;(3)根据动态网络中的节点数量,确定模型中的隐藏层层数和每一个隐藏层的单元数量,并搭建模型,所述的模型包括编码器、LSTM和解码器3个部分;(4)将训练集中的数据样本输入模型进行训练,当达到最大训练步数或模型收敛后,模型训练完毕;(5)输入待测试的序列,进行网络结构预测。

【技术特征摘要】
1.一种基于长短时记忆网络的动态网络结构预测方法,其特征在于,包括以下步骤:(1)收集动态网络数据,确定时间间隔Δ,将数据分割成N个时刻的静态网络G1,G2,…,GN;(2)设定训练时间步长t,根据训练时间步长t将静态网络划分为一系列的数据样本,组成训练集用于模型的训练;(3)根据动态网络中的节点数量,确定模型中的隐藏层层数和每一个隐藏层的单元数量,并搭建模型,所述的模型包括编码器、LSTM和解码器3个部分;(4)将训练集中的数据样本输入模型进行训练,当达到最大训练步数或模型收敛后,模型训练完毕;(5)输入待测试的序列,进行网络结构预测。2.根据权利要求1所述的基于长短时记忆网络的动态网络结构预测方法,其特征在于,步骤(1)中,所述的时间间隔Δ根据整个动态网络数据集的时间跨度确定,保证分割得到的静态网络的序列大于300个。3.根据权利要求1所述的基于长短时记忆网络的动态网络结构预测方法,其特征在于,步骤(2)中,训练时间步长t为1~20之间的整数。4.根据权利要求1所述的基于长短时记忆网络的动态网络结构预测方法,其特征在于,步骤(2)中,所述数据样本的划分方法为:按照顺序取Gk+1,Gk+2,…,Gk+t,Gk+t+1构成一个样本,其中,前t个网络组成一个序列用于模型的输入,Gk+t+1为该数据样本对应的实际值。5....

【专利技术属性】
技术研发人员:陈晋音张剑宣琦徐轩桁
申请(专利权)人:浙江工业大学
类型:发明
国别省市:浙江,33

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

1