本文主要是介绍用人话讲明白近邻算法KNN,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
文章目录
- 1.KNN简介
- 2.KNN算法步骤
- 3.决策边界
- 4.K的选择
- 5.要注意的问题
- 6.小结
1.KNN简介
KNN(K-NearestNeighbor)是机器学习入门级的分类算法,非常非常简单。
上一篇我们讲过Kmeans,初学者常常把这两者搞混,虽然KNN是有监督算法,Kmeans是无监督算法,但KNN和Kmeans确实有相同之处:
- 两者都有“近朱者赤近墨者黑”的思想,将距离近的样本点划为同一类别;
虽然两者名称中都有“K”,但是:
- KNN中的K指的是近邻个数,也就是最近的K个点 ;
- Kmeans中的K指的是最终聚类的个数,也就是要将所有点分成K类。
2.KNN算法步骤
我们有一堆样本点,类别已知,如下图左,蓝色为一类,黄色为另一类。现在有个新样本点,也就是图中黑色的叉叉,需要判断它属于哪一类。
KNN做的就是选出距离目标点黑叉叉距离最近的k个点,看这k个点的大多数颜色是什么颜色。这里的距离怎么定义?当然还是可以用我们的老朋友——欧氏距离来度量。
给定两个样本 X = ( x 1 , x 2 , . . . , x n ) X=(x_{1},x_{2},...,x_{n}) X=(x1,x2,...,xn)与 Y = ( y 1 , y 2 , . . . , y n ) Y=(y_{1},y_{2},...,y_{n}) Y=(y1,y
这篇关于用人话讲明白近邻算法KNN的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!