基本概念

利用K-近邻算法对0-9的32*32的黑白数字图像进行归类。

基本思路步骤

收集数据:提供文本文件;
准备数据:编写图像格式转化为可供分类器使用的向量格式的函数代码;
分析数据:进行检查数据,确保符合要求;
训练算法:此步骤不适用与K-近邻算法;
测试算法:编写函数使用提供的部分数据集作为测试样本,进行测试;
使用算法:产生简单的程序,从图像中提取数字,进行数字识别。

将图像转化为测试向量
将如图所示3232的二进制图像矩阵转换为11024的向量。

首先编写图像转换向量代码:

进行验证:


加载数据集并进行预测
编写数字识别系统的测试代码

测试结果:

进行测试得出,近200个样本,使用K-近邻算法识别手写数据集错误率为1.1%。
K-近邻算法总结

 K-近邻算法是分类数据最简单有效的算法,但通过两个实例的得出,使用K-近邻
算法使用时必须有接近实际数据的训练样本数据,如果训练数据集很大,还必须使用
大量存储空间,此外由于必须对数据集中的每个数据计算距离值,实际使用时非常耗
时。在K-近邻算法的使用中,另一个缺陷是他无法给出任何数据的基础结构信息,
因此我们也无法知晓平均实例样本和典型实例样本具有什么特征。期待后续算法可以优化或者解决这些问题。

机器学习(4)——手写识别系统实例相关推荐

  1. 【机器学习】手写识别系统

    [机器学习]手写识别系统 过程 ==准备数据:将图像转换为测试向量== ==测试算法:使用k-近邻算法识别手写数字== ==完整代码== 过程 收集数据:提供文本文件 准备数据:编写函数classif ...

  2. 机器学习实战-手写识别系统

    在实现了K近邻算法后,书中给出了一个实例,今天来学习一下使用K近邻分类器的手写识别系统.书中原带的文件已经过处理转换为了文本格式,方便了许多. 先看一下原带文件 准备数据 #将图像转换为测试向量 de ...

  3. 机器学习算法(一):k-近邻理论与python实现+经典应用(约会网站匹配、手写识别系统)

    一份算法学习笔记~ 亲爱的朋友,恭喜你点开神秘之门,哈哈哈哈!从这里开始,我们一起学习机器学习的经典算法吧. 这一次的主要内容是机器学习入门算法:k-近邻.理论相当好理解,下面我们正式开始啦! 算法简 ...

  4. 【机器学习实战】k近邻算法实战——手写识别系统

    文章目录 手写识别系统 步骤: 准备数据:将图像转换为测试向量 测试算法:使用k-近邻算法识别手写数字 [完整代码] 手写识别系统 为了简单起见,这里构造的系统只能识别数字0到9,参见图2-6.需要识 ...

  5. java手写识别_手写识别系统

    目的 采用k-近邻算法实现手写识别系统.这里采用0和1组成数字0-9的形状,再用算法对这些形状进行识别,来分辨出形状属于0-9那个数字.并计算出k-近邻算法识别手写数字的错误率. 数据说明 数据来自& ...

  6. python实现手写识别系统

    提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 前言 一.手写识别系统 二.主要步骤 1.准备数据:将图像转换为测试向量 2.测试算法:使用k-近邻算法识别手写数字 总结 ...

  7. Knn算法之手写识别系统

    knn值之手写识别系统 导入包 import numpy as np from os import listdir import operator 介绍 1.os模块 os.listdir() 方法用 ...

  8. 【Python】基于kNN算法的手写识别系统的实现与分类器测试

    基于kNN算法的手写识别系统 1.      数据准备 使用windows画图工具,手写0-9共10个数字,每个数字写20遍,共200个BMP文件. 方法如下,使用画图工具,打开网格线,调整像素为32 ...

  9. knn算法测试手写识别系统准确率

    手写识别系统,KNN算法实现手写识别系统的准确率 (准确率=测试分对的样本数/总的样本数) import numpy as np from itertools import chain from os ...

最新文章

  1. 免费版的 IDEA 为啥不能使用 Tomcat ?
  2. CString的部分实现剖析
  3. java速查表_Java8新功能速查表 - 穿梭于偶然
  4. python3字符编码str_聊聊Python 3 的字符串:str 和 bytes 的区别
  5. 强网杯2020-dice2crybaby_crtbank
  6. @Resource,@Autowired,@Inject3种注入方式详解
  7. java多线池_java多线程之线程池
  8. hnu 暑期实训之回文串
  9. 为了躲开违规电动车,我一下子撞电线杆上了
  10. GPIO驱动实例:操作LED开关
  11. 图像条纹检测 python_光源在外观缺陷检测中的应用
  12. Hexo NexT 添加背景图片
  13. 【Suffix Array】后缀数组详解
  14. java里什么是注释,全面解析Java中的注解与注释
  15. icloud连接服务器时出现问题_iphone8 icloud连接服务器时出现问题
  16. ClassFactory 无法供应请求的类 (异常来自 HRESULT:0x80040111 (CLASS_E_CLASSNOTAVAILABLE))
  17. mac版本的visual studio的快捷键修改_几款高效率的mac软件
  18. M1的MacBook Air性能评测
  19. 记住这些快捷键,让你的电脑效率事半功倍
  20. 【第39题】位与 的应用 | 一句话消除末尾连续的 1

热门文章

  1. Mysql数据库回滚操作
  2. 线性代数学习(一):大致矩阵介绍
  3. 基于PHP+MySQL医院在线预约平台系统的设计与开发
  4. GeoIP2数据库——根据ip确定国家/地区,过滤某区域ip
  5. 高德纳(Knuth)谈计算机程序设计艺术(下)
  6. Swiftly语言学习1
  7. 超详细!操作系统实验三 系统调用(哈工大李治军)
  8. Win10系统查看本机以太网物理地址
  9. 信息爆炸与信息加工增值
  10. ARM控制器外设(史上最全)一