K-NN是什么?
K最近邻算法是一种简单但目前最常用的分类算法,也可用于回归。
KNN没有参数(不对数据潜在分布规律做任何假设),基于实例(不建立明确的模型,而是通过具体的训练实例进行预测),用于监督学习中。
K-NN算法怎么工作?
当用KNN进行分类时,得到的结果是某一类(预测类别——一个离散值)。
这个方法有三个要素:一组有标签的对象,对象间的距离,K值(最近邻的个数)。
##进行预测
为了给没有标签的对象进行分类,需要计算这个对象和已有标签的距离,识别出距离它最近的K个最近邻,最近邻所占数量最多的类别即为该对象的类别。对于真实数据的输入变量,最常用的距离算法是欧几里得距离。
原理图示:
图1:我们想要将灰点分类到浅绿、绿色、红色
图2:首先计算灰点到K个最近邻的距离。
图3:假设K=4,找出4个最近邻。