搞了三天的K近邻算法,好多坑让我折服........首先python2和python3的语法让我欲仙欲死.....
写个博客给自己留下纪念。
一、kNN算法的工作原理
官方解释:存在一个样本数据集,也称作训练样本集,并且样本中每个数据都存在标签,即我们知道样本集中每一数据与所属分类的对应关系,输入没有标签的新数据后,将新数据的每个特征与样本集中的数据对应的特征进行比较,然后算法提取样本集中特征最相似的数据(最近邻)的分类标签。一般来说,我们只选择样本集中前k个最相似的数据,这就是k-近邻算法中k的出处,通常k是不大于20的整数,最后,选择k个最相似的数据中出现次数最多的分类,作为新数据的分类。
我的理解:其实就是分类,找到左右邻居,判断自己是否和左右邻居相似,从而分别出自己属于哪一类。
偏题了 坑开始来了
一、首先使用python导入数据前先建立名为KNN.py的Python模块,这个模块实际就是建立一个txt文本 里面写上代码然后重命名为.py文件。(刚开始真不知道模块是这样来的)。。。注意,一切的程序都是在这个文档里操作的 包括写程序。
二、方便接下来的操作,必须为python环境配置NumPy函数库。
1)下载numpy包
下载地址:https://pypi.python.org/pypi/numpy/#downloads
自己的是python3.6, 64位操作系统,所以选择numpy-1.11.2+mkl-cp36-cp36m-win-a
md64.whl
2)安装numpy
将下载的包拷贝到python安装目录下D:\Python\Scripts
执行 pip install "numpy-1.11.2+mkl-cp36-cp36m-win-amd64.whl"
看着像要升级pip啥的,按照提示,进入python安装目录
输入 python -m pip install --upgrade pip
等一会后,升级成功
再执行pip install "numpy-1.11.2+mkl-cp36-cp36m-win-amd64.whl"
再等一会,安装成功