K均值聚类

2024-05-18 01:21

1. K均值聚类

k均值聚类算法是一种迭代求解的聚类分析算法,其步骤是,预将数据分为K组,则随机选取K个对象作为初始的聚类中心,然后计算每个对象与各个种子聚类中心之间的距离,把每个对象分配给距离它最近的聚类中心。

聚类中心以及分配给它们的对象就代表一个聚类。每分配一个样本,聚类的聚类中心会根据聚类中现有的对象被重新计算。
这个过程将不断重复直到满足某个终止条件。终止条件可以是没有(或最小数目)对象被重新分配给不同的聚类,没有(或最小数目)聚类中心再发生变化,误差平方和局部最小。
k均值聚类是最著名的划分聚类算法,由于简洁和效率使得他成为所有聚类算法中最广泛使用的。给定一个数据点集合和需要的聚类数目k,k由用户指定,k均值算法根据某个距离函数反复把数据分入k个聚类中。

K均值聚类

2. K均值聚类算法的介绍

K均值聚类算法是先随机选取K个对象作为初始的聚类中心。然后计算每个对象与各个种子聚类中心之间的距离,把每个对象分配给距离它最近的聚类中心。聚类中心以及分配给它们的对象就代表一个聚类。一旦全部对象都被分配了,每个聚类的聚类中心会根据聚类中现有的对象被重新计算。这个过程将不断重复直到满足某个终止条件。终止条件可以是)没有(或最小数目)对象被重新分配给不同的聚类,没有(或最小数目)聚类中心再发生变化,误差平方和局部最小。

3. K均值聚类算法的k均值算法


K均值聚类算法的k均值算法

4. K均值聚类算法的什么是聚类

聚类是一个将数据集中在某些方面相似的数据成员进行分类组织的过程,聚类就是一种发现这种内在结构的技术,聚类技术经常被称为无监督学习。

5. K均值聚类分析的原理

在训练图像中,数据事件数量非常多。如果将这些数据事件逐一与模拟区域数据模式进行比对,对计算机性能要求高,计算效率低下。对数据事件分析发现,很多数据事件具有很高的相似性,可以将其划分为同一类。这样大大减少数据事件的个数,提高了运算效率。基于这样考虑,聚类分析技术被引入到多点地质统计学中。
J.B.MacQueen在1967年提出的K-means算法是到目前为止用于科学和工业应用的诸多聚类算法中一种极有影响的技术。它是聚类方法中一个基本的划分方法,常常采用误差平方和准则函数作为聚类准则函数,误差平方和准则函数定义为

多点地质统计学原理、方法及应用

式中:mi(i=1,2,…,k)是类i中数据对象的均值,分别代表K个类。
K-means算法的工作原理:首先随机从数据集中选取K个点作为初始聚类中心,然后计算各个样本到聚类中的距离,把样本归到离它最近的那个聚类中心所在的类。计算新形成的每一个聚类的数据对象的平均值来得到新的聚类中心,如果相邻两次的聚类中心没有任何变化,说明样本调整结束,聚类准则函数已经收敛。本算法的一个特点是在每次迭代中都要考察每个样本的分类是否正确。若不正确,就要调整,在全部样本调整完后,再修改聚类中心,进入下一次迭代。如果在一次迭代算法中,所有的样本被正确分类,则不会有调整,聚类中心也不会有任何变化,这标志着已经收敛,因此算法结束。
基本步骤如下:
a.对于数据对象集,任意选取K个对象作为初始的类中心;
b.根据类中对象的平均值,将每个对象重新赋给最相似的类;
c.更新类的平均值,即计算每个类中对象的平均值;
d.重复b和c步骤;
e.直到不再发生变化。
图2-7是利用K-means方法做的一个数据事件的聚类分析结果。数据类定义为10个。数据事件来自于图2-8,采用的数据样板是8×8的数据样板。
K-means算法优点为当聚类是密集的,且类与类之间区别明显时,效果较好。对于处理大数据集,这个算法是相对可伸缩和高效的,缺点主要有三个:

图2-7 K-means方法聚类结果


图2-8 用于聚类的训练图像,数据样板选择为8*8

1)在K-means算法中K是事先给定的,这个K值的选定是非常难以估计的。很多时候,事先并不知道给定的数据集应该分成多少个类别才最合适。这是K-means算法的一个不足。
2)在K-means算法中,首先需要根据初始聚类中心来确定一个初始划分,然后对初始划分进行优化。这个初始聚类中心的选择对聚类结果有较大的影响,一旦初始值选择的不好,可能无法得到有效的聚类结果,这也成为K-means算法的一个主要问题。
3)从K-means算法框架可以看出,该算法需要不断地进行样本分类调整,不断地计算调整后的新的聚类中心,因此当数据量非常大时,算法的时间开销是非常大的。所以需要对算法的时间复杂度进行分析、改进,提高算法应用范围。

K均值聚类分析的原理

6. k均值聚类算法聚类个数怎么确定


算法:
第一步:选k个初始聚类中心,z1(1),z2(1),…,zk(1),其中括号内的序号为寻找聚类中心的迭代运算的次序号。聚类中心的向量值可任意设定,例如可选开始的k个模式样本的向量值作为初始聚类中心。
第二步:逐个将需分类的模式样本{x}按最小距离准则分配给k个聚类中心中的某一个zj(1)。
假设i=j时,
,则
,其中k为迭代运算的次序号,第一次迭代k=1,sj表示第j个聚类,其聚类中心为zj。
第三步:计算各个聚类中心的新的向量值,zj(k+1),j=1,2,…,k
求各聚类域中所包含样本的均值向量:
其中nj为第j个聚类域sj中所包含的样本个数。以均值向量作为新的聚类中心,可使如下聚类准则函数最小:
在这一步中要分别计算k个聚类中的样本均值向量,所以称之为k-均值算法。
第四步:若
,j=1,2,…,k,则返回第二步,将模式样本逐个重新分类,重复迭代运算;
若
,j=1,2,…,k,则算法收敛,计算结束。

7. K均值聚类算法的什么是k均值聚类

k均值聚类是最著名的划分聚类算法,由于简洁和效率使得他成为所有聚类算法中最广泛使用的。给定一个数据点集合和需要的聚类数目k,k由用户指定,k均值算法根据某个距离函数反复把数据分入k个聚类中。

K均值聚类算法的什么是k均值聚类

8. k均值聚类算法原理

	算法:
第一步:选K个初始聚类中心,z1(1),z2(1),…,zK(1),其中括号内的序号为寻找聚类中心的迭代运算的次序号。聚类中心的向量值可任意设定,例如可选开始的K个模式样本的向量值作为初始聚类中心。
第二步:逐个将需分类的模式样本{x}按最小距离准则分配给K个聚类中心中的某一个zj(1)。
假设i=j时, ,则 ,其中k为迭代运算的次序号,第一次迭代k=1,Sj表示第j个聚类,其聚类中心为zj。
第三步:计算各个聚类中心的新的向量值,zj(k+1),j=1,2,…,K
求各聚类域中所包含样本的均值向量:
 
其中Nj为第j个聚类域Sj中所包含的样本个数。以均值向量作为新的聚类中心,可使如下聚类准则函数最小:
 
在这一步中要分别计算K个聚类中的样本均值向量,所以称之为K-均值算法。
第四步:若 ,j=1,2,…,K,则返回第二步,将模式样本逐个重新分类,重复迭代运算;
若 ,j=1,2,…,K,则算法收敛,计算结束。