KNN算法思想及算法描述和优缺点
程序员文章站
2022-03-27 21:28:14
KNN适用于分类的,不需要训练,该算法所选的邻居都是已经正确分类的对象。该算法在定类决策上只依据最邻近的一个或者几个样本类别来决定待分类样本所属的类别KNN算法的思路:KNN是通过不同特征之间的距离进行分类的。如果一个样本在特征空间中的K个最相似的样本中的大多数属于同一类别,则该样本也属于这一类别,其中K通常是不大于20的整数。KNN算法得结果很大程度上取决于K的选择KNN算法的思想:在训练集的数据和标签已知的情况下,输入测试数据,将测试数据的特征与训练集中对应的特征进行相互比较,找到训练与之最...
KNN适用于分类的,不需要训练,该算法所选的邻居都是已经正确分类的对象。该算法在定类决策上只依据最邻近的一个或者几个样本类别来决定待分类样本所属的类别
KNN算法的思路:
KNN是通过不同特征之间的距离进行分类的。
如果一个样本在特征空间中的K个最相似的样本中的大多数属于同一类别,则该样本也属于这一类别,其中K通常是不大于20的整数。
KNN算法得结果很大程度上取决于K的选择
KNN算法的思想:
在训练集的数据和标签已知的情况下,输入测试数据,将测试数据的特征与训练集中对应的特征进行相互比较,找到训练与之最为相似的前K个数据,则该测试数据对应类别就是K个数据中出现的次数做多的哪一类,算法可以简单的描述为:
- 计算测试数数据与各个训练数据之间的距离
- 按照距离的递增关系进行排序
- 选取距离最小的K个点
- 确定前K个点所在类别的出现频率
- 返回前K个点中出现频率最高的类别作为测试数据的预测分类。
算法的优缺点:
算法的优点:
- 简单易于理解,无参数估计,不需要进行训练
- 适合对稀疏事件进行分类
- 特别适合多分类问题,再多分类问题上比SVM好用,效果好一些
算法的缺点:
- 当样本分布不均匀时,容易判别错误。
本文地址:https://blog.csdn.net/sinat_42239797/article/details/107311736
上一篇: 快速排序的python实现
下一篇: Python实验:读写文件并添加行号