技术领域
本发明涉及计算机数据挖掘领域,特别是涉及一种基于边信息增强的属性网络嵌入方法及系统。
背景技术
近年来,属性网络嵌入的任务是结合网络结构和节点属性,共同学习节点的低维表示。与普通网络相比,属性网络具有更好的网络表达能力。因为它不仅反映了网络的拓扑结构,而且还带有节点的属性信息。节点属性不仅补充了网络节点的内容,而且能有效提高网络嵌入的质量,使得属性网络嵌入在网络分析任务中获得更好的性能。例如,在经典的属性网络嵌入模型TADW中,它在普通网络嵌入模型DeepWalk的基础上添加节点属性信息,从而获得比DeepWalk更好的性能。因此,通过利用网络结构和节点属性学习网络嵌入,可以有效提高节点表示的质量。然而,网络结构和节点属性是网络的两个不同信息源。如何有效地结合这两种异构信息也是许多学者的研究重点。
现有的属性网络嵌入模型仍然存在一些问题。首先,一些基于序列学习的属性网络嵌入模型仅依靠网络结构进行游走来获取节点序列,而没有考虑节点属性对序列生成的影响,在没有属性偏向的随机游动情况下获得的节点序列并不能完全反映属性网络中节点之间的关系。其次,在节点序列中,不仅存在节点之间的关系,而且还存在边之间的关系,大多数序列学习模型只考虑了序列中节点之间的位置关系,而没有考虑网络中边的信息对序列的影响以及节点属性与边两者之间的关系,和边反映了节点之间的关系相同,依靠节点属性度量的节点相似性也反映了节点之间的关系,所以,在序列学习中忽略了边和节点属性的信息会无法在网络嵌入学习中得到更多的网络信息,最终无法获得高质量的节点表示。第三,序列中的隐藏关系经常被忽略,这使得节点之间的各种潜在关系无法被挖掘,无法找到序列中的某些隐藏信息,这也会在一定程度上影响节点表示的质量。
发明内容
本发明的目的是提供一种基于边信息增强的属性网络嵌入方法及系统,以解决现有的属性网络嵌入模型在没有属性偏向的随机游动情况下获得的节点序列并不能完全反映属性网络中节点之间的关系、无法获得高质量的节点表示以及无法找到序列中的某些隐藏信息的问题。
为实现上述目的,本发明提供了如下方案:
一种基于边信息增强的属性网络嵌入方法,包括:
将节点属性相似度添加到随机游动中,生成属性偏向的游动,确定属性网络模型的样本序列;
根据所述样本序列生成节点序列,并将位置约束加入到所述节点序列中,生成带有位置约束的节点序列;
在所述带有位置约束的节点序列的基础上,将节点属性相似度作为约束条件加入到所述属性网络模型的边序列中,生成带有属性约束的边序列;
利用自注意力机制来挖掘所述带有位置约束的节点序列的节点序列潜在相关性信息以及所述带有属性约束的边序列的边序列潜在相关性信息;
根据所述节点序列潜在相关性信息以及所述边序列潜在相关性信息生成最优属性网络表示。
可选的,属性偏向的游动过程中的属性偏向概率为:
可选的,所述利用自注意力机制来挖掘所述带有位置约束的节点序列的节点序列潜在相关性信息以及所述带有属性约束的边序列的边序列潜在相关性信息,具体包括:
将所述带有位置约束的节点序列作为输入,同时获取隐空间数量;
基于自注意力机制,在每一个所述隐空间中,随机初始化生成三个第一转化矩阵以及三个第一偏置矩阵;
根据所述第一转化矩阵以及所述第一偏置矩阵确定每个所述隐空间中经过自注意力机制转化后的节点序列矩阵;
将每个所述隐空间得到的所述节点序列矩阵进行组合,确定最终的节点序列矩阵;
根据所述最终的节点序列矩阵确定多个节点序列潜在相关性信息。
可选的,所述利用自注意力机制来挖掘所述带有位置约束的节点序列的节点序列潜在相关性信息以及所述带有属性约束的边序列的边序列潜在相关性信息,具体包括:
将所述带有属性约束的边序列作为输入,同时获取隐空间数量;
基于自注意力机制,在每一个所述隐空间中,随机初始化生成三个第二转化矩阵以及三个第二偏置矩阵;
根据所述第二转化矩阵以及所述第二偏置矩阵确定每个所述隐空间中经过自注意力机制转化后的边序列矩阵;
将每个所述隐空间得到的所述边序列矩阵进行组合,确定最终的边序列矩阵;
根据所述最终的边序列矩阵确定多个边序列潜在相关性信息。
可选的,所述根据所述节点序列潜在相关性信息以及所述边序列潜在相关性信息生成最优属性网络表示,之前还包括:
将交叉熵函数作为损失函数;所述损失函数用于判断所述最优属性网络是否达到最优情况。
一种基于边信息增强的属性网络嵌入系统,包括:
样本序列确定模块,用于将节点属性相似度添加到随机游动中,生成属性偏向的游动,确定属性网络模型的样本序列;
带有位置约束的节点序列生成模块,用于根据所述样本序列生成节点序列,并将位置约束加入到所述节点序列中,生成带有位置约束的节点序列;
带有属性约束的边序列生成模块,用于在所述带有位置约束的节点序列的基础上,将节点属性相似度作为约束条件加入到所述属性网络模型的边序列中,生成带有属性约束的边序列;
挖掘模块,用于利用自注意力机制来挖掘所述带有位置约束的节点序列的节点序列潜在相关性信息以及所述带有属性约束的边序列的边序列潜在相关性信息;
最优属性网络表示生成模块,用于根据所述节点序列潜在相关性信息以及所述边序列潜在相关性信息生成最优属性网络表示。
可选的,所述样本序列确定模块内属性偏向的游动过程中的属性偏向概率为:
可选的,所述挖掘模块,具体包括:
第一输入单元,用于将所述带有位置约束的节点序列作为输入,同时获取隐空间数量;
第一初始化单元,用于基于自注意力机制,在每一个所述隐空间中,随机初始化生成三个第一转化矩阵以及三个第一偏置矩阵;
节点序列矩阵确定单元,用于根据所述第一转化矩阵以及所述第一偏置矩阵确定每个所述隐空间中经过自注意力机制转化后的节点序列矩阵;
最终的节点序列矩阵确定单元,用于将每个所述隐空间得到的所述节点序列矩阵进行组合,确定最终的节点序列矩阵;
节点序列潜在相关性信息确定单元,用于根据所述最终的节点序列矩阵确定多个节点序列潜在相关性信息。
可选的,所述挖掘模块具体包括:
第二输入单元,用于将所述带有属性约束的边序列作为输入,同时获取隐空间数量;
第二初始化单元,用于基于自注意力机制,在每一个所述隐空间中,随机初始化生成三个第二转化矩阵以及三个第二偏置矩阵;
边序列矩阵确定单元,用于根据所述第二转化矩阵以及所述第二偏置矩阵确定每个所述隐空间中经过自注意力机制转化后的边序列矩阵;
最终的边序列矩阵确定单元,用于将每个所述隐空间得到的所述边序列矩阵进行组合,确定最终的边序列矩阵;
边序列潜在相关性信息确定单元,用于根据所述最终的边序列矩阵确定多个边序列潜在相关性信息。
可选的,还包括:
损失函数确定模块,用于将交叉熵函数作为损失函数;所述损失函数用于判断所述最优属性网络是否达到最优情况。
根据本发明提供的具体实施例,本发明公开了以下技术效果:本发明提供了一种基于边信息增强的属性网络嵌入方法及系统,在样本序列生成的随机游走中考虑了节点属性对游走策略的影响,使得到的节点序列更符合属性网络的性质;在节点序列学习的基础上,考虑了网络中的边信息,在属性网络模型中加入了边序列学习,同时在边序列学习中加入节点属性作为约束,起到了信息增强的作用,提高了节点表示的质量,得到的节点表示在网络的链接预测任务中取得了更好的效果;在节点序列学习和边缘序列学习中,利用自注意力Self-Attention机制来挖掘序列的相关性信息,并利用多个潜在空间中的Self-Attention机制来学习到了序列中的多个潜在相关信息。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明所提供的基于边信息增强的属性网络嵌入方法流程图;
图2为本发明所提供的基于边信息增强的属性网络嵌入方法简化流程图;
图3为本发明所提供的基于边信息增强的属性网络嵌入系统结构图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明的目的是提供一种基于边信息增强的属性网络嵌入方法及系统,能够使得到的节点序列更符合属性网络的性质、提高了节点表示的质量,得到的节点表示在网络的链接预测任务中取得了更好的效果以及利用多个潜在空间中的Self-Attention机制学习到节点序列以及边序列中的多个潜在相关信息。
为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。
图1为本发明所提供的基于边信息增强的属性网络嵌入方法流程图,如图1所示,一种基于边信息增强的属性网络嵌入方法,包括:
步骤101:将节点属性相似度添加到随机游动中,生成属性偏向的游动,确定属性网络模型的样本序列。
将网络结构和节点之间的属性相似度相结合来进行属性偏向的随机游走,将随机游走得到的节点序列添加到后续的序列学习模块中,从而得到节点的低维表示。
属性相似度通过节点属性度量了节点之间的关系。两个节点具有的相同属性越多,说明两个节点就越相似。因此,将属性相似度添加到随机游动中以生成属性偏向的游动。用余弦相似度来计算节点的属性相似度:
其中,S
考虑从当前节点v
其中,P(v
步骤102:根据所述样本序列生成节点序列,并将位置约束加入到所述节点序列中,生成带有位置约束的节点序列。
节点序列学习根据属性偏向游走获得的样本序列以学习节点之间的相关性;同时在节点序列学习中加入位置约束来保证学习到节点的位置信息,H
步骤103:在所述带有位置约束的节点序列的基础上,将节点属性相似度作为约束条件加入到所述属性网络模型的边序列中,生成带有属性约束的边序列。
边序列学习通过边的序列来学习边之间的相关性,并将边序列信息添加到节点表示中;同时将节点属性的相似度作为约束条件加入到边序列学习中,起到信息增强的作用,在边序列中,将相邻节点的表示取均值作为节点之间的边表示,所以节点序列学习中得到的节点序列表示
H
其中,
步骤104:利用自注意力机制来挖掘所述带有位置约束的节点序列的节点序列潜在相关性信息以及所述带有属性约束的边序列的边序列潜在相关性信息。
为了学习序列中的多个潜在相关信息,使用了多个潜在空间中的self-attention机制,对于序列中的每个节点,self-attention会学习当前节点与其他节点之间的权重。根据对应节点的权重来更新当前节点的表示。在多个潜在空间中,self-attention会为序列中的每个节点学习多个表示。为了融合多个潜在的相关信息,对节点的多个表示进行平均得到最终序列输出
将带有位置约束的节点序列矩阵
与节点序列学习相同,使用多个潜在空间中的self-attention机制来学习序列中的多个潜在相关信息。最后将多个潜在空间的边表示进行平均得到最终边序列输出
将带有属性约束的边序列矩阵
步骤105:根据所述节点序列潜在相关性信息以及所述边序列潜在相关性信息生成最优属性网络表示。
属性网络表示指的是为网络中的节点学习得到一个低维向量,在后续的下游任务中用这个向量来表示该节点。比如在社交网络中,可以为每个用户学习得到一个向量,在之后的用户分类任务中,用该向量来表示任一用户进行分类任务。节点不只是通讯设备,所有可以抽象成网络的都可以做网络嵌入。
所述步骤105之前还包括:将交叉熵函数作为损失函数;所述损失函数用于判断所述最优属性网络是否达到最优情况。
损失函数的设置用于判断节点序列学习和边缘序列学习后的节点表示质量,并通过反向传播迭代更新模型中的参数,以学习得到更高质量的节点表示。对于边序列学习得到的边序列表示,通过平均池化层将边序列表示转换为序列表示,之后将序列表示输入到全连接层将序列分为正样本和负样本。最后,使用正负样本的分离程度作为节点表示质量的标准,因此将交叉熵函数用作损失函数:
其中,N为序列的总数,y
根据设置的损失函数,使用Adam算法对模型进行后向传播迭代来优化更新模型中的节点表示矩阵H
图3为本发明所提供的基于边信息增强的属性网络嵌入系统结构图,如图3所示,一种基于边信息增强的属性网络嵌入系统,包括:
样本序列确定模块301,用于将节点属性相似度添加到随机游动中,生成属性偏向的游动,确定属性网络模型的样本序列。
所述样本序列确定模块301内属性偏向的游动过程中的属性偏向概率为:
带有位置约束的节点序列生成模块302,用于根据所述样本序列生成节点序列,并将位置约束加入到所述节点序列中,生成带有位置约束的节点序列。
带有属性约束的边序列生成模块303,用于在所述带有位置约束的节点序列的基础上,将节点属性相似度作为约束条件加入到所述属性网络模型的边序列中,生成带有属性约束的边序列。
挖掘模块304,用于利用自注意力机制来挖掘所述带有位置约束的节点序列的节点序列潜在相关性信息以及所述带有属性约束的边序列的边序列潜在相关性信息。
所述挖掘模块304具体包括:第一输入单元,用于将所述带有位置约束的节点序列作为输入,同时获取隐空间数量;第一初始化单元,用于基于自注意力机制,在每一个所述隐空间中,随机初始化生成三个第一转化矩阵以及三个第一偏置矩阵;节点序列矩阵确定单元,用于根据所述第一转化矩阵以及所述第一偏置矩阵确定每个所述隐空间中经过自注意力机制转化后的节点序列矩阵;最终的节点序列矩阵确定单元,用于将每个所述隐空间得到的所述节点序列矩阵进行组合,确定最终的节点序列矩阵;节点序列潜在相关性信息确定单元,用于根据所述最终的节点序列矩阵确定多个节点序列潜在相关性信息。
所述挖掘模块304具体包括:第二输入单元,用于将所述带有属性约束的边序列作为输入,同时获取隐空间数量;第二初始化单元,用于基于自注意力机制,在每一个所述隐空间中,随机初始化生成三个第二转化矩阵以及三个第二偏置矩阵;边序列矩阵确定单元,用于根据所述第二转化矩阵以及所述第二偏置矩阵确定每个所述隐空间中经过自注意力机制转化后的边序列矩阵;最终的边序列矩阵确定单元,用于将每个所述隐空间得到的所述边序列矩阵进行组合,确定最终的边序列矩阵;边序列潜在相关性信息确定单元,用于根据所述最终的边序列矩阵确定多个边序列潜在相关性信息。
最优属性网络表示生成模块305,用于根据所述节点序列潜在相关性信息以及所述边序列潜在相关性信息生成最优属性网络表示。
本发明还包括:损失函数确定模块,用于将交叉熵函数作为损失函数;所述损失函数用于判断所述最优属性网络是否达到最优情况。
本发明所提供的一种基于边信息增强的属性网络嵌入方法及系统,能够使得到的节点序列更符合属性网络的性质、提高了节点表示的质量,得到的节点表示在网络的链接预测任务中取得了更好的效果以及利用多个潜在空间中的Self-Attention机制学习到节点序列以及边序列中的多个潜在相关信息。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的系统而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处。综上所述,本说明书内容不应理解为对本发明的限制。
机译: 密码系统,基于属性等级方法基于密码学的属性生成方法来生成用于密码系统的用户的密钥的方法,基于密码学的属性分层方法的密码系统中用于密码系统的消息基于层次属性的计算机程序
机译: 用于基于对象的像素值之间的一致性来设置像素的属性的信息处理设备,用于基于对象的像素值之间的一致性来设置像素的属性的信息处理方法,以及用于设置像素的非暂时性计算机可读介质。基于对象像素值之间一致性的像素属性
机译: 基于集成属性的组签名处理方法,基于集成属性的基于组签名认证处理方法,基于集成属性的基于组签名跟踪处理方法,基于集成属性的基于组签名处理系统,以及程序