论文部分内容阅读
随着网络科学的飞速发展,链路预测逐渐成为复杂网络领域中的重要课题。链路预测算法是通过复杂网络结构信息及节点间相似性,对网络中不相连的节点间可能产生边缘的概率进行预测。网络表示学习可以将复杂网络映射至低维向量空间,很好地捕捉网络的拓扑结构性质,降低算法的时间复杂度以及空间复杂度。本文以网络表示学习为基础在同构网络数据集和异构网络数据集上进行链路预测算法相关研究,主要内容如下:(1)传统的链路预测算法多数是基于网络的邻接矩阵进行设计的。此类算法计算复杂度较高,无法保留网络的高阶结构特性,且存在因随机初始化而陷入局部最小值的风险。因此,本文提出一种生成对抗式分层网络表示学习的链路预测算法(GAHNRL)。首先根据网络图的一阶邻近性和二阶邻近性,递归地对网络图进行边缘折叠和节点合并,形成逐层规模变小的子网络图。其次,使用Node2vec算法对规模最小的子网络图进行预处理,并将预处理结果输入到生成对抗网络模型中,学习到最小子网络图节点的低维向量表示。再次,将学习到的最小子网络图节点的低维向量表示,输入至上一层子网络的生成对抗网络模型中,学习上一层子网络图节点的低维向量表示。按照此方法进行逐层向上回溯学习,直至学习到原始网络图,从而得到原始网络图节点的低维向量表示。最后,根据学习到的原始网络图节点的低维向量表示,在多个不同领域的真实网络数据集上进行实验,实验结果表明,所提出的算法准确率与稳定性均优于其他6种链路预测算法。该算法有效地保留高阶邻近性,避免陷入局部最小值。(2)传统的链路预测算法因仅考虑网络数据集中的一种关系类型故无法应用在异构网络中。因此,本文提出一种基于场景驱动的异构网络表示学习链路预测算法(Scene2vec)。首先将异构网络作为一个整体进行处理,得到所有节点的基础向量表示,再根据场景标识符对异构网络进行场景划分,进而形成场景网络。其次,用自编码器对场景网络进行学习,获得每个场景的向量表示,再对每个节点的所有场景向量表示进行加权累加获得该节点的场景驱动向量表示。最后将基础向量表示和场景驱动向量表示进行线性组合获得的低维向量表示,在多个异构网络数据集上进行链路预测,实验结果表明,Scene2vec算法与其他链路预测算法相比具有更好的性能。Scene2vec算法保留原始网络的网络结构、节点间的相似性和场景间的相似性,且通过划分场景,能够捕获异构网络中不同类型节点之间的场景驱动一阶邻近性和二阶邻近性。