本发明属于网络分析领域,涉及一种基于gcn的动态社交用户对齐方法。
背景技术:
每一个社交平台都反映了用户在不同方面的兴趣爱好,这些数据能够很好地帮助我们将虚拟世界中的用户角色映射到现实世界中。但是由于涉及用户隐私保护等原因,不同社交平台中的数据往往相互隔离,很难在一个社交平台中获取用户的完整信息。因此,找到两个社交网络之间的连接就成为了一个重要的问题,也就是我们所说的社交网络用户对齐。用户对齐的目的就是在不同的社交网络中找出属于同一个人的社交网络账号。目前来说,相关研究在静态社交网络用户对齐已有许多成果。然而,研究者忽略了网络的动态性这一自然属性。网络是动态变化,而网络动态变化的演化模式中往往也蕴含着丰富的信息。如果能将这些信息加以运用,想必能帮助我们训练出更好的模型。
技术实现要素:
有鉴于此,本发明的目的在于提供一种基于gcn的动态社交用户对齐方法。
为达到上述目的,本发明提供如下技术方案:
一种基于图神经网络gcn的动态社交用户对齐方法,该方法包括以下步骤:
从多个社交网络中获取网络结构信息与锚节点用户的标签信息,并按照组合网络的规则将其融合为一个组合网络;
在社交网络平台随时时间变化时,按照时序截取t1至tn的网络快照,并将其构成组合网络z1至zn,并获取组合网络的邻接矩阵a1,a2,...at;
将a1输入gcn层获取整个网络的基本表示以及隐藏状态矩阵,为捕捉动态网络和提高模型训练效率,将两个tn与tn-1时刻的矩阵之差作为gcn层的输入;
将gcn层得到的隐藏状态矩阵h1,δh2,...,δhn依次输入gru层,通过gru层得到一个存储网络的时间信息的隐藏状态矩阵hn;
通过全连接层对训练结果进行输出,在全连接层定义一个损失函数对节点进行二分分类,分类结果为1的节点为潜在锚节点,分类结果为0的节点为非锚定节点;
组合网络中分类为1的节点则为源网络和目标网络中的一对潜在锚节点,其中,该源网络和目标网络是属于现实中同一人的网络账号。
可选的,所述按照组合网络的规则将其融合为一个组合网络具体为:
设源网络为x网络,目标网络为y网络,组合网络为z网络,gx,gy,gz分别为表示x、y、z网络的无权无向图;gx=(vx,ex),vx为网络x中节点集,ex为网络x中的边集;gy=(vy,ey),vy为网络y中节点集,ey为网络y中的边集;gz=(vz,ez),vz为网络z中节点集,ez为网络z中的边集;
可选的,所述gcn层的运算公式如下:
hn是第n层gcn生成的隐藏状态矩阵,
可选的,所述动态网络中,网络随着时间动态变化,根据时间序列t1,t2...tn,将网络x与网络y分别划分为n个网络快照,
可选的,利用所述gru层表示网络动态变化的时间信息,gru层的公式如下:
hn=gru(hn-1,hn)
hn为第n层gru输出的隐藏状态矩阵,hn是第n层gcn生成的隐藏状态矩阵。
可选的,所述gcn层的前向传播公式如下:
rt=σ(wrxt urht-1)
zt=σ(wzxt uzht-1)
rt为gru的重置门,zt为gru的更新门,w和u均为权值矩阵,在训练中进行学习,xt为当前t时刻的输入,ht-1为t-1时刻的隐藏层状态,σ为sigmoid函数,
可选的,通过所述全连接层对节点分类,分类为1的节点则为潜在锚定节点对,分类为0的节点则为非锚定节点,在全连接层定义的损失函数如下:
f(hv)代表整个深度模型的函数,yv代表节点分类标签。
本发明的有益效果在于:本发明通过构建深层神经网络模型完成动态网络的用户对齐任务,相比传统模型而言,能有效保存网络结构信息、属性信息和时间信息等多维信息,在标签信息缺失的情况下,依旧可以获得较好的准确率,可以有效解决动态网络用户对齐任务模型重训练、训练信息单一等问题,并且在模型效率上也有一定程度的提升。
本发明的其他优点、目标和特征在某种程度上将在随后的说明书中进行阐述,并且在某种程度上,基于对下文的考察研究对本领域技术人员而言将是显而易见的,或者可以从本发明的实践中得到教导。本发明的目标和其他优点可以通过下面的说明书来实现和获得。
附图说明
为了使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明作优选的详细描述,其中:
图1为本发明的基于gcn的动态社交网络用户对齐方法流程图。
具体实施方式
以下通过特定的具体实例说明本发明的实施方式,本领域技术人员可由本说明书所揭露的内容轻易地了解本发明的其他优点与功效。本发明还可以通过另外不同的具体实施方式加以实施或应用,本说明书中的各项细节也可以基于不同观点与应用,在没有背离本发明的精神下进行各种修饰或改变。需要说明的是,以下实施例中所提供的图示仅以示意方式说明本发明的基本构想,在不冲突的情况下,以下实施例及实施例中的特征可以相互组合。
其中,附图仅用于示例性说明,表示的仅是示意图,而非实物图,不能理解为对本发明的限制;为了更好地说明本发明的实施例,附图某些部件会有省略、放大或缩小,并不代表实际产品的尺寸;对本领域技术人员来说,附图中某些公知结构及其说明可能省略是可以理解的。
本发明实施例的附图中相同或相似的标号对应相同或相似的部件;在本发明的描述中,需要理解的是,若有术语“上”、“下”、“左”、“右”、“前”、“后”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此附图中描述位置关系的用语仅用于示例性说明,不能理解为对本发明的限制,对于本领域的普通技术人员而言,可以根据具体情况理解上述术语的具体含义。
如图1所示,本发明的一种gcn的动态社交网络用户对齐方法,其步骤包括:
101、从多个社交网络中获取网络结构信息与锚节点用户的标签信息,并按照组合网络的规则将其融合为一个组合网络;
102、按照时序截取t1至tn的网络快照,并将其构成组合网络z1至zn,并获取组合网络的邻接矩阵a1,a2,...at;
103、将a1以及两个tn与tn-1时刻的矩阵之差输入gcn层获取网络的基本表示以及隐藏状态矩阵;
104、将gcn层得到的隐藏状态矩阵h1,δh2...δhn依次输入gru层,通过gru层得到一个存储时间信息的隐藏状态矩阵;
105、通过全连接层对训练结果进行输出,在全连接层定义一个损失函数对节点进行二分分类。
在步骤101中,包含多个社交网络结构信息与锚节点用户的标签信息的获取,以及组合网络的融合。网络对齐指的是在多个不同社交网络中找出属于同一个人的社交账号,而已知的身份属性的用户被称为锚用户。本发明将社交网络平台中的用户作为图节点,通过网络间的社交关系构建成一个社交网络图。通过把两个社交网络融合成一个网络进行模型的训练,得出网络对齐的效果。将两个网络融合为一个组合网络的规则如下:
设源网络为x网络,目标网络为y网络,组合网络为z网络,gx,gy,gz分别为表示x、y、z网络的无权无向图。gx=(vx,ex),vx为网络x中节点集,ex为网络x中的边集;gy=(vy,ey),vy为网络y中节点集,ey为网络y中的边集;gz=(vz,ez),vz为网络z中节点集,ez为网络z中的边集。
在步骤102中,按照时间顺序t1至tn截取网络快照,并构建组合网络z1...zn,得到其邻接矩阵。根据时间序列t1,t2...tn,可将网络x与网络y分别划分为n个网络快照,
在步骤103中,通过gcn层表示网络结构信息,gcn层的运算公式如下:
hn是第n层gcn生成的隐藏状态矩阵,
在步骤104中,通过gru层表示网络动态变化的时间信息,gru层的公式如下:
hn=gru(hn-1,hn)
hn为第n层gru输出的隐藏状态矩阵,hn是第n层gcn生成的隐藏状态矩阵。
gcn层的前向传播公式如下:
rt=σ(wrxt urht-1)
zt=σ(wzxt uzht-1)
rt为gru的重置门,zt为gru的更新门,w和u均为权值矩阵,在训练中进行学习,xt为当前t时刻的输入,ht-1为t-1时刻的隐藏层状态,σ为sigmoid函数,
在步骤105中,通过全连接层对节点分类,分类为1的节点则为潜在锚定节点对,分类为0的节点则为非锚定节点,在全连接层定义的损失函数如下:
f(hv)代表整个深度模型的函数,yv代表节点分类标签。
最后说明的是,以上实施例仅用以说明本发明的技术方案而非限制,尽管参照较佳实施例对本发明进行了详细说明,本领域的普通技术人员应当理解,可以对本发明的技术方案进行修改或者等同替换,而不脱离本技术方案的宗旨和范围,其均应涵盖在本发明的权利要求范围当中。
1.一种基于图神经网络gcn的动态社交用户对齐方法,其特征在于:该方法包括以下步骤:
从多个社交网络中获取网络结构信息与锚节点用户的标签信息,并按照组合网络的规则将其融合为一个组合网络;
在社交网络平台随时时间变化时,按照时序截取t1至tn的网络快照,并将其构成组合网络z1至zn,并获取组合网络的邻接矩阵a1,a2,...at;
将a1输入gcn层获取整个网络的基本表示以及隐藏状态矩阵,为捕捉动态网络和提高模型训练效率,将两个tn与tn-1时刻的矩阵之差作为gcn层的输入;
将gcn层得到的隐藏状态矩阵h1,δh2,...,δhn依次输入gru层,通过gru层得到一个存储网络的时间信息的隐藏状态矩阵hn;
通过全连接层对训练结果进行输出,在全连接层定义一个损失函数对节点进行二分分类,分类结果为1的节点为潜在锚节点,分类结果为0的节点为非锚定节点;
组合网络中分类为1的节点则为源网络和目标网络中的一对潜在锚节点,其中,该源网络和目标网络是属于现实中同一人的网络账号。
2.根据权利要求1所述的一种基于gcn的动态社交用户对齐方法,其特征在于:所述按照组合网络的规则将其融合为一个组合网络具体为:
设源网络为x网络,目标网络为y网络,组合网络为z网络,gx,gy,gz分别为表示x、y、z网络的无权无向图;gx=(vx,ex),vx为网络x中节点集,ex为网络x中的边集;gy=(vy,ey),vy为网络y中节点集,ey为网络y中的边集;gz=(vz,ez),vz为网络z中节点集,ez为网络z中的边集;
3.根据权利要求1所述的一种基于gcn的动态社交用户对齐方法,其特征在于:所述gcn层的运算公式如下:
hn是第n层gcn生成的隐藏状态矩阵,
4.根据权利要求1所述的一种基于gcn的动态社交用户对齐方法,其特征在于:所述动态网络中,网络随着时间动态变化,根据时间序列t1,t2...tn,将网络x与网络y分别划分为n个网络快照,
5.根据权利要求1所述的一种基于gcn的动态社交用户对齐方法,其特征在于:利用所述gru层表示网络动态变化的时间信息,gru层的公式如下:
hn=gru(hn-1,hn)
hn为第n层gru输出的隐藏状态矩阵,hn是第n层gcn生成的隐藏状态矩阵。
6.根据权利要求5所述的一种基于gcn的动态社交用户对齐方法,其特征在于:所述gcn层的前向传播公式如下:
rt=σ(wrxt urht-1)
zt=σ(wzxt uzht-1)
rt为gru的重置门,zt为gru的更新门,w和u均为权值矩阵,在训练中进行学习,xt为当前t时刻的输入,ht-1为t-1时刻的隐藏层状态,σ为sigmoid函数,
7.根据权利要求1所述的一种基于gcn的动态社交用户对齐方法,其特征在于:通过所述全连接层对节点分类,分类为1的节点则为潜在锚定节点对,分类为0的节点则为非锚定节点,在全连接层定义的损失函数如下:
f(hv)代表整个深度模型的函数,yv代表节点分类标签。
技术总结