Python 简单实现KNN算法
来源:互联网 发布:快三遗漏数据 编辑:程序博客网 时间:2024/05/21 07:47
数据集是自己下载的mnist的手写识别的数据,有一个train.csv文本,一个test.csv测试文本,还有一个submission.csv文本(存放的是test.csv的标签),不多说了,KNN原理很简单,直接上代码吧
#autor:zhouchao#date:2017-12-07 11:13#description:use knn to recognize numimport numpy as npfrom numpy import *import operatorfrom numpy import random def load_train_data(path):train=np.loadtxt(path,delimiter=",", skiprows=0)vec=train[:,1:]labels=train[:,0:1].tolist()print type(labels)return vec,labelsdef predict(line,vec,labels):numSamples = vec.shape[0]diff = tile(line, (numSamples, 1)) - vecsquaredDiff = diff ** 2squaredDist = sum(squaredDiff, axis = 1)distance = squaredDist ** 0.5sortedDistIndices = argsort(distance)classCount = {}for i in xrange(20):voteLabel = labels[sortedDistIndices[i]][0]classCount[voteLabel] = classCount.get(voteLabel, 0) + 1maxCount = 0for key, value in classCount.items():if value > maxCount:maxCount = valuemaxIndex = keyreturn maxIndex if __name__=="__main__":vec,labels=load_train_data("../../data/handwrite/train.csv")f=open("../../data/handwrite/test.txt")for line in f.readlines():nums = line.split(",")nums = [int(x) for x in nums ]matrix = np.array(nums)print predict(matrix,vec,labels)
阅读全文
0 0
- Python 简单实现KNN算法
- python之KNN算法的简单实现
- python KNN算法的简单实现
- Python实现KNN算法
- KNN算法Python实现
- python实现knn算法
- Python实现KNN算法
- KNN 算法 python 实现
- KNN python 算法实现
- Python实现KNN算法
- knn算法python实现
- python实现knn算法
- Python实现KNN算法
- python 实现 kNN 算法
- KNN算法---Python实现
- Python实现KNN算法
- 最简单的K近邻算法 KNN python实现
- KNN算法的Python实现
- maven项目发布到tomcat报错IndexOutOfBoundsException
- 从入门到精通我是这样学习算法的
- SSH与EJB
- VXLAN介绍
- 短信验证码的新对手:本机号码校验
- Python 简单实现KNN算法
- Vue过渡的应用及技巧
- python-matplotlib
- git安装配置和连接码云公钥
- Qt在Windows下的三种编程环境搭建
- 机器学习之-梯度下降【人工智能工程师--AI转型必修课】
- 带你逐步深入了解SSH框架——ssh框架整合
- linux下mysql的安装
- Oracle中的SQL分页查询原理和方法详解 (转)