1.KMeans聚类
选择想要聚成多少组。随机初始化中心点,计算该点与每个组中心之间的距离,然后将该点分类为其中心最接近它的组,对每个数据点进行分类。基于这些分类点,我们通过取组中所有向量的均值来重新计算组中心。重复这些步骤进行一定数量的迭代,直到组中心在迭代之间没有太大变化。
KMeans的优势在于它非常快,因为我们所做的只是计算点和组中心之间的距离。另一方面,KMeans有几个缺点。首先,必须选择有多少类。K-means也从随机选择的聚类中心开始,因此它可以产生不同的聚类结果。
2.均值漂移聚类
均值漂移聚类试图找到数据点的密集区域。它是一种基于质心的算法,我们从以C点(随机选择)为中心并以半径r为核心的圆形滑动窗口开始,在每个步骤上迭代地移动到更高密度区域直到收敛。
(1)在每次迭代中,通过将中心点移动到窗口内的点的平均值(因此名称),将滑动窗口移向更高密度的区域。滑动窗口内的密度与其内部的点数成比例。当然,通过移动到窗口中的点的平均值,它将逐渐移向更高点密度的区域。
(2)我们继续根据平均值移动滑动窗口,直到没有方向可以移动内核中的更多点。
(3)步骤1至2的该过程用许多滑动窗口完成,直到所有点都位于窗口内。当多个滑动窗口重叠时,保留包含最多点的窗口。然后根据数据点所在的滑动窗口对数据点进行聚类。
与K-means聚类相比,不需要选择聚类数量,因为均值自动发现了这一点。这是一个巨大的优势。群集中心向最大密度点汇合的事实也是非常理想的,因为它非常直观易懂,并且非常适合自然数据驱动的意义。缺点是窗口大小/半径“r”的选择。