收稿日期:2020 09 08;修回日期:2020 10 27 基金项目:河南省高等学校青年骨干教师培养计划资助项目(2018GGJS079);国家自然科学基金资助项目(U1504622,31671580)
作者简介:周玉(1979 ),男,安徽枞阳人,副教授,硕导,博士,主要研究方向为智能控制与决策、模式识别、智能计算等(zhouyu_beijing@126.com
);孙红玉(1998 ),女,河南荥阳人,硕士研究生,主要研究方向为模式识别、智能计算;朱文豪(1996 ),男,河南洛阳人,硕士研究生,主要研究方向为智能控制与决策、智能计算;任钦差(1994 ),男,河南周口人,硕士研究生,主要研究方向为模式识别、智能计算.
基于K均值聚类的分段样本数据选择方法
周 玉,孙红玉,朱文豪,任钦差
(华北水利水电大学电力学院,郑州450045)
摘 要:为了提高神经网络分类器的性能,提出一种基于K均值聚类的分段样本数据选择方法。首先通过K
均值聚类把训练样本根据已知的类别数进行聚类,对比聚类前后的各类样本,找出聚类错误的样本集和聚类正确的样本集;聚类正确的样本集根据各样本到聚类中心的距离进行排序并均分为五段,挑选各类的奇数段样本和聚类错误的样本构成新的训练样本集。该方法能够提取信息量大的样本,剔除冗余样本,减少样本数量的同
时提高样本质量。利用该方法,结合人工和U
CI数据集对三种不同的神经网络分类器进行了仿真实验,实验结果显示在训练样本平均压缩比为66.93%的前提下,三种神经网络分类器的性能都得到了提高。关键词:训练样本;数据选择;K均值聚类;分类器;神经网络中图分类号:TP183 文献标志码:A 文章编号:1001 3695(2021)06 015 1683 06doi
:10.19734/j.issn.1001 3695.2020.09.0236SegmentationtrainingdataselectionmethodbasedonK meansclustering
ZhouYu,SunHongyu,ZhuWenhao,RenQinchai
(SchoolofElectricPower,NorthChinaUniversityo
fWaterResources&ElectricPower,Zhengzhou450045,China)
治标Abstract:Inordertoimprovetheperformanceofneuralnetworkclassifier,thispaperproposedasegmentedsampledatase lectionmethodbasedonK meansclustering.First,K meansclusteringwasusedtoclusterthetrainingsamplesaccordingto
thenumberofknowncategories
,andthenitcomparedthesamplesbeforeandafterclusteringtofindoutthesamplesetswithclusteringerrorsandthecorrectsamplesets.Second,thismethodsortedthecorrectsamplesetofclusteringanddivideditintofivesegmentsaccordingtothedistancefromeachsampletotheclusteringcenterandselectedthesamplesofoddsegmentsand
thesamplesofclusteringerrorstoformanewtrainingsampleset.Theproposedmethodcouldselectinformativedata
,deleteredundantdata,reducethenumberoftrainingdatasetandimprovethequalityoftrainingdataset.ThismethodusedsomeclassifiersbasedonneuralnetworkcombingtheartificialdatasetandUCIdatasetstostudy.Experimentalresultsshowthattheperformanceofthethreeneuralnetworkclassifiersisimprovedwhiletheaveragecompressionratioofthetrainingsamplesis66.93%.Keywords:trainingdata;dataselection;K meansclustering;classifier;neuralnetwork
0 引言
基于机器学习的分类器性能依赖于训练样本[1],从现存样本中进行数据选择以获取高质量的训练数据可有效提高分类器的性能。目前,通过选择样本数据来提高分类器性能以及
样本数据选择方法的研究已受到学者们的广泛关注[2~14]
。支持向量机(SVM)是一种广泛应用于非线性高维模式识别问题的分类模型。然而,由于支持向量机的计算困难和模型的复杂性,在处理大规模训练集时,支持向量机的实现是低效或不可行的。针对该问题,文献[2]研究了支持向量机训练集的约简重建问题,针对样本在向量空间中分布不均匀的问题,从基于几何的角度提出了一种有效的自适应训练样本选择算法,并通过实验验证了该方法具有较高的效率。文献[3]利用模糊聚类提高监督学习的性能,提出了三种基于模糊聚类方法的数据选择策略,即基于中心的数据选择;基于边界的数据选择和混合选择;基于中心的数据选择是将每个群集中具有高隶属度的样本作为训练数据,基于边界的选择是提取群集之间的样本,即边界数据作为训练样本,混合选择是基于中心选择和边界选择的组合;该方法使用FCM来实现数据选择并通过BP神经网
络进行验证,实验证明与随机选择相比混合选择可以有效提高
分类器的学习性能。为了提高分类器性能,文献[4]提出一种基于阴影集的训练样本数据选择方法;首先通过F
CM聚类得到样本数据的最优模糊划分矩阵,基于此得到相应的阴影集,最后通过阴影集构造核数据和边界数据并进行数据选择;实验证明该方法能够在保证泛化能力的同时减少样本数量和训练所需时
间,有效提高了分类器性能。文献[5]进一步探讨了在一个集群中存在聚类和分散的数据点,认为聚类中心点周围的数据点是位于聚类内层的密集数据点,这些数据点不包涵支持向量(SV)被删除;而分散的数据点是集群外层的稀疏数据点,这些数据点具有SV,因此被保留;提出利用Fisher判别比确定密集数据点与分散数据点之间的边界,通过去除集群中的冗余
密集数据点,加快支持向量机的训练过程。文献[
6]利用样本向量之间夹角的余弦值提出了一种减少单分类训练集规模的新方法,该方法只保留了在可能成为支持向量的数据分布附近
的样本。文献[
7]提出一种基于余弦相似度的边界样本选择方法,并提高了卷积神经网络的性能。文献[
8]提出一种基于邻域样本密度的SVDD样本剪辑方法,通过选取一个固定大小的邻域,并计算邻域内的样本数,根据确定的阈值选择丢弃还
第38卷第6期2021年6月 计算机应用研究
ApplicationResearchofComputersVol.38No.6
Jun.2021
是保留邻域样本,所保留的样本接近边缘。文献[9]采取了类似的方法,通过确定一个固定邻域球来进行边界数据的选择。与文献[8,9]不同的是,文献[2]提出一种壳状数据选择方法,以各类样本集的中心向量为圆心,以R为半径的圆形区域进行冗余数据点的筛选,通过对各样本点到中心向量的距离与筛
选半径R进行比较,
若比R小,则剔除该向量点,重新计算筛选后的中心向量对样本点继续进行筛选,直到筛选不到点或该类别中剩余的点达到截断阈值T;通过筛选后剩余的样本点大部分分布在各类的类边缘,其形状在向量空间中类似于一个壳;相比于同类的其他几何型数据选择方法,该方法几乎完整地保留了样本的边界数据即壳边缘,其具有更高的准确率。文献[13]提出了一种基于排名的样例选择,该算法根据每个样例与训练集中所有其他样例的关系来计算每个样例的得分,根据得分排名选择样例,并通过实验验证该方法的有效性。文献[
14]设计了基于非平稳割点样本选择的二型AFS分类方法,该方法在保持较好的分类准确率和语义的基础上,可以有效降低类描述的复杂度。
通常来说,位于样本集类别中心的样本包含的信息量较大,但如果中心样本过多,则会出现冗余信息,导致过学习,使得训练得到模式的类区域过于狭小,使得边界样本和差样本容易识别错误。分类器学习的目的是为找到一个分类曲面,训练则为了这一分类超曲面的生成,单纯地使用边界样本进行训练会出现过拟合现象,使得分类器的泛化能力下降。因此,在进行数据选择时,应该考虑选择后的样本能够代表样本的整体分布,也要考虑重点样本的选取。基于此,本文提出一种基于K均值聚类的分段样本数据选择方法。
1 相关概念
1 1 样本数据选择定义
训练样本数据选择就是从原始训练样本集T中尽量多地
删除其中冗余样本和噪声样本的过程,然后得到一个压缩集T′且使选择后得到的样本集T′能够保持或者改善分类器的分类性能。具体定义如下:设初始训练集为{X,P}={(x1,p1
),(x2,p2),…,(xn,pn)},表示有n个训练样本,其中{xn}ni=1为样本的特征属性,{Pn}ni
=1为样本的类别标签。存在一个最小的压缩集{X′,P′} {X,P},使得任意{x,p} {
X,P},P=classifier(x,{X′,P′})表示测试样本x使用分类器在选择的压缩集{X′,P′}上的分类结果。由上面的训练样本数据选择的定义可知,样本选择的目的就是从初始训练样本集中挑选出一个压缩子集,保证分类器对测试样本进行分类时能够正确分类
的同时尽可能地使样本集的样本数目减少[10,11]
。训练样本数据选择过程如图1
所示。
进行样本选择时需要满足两个前提条件:a)挑选出来的
训练样本集在一定程度上小于原始训练样本,这样才能保证所挑选出来的训练样本具有代表性,能够
反映样本的整体特征;b)由特定的样本选择算法对样本进行选择以后获得的压缩样本集数量应小于测试样本的数量,这仅为理论要求,其目的是为了证明压缩样本集中的样本能够在测试样本集分类时起到决定性作用。1 2 K均值聚类
K均值聚类算法(K meansclusteringalgorithm)是常用的
一种迭代求解的聚类分析算法,其具体步骤如下:
假定数据集为X={x1,x2,…,xi,…,xn
},聚类成的簇数为K,聚类中心为C={c1,c2,…,cj,…,ck
}。a)从数据集X中随机选择K个样本为初始的聚类中心。b)对数据集中的每一个样本xi
(i=1,2,…,n),计算其与聚类中心cj
(j=1,2,…,k)的距离,距离计算公式为D(xi,cj
)=∑m
w=
1(xiw-cjw
)槡
2
(1)
其中:m为样本的维度。
c)根据计算出的各个样本到聚类中心的距离,找出最小距离并把该样本划分到对应的簇。
d)根据式(2)对聚类中心进行重新计算更新,根据式(3)计算目标函数的结果,计算公式为
c′j
=∑xi∈cjxi
|cj
|(2)E=∑n
i=1∑xi∈cjd2
(cj,xi
)(3)
e)对聚类中心和目标函数进行判断,达到要求则算法结
束,否则继续进行步骤b)。
K均值聚类算法对大数据集有着比较高的效率,简单快
速,其时间复杂度接近线性,在很多领域有着广泛应用[15~17]
。
2 基于K均值聚类的分段样本选择方法
本文提出了一种基于K均值聚类的分段样本数据选择方法。首先通过K均值聚类把训练样本根据已知的类别数进行聚类,对比聚类前后的各类样本,找出聚类错误的样本集和聚类正确的样本集;聚类正确的样本集根据各样本到聚类中心的距离进行排序并均分为五段,挑选各类的奇数段样本和聚类错误
的样本构成新的训练样本集。分段的首尾样本可以看做中心样本和边界样本,这样的样本是最典型的样本;首尾样本加上中断样本,能够确保选择后的样本能够代表样本的整体分布;对于聚类错误的样本,可以认为这类样本属于特殊的边界样本。因此,基于K均值聚类的分段样本数据选择方法既考虑保留原始样本的分布状态,也考虑到了典型样本的选取。2 1 算法步骤
基于K均值聚类的分段样本数据选择方法具体步骤如下:
调月经吃什么药好a)对原始训练样本数据进行K均值聚类分析,将样本集X分成K个聚类,即
X={Xoriginal1,Xoriginal2,…,Xoriginaln}={Xcluster1,Xcluster2,…,Xcluster
k
}(4)在进行聚类分析时,由于K均值聚类是无监督的聚类方
法,令K=n,使得聚类后得到的类别数与原始类别数一致。b)对聚类完成后的K个类依次与原始的K个类进行比较并取交集,即
Xij=Xoriginali∩Xcluster
j
i,j=1,2,…,k(5)
通过取交集运算,得到Xcluster
i
与每一个原始类的交集个数,|Xij|=t,|C|记为集合C中元素的个数。c)找出与类Xoriginali交集样本个数最多的聚类Xcluster
ε(i),ε(i)=argmax{|Xij′
|,j′=1,2,…,k},得到新的样本集:X1=∪KI=1Xrighti=∪ki=1(XoriginalI∩Xcluster
ε(i))(6)X2=∪ki=1Xwrongi=∪ki
=1(Xoriginali-Xrighti)(7)
这里要找出与Xoriginali对应的Xclusterj。基于Xoriginali和Xc
luster
j,有Xij=Xioriginal∩Xcjluster={x|x∈Xoiriginal,x∈Xcj
luster} i,j=1,2,…,k(8)
对应固定的i,如果Xcluster
j满足Xij=max{|Xij′
‖j′=1,2,…,k},则把Xclusterj记为Xclusterε(i)。即把{Xcluster
j|j=1,2,…,k}对应到原始的类别,按原始类标签顺序对聚类产生的K个类进
·4861·计算机应用研究第38卷
行重排为{Xcluster
ε(i)|i=1,2,…,k},其中ε是K均值聚类产生的K类{1,2,…k}的置换。使得qq空间网址
Xiε
(i)=max{|Xij′||j′=1,2,…,k}(9)
其中:Xiε(i)使Xoriginali和Xcluster
j有最多的交集;ε(i)=argmax{|Xij′|,j′=1,2,…,k},ε(i)为从1到K,表示使得Xoriginali和Xclusterj有最多交集的j,用Xrighti来表示其交集即第i类样本聚类正确的数据,Xrighti={x|x∈Xoriginali,x∈Xclusterε(i)}。在此映射ε被用来处理交集Xij
。ε:Xij
→Xright
i ε
(i)=j0ε(i)≠{
j
(10)
可以看出集合{Xclusterε
(i)|i=1,2,…,k}是相对于{Xoriginal
}ii=1,2,…,k}而言集合{Xclusterj
|j=1,2,…,k}的重排,则集合与聚类的交集可以理解为原始类别聚类正确的训练集。从原始训
练集中去除掉这一部分即得到X2=∪ki=1Xwrongi=∪ki=1(Xoriginal
i-Xrighti)
,就是原始类别聚类错误的数据。d)根据K均值聚类中各类样本到其聚类中心的距离D对
新的样本集X1
中的每类样本按从近到远进行排序;把聚类正确的数据根据K均值聚类结果中每个样本到其聚类中心的距离D进行由近及远的一个排序。
e)选取排序后X1中每类样本Xright
i(i=1,2,…,k)的首、中、尾三段样本构成新的样本集Xnew
,具体如下:
首先根据新的样本集X1中的每类样本的个数|Xright
i|=ti
,把每类样本均分成五段,每段样本个数为ti
/5,分别取奇数段的样本即选取第一段、第三段和第五段共3ti/5个样本构成新的样本集Xnew,通过这一步的选择去除掉大部分的冗余样本,保留了聚类正确的样本集中的中心样本、部分内部样本和边界样本。
f)由步骤e)得到的Xnew和步骤c)中得到的X2
共同组成新的训练样本集:
T=Xnew∪X
2
(11)
把步骤e)得到的新的样本集Xnew
与步骤c)中得到的原始
类别聚类错误的样本集X
2
共同组成新的训练样本集T=Xnew∪X2,作为神经网络分类器的训练样本进行训练,这里加
入聚类错误的样本集X2
的原因是因为K均值聚类错误的样本大都位于分类边界附近,这部分的样本数据对分类器的训练起着至关重要的作用。
g)将选择后得到的训练集T作为训练样本输入分类器进行训练。
基于K均值聚类的分段样本数据选择方法流程如图2
所示。
2 2 数据选择可视化过程
为了更好理解所提出的数据选择方法,这里利用一组人工
生成的数据集进行可视化描述,具体如下:人工数据集由两类数
据组成,每类包含1
00个样本数据,样本分布如图3(a)所示;为了压缩数据集,提取有效数据,剔除冗余样本,利用提出的基于
聚类的分段样本数据选择方法对原始训练样本进行处理;通过K均值聚类算法进行聚类得到的聚类结果如图3(b)
所示。
K均值聚类是通过初始化聚类中心不断计算样本到聚类
中心的距离进行迭代分类的过程,通过运行K均值聚类算法可以得到各个聚类样本集中的样本到各自聚类中心的距离D,根据距离D的大小对聚类正确的样本进行排序分段。
选取第二类样本集为例进行描述,其聚类正确的样本分段
结果如图4所示,
其中第一段包含的样本数据表示其距离聚类中心较近,第五段包含的样本数据表示其距离聚类中心较远。通过图4样本到聚类中心距离的分段分布图可以看出,第一段、第三段、第五段包含的样本数据能够清晰地勾勒出样本整体结构,第五段为对分类器训练起决定性作用的边界样本集,第一段为样本中心的部分数据,第三段包含了样本分布结构中
的中间部分的数据。由此可以得出算法步骤e
)中选取排序后X1中每类样本Xrighti(
i=1,2,…,k)的首、中、尾三段样本构成新的样本集Xnew具有理论意义和实际操作价值。其通过挑选典型样本,不仅剔除了聚类正确的样本数据集中五分之二的冗余数据,还保证了训练样本集的样本质量。挑选后的奇数段样本和聚类错误的样本共同构成新的训练样本集,选择后的样本分布如图5
所示。
3 仿真实验
为了验证所提出的基于聚类的分段样本数据选择方法对
神经网络分类器性能提高的影响,这里分别采用人工和UCI数据集进行实验,将所提样本数据选择方法与神经网络分类器相结合并对实验结果进行分析总结。这里的神经网络分类器包括BP网络、LVQ网络以及可拓神经网络(extensionneural
network家庭矛盾怎么处理
,ENN)。其中ENN是继模糊神经网络、遗传神经网络、进化神经网络等之后的又一种新的网络类型,ENN已经在分
类聚类、模式识别、故障诊断等方面获得广泛应用[18~20]。
3 1 人工数据集
为验证所提基于聚类的分段样本数据选择方法,先使用人
工数据集对所挑选的样本数据对分类器性能的影响进行评估,
此人工产生的符合高斯分布的数据集由四类组成,每类100个南诏
样本个数,共4
00个,属性为两个,样本集如图6所示。实验时每类随机挑选70%的样本共280个样本作为训练集,其余
·5861·第6期周 玉,等:基于K均值聚类的分段样本数据选择方法
30%共120个样本作为测试集,通过本文方法对训练样本集进
行挑选,挑选后的训练样本集大小为168,压缩比例为60%。
挑选前后训练样本集的分布对比如图7
所示。
分别用挑选前后的训练样本集以及从训练样本集中随机
挑选与挑选的训练集具有相同压缩比的随机选择训练集对
BP、LVQ、ENN三个分类器进行训练,用测试集对其进行测试,
对比随机选择的具有相同压缩比的训练集是因为随机数据挑
选方法选择简单,是目前应用最为广泛的数据选择方法[12],其
选择的样本集分布相对来说也比较均匀,通过对比更能说明本
文方法在相同压缩比的前提下所挑选的样本质量更高。实验
结果如表1所示。从表1可以得出以下结论:a)对人工数据集
进行训练测试可知挑选后的训练集对BP、LVQ进行训练能够
对测试集的分类精度有所提高,ENN的测试集分类精度不变,
但挑选后的训练集只有原始训练集的60%,提出的数据选择
方法能够极大地压缩训练集数量,剔除了大量的冗余样本,提
高分类精度,证明了所挑选的训练集能够代表样本的整体信
息,提高分类器泛化能力;b)对BP神经网络而言,挑选后训练
集的分类精度有所提高,且挑选后的训练集在进行训练时只需
要94步就能达到原始训练集训练155步达到的精度,挑选后
的训练集具有更短的学习时间和更好的学习能力;c)挑选训
练集与具有相同压缩比的随机选择训练集对比,BP网络的学
习步长和测试集分类精度均有所提高,LVQ虽然训练步长相
同,但训练集的训练误差和测试集的分类精度均有所提高,
ENN网络表现相同,可以看出所提数据选择方法在相同压缩
比的前提下与随机选择相比其所挑选的样本质量更高。
表1 实验结果
Tab.1 Experimentalresults
训练集样本集大小网络模型结构学习步数测试集正确率/%
原始训练集280
BP2 8 415599.17
LVQ2 10 4398.33
ENN2 4199.17
挑选的训练集168
BP2 8 49499.58
LVQ2 10 4399.17
ENN2 4199.17
内心强大的句子随机选择训练集168
BP2 8 410797.5
LVQ2 10 4398.33
ENN2 4199.17
3 2 UCI数据集
这里采用UCI数据集中的iris、wine、seeds和monks2四个数据集进行对比实验,各数据集的详细信息如表2所示。
表2 数据集介绍
Tab.2 Datasets’introduction
实验时每类随机挑选70%的样本作为训练集,其余30%样本作为测试集,对比实验为训练集变为通过提出的分段样本数据选择方法对训练样本集进行挑选后的训练样本集,以及随机选择的训练样本集,随机选择的样本与挑选的样本数量一致,即具有相同压缩比,而测试集不变,然后对BP、LVQ、ENN三种分类器分别进行训练和测试,结合样本压缩比以及通过对比分析三种训练样本集对分类器的训练曲线和测试集的分类正确率,对所提新训练样本数据选择方法进行评估。
挑选前测试集与训练集数量大小如表3所示,通过本文方法进行挑选后获得的训练样本信息如表4所示。
表3 训练集与测试集信息
Tab.3 Trainingsetandtest
setinformation
表4 训练集样本压缩比
Tab.4 Trainingsetsamplecompressionra
tio
3 2 1 iris数据集
利用iris数据集进行实验的结果如表5所示。图8~10分别为原始样本和经过本文方法选择后的样本进行训练的曲线。
表5 实验结果
Tab.5 Experimentalresults
训练集样本集大小网络模型结构测试集正确率/%
原始
训练集
105
LVQ4 16 395.56
ENN4 397.78
BP4 7 3100
挑选
冬天吃什么菜
训练集
67
LVQ4 16 397.78
ENN4 3100
BP4 7 3100
随机选择
训练集
67
LVQ4 16 395.56
ENN4 397.78
BP4 7 397.78
由表5以及图8~10分析可得:a)对于iris数据集的三种训练集,通过BP、LVQ、ENN分别进行训练测试,其中随机选择训练集与原始训练集对于BP、LVQ、ENN三种神经网络达到分类精度的训练步数分别从3038步减少到586步,844步减少到280步,8步减少到6步,且分类精度LVQ、ENN保持不变,BP分类精度有轻微下降,说明随机选择能够减少样本集的数量,使得训练步长减少,且分类精度大部分变化不明显,对于个别分类器有所下降,是目前使用最广泛最简单的数据选择方法;b)挑选训练集与原始训练集进行训练后测试样本集的分类精度LVQ、ENN均有所提高,BP保持不变,且训练步数BP从3038步减少到366步,LVQ从844步减少到125步,ENN从8步减少到7步,说明挑选后的训练集相比较原始训练集具有更短的学习时间和更好的学习泛化能力;c)挑选训练集与随机训练集进行训练后测试样本集的分类精度LVQ、ENN、BP均有所提高,且训练步数BP从586步减少到366步,LVQ从280步减少到125步,ENN从6步变为7步,训练步长基本都
·
6
8四季草莓
6
1
·计算机应用研究第38卷
有所降低,ENN训练步长也仅增加一步但分类精度却从97.78%提高到100%,说明相比于随机挑选方法,所提训练样本选择方法选择的样本质量更高,训练后分类器的泛化能力更强。