如何用Python实现K近邻法(KNN)?
- 内容介绍
- 文章标签
- 相关推荐
本文共计2886个文字,预计阅读时间需要12分钟。
1、基本概念+K近邻法(K-nearest neighbors,KNN)可用于分类和回归。KNN的分类和回归区别在于预测时的决策方式。分类时,通常使用多数表决法;回归时,则常用平均法。
1、基本概念
K近邻法(K-nearest neighbors,KNN)既可以分类,也可以回归。
KNN做回归和分类的区别在于最后预测时的决策方式。
KNN做分类时,一般用多数表决法
KNN做回归时,一般用平均法。
基本概念如下:对待测实例,在训练数据集中找到与该实例最邻近的K个实例(也就是上面所说的K个邻居), 这K个实例的多数属于某个类,就把该输入实例分类到这个类中
2. KNN算法三要素
KNN算法主要考虑:k值的选取,距离度量方式,分类决策规则。
1) k值的选取。在应用中,k值一般选择一个比较小的值,一般选用交叉验证来取最优的k值
当K值较小,训练误差减小,泛化误差增大,模型复杂容易过拟合;
当K值较大,泛化误差减小,训练误差增大,模型简单使预测发生错误(一个极端,K等于样本数m,则完全没有分类,此时无论测试集是什么,结果都属于训练集中最多的类)
2)距离度量。Lp距离:误差绝对值p次方求和再求p次根。欧式距离:p=2的Lp距离。曼哈顿距离:p=1的Lp距离。p为无穷大时,Lp距离为各个维度上距离的最大值
3)分类决策规则。也就是如何根据k个最近邻决定待测对象的分类。
本文共计2886个文字,预计阅读时间需要12分钟。
1、基本概念+K近邻法(K-nearest neighbors,KNN)可用于分类和回归。KNN的分类和回归区别在于预测时的决策方式。分类时,通常使用多数表决法;回归时,则常用平均法。
1、基本概念
K近邻法(K-nearest neighbors,KNN)既可以分类,也可以回归。
KNN做回归和分类的区别在于最后预测时的决策方式。
KNN做分类时,一般用多数表决法
KNN做回归时,一般用平均法。
基本概念如下:对待测实例,在训练数据集中找到与该实例最邻近的K个实例(也就是上面所说的K个邻居), 这K个实例的多数属于某个类,就把该输入实例分类到这个类中
2. KNN算法三要素
KNN算法主要考虑:k值的选取,距离度量方式,分类决策规则。
1) k值的选取。在应用中,k值一般选择一个比较小的值,一般选用交叉验证来取最优的k值
当K值较小,训练误差减小,泛化误差增大,模型复杂容易过拟合;
当K值较大,泛化误差减小,训练误差增大,模型简单使预测发生错误(一个极端,K等于样本数m,则完全没有分类,此时无论测试集是什么,结果都属于训练集中最多的类)
2)距离度量。Lp距离:误差绝对值p次方求和再求p次根。欧式距离:p=2的Lp距离。曼哈顿距离:p=1的Lp距离。p为无穷大时,Lp距离为各个维度上距离的最大值
3)分类决策规则。也就是如何根据k个最近邻决定待测对象的分类。

