APP下载

基于图编码网络的社交网络节点分类方法

2020-03-06郝志峰柯妍蓉蔡瑞初王丽娟

计算机应用 2020年1期
关键词:卷积标签节点

郝志峰,柯妍蓉,李 烁,蔡瑞初,温 雯,王丽娟

(1.广东工业大学 计算机学院,广州510006; 2.佛山科学技术学院 数学与大数据学院,广东 佛山528000)

0 引言

近十年来,各种社交平台涌现,社交网络数据规模迅速增大。这些数据蕴含了丰富的用户信息以及用户之间的交互信息,如何挖掘数据中蕴含的有价值的信息一直备受学者关注,社交网络节点分类便是其中一个研究热点。社交网络节点分类任务在现实生活中有着重要的应用价值,如:在电商平台上,对商家节点进行分类,可以根据分类结果方便地向商家推荐与其紧密相关的其他商家,促进形成合作关系;在社交推荐系统中,可以根据社交网络中用户节点的类别向用户推荐其可能感兴趣的内容或好友。然而如何融合节点自身属性以及网络结构信息实现社交网络节点分类任务依然是个困难的问题。现有的方法中,多数只使用了节点的属性信息或网络结构信息,也没有挖掘节点之间的交互信息。例如,Pennacchiotti等[1]只考虑节点属性信息,从用户信息中获取用户特征,并使用梯度提升决策树实现用户分类;Pedroche等[2]只考虑网络结构信息,使用PageRank方法实现用户分类。针对上述问题,本文提出了一个基于图编码网络(Graph Encoder Network,GEN)的社交网络节点分类模型。首先,将节点映射到低维向量空间,并挖掘节点之间的交互信息;然后,计算中心节点接收到来自各个邻域节点的特征,称该特征为邻域作用特征;最后根据邻域作用特征和节点自身的特征更新节点特征,并用神经网络抽取该节点更高层次的特征。该模型同时利用社交网络的节点信息、结构信息挖掘节点之间隐含的复杂多样交互信息,对社交网络节点进行更有效的分类。

本文的工作主要包括以下几个方面:

1)同时使用社交网络数据的节点属性信息和结构信息,并挖掘虑节点之间隐含的复杂的交互关系,充分利用社交网络数据蕴含的丰富信息实现节点分类。

2)模型灵活性和可扩展性强,可以方便地替换图编码模块的函数,也可以任意组合图编码模块或其他图神经网络模块构建更大规模的图网络结构,实现组合泛化。

1 相关工作

近十年来,社交网络节点分类任务备受关注,大量学习方法被提出,这些方法大致可以分为两类:

1)基于迭代使用传统分类器的方法(Iterative Classification Algorithm, ICA)。此类方法假设节点的标签只受节点自身的属性信息以及邻域节点的标签信息影响。一般情况下,此类方法先定义一个局部分类器,用于根据节点自身信息以及邻域节点的标签信息计算节点的类别标签概率;其次,利用部分已标记的节点训练该分类器,再用该分类器对未标记的节点进行分类;最后,反复迭代该过程直至模型收敛。Neville等[3]最先使用将贝叶斯分类器作为局部分类器应用于ICA框架,实现节点标签预测任务;Lu等[4]根据邻域节点的标签构建特征向量,并使用逻辑回归分类器作为局部分类器迭代学习节点标签;Macskassy等[5]基于相连接的节点更可能具有相同的标签的假设,通过加权计算邻域节点对中心节点的标签概率推断中心节点的类别;Ji等[6]提出一种基于迭代排名的分类框架,构建一个基于图形的排名模型,迭代计算每个类中对象的排名分布。

2)基于随机游走的标签传播算法,此类方法通常假设图的节点的标签是连通的,即可以以有限的步数从任何未标记的节点到达标记节点。此类方法更多地是利用数据的网络结构信息来推断节点的标签。如:Azran[7]利用节点之间的两两相似性构造一个用于马尔可夫随机游走的概率转移矩阵,并根据已标识的节点的标签来学习未标识的节点的类别;Desrosiers等[8]提出了一种基于网络结构的节点分类方法,并介绍了一种基于随机游走的节点相似性度量方法。贺超波等[9]提出了一种基于随机游走模型的多标签分类方法以解决在线社交网络节点的分类问题,该方法的分类过程包括学习用户初始化类别标签以及通过迭代推理获得用户稳定标签分布两个阶段,并且可以同时考虑用户属性以及关系网络特征信息进行分类。这两类方法没有充分利用节点属性信息和网络的结构信息,并挖掘节点之间的交互信息。

图神经网络(Graph Neural Network, GNN)是近几年出现的一类可以在图结构数据上运行以传递图信息的神经网络模型[10-12]。此类模型可以利用图的节点信息、结构信息有效地挖掘图数据蕴含的信息,并且已经在很多任务上取得优秀的成果。Niepert等[13]提出一种将卷积方法应用于图数据的模型,该模型先对图节点排序并选取特定的节点作为中心节点,然后对每个中心节点选取k个邻域节点作为感受域并对感受域节点排序,该方法需要对图节点进行排序,复杂度较高;Kipf等[14]考虑到时域上的卷积相当于频域上的内积,将时域上的图特征映射到谱频域上进行操作,并用切比雪夫多项式近似化简,得到一个复杂度小且易于实现和扩展的图卷积模型,该模型在图节点的半监督分类任务中取得成功的效果。近两年有不少研究工作是基于该模型进行扩展,如:Velickovic等[15]在图卷积网络基础上引入注意力机制,提出图注意力模型;Simonovsky等[16]在模型中考虑了指向节点的不同边的信息,为每条边设置不同的参数矩阵,并使用一个函数学习该边的特征,最后根据边的特征、邻居节点特征学习中心节点的特征;Yan等[17]将图卷积模型扩展到时序任务中,构建时序图卷积模型进行人体动作识别;Zhang等[18]在构建多视图卷积网络并将其应用于帕金森病神经图像的分析;曲强等[19]提出了一种基于图卷积网络的社交网络Spammer检测技术。这些研究结果充分表明图卷积框架在捕捉图数据局部特征方面的有效性,但其只是将邻域信息进行累加或加权,并没有充分考虑边的信息以及节点之间隐含的复杂的交互信息。

除了图卷积网络,还有不少研究工作尝试将其他神经网络应用到图消息传播。Wang等[20]使用生成式对抗网络框架学习图节点的特征向量,并将学习的节点特征向量应用于链路预测、节点分类和推荐等任务,在这些任务中取得了一定的效果。Sanchez-Gonzalez等[21]在图消息传播中使用循环神经网络[22]作为节点信息、边信息以及全局信息的更新函数。Kipf等[23]基于变分自动编码模型提出一种神经关系推理模型,该模型纯粹从观察数据中无监督地学习系统的交互关系。Palm等[24]提出一种循环关系网络以实现多步关系推理,该模型主要是迭代更新节点信息和边的信息,最后得到节点的特征向量。Xu等[25]从理论上分析图神经网络的性能,论文指出,当图网络中的映射函数(更新函数和聚合函数)为单射函数时,图神经网络的最佳效果可以等效于图的WL(Weisfeiler-Lehman)同构测试。从理论上说明了良好的图神经网络结构能充分挖掘图的结构信息,为使用图神经网络来挖掘社交网络节点之间复杂的信息提供了参考。

2 图编码网络节点分类学习算法

本章首先描述问题的定义以及本文所使用的符号,然后介绍本文提出用于社交网络节点分类的图编码网络(GEN)结构。

2.1 问题描述

对于如图1所示的社交网络,给定节点的属性信息以及节点之间的连接关系,本文提出的社交网络节点分类模型的目标是:充分利用其节点属性信和网络结构信息,挖掘节点之间隐含的交互信息,学习节点的类标签。下面将对模型的细节进行介绍。为了更好地阐述所提出模型及算法,表1给出了相关符号及其含义。

表1 符号定义 Tab. 1 Definition of symbols

图1 社交网络示意图Fig. 1 Schematic diagram of social network

2.2 模型描述

设计一个可以充分利用社交网络的节点属性信息、结构信息,并挖掘节点之间隐含的交互信息,实现节点分类任务的模型是本文的目标。借鉴图神经网络设计框架,本文提出了图编码网络结构,其框架如图2所示。其中:XV表示节点的属性特征集合,φe表示边特征更新函数,ρe → v表示边到节点的聚合函数,φv表示节点特征更新函数。该框架使用消息传播机制和节点更新机制迭代迭代更新节点特征和边特征。下面将对消息传播和节点更新这两个模块进行介绍,其实现如图3所示。

图2 图编码网络框架Fig. 2 Framework of graph encoder network

消息传播 在消息传播中,目的是将节点信息传播给邻域节点,同时挖掘节点之间的交互信息。对于给定的社交网络G=(V,E,X),消息传播主要包含3个步骤。

1)通过一个映射函数,将节点的属性特征映射到低维的向量空间,如式(1)所示:

(1)

其中:xj表示节点j的特征信息;femb(*)表示将节点特征映射到低维向量空间的函数。该映射函数可以根据具体的任务和数据设定,如:属性特征具有弱归纳偏置性质的数据可以使用全连接网络,特征属性具有局部特征性质的数据可以使用卷积神经网络,特征属性具有时依赖的特征或者属性值为文本类型的数据可以使用循环神经网络或者长短记忆神经网络。

2)挖掘边两端的节点之间的交互信息。由于边的信息跟边两端连接的节点信息紧密相关,本文使用边两端的节点的特征向量表示该边的特征,具体地可以将这两个节点的特征向量拼接、平均池化、最大池化或者求和。拼接函数可以较好地保留两个节点的信息,因此,本文使用拼接函数表示边的特征,并使用一个神经网络函数抽取其更高层次的特征,如式(2)所示:

(2)

图3 图编码网络模型Fig. 3 Graph encoder network model

fe(*)可以是任意的神经网络函数,如全连接网络或卷积神经网络等,可以根据具体的数据结构以及数据含义进行设置。该式可以应用于有向图、无向图或者有向图和无向图的混合图。在无向图或混合图中,对于无向边e,设节点vi和vj是其两端连接的节点,将其e分解为两条有向边(vi,vj)和(vj,vi),便可以方便地使用式(2)进行运算。在该过程,本文不是简单地融合邻域节点信息,而是挖掘每一组节点(即每一条边两端连接的节点)的特征,提取节点之间的交互信息便是在这一步体现的。

3)经过上面提及计算方法可以得到每条边的表示向量,该向量蕴含着其两端连接的节点的特征信息以及节点之间的交互信息。接下来将考虑每个中心节点如何处理邻域传递给它的信息。在该过程,有两点是需要注意的:

a)输入元素的无序性。对于每一个节点,可能存在多条指向它的边,这些边并没有天然的排列顺序,而神经网络等函数往往要求输入的元素是有序的,如果将边按照所有可能进行组合,将会出现组合爆炸问题。针对这个问题,可以通过两种方法解决,设定特定的排列规则为每条边赋予一定的顺序下标,或者设计一个对输入元素的顺序不敏感的函数进行运算,即要求运算边的函数对输入没有顺序要求。前者需要先设定一定的规则,要求对数据有较强的假设,而且排序计算会带来一定的计算开销,后者则不需要人工假定规则并且计算开销小,在这里,使用第二种解决方法,即设计一个对输入顺序不敏感的函数。

b)输入元素数目不确定。在社交网络图中,指向不同的节点的边的数目一般是不同的,而类似于神经网络等函数,往往需要确定输入元素的数目。针对以上两个问题,需要寻找一个既对输入元素的顺序不敏感,又可以接受输入元素数目不确定的函数来处理传送到节点上的入边信息。

池化函数以及累加函数是两类比较常见的对输入元素顺序和数目不敏感的函数。平均池化函数将指向节点的所有边的特征向量求平均,比较关注边的平均信息;假设向量hei∈Rd表示表示第i条边的特征向量,d表示特征向量的维度,对于节点j,指向它的边可以构成矩阵Mj∈Rt×d,其中t是指向节点j的边的数目。最大池化函数将从矩阵的每一列中取出最大值,重新构成一个d维特征向量,该向量代表了这t条边的特征;Xu等[25]认为平均池化函数保留了数据的分布信息,而累加函数保留是能保留数据的所有信息。为了尽可能地保留数据的所有结构信息,在这里,选择了累加函数作为聚合函数处理指向节点的边信息,并使用一个神经网络函数抽取其更高层次的特征,如式(3)所示:

(3)

其中:hj表示接受点为j的边的特征向量;fv(*)表示点特征更新的函数,该函数可以是任意形式的神经网络。

节点信息更新 经过消息传播部分,每个节点将得到一个特征向量表示邻域信息传递给它的信息。对于每个节点,与邻域节点的交互信息固然重要,自身节点的原始信息也包含许多重要信息。将与邻域交互的特征与节点自身的信息相结合进一步表示节点特征,既能保留节点自身信息,又能融合邻域节点的信息以及节点之间的交互信息。可以使用拼接函数、累加函数、平均池化函数或者使用全连接、卷积神经网络等函数来聚合这两个特征,由于拼接函数能比较完整地保留两个特征并且相对神经网络等函数有着容易操作、计算量少的优点,选择使用拼接函数作为这两个特征的聚合函数,并使用一个全连接神经网络抽取更高层次的节点特征以表示节点,如式(4)所示:

(4)

其中f(*)是全连接网络。

损失函数 上面已经介绍了图编码模型,给定一个图G=(V,E,X),经过计算,每个节点都可以用一个具有结合自身信息以及和邻域节点的交互信息的特征信息的向量表示。最后,根据该特征向量,使用softmax(*)函数为每个节点计算每个类别对应的概率,其式(5)所示:

(5)

其中Zj=(z1,z2,…,zl)表示第j个节点在L个标签上的概率分布。

在该模型中,使用交叉熵计算模型的损失,其计算如式(6)所示:

(6)

其中:y表示真实的标签;|L|是标签类别的数目。

根据上文描述的图编码网络分类器,具体的实现过程如算法1所示。

算法1 图编码网络分类算法。

输入:社交网络节点集合V,边集E,节点特征矩阵X(其中每一行代表一个节点的特征),M个节点样本的标签。

输出:社交网络图的节点类别Z。

while 不收敛 do:

H=femb(X)

for each edge inE:

end for;

for each node inV:

end for;

对已知标签的M个样本的交叉熵损失求和:

梯度下降法更新模型参数(f函数的参数);

end while

3 实验与结果分析

本文使用微博数据集和论文引用数据集DBLP,以节点分类准确率为度量标准,测试了本文提出的图编码网络模型。在微博数据集上,将本文算法和传统的社交网络节点分类算法及较主流的图网络模型进行对比。为了进一步分析图编码网络在不同程度的信息缺失以及标签缺失的情况下的性能,用DBLP数据集进行实验测试。最后,结合实验结果对模型进行了分析。

3.1 微博数据集实验

3.1.1 数据描述

微博是国内流行的大型社交平台之一。在本文中,通过对电商微博和网红微博两个数据集上的微博账户进行分类来验证图编码模型。

电商微博数据集 该数据集使用102个电商的微博账号构建社交网络,其中,网络的节点为微博账号;节点信息特征为账户所发的微博内容,其中,当账户所发的微博内容超过500条的,只取前500条作为节点的内容描述;网络的边为用户之间的微博转发关系,即若用户A曾转发用户B的微博,则在社交网络图中,存在一条由节点A指向节点B的边;在该数据集中,根据微博账户(节点)所销售的商品将节点分为9类,包括:服装、运动户外、美妆、鞋子、家用电器、首饰配饰、孕婴童用品、男女内衣、食品。电商微博数据集信息如表2第一行所示,其中,边的数目为264;边比例为图网络边数/(节点数×(节点数-1));该数据集类别集合基数为9,即数据集中存在9种类别的节点。实验中,将电商微博账户(节点)的微博内容以及账户之间的交互关系作为输入,对电商微博账号所销售的商品进行分类,即从服装等9类标签中选择概率最大的类标签作为该节点的类标签。

表2 微博数据集 Tab. 2 Weibo dataset

网红微博数据集 该数据集使用214个网红微博账户构建社交网络。与电商微博数据集类似,使用微博账户为网络节点,账户发的微博内容为节点信息,账户间的转发关系为边。网红的微博账户会有美妆博主等备注,在该数据集中,根据这些备注整理了摄影达人、美妆达人、时尚达人、美食达人、旅游达人等10个标签。对于每个节点,根据博主自身的备注,从整理的10个标签选择一个作为节点的类标签。该数据集的信息如表2第二行所示。实验中,将网红微博账户(节点)的微博内容以及账户之间的交互作为输入,对博主所属领域进行分类,即从时尚达人等10个类标签中选择概率最大的类标签作为该节点的类标签。

数据预处理 在实验数据预处理中,简单地将每个微博账号所选取的微博文本合并为一篇文章并将其作为节点的特征。接着对所得文本进行分词、构建字典等数据预处理,其中,把词频低于5以及单词出现的次数/该文件的总词语数的比值高于60%的单词去除,并只保留大小为2 000的字典。在实验中,使用独热码方式(one-hot)表示微博文本,将字典顺序固定,对于每一个文档,如果存在字典中的单词,标注为1,不存在则标注为0。

3.1.2 实验设置与结果分析

为了验证本文提出的图编码网络能有效捕获社交网络节点之间隐含的复杂的交互信息,设计了三组对比实验,包括与传统的社交网络节点分类算法逻辑回归模型、随机游走模型以及较新的图卷积神经网络算法对比。在实验中,使用十折交叉验证法作为评估方法。

1)与传统模型比较。

在该组实验中,将图编码网络模型与逻辑回归模型、DeepWalk模型进行对比。

逻辑回归(Logistic Regression,LR)模型 逻辑回归模型是传统的分类模型,经常被应用于传统的基于迭代的社交网络节点分类算法。该模型只使用节点的特征作为分类器的输入,并没有使用数据的结构信息。

DeepWalk DeepWalk是经典的基于随机游走的图挖掘算法,其利用图数据的网络结构学习节点的向量表示,学习得到的节点向量表示可以应用到社交网络节点分类以及其他图挖掘任务中。该模型只利用了图数据的网络结构信息,并没有使用节点的特征信息。在该对比实验中,直接使用了该论文的开源代码(https://github.com/phanein/deepwalk)。实验参数设置为:上下文窗口大小为5,抽样路径数目为10,路径长度为40,表示节点的特征向量维度为64。

LR和DeepWalk在微博数据集上的实验结果如表3所示。对比只使用节点信息的LR模型,GEN在两个数据集上分类准确率提升10个百分点左右,这表明本文提出的模型能够有效地捕获社交网络的结构信息,更有效地进行节点分类;对比只使用网络结构信息的DeepWalk模型,GEN模型分类准确率在电商微博数据集有15个百分点的提升,在网红微博数据集上超过20个百分点的提升,这表明GEN模型能够有效结合节点信息达到更好的分类效果。这两组实验结果在一定程度上表明了本文提出的模型能够更好地综合利用社交网络的节点特征和网络结构特征。

表3 微博数据集上GEN模型与传统模型分类准确率对比 单位:% Tab. 3 Classification accuracy comparison of GEN model and traditional model on Weibo dataset unit:%

2)与图卷积模型比较。

在该实验中,GCN模型使用论文的开源代码(https://github.com/tkipf/pygcn)进行实验,实验中使用了两层图卷积层,故中心节点包含了一阶邻域节点和二阶邻域节点的信息。参数设置设为:迭代次数为1 000,使用Adam优化器,初始化学习率为0.01。在网红微博数据集中,隐含层神经单元数为64,dropout为0.1,在电商微博数据集中,隐含层单元为512,dropout为0.4。

与GCN在微博数据集上的对比实验结果如表4所示。对比GCN模型,GEN模型在电商微博数据集有7个百分点的提升,在网红微博数据集上超过10个百分点的提升,这表明对比将邻域节点信息直接融合以表示中心节点信息的方法,本文提出的GEN模型通过“解开”每一组点之间的关系能有效地捕获节点之间隐含的交互关系,从而达到更有效的社交网络节点分类效果。

表4 微博数据集上GEN与GCN模型分类准确率对比 单位:%Tab. 4 Classification accuracy comparison of GEN model and GCN model on Weibo dataset unit:%

3)图编码网络变体实验。

图编码网络(GEN) 对图编码模型,分别在电商微博数据集和网红微博数据集上进行了几个实验,包括GEN(MLP(多层感知器)),即使用MLP作为边特征更新函数的GEN模型,并且将边更新点模块得到的向量和节点原始信息隐射到低维度空间的向量拼接作为节点的特征;GEN(MLP,NS)则直接用边更新点模块得到的向量表示节点特征,没有拼接原始信息;GEN(MLP,2-order),使用二阶信息对节点进行分类,即重复进行两次消息传播模块和节点特征更新模块的运算;CEN(CNN),使用卷积神经网络作为点更新边模块的边特征抽取函数。另外的,在模型的实现中,为了方便实现,在邻接矩阵中加入单位阵。

各组实验的默认更新函数和参数设置为:在各个模块中,使用多层感知器作为特征抽取函数,迭代次数为1 000,使用Adam优化器,初始化学习率为0.01。在电商微博数据集中,默认为:隐含层神经单元数为64,dropout为0.1。在GEN(2-order)实验中,隐含层单元数为128,dropout为0.5;在GEN(CNN)实验中,使用一个二维卷积网络函数将节点特征映射到低维空间,核函数大小为2×64,输出通道为64。在网红微博数据集中,默认设置为:隐含层神经单元数为256,dropout为0.5。在GEN(2-order)实验中,隐含层单元数为128,dropout为0.5;在GEN(CNN)实验中,使用了一个二维卷积网络结构,核函数大小为2×64,输出通道为64;实验中,dropout设置为0.7。

在微博数据集上,对本文提出的模型进行几种变体,并进行比较,其实验结果如表5所示。对比GEN(MLP,NS),GEN(MLP)在电商微博数据集有4个百分点的提升,在网红微博数据集上超过8个百分点的提升,这可能是因为GEN(MLP)在更新节点信息过程中加入自身节点的信息,在这个过程中节点自身的属性特征,而节点自身的属性特征包含了有效的分类信息;对比GEN(MLP),GEN(MLP,2-order)有少许的提升,这表明了网络节点可能受二阶邻域的影响,通过获取二阶邻域信息可能有助于模型的分类效果;对比CEN(MLP),GEN(CNN)效果提升5个百分点左右,这可能因为连接边的两个节点的特征具有局部性等特点。

表5 微博数据集上GEN模型变体分类准确率对比 单位:% Tab. 5 Classification accuracy comparison of variants of GEN model on Weibo dataset unit:%

3.2 DBLP数据集实验

3.2.1 数据描述

DBLP数据集 DBLP是以作者为核心的计算机领域的研究成果集成数据库系统,按年代列出了作者的科研成果,包括国际期刊和会议等公开发表的论文。将每篇论文视为一个节点,论文之间存在引用与被引用的关系,将引用关系视为边,便可以构建一个图网络结构。本实验中,选取DBLP中的60 744篇论文构建图网络,论文的内容描述作为节点的特征,这60 744篇论文包括4个类别,分别是人工智能、数据库、数据挖掘、计算机视觉,将这些类别作为节点标签。实验中,将论文(节点)的内容描述以及论文之间的引用关系(105 781个引用)网络作为输入,对论文所属领域进行分类。

3.2.2 实验设置与结果分析

为了测试模型在不同程度边缺失、节点信息缺失、标签缺失情况下的性能,分别进行了几组实验。从图编码网络变体实验了解到,在图编码模型中,二阶模型比一阶模型具有更好的分类效果,而且图卷积模型使用了二阶信息。为了公平比较,在本节的实验中,使用的是二阶图编码模型。

1)无边信息。

在边缺失率为100%的情况下,即只使用节点特征信息的情况下,使用与两层全连接(与图编码模型最终使用的分类器一致)对节点信息进行分类。实验中,使用70%的数据作为训练集,30%的数据作为测试集,实验参数设置为:迭代次数为500,使用Adam优化器,初始化学习率为0.01,图编码网络的隐含层单元数设置为64,dropout设置为0.3;图卷积的隐含层单元数设置为256,dropout设置为0.4;全连接分类器(MLP)的隐含层单元数设置为16,dropout为0.4。

使用二阶图编码模型、图卷积网络、多层感知器作为分类器的分类准确率分别为80.23%、79.50%、76.53%。从实验结果可以看出,对比MLP,GEN效果提升3.7个百分点,而GCN提升接近3个百分点,这表明使用社交网络的结构信息能达到更有效的网络节点分类效果,而且结构信息越具体,分类效果更好。

2)边缺失。

在实验中,分别在保留20%(DBLP(20%))、40%、60%、80%、100%的边的情况下进行实验,并且与图卷积模型进行比较。在实验中,将数据集的70%设为训练集,30%为测试集。参数设置为:迭代次数为500,使用Adam优化器,初始化学习率为0.01。图编码模型的隐含单元数为64,dropout为0.5;图卷积模型的隐含层单元数为256,dropout为0.2。

不同边缺失率的实验结果如图4所示。由图4可以看出:在图编码网络模型和图卷积模型中,网络结构中边的信息越完整,准确率越高,这在一定程度上验证了结构信息能辅助完成节点分类任务,而且结构信息越完整效果越好;同时可以发现,在不同边缺失率的情况下,相比图卷积模型,图编码模型分类准确率提高0.47个百分点,这可能得益于图编码模型能更细致地挖掘节点之间的交互信息,具体的交互信息有助于实现更好的分类。

图4 DBLP数据集上边缺失实验结果Fig. 4 Results of edge missing experiments on DBLP dataset

3)节点信息缺失。

在节点信息实验中,考虑到现实生活中,节点信息缺失可能源于两种情况:一种是节点信息缺失,但其他信息(如标签信息)可能还存在;另一种是一个没有任何初始化信息的新的节点加入网络,如微博新用户,该用户可能有关注一些好友,但并没有发表任何微博言论或者填写任何账户信息。

针对第一种情况,将图中40%(DBLP(40%))、60%、80%非孤立节点的信息置空,即这部分节点只有结构信息,并将该数据应用于图编码模型和图卷积模型。在实验中,将70%的数据设为训练集,30%的数据设为测试集。实验的参数设置为:迭代次数为500,使用Adam优化器,初始化学习率为0.01。图编码模型的隐含单元数为32,dropout为0.4,图卷积模型的隐含层单元数为128,dropout为0.5。

针对第二种情况,将图中40%(DBLP(40%))、60%、80%非孤立节点的信息置空,并将节点信息为空的节点作为测试集。实验的参数设置为:迭代次数为500,使用Adam优化器,初始化学习率为0.01。图编码模型的隐含单元数为16,dropout为0.2;图卷积模型的隐含层单元数为256,dropout为0.2。

节点信息缺失第一种情况的实验结果如图5所示,第二种情况结果如图6所示。

图5 DBLP数据集上 节点信息缺失实验结果Fig. 5 Results of node information missing experiments on DBLP dataset

图6 DBLP数据集上对没有节点信息

的节点进行分类的实验结果

Fig. 6 Results of classification experiments of

nodes without node information on DBLP dataset

由图5、图6可以看出,随着缺失信息的节点的数据量的增加,分类准确率降低,这在一定程度上表明了节点的属性信息对节点分类效果有着重要的影响。对比图卷积模型,图编码网络随着带标签的数据的增多,第一种情况准确率的平均提高2.49个百分点,第二种情况平均提高4.75个百分点。这可能得益于图编码模型能够通过更细粒度地推测两节点之间的交互信息进而更细粒度地推测信息缺失的节点的信息。

4)标签缺失。

在实验中,分别只保留50%(DBLP(50%))、70%、90%的数据的类标签进行实验测试,并与图卷积模型作比较。在实验中,参数设置为:迭代次数为500,使用Adam优化器,初始化学习率为0.01;在图编码网络中,DBLP(50%)的隐含层单元数为16,dropout为0.3;DBLP(70%)的隐含层单元数为64,dropout为0.3;DBLP(90%)的隐含层单元数为32,dropout为0.1。在图卷积网络中,DBLP(50%)的隐含层单元数为256,dropout为0.3;DBLP(70%)的隐含层单元数为264,dropout为0.4;DBLP(90%)的隐含层单元数为256,dropout为0.1。

不同标签缺失率的实验结果如图7所示。由图7可以看出,随着带标签的数据量的增加,图编码模型准确率平均提高0.4个百分点,图卷积模型准确率平均提高0.06个百分点。这可能得益于图编码网络在标签传播的时候,会进一步根据节点之间的交互信息而选择邻域标签的影响性。

图7 DBLP数据集上标签缺失实验结果Fig. 7 Results of node label missing experiments on DBLP dataset

由以上实验结果可以得出,本文的模型不仅能利用社交网络中的节点信息和结构信息引导节点分类,还能有效地挖掘节点之间隐含的复杂信息,并且跟以往传统的社交网络分类方法以及现流行的图神经网络方法相比,有着更好的分类效果。

4 结语

社交网络节点分类在现实生活中有着重要的应用价值。传统的基于迭代应用分类器和基于随机游走的标签传播算法并没有充分考虑节点之间的交互信息,本文设计了一种图编码网络结构:在图上传播节点信息并抽取节点之间隐含的交互信息,根据与邻域节点的交互信息和节点自身的属性特征两类特征信息抽取更高层次的节点特征表示,最后对节点进行分类。实验结果表明,挖掘节点之间的隐含的交互信息对节点的分类效果有着重要的影响。同时,本文的模型还具有容易扩展的优点:

1)容易实现添加社交网络的其他信息。如果数据中有边的权重等显式信息,可以方便地将这些信息加入到模型。

2)容易实现并行化。现实中的社交网络数据往往是大规模的,模型的可并行化是很多实际应用所要求的。该模型可以将图中的节点集合和边集合切分成更小的子集进行学习,实现并行化。

3)加入时序信息。现实生活中许多社交网络是动态变化的,节点的状态以及边的连接信息可能随着时间推移而变化,基于时序社交网络对节点进行分类可以捕获社交网络的动态信息,更精准地预测节点在特定时间段的类别。

猜你喜欢

卷积标签节点
基于全卷积神经网络的猪背膘厚快速准确测定
一种基于卷积神经网络的地磁基准图构建方法
基于3D-Winograd的快速卷积算法设计及FPGA实现
基于图连通支配集的子图匹配优化算法
一种并行不对称空洞卷积模块①
结合概率路由的机会网络自私节点检测算法
面向复杂网络的节点相似性度量*
采用贪婪启发式的异构WSNs 部分覆盖算法*
不害怕撕掉标签的人,都活出了真正的漂亮
让衣柜摆脱“杂乱无章”的标签