基于邻域信息和平均差异度的K‑means初始聚类中心优选方法与流程

文档序号:13446908阅读:457来源:国知局

本发明涉及数据挖掘技术领域,特别涉及一种基于邻域信息和平均差异度的k-means初始聚类中心优选方法。



背景技术:

聚类算法是一种无监督的分类算法,是指按照某种相似性将一组没有类别标识的对象分为若干类别,使得类间对象距离尽可能大,而类内对象距离尽量小,是系统建模和数据挖掘的基本方法之一,已经广泛应用于各种领域,如文本分类、图像识别等领域。

而k-均值聚类算法(k-means)是一种基于划分的动态聚类算法,由于其方法简单,已经成为当前最流行的聚类方法之一。传统的k-均值聚类算法的缺陷在于:一是,算法的聚类结果易受初始聚类中心影响,当初始聚类中心选择不合理时会出现一致性聚类和无法收敛的情况。二是,不能克服离群点对聚类结果带来的不利影响,从而导致聚类结果不稳定且正确率较低。



技术实现要素:

本发明的目的在于提供一种基于邻域信息和平均差异度的k-means初始聚类中心优选方法,以提高k-均值聚类算法的正确率。

为实现以上目的,本发明采用的技术方案为:提供一种基于邻域信息和平均差异度的k-means初始聚类中心优选方法,包括:

s1、输入n个对象的样本集x={x1,x2,…,xi,…,xn},xi为m维向量,确定聚类类数k,初始化当前确定的初始聚类中心个数k=0;

s2、计算样本集中对象两两之间的距离,并形成距离矩阵d;

s3、计算样本集总体平均差异度m,确定邻域半径值δ,

s4、基于距离矩阵d,计算每个样本点xi的δ邻域内样本数量ni,形成矩阵n;

s5、将n中δ邻域内样本数量最大ni对应的样本点xi作为第1个聚类中心c1,令k=k+1,并在矩阵n中将最大ni置0;

s6、继续查找矩阵n中δ邻域内样本数量最大nj对应的样本点xj,,计算其与已有聚类中心{c1,c2,…,ck}的距离,并在矩阵n中将最大nj置0;

s7、若xj与{c1,c2,…,ck}中聚类中心的距离均不小于平均差异度m,则k=k+1,ck+1=xj,否则返回步骤s6;

s8、若当前聚类中心个数k等于聚类类别数k,则输出k个初始聚类中心c={c1,c2,…,ck},否则返回步骤s6;

s9、运用k-均值聚类算法对整个样本集进行聚类,输出聚类结果。

其中,所述的步骤s2中,样本集中对象两两之间的距离的计算过程具体为:

假设样本集中两对象分别为xi、xj,其中xi={xi1,xi2,…,xim},xj={xj1,xj2,…,xjm},则xi与xj的距离dij为:

其中,所述的步骤s3中,计算样本集总体平均差异度m的过程具体为:

计算样本xi的平均差异度为:

计算样本集的总体平均差异度为:

与现有技术相比,本发明存在以下技术效果:本发明全面考虑了数据集的空间分布,得到的聚类中心更加合理和符合实际情况。本发明不仅有效克服了k-均值算法初始聚类中心选取的盲目性和随机性,明显提高了聚类结果的正确率和稳定性,迭代次数少,而且在一定程度上克服了离群点敏感性问题。

附图说明

下面结合附图,对本发明的具体实施方式进行详细描述:

图1是本发明中一种基于邻域信息和平均差异度的k-means初始聚类中心优选方法的流程示意图。

具体实施方式

为了更进一步说明本发明的特征,请参阅以下有关本发明的详细说明与附图。所附图仅供参考与说明之用,并非用来对本发明的保护范围加以限制。

如图1所示,本实施例公开了一种基于邻域信息和平均差异度的k-means初始聚类中心优选方法,包括如下步骤:

s1、输入n个对象的样本集x={x1,x2,…,xi,…,xn},xi为m维向量,确定聚类类数k,初始化当前确定的初始聚类中心个数k=0;

s2、计算样本集中对象两两之间的距离,并形成距离矩阵d;

s3、计算样本集总体平均差异度m,确定邻域半径值δ,

s4、基于距离矩阵d,计算每个样本点xi的δ邻域内样本数量ni,形成矩阵n;

s5、将n中δ邻域内样本数量最大ni对应的样本点xi作为第1个聚类中心c1,令k=k+1,并在矩阵n中将最大ni置0;

s6、继续查找矩阵n中δ邻域内样本数量最大nj对应的样本点xj,计算其与已有聚类中心{c1,c2,…,ck}的距离,并在矩阵n中将最大nj置0;

s7、若xj与{c1,c2,…,ck}中聚类中心的距离均不小于平均差异度m,则k=k+1,ck+1=xj,否则返回步骤s6;

s8、若当前聚类中心个数k等于聚类类别数k,则输出k个初始聚类中心c={c1,c2,…,ck},否则返回步骤s6;

s9、运用k-均值聚类算法对整个样本集进行聚类,输出聚类结果。

进一步地,步骤s2中,样本集中对象两两之间的距离的计算过程具体为:

假设样本集中两对象分别为xi、xj,其中xi={xi1,xi2,…,xim},xj={xj1,xj2,…,xjm},则xi与xj的距离dij为:

进一步地,步骤s3中,计算样本集总体平均差异度m的过程具体为:

计算样本xi的平均差异度为:

计算样本集的总体平均差异度为:

进一步地,在步骤s4中,邻域半径值δ的计算过程为:δ=m/4。

进一步地,在步骤s3中,邻域定义为:

设<u,δ>为一非空度量空间,其中u为对象的非空有限集,以x∈u为中心、以δ为半径的闭球,称为x中每个样本数据的δ邻域,定义为:

n(x)={y∈u|δ(x,y)≤δ};

其中:δ≥0,δ为距离函数,采用欧式距离。

进一步地,距离矩阵d具体为:其中dij为xi与xj的距离。

进一步地,矩阵n具体为:其中ni为样本点xi的δ邻域内样本数量。

以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1