K-近邻算法概述
K-近邻算法采用测量不同特征值之间的距离方法进行分类
优点:精度高、对异常值不敏感、无数据输入假定
缺点:计算复杂度高、空间复杂度高
适用数据类型:数值型和标称型
工作原理:存在一个样本数据集,且样本集中每个数据都存在标签,即我们知道样本集中每个数据对应的分类。输入没有标签的新数据之后,将新数据的每个特征与样本集中数据对应的特征进行比较,然后算法提取样本集中特征最相似数据的分类标签。通常只取前k个最相似的数据,k往往是不大于20的整数。最后选择k个最相似数据中出现次数最多的分类作为新数据的分类。
创建名为knn.py的Python模块,在文件中添加下面的代码:
from numpy import * #科学计算包
import operator #运算符模块
def createDataSet():
group = array([[1.0,1.1],[1.0,1.0],[0,0],[0,0.1]])
labels = ['A','A','B','B']
return group,labels
保存文件,改变当前路径到存储knn.py的位置。进入Python交互式开发环境,输入如下命令导入刚编辑好的Python模块。
import knn
然后输入如下命令创建变量group和labels
group,labels=knn.createDataSet()
此时可输入变量名以检验是否正确的定义了变量。
Mac可参考如下操作:
打开终端,找到刚存储的knn.py文件