k近邻算法(knn)与k-means算法的对比

Posted wumh7

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了k近邻算法(knn)与k-means算法的对比相关的知识,希望对你有一定的参考价值。

k近邻算法(knn)是一种基本的分类与回归的算法,k-means是一种基本的聚类方法。

k近邻算法(knn)

基本思路:如果一个样本在特征空间的k个最相似(即特征空间最邻近)的样本大多数属于某一类,则该样本也属于这一类。

影响因素:

  1. k值的选择。k的值小,则近似误差小,估计误差大;k的值大,则近似误差大,估计误差小。(近似误差即算法在训练集上的误差,估计误差即算法在测试集上的误差。近似误差小,会出现过拟合的现象,即模型在训练集上预测误差小,在未知的测试集上则表现差,此时模型并非最优模型;估计误差小,则模型在未知的测试集上的误差小,模型接近于最优模型);
  2. 距离的计算。距离计算的是样本在特征空间的邻近程度,通常用欧式距离或者曼哈顿距离;
  3. 分类决策规则。往往采用多数表决。

k-means算法

k-means算法的基本步骤如下:

  1. 随机选择k个样本作为初始化的中心点;
  2. 分别计算其它样本到这k个中心点的距离,并分别将这些样本划分给距离最近的那个中心;
  3. 重新计算k类样本的均值,得到新的k个中心点;
  4. 重复步骤2和3,直到样本到中心点的距离不再改变,或者迭代达到一定次数为止。

Reference:

  1. https://www.cnblogs.com/PiPifamily/p/8520405.html
  2. https://blog.csdn.net/weixin_37895339/article/details/78794190

以上是关于k近邻算法(knn)与k-means算法的对比的主要内容,如果未能解决你的问题,请参考以下文章

ML:KNN算法

数据挖掘算法:k-means

分类 :kNN(k nearest neighbour)最近邻算法(Python)

K近邻算法-KNN

KNN算法(K近邻算法)实现与剖析

[机器学习与scikit-learn-18]:算法-K近邻算法KNN的原理与代码实例