KMeans算法简介以及其与KNN的区别

KMeans算法是一种无监督的聚类方法,其工作流程如下:
(1)在一群无标签的数据中,随机选择k个数据作为簇中心(k是人为选择的)
(2)依照某种距离度量,计算除掉这k个数据点的其他数据点到这k个簇中心的距离,将该点划分到离他最近距离的簇中心所属的簇。
(3)计算划分好的簇的质心,使其作为新的簇的中心。
(4)重复(2)到(3)步,直到新的质心与原来的簇的中心相等或者两者的距离小于阈值就停止重新划分

KNN算法是一种监督学习算法,其工作流程如下:
(1)当有新的测试样本出现时,计算其到训练集中每个数据点的距离。
(2)根据距离选择与测试样本距离最小的前k个训练样本。
(3)基于这k个训练样本的类别来划分新样本的类别,通常选择这k个训练样本中出现次数最多的标签作为新样本的类别。

KMeans与KNN的区别:
(1)KMeans是无监督学习算法,KNN是监督学习算法。
(2)KMeans算法的训练过程需要反复迭代的操作(寻找新的质心),但是KNN不需要。
(3)KMeans中的K代表的是簇中心,KNN的K代表的是选择与新测试样本距离最近的前K个训练样本数。

你可能感兴趣的:(聚类,算法,机器学习)