APP下载

利用社区选举和链路预测的分类方法

2022-08-24杨旭华陈孝则许营坤毛剑飞

小型微型计算机系统 2022年8期
关键词:链路类别标签

杨旭华,陈孝则,王 磊,许营坤,叶 蕾,毛剑飞

(浙江工业大学 计算机科学与技术学院,杭州 310023)

E-mail:xhyang@zjut.edu.cn

1 引 言

数据分类旨在把具有某种共同属性或特征的数据归并在一起,通过其类别的属性或特征来对数据进行区别,数据分类在组织、管理、分析和应用数据方面具有非常重要的作用.机器学习和模式识别中一直有关于分类问题的讨论,分类的目的是在数据及其对应的标签之间找到正确的映射,然后使用此映射来得出未标记数据的类别[1].数据分类的研究具有很多优秀的成果,例如支持向量机[2],随机森林[3],逻辑回归[4]等都是当前的热点研究内容.

大部分的分类算法通过在特征空间中找到决策边界以区分不同类别的数据,这也就导致了当数据变得复杂,算法也就随之变得非常复杂,因此这些方法可能会因为无法获取数据中的真实关系而不能得到很好的分类结果.一种解决方法就是以其它形式表现数据从而将分类问题转化为对应结构上的问题,网络结构就是其中一种表现形式.

最近有一种新的分类方法受到了研究者的大量关注,使用数据的网络表示对未标记的数据进行分类.在这类研究中,数据通常会通过特征空间中的相似度函数转换为网络,例如Dice相似度[5],Kumar-Hassebrook相似度[6]等,然后通过数据属性和网络结构对数据进行分类.相比于只考虑数据的特征,转化为网络后,往往能得到数据中的一些隐含信息.

将数据转换为网络的过程,一般称作网络构建,在机器学习的很多领域,数据样本点之间的局部关系以及由局部关系衍生出的全局结构经常用网络来表示.在处理机器学习或者数据挖掘遇到的问题时,网络构建通常是一个非常有效的步骤,其方法一般为根据数据间的相似度人为构造一个表征数据间关系的网络结构[7,8],例如具有高斯核的k最近邻(kNN)以及r-半径网络构建技术.

目前许多的研究中都涉及到了使用网络表示的分类.例如Cupertino等人提出HLCRW算法[9]将随机游走理论的极限概率应用于由输入数据构成的底层网络;Murillo等同时考虑了数据的物理特征和数据的模式形成[10];Cupertino等使用输入数据的网络表示,计算模块度,得到多模式数据观测集的分类[11];Carneiro等提出PgRkNN算法[12]对数据构建复杂网络,找出用于分类的数据组织结构等.这些研究成果使用聚类系数、pagerank、模块度等复杂网络中的指标对数据进行分类,与基于数据特征的分类器相比,它们能够获得更加准确的结果.

社区检测和链路预测都是复杂网络中经典的问题,社区检测可以找到网络中社区的划分,一般同一个社区的节点连接比较紧密,不同社区的节点连接比较稀疏[13];链路预测可以研究节点之间是否有未知或未来的连边[14].在社区划分后对每个社区使用选举算法得到代表节点的方式我们称之为社区选举.

在本文中,我们首次探索了一种新的分类问题的研究方向,把数据分类问题转化为网络的社区选举和链路预测问题.具体地,本文提出了一种利用社区选举和链路预测的分类方法(CCELP),首先将数据转换为网络,然后通过重叠聚类算法识别出网络社区,通过社区选举得到每个社区的代表节点(能代表整个社区的节点)并分配对应的标签,参考公民投票中的“过半数原则”过滤掉不具代表性的代表节点;接着我们提出了一种新的考虑二级共同邻居的分类链路预测(CLP)指标,通过计算代表节点与测试节点之间的CLP指标值把测试节点归属到不同的类别中去.

2 相关工作

目前已有大量数据分类的算法,我们提出的算法与已有的算法存在明显的不同,我们根据数据集构造网络结构,利用社区划分以及选举算法得到社区的代表节点,提出新的链路预测指标CLP,通过计算测试节点与代表节点之间CLP指标来实现数据分类.以下为相关的研究基础.

2.1 社区检测

社区检测是网络分析中最重要和最基本的任务之一,近年来许多复杂网络的社区检测方法被提出,其中包括分层聚集算法[15]、基于模块度的社区检测算法[16]、标签传播算法[17]、基于相似性的社区检测方法[18]和基于标签传播的拓扑势社区检测方法[19]等.GN[20]开创了分层聚类算法的先河,该算法通过不断移除具有最大介数中心性的连边来划分社区;Newman在FN算法中首次提出了模块度的概念[21],并以此为标准来评价社区划分的优劣;接着最大派系算法[22]、分裂算法[23]、凝聚算法[24]和优化算法[25]等一系列基于模块度的社区检测算法被提出,网络社区划分的研究逐渐成为热点内容.

标签传播算法的时间复杂度低,适用于大型的网络.例如传统的标签传播算法LPA算法[17]仅将网络结构作为划分依据,既不需要优化目标函数,也不需要社区的先验信息;COPRA算法[26]在单一标签的基础上引入了多标签的概念,提出了基于标签传播的重叠社区划分算法;LabelRank算法[27]解决了LPA中的随机性问题,从而保证了在同一网络上进行社区划分的稳定性.标签传播算法有一个明显的缺点就是划分的随机性太强,这会导致划分的结果不太稳定.

基于相似性的社区检测算法通常与节点中心性指标结合使用.其中,度中心性为最常见的中心性指标之一.在这类算法中,首先根据中心性指标确定社区的中心节点,然后通过相似性将剩余节点与相应的中心节点聚集到一起,最后形成社区.这些算法中如何选择合理的阈值来确定中心节点非常困难.此外,在大规模的网络中,全局地计算相似性非常的耗时,为了解决这一问题,基于局部相似性的社区划分算法被提出,局部相似性指标包括共同邻居[14]、Jaccard系数[28],PHI指标[29]等,该类算法计算复杂度较低,但是算法鲁棒性和精确度很难保证.

2.2 链路预测

链路预测是指通过已知的网络结构,预测节点之间未知或未来的连边,用于网络中缺失信息的还原和预测,在数据挖掘和机器学习中有着广泛的应用[30].在该领域中,虽然已经开发了诸如随机块模型[31],矩阵分解[32]等许多复杂模型,但是一些考虑局部特征的启发式算法在实践中的效果依旧非常优秀,并且通常更具解释性和可拓展性.例如,共同邻居(CN)[14]假设如果两个节点具有更多共同邻居,则它们更可能具有连边,CN算法广泛用于社交网络[33].其它效果优秀的启发式算法包括Adamic-Adar(AA)[34],以及 Recourse Allocation(RA)[35],Kalz[36]等.其中Kalz需要在整个网络中搜索两个顶点之间的所有可能路径,Liben-Nowell和Kleinberg[37]首先研究了它们在社交网络上的链路预测性能.在近几年,Zhang则是通过图神经网络将深度学习带入了链路预测[38].

2.3 分类算法

分类是机器学习中常见的一类问题,旨在把不同特征或属性的数据分别归属到不同的类别中去.逻辑回归[4]是一种广义的线性回归分析模型,在解决二分类问题上有很好的效果.k近邻算法[39]采用向量空间模型进行分类,相同类别的实例彼此的相似度高,从而可以通过计算与已知类别的实例的相似度,来评估类别未知的实例可能属于的分类.支持向量机[2]不仅可以进行线性分类,还可以使用核函数有效地进行非线性分类.随机森林[3]输出的类别是由决策树中输出类别的众数决定的,是一个包含多个决策树的分类器.此外还包括一些聚类算法[40]和基于神经网络的分类算法以及一些使用网络结构表示的分类算法.

3 利用社区选举和链路预测的分类方法(CCELP)

在本节中,我们首先定义在文中使用的数学符号,然后详细描述CCELP模型.

3.1 问题描述和符号定义

可以把数据集表示为一个N行d列的矩阵X={x1,x2,…,xN}⊆RN×d,其中N表示数据的数量,每行可视作一个d维的数据向量,表示一个数据具有d个特征或属性.Xtrain和Xtest分别表示测试集和训练集的数据.定义一个无权无向的复杂网络G=(V,E),其中V={v1,v2,…,vN}表示节点集合,每个节点对应X中的一条数据,E⊆V×V表示边的集合.用N,M分别表示节点和边的数量,该网络也可以由大小为N×N的邻接矩阵A表示,其中如果在vi和vj之间有一条边,则Aij=1,否则Aij=0.

我们的目标是把数据集X转化成网络G,然后用社区选举和链路预测相结合的方法对未标记的网络节点进行分类,从而将相应数据归属到不同的类别.

3.2 CCELP模型架构

模型架构如图1所示,主要有以下4部分组成:

1)网络构建:使用k近邻算法(kNN)把数据集转化为一个稀疏网络;

2)社区划分:通过自分割社区检测算法Ego-Splitting[41]将网络划分为多个社区;

3)社区选举:在每个社区中进行“选举”,得到社区对应的代表节点;

4)链路预测:根据测试节点与代表节点之间的CLP指标推断节点的类别.

3.3 网络构建

拥有d个特征的数据点x可以被当作是d维空间中的向量,这一观点将能够使用常规相似性度量来测量数据点之间的相似性.数据特征矩阵X={x1,x2,…,xN}⊆RN×d是一个N行d列的矩阵,每行可视作一个d维的数据向量.余弦相似性可定义为:

si,j=xi·xj‖xi‖2‖xj‖2

(1)

其中‖xi‖2表示向量xi的欧几里德范式,‖xi‖2=∑df=1x2i,f.任意两个向量之间的曼哈顿距离可以写成:

φi,j=∑df=1|xi,f-xj,f|

(2)

任何由向量组成的数据都可以转换为网络表示,这样会改变数据的结构,从而可以得到一些隐含的信息.两种最常见的将数据转换为网络的方法是kNN和r-半径算法,使用相似性度量(如余弦相似性,曼哈顿距离等),可以将数据转换为网络.如果使用r-半径算法,CCELP会在相似度高于阈值r的每对数据点之间创建一条边.另外一种方法是使用kNN构建网络,为同xi相似度最高的前k个节点创建边.

在本文中,使用kNN算法为数据构建网络,我们在算法1中写出了如何用kNN构建网络的伪代码,其中输入的s为相似度函数,不同的数据集可以使用不同的相似度函数;kNN(s,i) 表示根据相似度函数s计算节点i的前k个相似节点的集合,因为得到网络结构是无向的,因此只要节点i在节点j的前k个相似节点的集合中,或者节点j在节点i的前k个相似节点的集合中,即可在节点i和节点j之间创建一条连边.通过网络构建我们可以得到数据X对应的网络G.将G中的节点分为两部分,训练节点Vtrain和测试节点Vtest,Vtrain对应着数据集中的训练集Xtrain,Vtest对应着数据集中的测试集Xtest.

算法1.使用数据特征矩阵X和相似度函数s构造无向图

1.输入:X,s

2.G={}

3.fori

①气弹簧压力较小时的伸长过程:活塞被拉着向上运动,一部分油液流过活塞阀,另一部分油液通过工作腔1内的孔流往PDC阀。由于控制压力(空气弹簧压力)及油液流过PDC阀的阻力变小,因而减振器阻尼力就减小,如图13所示。

4.forj

5.ifj∈kNN(s,i)ori∈kNN(s,j)then

6.G←G∪(i,j)∪(j,i)

7.endif

8.endwhile

9.endwhile

图1 CCELP模型架构图Fig.1 CCELP model architecture diagram

3.4 社区划分

通过网络构建得到网络G后,我们对网络进行社区划分.因为在现实世界中社区重叠为常见现象,即一个节点可以属于多个社区,例如一个学生可以同时加入棒球社和篮球社.因此,我们采用了一种耐噪声的基于子图结构的重叠社区检测方法,即Ego-Splitting[41].Ego-Splitting的工作流程分为两阶段,在第一阶段,Ego-Splitting学习将局部区域内的节点聚类,为了处理属于多个邻域的节点,它为每个集群创建一个相同的节点.在第二阶段中,自我分裂执行标准的全局聚类,并重新关联来源相同的节点.我们将社区划分的结果集表示为S′.

3.5 社区选举

在上述得到社区集合S′ 后,我们分别对每个社区新增一个代表节点.因为后续链路预测只通过网络结构进行计算,不需要用到节点的特征矩阵X,因此我们只对代表节点进行编号,无需为代表节点构建特征向量并加入特征矩阵X中.而由于测试节点的类别是根据代表节点的类别标签预测得到的,因此我们需要为每个代表节点构造标签.代表节点的标签由其所在社区内来自训练集的节点(测试集节点不参与)投票决定,即代表节点的标签继承自社区内训练集节点中数量最多的标签,我们称这一步骤为社区选举.例如要求社区Cm∈S′中的代表节点i的标签,则需要初始化一个c维向量[n0,…,nc-1],其中n0=…=nc-1=0,c是数据所拥有的类别数,该社区内的训练集节点会在该向量上将自己类别对应的下标的值加1,意为投一票,如社区内节点a的类别为j,0≤j

Yi=0,…,1j,…,0,nj=max(n0,…,nc-1)

(3)

其中nj(j= 0,…,c-1)表示社区Cm中标签j出现的次数.Yi为one-hot向量表示的标签,向量中为1的位置是出现次数最多的标签的值.此时得到的代表节点集合表示为Vrep,它们的标签集合表示为Yrep.

我们将Vrep融合到网络G中得到新的网络结构表示为G′,即各个社区中的节点同该社区的代表节点进行相连.这样可以将属于一个社区的两个节点之间的最短距离缩短到2以内,增加同一个社区内两个节点之间的拓扑联系.

然而,我们同时也发现一部分的社区投出的代表节点并不具有代表性,可能出现以下两种情况:

a) 最终投票出现平票,即社区内不存在最多票的标签;

b) 分票严重,假设标签a是投票最多的标签但是只占40%的票数,代表不了整个社区的立场.

针对这两种情况,CCELP对选举后的代表节点增加了“过半数原则”,即整个社区有过半数的训练集节点为同一标签投票才对该代表节点进行保留.如图2所示,社区1和社区2中训练集节点均有过半数投了同一标签,故对其代表节点进行保留;社区3虽然只有1/3的节点投了黑色类别,但其它的都是测试节点,不参与投票,因此也满足“过半数原则”;社区4中出现了平票情况,不满足“过半数原则”,该社区的代表节点将不参与之后的分类.“过半数原则”过滤部分代表节点后,得到最终的代表节点集合V′rep.

图2 社区选举代表节点图Fig.2 Schematic diagram of representative node for community election

3.6 链路预测进行分类

包括CN,AA,RA在内的一些优秀的启发式链路预测算法并不能很好的解决分类问题.任意两个节点x,y之间的CN指标可以表示为:

CNx,y=|Γ(x)∩Γ(y)|

(4)

其中Γ(x)表示节点x的邻居集合;任意两个节点x,y之间的AA指标可以表示为:

AAx,y=∑z∈Γ(x)∩Γ(y)1log|Γ(z)|

(5)

任意两个节点x,y之间的RA指标可以表示为:

RAx,y=∑z∈Γ(x)∩Γ(y)1|Γ(z)|

(6)

如公式(5)和公式(6)所示,RA和AA指标都对共同邻居的度数进行了惩罚,区别在于RA的惩罚力度更大,因此RA和AA都会抑制具有较高度数的共同邻居的贡献[35].但是较高度数的共同邻居贡献并不总比低度数的共同邻居低,如图3所示,在计算节点A,B间的连边分数时,虽然图3(b)中节点A,B的共同邻居β比图3(c)中的共同邻居β度数更高,但图3(b)中的β节点与A,B节点都有共同邻居,其贡献不应比图3(c)中的β节点低.这种情况的出现是因为RA和AA指标只关注到了一级共同邻居,导致当A,B节点的共同邻居β的度数较高是因为和A,B节点有共同邻居时,β会被过度惩罚.因此我们提出了一种新的链路预测指标,命名为分类链路预测(CLP)指标,CLP指标专门为分类问题设计,CLP不惩罚共同邻居β同A,B节点间的共同邻居(二级共同邻居).CLP同时考虑了一级和二级共同邻居对节点连边的影响,因此能够更加有效地利用节点之间的关系,也能得到更好的预测结果.我们将节点i,j之间的CLP指标定义为:

λi,j=∑β∈Γ(i)∩Γ(j)1log(δ(i,j,β)+ε)

(7)

其中Γ(i)为节点i邻居的集合,β∈Γ(i)∩Γ(j)为节点i,j之间的一个共同邻居,δ(i,j,β)计算得到的是β的邻居但是不为i,j邻居的节点数量,定义如下:

δ(i,j,β)=|Γ(β)|-|(Γ(β)∩Γ(i))∪(Γ(β)∩Γ(j))|

(8)

如图3所示,在a,b两个网络中节点A和B都只有一个共同邻居β;但在b网络中,A和β,B和β都存在二阶共同邻居(图3(b)中的实心节点),导致b网络中A和B节点相似性更高.因此为b网络中A,B节点间添加连边应该比a网络更具价值.

图3 链路预测指标所使用的网络Fig.3 Network used by link prediction algorithm

分别使用CN,AA,RA,CLP指标对图3的a,b两个网络进行计算,得到A,B两点间的连边分数如表1所示.从表1

表1 4种链路预测指标在图3(a)和(b)两个网络上的结果Table 1 Results of the four link prediction indicators on the two networks in Figure 3 (a) and (b)

发现,CN,AA,RA在两个网络上得到一样的结果,只有CLP指标在应该得到更好结果的图3(b)图上有着更高的预测分数.由此可见我们提出的链路预测算法能够更好的进行连边的预测.

新网络G′中的节点可以分为3类,代表节点集合Vrep′,训练节点Vtrain和测试节点Vtest.CCELP通过计算Vtest和Vrep′之间连边的CLP指标λ,然后对每一个测试节点Vi∈Vtest使用公式(9)分别计算其属于每一个类别的分数.例如,节点Vi属于类别a的分数yai可由公式(9)计算所得:

yai=ezai∑cj=0ezji,其中zai=∑j∈Varep′λi,j

(9)

其中λi,j表示通过链路预测指标求得的CLP指标值,Varep′表示Vrep′中标签为a的代表节点集合,c表示类别数量.所以最终节点Vi的类别Ci为:

Ci=argmax({y0i,y1i,…,yc-1i})

(10)

例如图1中链路预测的结果所示,节点A同两个黑色类别代表节点得到的CLP指标值都为0.3,相加为0.6,同白色类别代表节点的CLP指标值为0.4,因此通过公式(9)-公式(10),可以判断图1中节点A的类别为黑色.

3.7 算法步骤描述

CCELP首先利用kNN算法进行网络构建,为不存在网络结构的数据构建网络.然后利用Ego-Splitting算法对网络进行社区划分,依次对划分后的社区进行选举得到代表节点,并根据选举算法确认代表节点的标签,最后通过计算代表节点与测试节点之间的CLP指标值把测试节点归属到不同的类别中去.具体过程如下:

1)通过特征矩阵X和相似度函数求出任意两个节点之间的相似度,然后使用kNN将每个节点同其相似度分数排名前k的节点添加连边,得到网络;

2)Ego-Splitting对网络进行社区划分;

3)根据公式(3)对社区进行选举得到代表节点,并得到代表节点的标签;

4)将代表节点同其所在的社区内的点增加连边;

5)根据“过半数原则”过滤不符合要求的代表节点;

6)计算测试节点同每一个代表节点之间的CLP指标值;

7)计算测试节点属于每个类别的概率,并确定测试节点的类别.

4 实 验

实验主要目标有以下3个.首先,我们比较了包括CCELP在内的9个分类算法在16个数据集上的分类准确率;其次,在CCELP上使用不同的链路预测指标,判断我们提出的链路预测指标CLP是否能在分类问题上获得更好的准确率;最后,我们对CCELP中关键步骤例如社团选举,链路预测等进行消融实验,以判断各模块对最终分类结果的影响.

4.1 数据集

CCELP在16个数据集上做了数值仿真,使用的数据集可以从UCI机器学习库中获得.这些数据集包括:

1)Iris,鸢尾花卉数据集,是一类多重变量分析的数据集,数据集包含150个数据样本,分为3类,每类50个数据,每个数据包含4个属性.

2)Wine,葡萄酒数据集,数据集包含178个数据样本,分为3类,每个数据包含13个属性.

3)Cancer,癌症数据集,数据集包含699个数据样本,分为2类,每个数据包含9个属性.

4)Zoo,动物园数据集,包含101条数据,共有7大类,每条数据16个属性.

5)Digits,手写数字的图片数据集,每一张图片为0-9中的单个数字,包含1797张图片,每张图片为8*8的矩阵.

6)Teaching,助教评估数据集,包含3大类,每条数据5个属性,共有151条数据.

7)Hayes,海斯罗特数据集,包含3大类,每条数据4个属性,共有132条数据.

8)Sonar,声纳数据集,它是一个二元分类数据集,每条数据60个属性,共有208条数据.

9)Glass,玻璃数据集,根据玻璃的化学成分来判断玻璃的类型,共214条数据,6大类,9个属性.

10)Ecoil,一个生物领域的多分类数据集,共336条数据,8大类,7个属性.

11)Yeast,酵母数据集,共1484条数据,10大类,8个属性.

12)Libras,天秤星座运动数据集,共360条数据,15大类,90个属性.

13)Balance,天平称重量和距离数据库,共625条数据,3大类,4个属性.

14)Segment,图像分割数据集,数据是从7张室外图像的数据库中随机抽取的,共2310条数据,7大类,19个属性.

15)Optica,手写数字数据集的光学识别,共5620条数据,10大类,64个属性.

16)Poker,扑克手数据集,共25010条数据,10大类,10个属性.

这些数据集的大小介于100个实例到25010个实例之间,可以很好的比较出在较大和较小数据集上的效果,属性的数量在4到90之间,可以有效比较在低维和高维数据集上的分类结果.

4.2 实验结果

在实验中,kNN通过贝叶斯优化找到最佳的相似度函数和k值,Ego-Splitting的分辨率设置为1.0.在本文中,我们使用准确率(测试数据集中正确分类的样本数与总样本数之比)来评价分类算法性能的优劣.

在16个数据集上,我们比较了CCELP同8个知名的分类算法包括逻辑回归(LR)[4],朴素贝叶斯分类器(NB)[42],k近邻(kNN)[39],支持向量机(SVM)[2],决策树分类算法(CART)[43]以及随机森林(RF)[3],HLCRW[9]和PgRkNN[12]的分类准确率,其中HLCRW和PgRkNN同为先把数据集转化成网络,然后再用复杂网络的方法进行分类的算法.算法的超参数设置均根据原始论文进行设置,原始论文中未提起的使用贝叶斯优化进行查找最优参数.

实验结果如表2所示,表2中数字均为百分比,第1列的小括号内数字表示在进行网络构建时所取的k值,加粗的数字表示在当前数据集中取得的最好准确率.表2的结果显示:CCELP在10个数据集上获得了最佳结果,在Breast、Yeast和Libras数据集上获得了次优结果,在Zoo和Teaching数据集上获得了接近次优的结果,在Hays数据集上的表现也超过了9种算法的平均性能.总体而言,CCELP表现最佳,具有优秀的分类效果.

为验证本文提出的链路预测指标CLP在解决分类问题的作用,在CCELP上分别使用了4种不同的链路预测指标,包括CN,AA,RA以及CLP.这几种指标的具体实现在公式(4)-公式(8)中.表3给出实验结果.在16个数据集的9个里,CLP指标都取得了最好的分类结果,而在其中4个数据集上取得了第2好的分类效果.这表明我们提出的CLP指标在解决分类问题上有优势.

为了进一步验证CCELP各模块的有效性,我们通过删除CCELP的部分模块来进行消融研究.包括No-Half,No-Link,No-Sum 3种CCELP的算法变种.其中No-Half表示不对代表节点进行半数过滤,即不使用“过半数原则”;No-Link表示不将代表节点同社区内的节点相连,即不缩短同一社区中节点间的距离;No-Sum表示不对节点所得到的同类别结果求和,而是选取同测试节点连边CLP指标值最大的代表节点的标签作为测试节点的标签.

表2 CCELP与8个分类算法的分类准确率比较Table 2 Comparison of classification accuracy between CCELP and 8 classification algorithms

表3 CCELP使用不同的链路预测指标时的分类准确率比较Table 3 Comparison of classification accuracy when CCELP uses different link prediction indicators

我们在4个分类数据集上进行了消融实验,并计算准确率,在图4中报告了结果.No-Half和CCELP的比较表明,“过半数原则”的添加,能保证生成的代表节点更加合理,更具价值,从而使结果更优;No-Link和CCELP的比较表明,当缩短同个社区中两个节点之间的距离时,能够在一定程度上增加同社区内节点之间的关联,从而提高分类准确率;No-Sum和CCELP的比较表明考虑多个代表节点之间的共同结果对提升分类的精度是有帮助的.

5 总结和讨论

在本文中,我们提出了一种新的利用社区选举和链路预测的分类方法(CCELP),CCELP有效地利用了数据特征之间的联系,将数据集转化为网络表现形式,将数据分类问题转化为网络上社区划分和链路预测问题.在16个分类数据集上,通过和8种知名分类算法相比较,CCELP展示了优异的分类效果,在金融、医疗和生物等方面具有广阔的应用前景.

图4 CCELP消融实验的结果Fig.4 CCELP ablation experiment results

猜你喜欢

链路类别标签
一种移动感知的混合FSO/RF 下行链路方案*
基于Android设备的异构无线链路聚合软件①
一起去图书馆吧
简析基于概率预测的网络数学模型建构
不害怕撕掉标签的人,都活出了真正的漂亮
一种IS?IS网络中的链路异常检测方法、系统、装置、芯片
让衣柜摆脱“杂乱无章”的标签
科学家的标签
科学家的标签
选相纸 打照片