📜  数据挖掘中的分区方法(K-Mean)

📅  最后修改于: 2021-09-10 02:05:56             🧑  作者: Mango

分区方法:
这种聚类方法根据数据的特征和相似性将信息分为多个组。由数据分析师指定必须为聚类方法生成的聚类数。

在分区方法中,当数据库(D)包含多个(N)对象时,分区方法构造用户指定的(K)数据分区,其中每个分区代表一个集群和特定区域。有许多算法属于分区方法,其中一些流行的算法是 K-Mean、PAM(K-Mediods)、CLARA 算法(聚类大型应用程序)等。

在本文中,我们将详细了解 K 均值算法的工作原理。

K-Mean(基于质心的技术):
K均值算法从用户获取输入参数K,将包含N个对象的数据集划分为K个簇,使得组内(簇内)数据对象之间的相似度很高,但数据对象与外部数据对象的相似度集群低(集群间)。簇的相似性是相对于簇的平均值确定的。

它是一种平方误差算法。在开始时从数据集中随机选择 k 个对象,其中每个对象代表一个聚类平均值(中心)。对于其余的数据对象,根据它们与集群均值的距离将它们分配到最近的集群。然后使用添加的数据对象计算每个集群的新平均值。

算法:K 意思是:

Input:
K: The number of clusters in which the dataset has to be divided
D: A dataset containing N number of objects

Output: 
A dataset of K clusters 

方法:

  1. 从数据集中随机分配 K 个对象(D)作为聚类中心(C)
  2. (重新)根据平均值分配每个对象与哪个对象最相似。
  3. 更新集群意味着,即,用更新后的值重新计算每个集群的平均值。
  4. 重复步骤 4,直到没有变化。

图 – K-mean 聚类

流程图:

图 – K-mean 聚类

示例:假设我们只想使用访问者的年龄对网站的访问者进行分组,如下所示:

16, 16, 17, 20, 20, 21, 21, 22, 23, 29, 36, 41, 42, 43, 44, 45, 61, 62, 66 

初始集群:

K=2
Centroid(C1) = 16 [16] 
Centroid(C2) = 22 [22] 

注意:这两个点是从数据集中随机选择的。

迭代 1:

C1 = 16.33 [16, 16, 17]
C2 = 37.25 [20, 20, 21, 21, 22, 23, 29, 36, 41, 42, 43, 44, 45, 61, 62, 66] 

迭代 2:

C1 = 19.55 [16, 16, 17, 20, 20, 21, 21, 22, 23]
C2 = 46.90 [29, 36, 41, 42, 43, 44, 45, 61, 62, 66] 

迭代 3:

C1 = 20.50 [16, 16, 17, 20, 20, 21, 21, 22, 23, 29]
C2 = 48.89 [36, 41, 42, 43, 44, 45, 61, 62, 66] 

迭代 4:

C1 = 20.50 [16, 16, 17, 20, 20, 21, 21, 22, 23, 29]
C2 = 48.89 [36, 41, 42, 43, 44, 45, 61, 62, 66] 

迭代 3 和 4 之间没有变化,所以我们停止。因此,我们使用 K 均值算法将聚类 (16-29)(36-66)作为 2 个聚类。