CN103440275A - 一种基于普利姆的k均值聚类方法 - Google Patents
一种基于普利姆的k均值聚类方法 Download PDFInfo
- Publication number
- CN103440275A CN103440275A CN2013103431071A CN201310343107A CN103440275A CN 103440275 A CN103440275 A CN 103440275A CN 2013103431071 A CN2013103431071 A CN 2013103431071A CN 201310343107 A CN201310343107 A CN 201310343107A CN 103440275 A CN103440275 A CN 103440275A
- Authority
- CN
- China
- Prior art keywords
- spanning tree
- minimum
- limit
- weights
- minimum spanning
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明是一种基于普利姆的K均值聚类方法,针对K均值聚类算法随机选取中心的不足的问题,引入prim最小生成树方法对K均值聚类算法初始中心的选取进行优化,由此设计出一种改进的K均值聚类算法。使用prim最小生成树方法对随机生成的点求其最小生成树,然后从中找出最小生成树权值和最大,且权值相差不大的点集作为初始聚类中心,最后使用K均值聚类算法聚类。仿真结果表明相比传统K均值算法,本发明的方法具有更高的准确率以及更少的数据迭代次数。
Description
技术领域
本发明是一种在数据挖掘中基于prim(普利姆)最小生成树算法的K均值聚类改进方法,属于聚类分析技术领域。
背景技术
计算机技术的快速发展导致了数据呈现指数型增长,如何从大量的数据中找出隐含的,未知的有用的信息成为了人们越来越关心的问题,数据挖掘由此产生。聚类分析就是其中相当重要的一部分。它将物理或者抽象对象的集合组成多个类,使得同一类中的样本相似度较高而不同类中的样本相似度尽可能的低。现今世界,国内外提出了层次型类聚、划分型类聚、密度型类聚、网络型类聚等类聚算法。目前聚类算法还存在着如下问题:对于初始聚类中心的选择敏感,极易陷入局部最优解;对于大量数据和高维数据的处理能力;发现任意形状的簇等。K均值聚类算法是一个众所周知的基于划分的聚类方法,它是由Macqueen在1967年提出的解决聚类问题的经典算法。
K均值聚类算法因为其简单快速而被广泛的使用,在实践中发现了K均值问题,如对初始中心敏感,必须给出聚簇的数目,时间序列的数据量大,聚类结果受噪声的影响比较大,对大数据的处理速度慢,数据迭代次数多等。目前,一些学者已对此做出了改进,但是这些改进均增加了K均值聚类算法的复杂度,使得K均值聚类算法处理数据的时候速度慢,数据处理的迭代次数增加的不足。
发明内容
技术问题:本发明针对K均值聚类算法随机选取中心的不足的问题,引入prim最小生成树方法对K均值聚类算法初始中心的选取进行优化,由此设计出一种改进的K均值聚类方法。使用prim最小生成树方法对随机生成的点求其最小生成树,然后从中找出最小生成树权值和最大,且权值相差不大的点集作为初始聚类中心,最后使用K均值聚类方法聚类。仿真结果表明相比传统K均值方法,本文提出的方法具有更高的准确率以及更少的数据迭代次数。
技术方案:本发明的一种基于普利姆的K均值聚类方法使用普利姆prim最小生成树方法对随机生成的点求其最小生成树,然后从中找出具有最大权值和且权值相差不大的点集作为初始聚类中心,最后使用K均值聚类方法聚类,其步骤如下:
1)随机从样本中选择k个数据对象,重复操作m次,对每一次选取的k个数据对象,使用prim求出其最小生成树,重复计算m次,对每次的最小生成树将其权值相加得到最小生成树的权值和,记第i次得到的最小生成树权值和记为dsumi,重复计算m次得到m个和,分别为dsum1,dsum2,…dsumm;其中,k为数据对象个数,m为重复计算次数,i为计算次数;
2)求出最小生成树权值和中的最大值MAX(dsum1,dsum2…dsumm)对应的k个数据对象对应的点集;
3)若这个k个数据对象对应的点集生成树中的权值相差不大,则将求出的点集作为初始聚类中心,转步骤4);否则去掉当前所选最小生成树权值和最大值,转步骤2);
4)根据数据对象距离计算公式,求出各个数据对象到这个初始聚类中心的距离,取最小的距离放入对应的簇中,根据数据集合聚类簇中心计算公式更新簇中心;计算误差平方和函数E跟前一次的E值比较,若绝对值小于等于规定值,转步骤5),否则继续计算聚类中心;
5)输出聚类结果。
所述的prim最小生成树,具体描述如下:
prim是一个经典的求最小生成树的方法;设G=(V,E)是带权重的连通图,其中V为点的集合,E为边的集合;F=(V’,E’)是正在构造中的生成树,其中V’为生成树中点的集合,E’为生成树中边的集合;初始状态下,这棵生成树只有一个顶点,没有边,即V’={v0}, E’={},v0是任意选定的顶点;Prim最小生成树从初始状态出发,每一步从图中选择一条边,共选取n-1条边,构成一棵生成树;具体的选择准则步骤为:若存在一条边(u,v)满足一个端点u在构造中的生成树上,即u∈V’,而另一个端点v不在该树上,即v∈V-V’,则在满足上述条件的所有边中寻找一条权值最小的边记为(u’,v’),其中u’,v’为这条权值最小的边连接的两个点;按照上述选边准则,选取n-1条边满足条件的最小边(u’,v’),加到生成树上,即将v’并入集合V’,边(u’,v’)并入E’,直到V=V’为止,这时,所得的树T=(V,E’)是连通图G的一棵最小代价生成树。
所述的数据对象距离计算公式,定义如下:
数据对象x=(x1,x2,…,xp)和y=(y1,y2,…,yp)之间的距离d(x,y)为
其中x1,x2,…,xp是数据对象x的1维至p维数据集,y1,y2,…,yp是数据对象y的1维至p维数据集。
所述的数据集合聚类簇中心计算公式,定义如下:
数据集合聚类簇中心mi
其中i=1,2,…k,其中ni为第i簇样本数,xij为第i簇中第j个样本。
所述的误差平方和函数E,定义如下:
数据集合{x1,x2,…xn}划分为k个类,各个类簇包含样本数n1,n2,…,nk,则误差平方和函数E定义为
其中xij表示第i个类的第j个样本,i=1,2,…,kj;j=1,2,…n,ni表示第i个类簇中的样本数,mi表示第i个的聚类中心。
所述的最小生成树,定义如下:
在一个给定的连通图G=(V,E)中,其中V为点的集合,E为边的集合,(u,v)代表连接顶点u与顶点v的边,即(u,v)∈E,u∈V,v∈V,而w(u,v)代表边(u,v)的权重,若存在E的子集T,且T为无循环图,使得w(T)最小,其中w(T)为T中所有边的权值和,即
则此T为G的最小生成树。
有益效果:本发明通过prim最小生成树方法来优化初始中心的选择,实现较高的聚类准确率。通过UCI(加州大学欧文分校,University of California Irvine)机器学习数据库的数据集的测试,证明本文的算法比K均值聚类算法更加稳定,并且聚类的准确率跟K均值聚类算法相比也有提高。
附图说明
图1是最小生成树的构造过程,(a)为无向图G,,(b)为加入源点,(c)为加入边(0,2),(d)为加入边(2,5),(e)为加入边(3,5),(f)为加入边(1,2),(g)为加入边(1,4)
图2是基于Prim的K均值聚类算法流程图,
图3是IRIS数据集的聚类正确率比较,
图4是IRIS数据集的迭代次数比较,
图5是Balance-scale数据集的聚类正确率比较,
图6是Balance-scale数据集的聚类正确率比较。
具体实施方式
基本思想:本发明针对K均值聚类算法随机选取中心的不足的问题,将prim最小生成树方法引入到K均值聚类算法初始中心的选取。首先使用prim最小生成树方法对随机生成的点求其最小生成树,然后从中找出最小生成树权值和最大,且权值相差不大的那组来作为初始中心,最后使用K均值聚类算法聚类,由此提出IKCAP(改进的K均值聚类,An Improved K-means clustering Algorithm Based on Prim)。为使欧几里得距离的值足够的大,初始中心的选取应该具有区分度即能使各个点的距离相对较远,所以选取相对较远的点作为初始的中心点,可以避免初始值选的过于邻近。本发明的目的是将数据集合{x1,x2,…,xn}划分为k个类,使聚类误差平方和E最小。
变量定义:
定义1.数据对象x=(x1,x2,…,xp)和y=(y1,y2,…,yp)之间的距离d(x,y)为
其中x1,x2,…,xp是数据对象x的1维至p维数据集,y1,y2,…,yp是数据对象y的1维至p维数据集
定义2.数据集合聚类簇中心mi
其中i=1,2,…k,其中ni为第i簇样本数,xij为第i簇中第j个样本
定义3.数据集合{x1,x2,…xn}划分为k个类,各个类簇包含样本数n1,n2,…,nk,则误差平方和函数E定义为
其中xij(i=1,2,…,kj;j=1,2,…n)表示第i个类的第j个样本,ni表示第i个类簇中的样本数,mi表示第i个的聚类中心。
此算法是将prim应用于K均值聚类算法中,具体是使用prim最小生成树方法对随机生成的点求其最小生成树,然后从中找出最小生成树权值和最大,且权值相差不大的那组来作为初始中心,最后使用K均值聚类算法聚类。
图1为prim最小生成树的构造过程。
K均值聚类算法分为两个步骤:第一个步骤为将所有数据对象放到离每个聚类中心μi最近的欧几里得距离组里面,第二个步骤重新计算基于分配最后一步所有的组的距离。
基于prim最小生成树的K均值聚类改进算法的流程图如图3所示。
用Matlab7.0对IKCAP算法进行仿真分析,并与NKM(一般K均值,Normal K-Means)算法进行对比实验。这里我们选取国际上通用的UCI机器学习数据库中用于测试聚类的IRIS和Balance-scale数据集(IRIS和Balance-scale为两种聚类测试数据集)。
数据集基本特征如表1所示。
表1数据集基本特征
数据集 | 含数据样本个数 | 数据样本的维数 | 聚类个数 |
IRIS | 150 | 4 | 3 |
Blance-scale | 625 | 4 | 3 |
为了验证文中算法的有效性,将IKACP算法与NKM算法分别用UCI机器学习两个数据 集进行多次反复试验,对他们的结果进行分析。聚类结果的有效性用分类的正确率以及迭代的次数来评估,分类的正确率L的方法如公式4。
其中,M表示被正确分类的数据对象的个数,N表示数据集中所含数据对象的总个数。迭代次数为聚类算法的迭代次数。我们分别对K均值聚类算法和IKCAP算法对UCI机器学习数据库中两个数据集进行10次试验,实验结果如下:
图4为在UCI机器学习数据库IRIS数据集上的聚类正确率测试图,从图中可以看出由于NKM算法选取初始中心的随机性导致了聚类的正确率波动范围较大,而本发明提出的IKCAP由于优化了初始中心的选取,使得聚类结果的波动性较小,同时提高了聚类的准确性。仿真结果显示,IKCAP算法的聚类正确率比NKM算法提升了45.76%。
图5为在UCI机器学习数据库IRIS数据集上的聚类迭代次数的测试图,从图中可以看出IKCAP算法比NKM算法迭代的次数小,同时不会出现迭代次数过大的情况,由于实验具有随机性所以迭代次数没有统一的趋势。仿真结果显示IKCAP算法的迭代次数比NKM聚类算法少28.95%。
从图6可以看出在对Balance-scale数据集进行聚类的时候,NKM聚类算法最低准确率只有39.04%,由于数据比较大且相互之间差异比较小所以整体聚类的正确率都不是很高,但本发明的IKCAP算法虽然总体正确率不高,跟NKM聚类算法相比它的稳定性较好,且不会出现聚类结果相差很大的情况,所以说还是相对稳定的。仿真结果显示,IKCAP算法的聚类正确率比NKM聚类算法提升了6.4%。
对于Balance-scale数据集进行迭代次数测试中,IKCAP算法跟NKM算法相比可见迭代次数波动较小,同时可以发现不会出现迭代次数突然变得很大的情况,这样可以提高算法的速度,降低资源的消耗。仿真结果显示IKCAP算法的迭代次数比NKM算法少25.14%。
从上述实验结果显示IKCAP算法比K均值聚类算法更加稳定,并且聚类的准确率跟K均值聚类算法相比也有提高。
基于prim的K均值聚类改进算法(IKCAP)
首先使用prim最小生成树方法对随机生成的点求其最小生成树,然后从中找出最小生成树权值和最大,且权值相差不大的那组来作为初始中心,最后使用K均值聚类算法聚类。
具体步骤如下:
1)随机从样本中选择k个数据对象,重复操作m次,对每一次选取的k个数据对象,使用prim求出其最小生成树,重复计算m次,对每次的最小生成树将其权值相加得到,重复计算m次得到m个和,分别为dsum1,dsum2,…dsumm;
2)求出MAX(dsum1,dsum2,…dsumm)对应的k个数据对象对应的点集;
3)看这个K个数据对象对应的点集生成树中的权值是否相差不大是转步骤4,否则去掉当前所选最小生成树权值和最大值,转步骤2;
4)求出各个数据对象到这些中心距离,取最小的距离放入对应的簇中,根据公式2更新簇中心,根据公式3计算误差平方和函数E跟前一次的E值比较,绝对值小于等于规定值转步骤5,否则继续计算聚类中心;
5)输出聚类结果。
Claims (6)
1.一种基于普利姆的K均值聚类方法,其特征在于使用普利姆prim最小生成树方法对随机生成的点求其最小生成树,然后从中找出具有最大权值和且权值相差不大的点集作为初始聚类中心,最后使用K均值聚类算法聚类,其步骤如下:
1)随机从样本中选择k个数据对象,重复操作m次,对每一次选取的k个数据对象,使用prim求出其最小生成树,重复计算m次,对每次的最小生成树将其权值相加得到最小生成树的权值和,记第i次得到的最小生成树权值和记为dsumi,重复计算m次得到m个和,分别为dsum1,dsum2,…dsumm;其中,k为数据对象个数,m为重复计算次数,i为计算次数;
2)求出最小生成树权值和中的最大值MAX(dsum1,dsum2…dsumm)对应的k个数据对象对应的点集;
3)若这个k个数据对象对应的点集生成树中的权值相差不大,则将求出的点集作为初始聚类中心,转步骤4);否则去掉当前所选最小生成树权值和最大值,转步骤2);
4)根据数据对象距离计算公式,求出各个数据对象到这个初始聚类中心的距离,取最小的距离放入对应的簇中,根据数据集合聚类簇中心计算公式更新簇中心;计算误差平方和函数E跟前一次的E值比较,若绝对值小于等于规定值,转步骤5),否则继续计算聚类中心;
5)输出聚类结果。
2.根据权利要求1所述的基于普利姆的K均值聚类方法,其特征在于所述的prim最小生成树,具体描述如下:
prim是一个经典的求最小生成树的方法;设G=(V,E)是带权重的连通图,其中V为点的集合,E为边的集合;F=(V’,E’)是正在构造中的生成树,其中V’为生成树中点的集合,E’为生成树中边的集合;初始状态下,这棵生成树只有一个顶点,没有边,即V’={v0},E’={},v0是任意选定的顶点;Prim最小生成树从初始状态出发,每一步从图中选择一条边,共选取n-1条边,构成一棵生成树;具体的选择准则步骤为:若存在一条边(u,v)满足一个端点u在构造中的生成树上,即u∈V’,而另一个端点v不在该树上,即v∈V-V’,则在满足上述条件的所有边中寻找一条权值最小的边记为(u’,v’),其中u’,v’为这条权值最小的边连接的两个点;按照上述选边准则,选取n-1条边满足条件的最小边(u’,v’),加到生成树上,即将v’并入集合V’,边(u’,v’)并入E’,直到V=V’为止,这时,所得的树T=(V,E’)是连通图G的一棵最小代价生成树。
3.根据权利要求1所述的基于普利姆的K均值聚类方法,其特征在于所述的数据对象距离计算公式,定义如下:
数据对象x=(x1,x2,…,xp)和y=(y1,y2,…,yp)之间的距离d(x,y)为
其中x1,x2,…,xp是数据对象x的1维至p维数据集,y1,y2,…,yp是数据对象y的1维至p维数据集。
4.根据权利要求1所述的基于普利姆的K均值聚类方法,其特征在于所述的数据集合聚类簇中心计算公式,定义如下:
数据集合聚类簇中心mi
其中i=1,2,…k,其中ni为第i簇样本数,xij为第i簇中第j个样本。
5.根据权利要求1所述的基于普利姆的K均值聚类方法,其特征在于所述的误差平方和函数E,定义如下:
数据集合{x1,x2,…xn}划分为k个类,各个类簇包含样本数n1,n2,…,nk,则误差平方和函数E定义为
其中xij表示第i个类的第j个样本,i=1,2,…,kj;j=1,2,…n,ni表示第i个类簇中的样本数,mi表示第i个的聚类中心。
6.根据权利要求2所述的基于普利姆的K均值聚类方法,其特征在于所述的最小生成树,定义如下:
在一个给定的连通图G=(V,E)中,其中V为点的集合,E为边的集合,(u,v)代表连接顶点u与顶点v的边,即(u,v)∈E,u∈V,v∈V,而w(u,v)代表边(u,v)的权重,若存在E的子集T,且T为无循环图,使得w(T)最小,其中w(T)为T中所有边的权值和,即
则此T为G的最小生成树。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2013103431071A CN103440275A (zh) | 2013-08-08 | 2013-08-08 | 一种基于普利姆的k均值聚类方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2013103431071A CN103440275A (zh) | 2013-08-08 | 2013-08-08 | 一种基于普利姆的k均值聚类方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN103440275A true CN103440275A (zh) | 2013-12-11 |
Family
ID=49693967
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2013103431071A Pending CN103440275A (zh) | 2013-08-08 | 2013-08-08 | 一种基于普利姆的k均值聚类方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103440275A (zh) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103793504A (zh) * | 2014-01-24 | 2014-05-14 | 北京理工大学 | 一种基于用户偏好与项目属性的聚类初始点选择方法 |
CN106054665A (zh) * | 2016-05-27 | 2016-10-26 | 国网浙江省电力公司电力科学研究院 | 一种大规模光伏逆变器系统的分群等值建模方法 |
CN106548197A (zh) * | 2016-10-20 | 2017-03-29 | 天津大学 | 改进的多径簇聚类方法 |
CN107092929A (zh) * | 2017-04-19 | 2017-08-25 | 广州可度析信息科技有限公司 | 基于聚类技术的刑事犯罪案件关联串并方法及系统 |
CN108734346A (zh) * | 2018-05-14 | 2018-11-02 | 辽宁石油化工大学 | 基于k-均值聚类平衡多机器人系统的任务分配方法 |
CN109977803A (zh) * | 2019-03-07 | 2019-07-05 | 北京超维度计算科技有限公司 | 一种基于Kmeans监督学习的人脸识别方法 |
CN110442143A (zh) * | 2019-07-05 | 2019-11-12 | 北京航空航天大学 | 一种基于组合多目标鸽群优化的无人机态势数据聚类方法 |
-
2013
- 2013-08-08 CN CN2013103431071A patent/CN103440275A/zh active Pending
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103793504A (zh) * | 2014-01-24 | 2014-05-14 | 北京理工大学 | 一种基于用户偏好与项目属性的聚类初始点选择方法 |
CN103793504B (zh) * | 2014-01-24 | 2018-02-27 | 北京理工大学 | 一种基于用户偏好与项目属性的聚类初始点选择方法 |
CN106054665A (zh) * | 2016-05-27 | 2016-10-26 | 国网浙江省电力公司电力科学研究院 | 一种大规模光伏逆变器系统的分群等值建模方法 |
CN106054665B (zh) * | 2016-05-27 | 2019-05-24 | 国网浙江省电力公司电力科学研究院 | 一种大规模光伏逆变器系统的分群等值建模方法 |
CN106548197A (zh) * | 2016-10-20 | 2017-03-29 | 天津大学 | 改进的多径簇聚类方法 |
CN107092929A (zh) * | 2017-04-19 | 2017-08-25 | 广州可度析信息科技有限公司 | 基于聚类技术的刑事犯罪案件关联串并方法及系统 |
CN108734346A (zh) * | 2018-05-14 | 2018-11-02 | 辽宁石油化工大学 | 基于k-均值聚类平衡多机器人系统的任务分配方法 |
CN109977803A (zh) * | 2019-03-07 | 2019-07-05 | 北京超维度计算科技有限公司 | 一种基于Kmeans监督学习的人脸识别方法 |
CN110442143A (zh) * | 2019-07-05 | 2019-11-12 | 北京航空航天大学 | 一种基于组合多目标鸽群优化的无人机态势数据聚类方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103440275A (zh) | 一种基于普利姆的k均值聚类方法 | |
Arbin et al. | Comparative analysis between k-means and k-medoids for statistical clustering | |
CN104866578A (zh) | 一种不完整数据混合填充方法 | |
CN104298999B (zh) | 基于递归自动编码的高光谱特征学习方法 | |
CN102915448B (zh) | 一种基于AdaBoost的三维模型自动分类方法 | |
CN105718943A (zh) | 基于粒子群优化算法的特征选择方法 | |
CN113516019B (zh) | 高光谱图像解混方法、装置及电子设备 | |
Zhang et al. | Reconstructing heterogeneous networks via compressive sensing and clustering | |
Peng et al. | Highly efficient knowledge graph embedding learning with orthogonal procrustes analysis | |
Dickinson et al. | A genetic algorithm for identifying overlapping communities in social networks using an optimized search space | |
CN117556369A (zh) | 一种动态生成的残差图卷积神经网络的窃电检测方法及系统 | |
CN109948242A (zh) | 基于特征哈希的网络表示学习方法 | |
Dabhi et al. | Extensive survey on hierarchical clustering methods in data mining | |
CN104657472A (zh) | 一种基于进化算法的英文文本聚类方法 | |
CN104951805A (zh) | 基于类间可分性的完全二叉树svm多分类方法 | |
Bruzzese et al. | DESPOTA: DEndrogram slicing through a pemutation test approach | |
Gan et al. | Metasample-based robust sparse representation for tumor classification | |
CN117079744A (zh) | 含能分子人工智能设计方法 | |
Liu et al. | A novel fault diagnosis method for rolling bearing based on EEMD-PE and multiclass relevance vector machine | |
CN105162648A (zh) | 基于骨干网络扩展的社团检测方法 | |
Bo | Research on the classification of high dimensional imbalanced data based on the optimizational random forest algorithm | |
Oliver et al. | Approximate network motif mining via graph learning | |
Li et al. | [Retracted] Intelligent Integration Method of Ideological and Political Education Resources Based on Deep Mining | |
CN115688873A (zh) | 图数据处理方法、设备及计算机程序产品 | |
Leng et al. | Active semisupervised community detection based on asymmetric similarity measure |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20131211 |