机器学习(五):KNN最近邻分类算法

100 阅读1分钟

这是一种新的分类算法,用一句话来总结它就是‘近朱者赤,近墨者黑’

算法原理

如果一个样本在特征空间中的k个最相邻的样本中的大多数属于某一个类别,则该样本也属于这个类别,并具有这个类别上样本的特性。

该方法在确定分类决策上只依据最邻近的一个或者几个样本的类别来决定待分样本所属的类别。

可以看出来,此算法十分简单易于理解,而且适合于解决多分类问题

算法流程

  • 准备数据对数据进行预处理 。
  • 计算测试样本点(也就是待分类点)到其他每个样本点的距离(选定度量距离的方法)。
  • 对每个距离进行排序,然后选择出距离最小的 K 个点。
  • 对 K 个点所属的类别进行比较,按照少数服从多数的原则(多数表决思想),将测试样本点归入到 K 个点中占比最高的一类中。

其中的距离,常用到的计算方式有欧氏距离和曼哈顿距离两种 计算方式如下

在KNN中常用到的就是欧式距离

KNN的一个非常重要的点就是K的取值,K的不同,可能导致的结果也不同