机器学习(2)——K-近邻算法

## K-近邻算法概述
定义:采用测量不同特征值之间的距离方法进行分类;
优点:计算复杂度高、空间复杂度高;
适用数据范围:数值型和标称型[*]。
工作原理:在输入一个新数据后将新数据的每一个特征与样本集中数据对应特征进行比较,利用算法提取样本集中特征最相似数据(最近邻)的分类标签,选取样本数据集中前K个最相似数据(K一般小于20),最后,选择K个最相似数据中出线次数最多的分类,作为新数据的分类。
* 标称型:一般在有限的数据中取,而且只存在‘是’和‘否’两种不同的结果(一般用于分类)
* 数值型:可以在无限的数据中取,而且数值比较具体化,例如4.02,6.23这种值(一般用于回归分析)

Pycharm中K-近邻算法的实现
1、创建kNN.py的Python模块,编写数据集创造代码。
机器学习(2)——K-近邻算法2、编写K-近邻算法代码
K-近邻算法对未知类别属性的数据集中每个数据点处理流程如下:
① 计算已知类别数据集中的每个数据点与当前数据点之间的距离;采用欧氏距离公式(两特征值):
机器学习(2)——K-近邻算法
② 按照距离递增次序排序;
③ 选取与当前数据点距离最小的K个数据点;
④ 确定前K个数据点所在类别的出线频率;
⑤ 发挥前K个数据点最高的类别当作当前点的预测分类;
机器学习(2)——K-近邻算法
3、再创建main.py进行算法测试
机器学习(2)——K-近邻算法
4、观测结果
机器学习(2)——K-近邻算法