k近邻基础概念与原理分析

K最近邻分类算法(k-Nearest Neighbor,KNN)

俗称:k近邻算法 也叫KNN算法

是最简单的机器学习算法之一,
K近邻算法的概念,即是给定一个训练数据集,对新的输入实例,在训练数据集中找到与该实例最邻近的K个实例(也就是上面所说的K个邻居), 这K个实例的多数属于某个类,就把该输入实例分类到这个类中。
列入下图:
k近邻基础概念与原理分析
上图中包含了已经确定的:蓝色方块与红色三角形
当新加入了绿色圆形样例需要进行分类,KNN算法将会从离这个样本最近的样本进行技术,依照个数投票决定应当属于哪一类中。

当k=3时,也就是图片当中的第一个实心圆圈,可以得到离样本最近的3个样本中有2个是红色三角形,1个蓝色正方形,所以被绿色圆圈将会被划分到红色三角形

但当k=5时,也就是图片当中的第一个实心圆圈,可以得到离样本最近的5个样本中有2个是红色三角形,3个蓝色正方形,此时这个绿色圆圈将会被划分到蓝色三角形

由此可得,KNN算法是将未知的样本类型依靠所处的位置与其最近的邻居的k个样本个数中,个数最多个数的种类决定它的类型。
所以一般k的取值都会选择奇数,便于得出结果。