杨 磊,李臣龙
(1.安徽工程大学 计算机与信息学院,安徽 芜湖 241000;2.安徽工程大学 计算机应用技术重点实验室,安徽 芜湖 241000)
基于动态网络的链接分析与预测研究
杨 磊1,2,李臣龙1,2
(1.安徽工程大学 计算机与信息学院,安徽 芜湖 241000;2.安徽工程大学 计算机应用技术重点实验室,安徽 芜湖 241000)
复杂网络通过新节点和新链接的增加而随着时间快速演化,使用网络的静态特征难以产生精确的链接预测。通过分析动态网络特征,结合张量分解,提出了一种新的基于动态网络的链接预测方法,并应用于真实的复杂动态网络数据集中对未来链接进行分析预测,实验演示了该方法的优点和效果,取得了较好的预测结果。
链接预测;动态网络;张量分析;局部路径
随着在线社交平台和信息网络的增长,复杂静态网络研究在社交网络、信息网络等多方面已经有了大量的研究,并取得了很多成果,但这些研究仅仅关注复杂网络单个快照的静态图属性,缺少网络演化的动态信息[1-2],而动态网络的影响扩散过程与静态网络有很大不同。现实世界中几乎所有复杂网络都具有某种动态性,其中个体之间的交互随时间推移而不断发生变化。由于链接预测的挑战,通过分析网络中大量节点的增加或减少,抽取随着时间改变的动态信息对于解决链接预测问题是必要的。
动态网络是一种随着时间演化的特殊网络,表示复杂网络在不同时刻的快照,分析每个时刻网络的演化情况,是动态网络研究的重点。目前动态网络研究还处于起步阶段,国内外很多研究人员针对动态网络的各种问题进行探索,很多问题的提出及研究方法都源于静态网络。然而,基于动态网络的时序特点,动态模式挖掘不是各时刻快照上的简单叠加,动态网络在最短路径、聚集系数等指标的全局及局部时序度量方面与静态指标度量有很大区别[2]。Shan 等人[3]依据所考察网络相邻时刻拓扑结构变化不太大的特点,用网络变化增量方式考察每个时刻的社团结构信息,李艳梅等人[4]针对动态信息网络中异常结构演化过程,通过角色定义刻画网络的结构特征,提出了角色演化异常的概念,并给出了基于模式挖掘的角色演化异常发现算法。大多数动态网络模型是基于平均节点度的增长函数[5-6],在链接预测方面有许多广泛的应用,如基于过去浏览历史预测一个网络冲浪者在一个特定的日子或许会访问的Web页面,预测计算机网络故障的模式,预测一个旅行者在一个特定的月份将要飞往的地方。科学家合作网络是典型的动态网络,随着新作者的加入和原作者间新的合作关系的产生而不断变化,通过研究以前T年的科学会议出版数据,预测作者将会在T+1年在哪次会议发表论文。
本文利用张量分解理论[7],结合局部路径指标链接预测方法[8],通过分析包括时间维在内的三维张量网络链接结构,提出了一种动态网络的链接分析预测方法,新的方法应用于真实的动态网络数据集中进行实验分析及评价,并与共同邻居(CN)、Katz指标方法以及EVtCF[9]进行比较参考,取得了较好的实验结果。
定义1.1(动态网络) 对于无向网络图G(V,E),其中V是节点集合,E是节点间边的集合,集合{GT,t=1, 2, …, T}是一个动态图,Gt是t 时刻网络拓扑图,GT+1= (V, ET+1),ET+1是时刻T+1上图的边集。图1是网络在不同时刻的状态变化,节点a和节点b比其他节点活跃,随着时间变化而不断产生新的链接。
图1 网络节点在不同时刻的状态示例
定义1.2 (动态网络链接预测) 给定T时刻动态网络图{ GT, t=1, 2, …, T},链接预测的问题是推断出下一时刻T+1的图GT+1=(V,ET+1),其中ET+1是T+1时刻的边集。
为了观察链接关系在时间上的演化趋势,动态网络链接数据可以组织成一个三阶张量。通过分析三维张量链接结构,把时间定义为单独的一维,相应时间t上Z的矩阵切片表示为Zt,通过分析Z的链接结构来预测T+1时刻上的链接。定义一个M*N*T大小的张量如下:
张量分析首先出现在心理测验学科和化学统计学中,近几年被其他学科领域广泛采用,包括数据挖掘和图分析。张量作为高维数据( 多维数组) 的一种数学表示,一阶和二阶张量分别称为向量和矩阵,张量的阶为三或者更高则称为高阶张量,一个N阶张量是n个矢量空间的乘积。比较典型的张量分解方法有Tucker分解方法、CP分解方法、HOSVD 分解方法等,CP模型在可解释性、解的唯一性和参数的确定方面更有优势。
一个张量Z是由一系列切片组成,每个切片相当于沿着时段T上的邻接矩阵。一个三维CP张量Z可以表示秩1张量之和形式,如图2所示,即向量ak,bk,ck间的外积与权重λk相乘之后的连加和:
(1)
图2 三阶张量的CP分解
其中∘ 表示外积,k为秩1要素的数量,k=1, …, K。λk∈R+,ak∈RM,bk∈RM,ck∈RM,每个被加数λk(ak∘ bk∘ ck)为一个要素,每个向量为一个因子,每个因子矩阵成为来自秩1要素的向量的组合。向量ak,bk,ck进行标准化,假定||ak||=||bk||=||ck||=1,则λk包含了第k个分量的权重。
(2)
3.1 三维张量转化二维矩阵
首先把数据存入张量Z,则切片Zt(i, j)表示时间段[tD, (t+1)D]上顶点对i和j之间的链接状态,如果在时间D上链接存在,则为Zt(i, j)=1,否则为0。张量是由一系列Z1到ZT间的邻接矩阵组成,其中下标为时段。为了把数据转换为矩阵X,引入权重θ∈(0, 1),链接结构考虑时间越近的邻接矩阵,权重越大,则得到公式:
(3)
本文链接预测方法考虑了具有时间因素矩阵中捕获的时间趋势的多重网络快照,其中时间趋势由张量分解获取,采用Holt-Winters方法[10]用来获取张量的时间序列数据。时间序列数据由xt表示,st为x的下一个输出值。序列在时间t=0开始,指数平滑法的最简单形式如下表达式:
s1=x0
st+1=axt+(1-a)st
(4)