1.一种门控循环网络的方法,其特征在于,该方法包括单元计算步骤;
所述单元计算步骤包括如下步骤:
su1:计算函数rt=σ(wr·comb(ht-1,xt))和函数zt=σ(wz·comb(ht-1,xt));
su2:计算函数
su3:计算函数
su4:计算函数yt=σ(wy·ht);
其中,
wr、wz、wh和wy分别为权重矩阵;
xt为t时刻所述单元计算步骤的输入矩阵;
ht-1为t时刻的上一时刻的候选状态矩阵;
ht为t时刻的候选状态矩阵;
rt为t时刻的重置门输出矩阵;
zt为t时刻的更新门输出矩阵;
1t为所有元素为1的矩阵,并且该矩阵与zt具有相同的行列数;
yt为t时刻所述单元计算步骤的输出矩阵;
comb为矩阵拼接函数;
tanh为双曲正切函数;
σ为归一化函数sigmoid,该函数中,若输入的矩阵元素为大于0.5则将该矩阵元素设为1,否则将该矩阵元素设为0。
2.如权利要求1所述的门控循环网络的方法,其特征在于,该方法包括若干个链式连接的所述单元计算步骤;其中,前一个单元计算步骤的输出矩阵yt作为下一个单元计算步骤的输入矩阵xt。
3.如权利要求1所述的门控循环网络的方法,其特征在于,该方法包括模型计算步骤;
所述模型计算步骤包括编码步骤、解码步骤以及若干个链式连接的所述单元计算步骤;
所述编码步骤用于将输入样本矩阵编码成第一个单元计算步骤的输入矩阵xt;
若干个链式连接的所述单元计算步骤中,前一个单元计算步骤的输出矩阵yt作为下一个单元计算步骤的输入矩阵xt;
所述解码步骤用于将最后一个单元计算步骤的输出矩阵yt解码成输出样本矩阵et;
所述输出样本矩阵et是所述模型计算步骤的输出。
4.如权利要求3所述的门控循环网络的方法,其特征在于,该方法还包括回馈步骤;
所述回馈步骤用于将所述模型计算步骤所输出的输出样本矩阵et与检验样本矩阵bt进行比对计算出损失系数,然后将损失系数逆向回传;
所述损失系数采用如下公式计算:
其中,
lt为t时刻的损失系数;
et,i,j为t时刻的所述输出样本矩阵et的第i行第j列的值;
bt,i,j为t时刻的所述检验样本矩阵bt的第i行第j列的值;
pi,j为et,i,j的惩罚系数,若et,i,j为0,则pi,j=1,否则pi,j=β;
α为预先设定的大于0且小于1的第一训练参数;
β为预先设定的大于1的第二训练参数;
n和m分别为所述输出样本矩阵et的行数和列数;
所述检验样本矩阵bt的行数和列数与所述输出样本矩阵et相同;
l2为l2范数。
5.一种链路预测的方法,其特征在于,该方法基于如权利要求4所述的门控循环网络的方法,包括训练步骤和预测步骤;
所述训练步骤包括如下步骤:
st1:获取网络节点信息以及历史的网络节点之间的链路生成信息;
st2:根据网络节点之间链路生成的时间,按照时间间隔ts,将所述历史的网络节点之间的链路生成信息组成链路生成集合序列;
所述链路生成集合序列是由链路生成集合按时间顺序排列的序列;
所述链路生成集合是相应时间间隔内所生成的网络节点之间的链路生成信息的集合;
st3:根据所述网络节点信息,将所述链路生成集合序列中的各所述链路生成集合转换成链接方阵,从而组成链接方阵序列aseq={a1,a2,a3,…,at};其中,
t是链接方阵序列aseq中链接方阵的个数,表示链接方阵序列aseq有t个时刻的链接方阵;
at是t时刻的链接方阵,其中t∈[1..t];
at是由at,i,j组成的方阵;
at,i,j表示t时刻第i个网络节点与第j个网络节点生成的链路;
若t时刻第i个网络节点与第j个网络节点之间有链路生成,则at,i,j=1,否则at,i,j=0;
其中,i,j∈[1..nnode];nnode为网络节点数;
st4:按照k个时刻大小的滑动窗口,以滑动窗口的方式从所述链接方阵序列aseq中选取k个链接方阵,并将k个链接方阵中前k-1个链接方阵组成组成训练样本集,k个链接方阵中最后一个链接方阵作为检验样本,组成t-k+1个训练检验样本;所述训练检验样本由所述训练样本集和检验样本所组成;
st5:对所述t-k+1个训练检验样本进行逐个训练;
其中,对所述训练检验样本进行训练中:
将所述训练检验样本中的所述训练样本集中的各个链接方阵作为所述模型计算步骤的输入样本矩阵逐个输入至所述模型计算步骤进行计算;当所述训练检验样本中的所述训练样本集中的所有链接方阵均通过模型计算步骤进行计算后,提取所述模型计算步骤所输出的输出样本矩阵et,并将所述输出样本矩阵et与所述训练检验样本中的检验样本输入至所述回馈步骤;
所述预测步骤包括如下步骤:
sp1:获取网络节点信息以及最近的链路生成信息;
所述最近的链路生成信息是距离当前时间间隔tk范围内的网络节点之间的链路生成信息;
sp2:根据所述网络节点信息,将所述最近的链路生成信息转换成链接方阵得到最近的链接方阵;
sp3:将所述的最近的链接方阵作为所述模型计算步骤的输入样本矩阵输入至所述模型计算步骤进行计算得到其输出样本矩阵et作为预测结果。
6.一种门控循环网络的装置,其特征在于,该装置包括如下单元计算模块;
所述单元计算模块包括如下模块:
mu1,用于计算:函数rt=σ(wr·comb(ht-1,xt))和函数zt=σ(wz·comb(ht-1,xt));
mu2,用于计算:函数
mu3,用于计算:函数
mu4,用于计算:函数yt=σ(wy·ht);
其中,
wr、wz、wh和wy分别为权重矩阵;
xt为t时刻所述单元计算模块的输入矩阵;
ht-1为t时刻的上一时刻的候选状态矩阵;
ht为t时刻的候选状态矩阵;
rt为t时刻的重置门输出矩阵;
zt为t时刻的更新门输出矩阵;
1t为所有元素为1的矩阵,并且该矩阵与zt具有相同的行列数;
yt为t时刻所述单元计算模块的输出矩阵;
comb为矩阵拼接函数;
tanh为双曲正切函数;
σ为归一化函数sigmoid,该函数中,若输入的矩阵元素为大于0.5则将该矩阵元素设为1,否则将该矩阵元素设为0。
7.如权利要求6所述的门控循环网络的装置,其特征在于,该装置包括若干个链式连接的所述单元计算模块;其中,前一个单元计算模块的输出矩阵yt作为下一个单元计算模块的输入矩阵xt。
8.如权利要求6所述的门控循环网络的装置,其特征在于,该方法包括模型计算模块;
所述模型计算模块包括编码模块、解码模块以及若干个链式连接的所述单元计算模块;
所述编码模块用于将输入样本矩阵编码成第一个单元计算模块的输入矩阵xt;
若干个链式连接的所述单元计算模块中,前一个单元计算模块的输出矩阵yt作为下一个单元计算模块的输入矩阵xt;
所述解码模块用于将最后一个单元计算模块的输出矩阵yt解码成输出样本矩阵et;
所述输出样本矩阵et是所述模型计算模块的输出。
9.如权利要求8所述的门控循环网络的装置,其特征在于,该装置还包括回馈模块;
所述回馈模块用于将所述模型计算模块所输出的输出样本矩阵et与检验样本矩阵bt进行比对计算出损失系数,然后将损失系数逆向回传;
所述损失系数采用如下公式计算:
其中,
lt为t时刻的损失系数;
et,i,j为t时刻的所述输出样本矩阵et的第i行第j列的值;
bt,i,j为t时刻的所述检验样本矩阵bt的第i行第j列的值;
pi,j为et,i,j的惩罚系数,若et,i,j为0,则pi,j=1,否则pi,j=β;
α为预先设定的大于0且小于1的第一训练参数;
β为预先设定的大于1的第二训练参数;
n和m分别为所述输出样本矩阵et的行数和列数;
所述检验样本矩阵bt的行数和列数与所述输出样本矩阵et相同;
l2为l2范数。
10.一种链路预测的装置,其特征在于,该装置基于如权利要求8所述的门控循环网络的装置,包括训练模块和预测模块;
所述训练模块包括如下模块:
mt1,用于:获取网络节点信息以及历史的网络节点之间的链路生成信息;
mt2,用于:根据网络节点之间链路生成的时间,按照时间间隔ts,将所述历史的网络节点之间的链路生成信息组成链路生成集合序列;
所述链路生成集合序列是由链路生成集合按时间顺序排列的序列;
所述链路生成集合是相应时间间隔内所生成的网络节点之间的链路生成信息的集合;
mt3,用于:根据所述网络节点信息,将所述链路生成集合序列中的各所述链路生成集合转换成链接方阵,从而组成链接方阵序列aseq={a1,a2,a3,…,at};其中,
t是链接方阵序列aseq中链接方阵的个数,表示链接方阵序列aseq有t个时刻的链接方阵;
at是t时刻的链接方阵,其中t∈[1..t];
at是由at,i,j组成的方阵;
at,i,j表示t时刻第i个网络节点与第j个网络节点生成的链路;
若t时刻第i个网络节点与第j个网络节点之间有链路生成,则at,i,j=1,否则at,i,j=0;
其中,i,j∈[1..nnode];nnode为网络节点数;
mt4,用于:按照k个时刻大小的滑动窗口,以滑动窗口的方式从所述链接方阵序列aseq中选取k个链接方阵,并将k个链接方阵中前k-1个链接方阵组成组成训练样本集,k个链接方阵中最后一个链接方阵作为检验样本,组成t-k+1个训练检验样本;所述训练检验样本由所述训练样本集和检验样本所组成;
mt5,用于:对所述t-k+1个训练检验样本进行逐个训练;
其中,对所述训练检验样本进行训练中:
将所述训练检验样本中的所述训练样本集中的各个链接方阵作为所述模型计算模块的输入样本矩阵逐个输入至所述模型计算模块进行计算;当所述训练检验样本中的所述训练样本集中的所有链接方阵均通过模型计算模块进行计算后,提取所述模型计算模块所输出的输出样本矩阵et,并将所述输出样本矩阵et与所述训练检验样本中的检验样本输入至所述回馈模块;
所述预测模块包括如下模块:
mp1,用于:获取网络节点信息以及最近的链路生成信息;
所述最近的链路生成信息是距离当前时间间隔tk范围内的网络节点之间的链路生成信息;
mp2,用于:根据所述网络节点信息,将所述最近的链路生成信息转换成链接方阵得到最近的链接方阵;
mp3,用于:将所述的最近的链接方阵作为所述模型计算模块的输入样本矩阵输入至所述模型计算模块进行计算得到其输出样本矩阵et作为预测结果。