# coding:utf-8
import numpy as np
import matplotlib.pyplot as plt
from sklearn.neighbors import KNeighborsClassifier # 1、数据读取
x_tain =[]
x_test =[]
y_tain=[]
y_test=[]
for i in range(0,10):
for j in range(1,501):
if j < 451: #将数据保存到训练数据中
x_tain.append(plt.imread('./data/%d/%d_%d.bmp'%(i,i,j)).reshape(-1) ) #reshape 可以降维也就是矩阵变化
y_tain.append(i) #append 是读进来的数据进行存储的意思
else: #保存到预测数据中
x_test.append(plt.imread('./data/%d/%d_%d.bmp'%(i,i,j)).reshape(-1))
y_test.append(i) # 2、数据转换成
x_tain,y_tain= np.array(x_tain),np.array(y_tain)
# print(x_tain.shape,len(y_tain),len(x_test)) # 3、机器学习
knn = KNeighborsClassifier() #构造分类器
knn.fit(x_tain,y_tain)
y_ = knn.predict(x_test) #进行预测的结果 # print(len(y_[::10]),'\n',y_test[::10]) gl=knn.score(x_test,y_test)
print('准确率为:',gl) # 3、图片绘制
plt.figure(figsize=(13,15))
img = x_test[::10]
img1 = y_test[::10]
yimg = y_[::10] for i in range(50):
plt.subplot(5,10,i+1)
plt.imshow(img[i].reshape(28,28),cmap='gray')
plt.title('预测数据:%d'%(yimg[i])+'\n真实数据:%d'%(img1[i])) plt.rcParams['font.sans-serif'] = ['SimHei'] # 设置字体为SimHei显示中文
plt.rcParams['axes.unicode_minus'] = False # 设置正常显示符号
plt.show()

最新文章

  1. [Mechine Learning &amp; Algorithm] 集成学习方法——Bagging和 Boosting
  2. [系统集成] 基于Kubernetes 部署 jenkins 并动态分配资源
  3. CentOS6.5安装telnet命令
  4. memcache内存估算整理
  5. [转]SIP穿越NAT&amp;FireWall解决方案
  6. 【转】Windows Server 2008修改远程桌面连接数
  7. SqlConnection类
  8. JavaScript编程风格--基本的格式化
  9. RabbitMQ 3.6.1集群搭建
  10. 应用负载均衡之LVS(一):基本概念和三种模式
  11. sqlserver存储过程及临时表在统计中的应用
  12. 修改jupyter notebook的默认打开地址
  13. [CF920G]List Of Integers
  14. github或码云协同开发
  15. python中pip
  16. Django Rest Framework源码剖析(六)-----序列化(serializers)
  17. 类加载, 静态变量初始化, String不可变, 泛型使用, 内部类
  18. 【PAT】1051 Pop Sequence (25)(25 分)
  19. jquery判断选择元素是否存在
  20. 敏捷项目管理架构(APMF)

热门文章

  1. IE 低版本 透明度
  2. Django 2.0 学习(22):Django CSRF
  3. 【刷题】BZOJ 3994 [SDOI2015]约数个数和
  4. 【刷题】HDU 1853 Cyclic Tour
  5. 51nod 1636 教育改革 | DP
  6. 【51Nod1847】奇怪的数学题
  7. 使用apt-mirror搭建debian本地仓库
  8. 解题:WC 2006 水管局长
  9. 丁酉年六月十一ACM模拟赛
  10. Web前端之Javascript详解20180330