本发明涉及机器学习及网络表征优化技术领域,尤其涉及一种利用多属性信息增强网络表征学习的方法。
背景技术:
多种现实中重要的网络,例如社交网络、引用网络和航空网络,都具有复杂的结构特征和丰富的属性信息(例如,性别、评论和用户画像等)。如何利用这些信息来对网络表征进行更好的学习,这是网络挖掘中一个基本但具有挑战性的工作。一个流行且有效的方式是将网络节点映射到低维空间进行表示,这种方式适用于多种任务,例如节点分类、社团发现和目标针对性广告。
最近,有很多关于网络表征的算法提出,例如deepwalk,line和node2vec。尽管这些方法已经被证明在多个网络分析任务中是有效的,但他们中的大部分在网络表征学习时主要考虑了结构拓扑信息。但在现实中,网络节点可能具有多个有助于提高网络表征学习效果和有益于后面分析任务的属性,这些属性也许属于不同的类型。为了得到具有更好效果的表征,一些工作考虑引入节点属性或社团结构等信息来进行网络表征的学习。
尽管有些工作在引入属性信息进行节点表征的学习方面已经做出了很多重要的努力,但是如何有效的对具有稀疏连接和非一致属性信息的网络进行节点表征,目前还处在不断探索的研究阶段。一般来说,在实际网络中,节点之间的连接信息可能是缺失的,属性相互之间可以是异构的,而且,一些新增节点也可能具有有限或没有连接信息。另外,不同社团具有的公共属性可能是相同的,这意味着从网络节点数据的不同部分的网络属性信息中学习得到的节点表征,所编码的网络结构信息很可能具有不一致性,属性信息和结构拓扑之间亦然。当我们利用属性信息来增强网络表征的学习时,如何处理这些不一致性。以上诸多问题给目前存在的方法对网络表征进行有效的学习带来了挑战。已经有一些工作尝试利用和节点相关的文本来提高网络表征的学习效果,也有一些工作尝试以深度学习的方式,利用节点属性来增强网络表征的学习,但是,它们要么不能针对性的处理上述提出的非一致性问题,要么主要得到了不同视角属性信息之间的共同信息部分。
因此,探索更多能有效捕捉非线性结构信息和克服不一致性影响,并尽可能保留更多有效信息的技术方法是亟需和必要的。
技术实现要素:
本发明的目的是提供一种利用多属性信息增强网络表征学习的方法,能捕捉非线性的网络结构,同时能从一定角度在一定程度上解决网络拓扑结构及各属性信息之间的非一致性问题,并充分发挥属性信息的增强作用,保留尽可能多的信息。
本发明的目的是通过以下技术方案实现的:
一种利用多属性信息增强网络表征学习的方法,包括:
步骤s1、将网络节点的不同类型的属性相似性信息分别和对应网络节点之间的结构邻接信息通过第一半监督深度模型进行融合,得到多个不同隐空间的表征;
步骤s2、将网络节点之间的结构邻接信息通过第二半监督深度模型进行优化,获得仅利用结构邻接信息得到的网络节点在隐空间的表征;
步骤s3、将步骤s1~步骤s2获得的隐空间的表征进行融合,获得最终的网络表征。
由上述本发明提供的技术方案可以看出,学习网络节点的表征矢量时,既考虑网络的拓扑结构信息和节点属性信息,同时,也充分发挥属性信息的辅助作用;该方案特别适用于对具有稀疏连接和属性信息不一致的网络的表征进行学习,通过这种方式取得了较好的网络表征学习效果;该方案可以为节点分类、连接预测、社团发现和目标针对性广告等任务提供更准确的支撑。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他附图。
图1为本发明实施例提供的一种利用多属性信息增强网络表征学习的方法的流程图;
图2为本发明实施例提供的实现利用多属性信息增强网络表征学习方法的模型框架整体框图。
具体实施方式
下面结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明的保护范围。
本发明实施例提供一种利用多属性信息增强网络表征学习的方法,其主要针对网络的稀疏性和信息不一致性问题,设计了一种将网络拓扑结构信息和节点属性信息结合在一起的半监督深度模型,并设计了一种将多视角信息融合在一起的模型框架。该设计的目的是在对网络节点的表征矢量进行学习时,既要考虑网络的拓扑结构信息和节点属性信息,同时,也要充分发挥属性信息的辅助作用。
如图1所示,为利用多属性信息增强网络表征学习的方法的流程图,图2为相应的模型框架;上述方法主要包括如下步骤:
步骤s1、将网络节点的不同类型的属性相似性信息分别和对应网络节点之间的结构邻接信息通过第一半监督深度模型进行融合,得到多个不同隐空间的表征。
本步骤中,将网络节点的不同类型的属性相似性信息作为第一半监督深度模型的输入,然后利用网络的结构邻接信息通过反向传播算法对隐空间中的表征进行细调。
其中的属性相似性信息,对应于属性的相似矩阵,第t个属性的相似矩阵ct中的第i行第j列元素
结构邻接信息,对应于网络节点对之间的邻接性,具体每一个网络节点对(vi,vj),它们之间连接的权重代表着网络节点对之间的邻接性,同时也代表着网络节点对拓扑结构的相似性。一般用结构邻接矩阵s表示结构邻接信息,s中的第i行第j列元素si,j即为网络节点对(vi,vj)之间的邻接性。
通过在第一半监督深度模型中对结构和属性相似性信息进行联合优化,不仅能保留高度非线性的网络结构信息,还能够提高属性信息的增强效果。
在模型框架中,本步骤对应多属性增强表征部分。
本发明实施例中,所使用的第一半监督深度模型,又称为单属性增强深度网络,其是对深度autoencoder的改进,每一层隐空间的表征计算公式如下:
其中,
本发明实施例中,第一半监督深度模型的损失函数为:
其中,
第一半监督深度模型中,
其中,n表示网络节点总数目,·代表点乘操作,
步骤s2、将网络节点之间的结构邻接信息通过第二半监督深度模型进行优化,获得仅利用结构邻接信息得到的网络节点在隐空间的表征。
本步骤中,将网络节点之间的结构邻接信息作为第二半监督深度模型的输入,然后利用网络节点之间的结构邻接信息通过反向传播算法对隐空间中的表征进行细调。本步骤的作用是增强结构拓扑信息在最终表征中发挥效果的比重,同时,也是为了更好的处理属性信息太过稀疏或完全缺失的情况。
在模型框架中,本步骤对应结构表征部分。
本发明实施例中,所述第二半监督深度模型与第一半监督深度模型类似,区别在于,将属性相似矩阵ct替换为结构邻接矩阵s,并将公式(4)中的
为了表示的统一,本步骤获得的网络节点vi在隐空间的表征也记为
本领域技术人员可以理解,文中的第一、第二仅用于区分两个半监督深度模型。
步骤s3、将步骤s1~步骤s2获得的隐空间的表征进行融合,获得最终的网络表征。
本步骤中,对之前两个步骤获得的不同隐空间的表征进行融合,从而能获得更好的网络表征,这种表征对具有稀疏性和不一致属性的网络是鲁棒的,并在某种程度上具有更有效的信息。
在模型框架中,本步骤对应结合层部分。
本发明实施例中,将不同隐空间的表征进行融合的方式有两种,分别为拼接与权重求和;
对于两个矩阵的拼接,是指将相同行的数据拼接为一行,从而形成一个新的矩阵;也即通过拼接的方式来将步骤1与步骤2的表征合并为最终的表征,记为yi。
对于权重求和方法,可以通过注意力机制利用标签训练数据训练得到权重值,公式表示如下:
其中,yi为最终的网络节点vi的表征,
定义基于注意力机制的权重学习方法如下:
其中,当t∈[1,t]时,gt表示第t个属性信息的权重矢量,t=s时,gt表示结构邻接信息的权重矢量,
通过拼接前面模块获得的每个网络节点的多个隐空间的表征,或通过公式(6)能够得到鲁棒和具有区分度的表征yi,同时,这种表征在某种程度上具有更有效信息。
另一方面,本发明实施例还提模型的优化算法,目的是实现第一和第二半监督深度模型的优化:
1)对第一和第二半监督深度模型进行优化。
优化的目的是在权重和偏置参数
优化过程是通过如下公式计算
上式中,
通过上述公式得到关于
同理,采用上述方式对第二半监督深度模型中的参数进行调整。
2)基于具体的任务误差利用反向传播算法得到公式(7)中的权重
对于分类任务,最小化关于第t个属性信息的权重矢量gt的目标函数如下:
其中,
然后,计算oclass关于gt的偏导数,再利用反向传播算法得到公式(7)中的优化权重
本发明实施例所提供的上述方法可以表示为如下形式:
输入:
初始化:在均匀区间[-1,1]中随机采样初始化gt和
输出:网络表征。
1:基于
2:通过深度置信网络来预训练单属性增强深度网络,获得初始参数
3:重复
4:通过前述的步骤s1或者步骤s2计算
5:通过公式(2)、(8-11)更新参数θk;
6:直至收敛
7:
8:重复
9:通过公式(6)、(7)、(12)更新参数gt和
10:直至收敛
11:通过公式(6)获得网络表征。
本发明实施例提供的上述方案,在学习网络节点的表征时,既考虑网络的拓扑结构信息和节点属性信息,同时,也充分发挥属性信息的辅助作用;该方案特别适用于对具有稀疏连接和属性信息不一致的网络的表征进行学习,通过这种方式取得了较好的网络表征学习效果;该方案可以为节点分类、连接预测、社团发现和目标针对性广告等任务提供更准确的支撑。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例可以通过软件实现,也可以借助软件加必要的通用硬件平台的方式来实现。基于这样的理解,上述实施例的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是cd-rom,u盘,移动硬盘等)中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明披露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求书的保护范围为准。