K-Means是一种非监督学习,解决的是聚类问题,本质是确定K类的中心点
K-Means 的工作原理:
1.选取 K 个点作为初始的类中心点,这些点一般都是从数据集中随机抽取的;
2.将每个点分配到最近的类中心点,这样就形成了 K 个类,然后重新计算每个类的中心点;
3.重复第二步,直到类不发生变化,或者你也可以设置最大迭代次数,这样即使类中心点发生变化,但是只要达到最大迭代次数就会结束。
K-Means 和 KNN 这两个算法的区别:
首先,这两个算法解决数据挖掘的两类问题。K-Means 是聚类算法,KNN 是分类算法。
这两个算法分别是两种不同的学习方式。K-Means 是非监督学习,也就是不需要事先给出分类标签,而 KNN 是有监督学习,需要我们给出训练数据的分类标识。
最后,K 值的含义不同。K-Means 中的 K 值代表 K 类。KNN 中的 K 值代表 K 个最接近的邻居。
聚类的一个常用场景就是对图像进行分割
图像分割就是利用图像自身的信息特征进行划分