首页 > 编程语言 >【python】机器学习算法(KNN)入门——手写数字识别

【python】机器学习算法(KNN)入门——手写数字识别

时间:2022-11-07 19:23:36浏览次数:46  
标签:KNN digits python test train print 手写

前言

嗨喽~大家好呀,这里是魔王呐 !

最近邻 (k Nearest Neighbors, KNN)算法是一种分类算法

1968年由Cover和Hart提出,应用场景有宁符识别、文本分类、 图像识别等领域。

手写数字识别是一个经典的机器学习问题,通过识别手写体图片来判断数字

因为数字类别是0——9,所以是十分类问题

那今天博主就来教大家探索手写数字的识别

环境使用:

  • Python 3.8 <建议最好是和一样版本>
  • Pycharm

第三方模块使用:

  • Scikit-learn(以前称为scikits.learn,也称为sklearn)

    是针对Python 编程语言的免费软件机器学习库 。

    它具有各种分类,回归和聚类算法,包括支持向量机,随机森林,梯度提升,k均值和DBSCAN,并且旨在与Python数值科学库NumPy和SciPy联合使用。

  • matplotlib

    是一个 Python 的 2D绘图库

    它以各种硬拷贝格式和跨平台的交互式环境生成出版质量级别的图形。

如何安装python第三方模块:

  1. win + R 输入 cmd 点击确定, 输入安装命令 pip install 模块名 (pip install requests) 回车
  2. 在pycharm中点击Terminal(终端) 输入安装命令

代码展示

from sklearn.neighbors import KNeighborsClassifier
from sklearn.datasets import load_digits
from sklearn.model_selection import train_test_split
import matplotlib.pyplot as plt

 

加载数据

digits = load_digits()
data = digits.data

  

数据探索

data里面每个元素代表一张图片

print(data[0])

 

查看第一幅图像

print(digits.images[0])

 

第一幅图像代表的数字含义

print(digits.target[0])

 

将第一幅图像显示出来

plt.imshow(digits.images[0])
plt.show()

 

标签:KNN,digits,python,test,train,print,手写
From: https://www.cnblogs.com/Qqun261823976/p/16867117.html

相关文章

  • Python Ujson
    UJson主要记录其安装方式,能使用pipinstallujson进行安装不过好像有点慢,反正我等了很久,也可以使用Python命令进行安装会快一点,命令如下:python-mpipinstallujson ......
  • Python基础之面向对象:5、三大特征-多态
    面对对象之多态目录面对对象之多态一、多态1、多态的概念2、多态的实际应用1、自我约束2、abc模块一、多态1、多态的概念​ 多态在实际应用时较为抽象,指事物的多种形态......
  • Python基础之面向对象:6、三大特征-封装
    面向对象之封装目录面向对象之封装一、封装1、封装的概念2、为什么要封装3、封装的两个层面二、隐藏与调用的方法1、隐藏的方法2、调用与修改的方法三、伪装1、伪装的概念......
  • Python基础之面向对象:7、反射
    面向对象之反射目录面向对象之反射一、反射1、反射的定义2、使用的场景3、常用方法1.hasattr()2.getattr()3.setattr()4.delattr()4、反射的实际应用一、反射1、反射的......
  • Python ipython工具包
    ipython提供了丰富的工具包,用于建立Python的交互式操作,或许有用,在此处做一个标记!!!目前知道比较好用的就是支持magic函数,比如:%time这些,如果没有安装这个包,%会被视为错误语......
  • Python基础之面向对象:4、super方法实战
    派生方法实战​ 以上我们学习了通过super()的方法可以重写父类、额外添加父类中的数据,下面将通过实战案例来讲述super()方法来重写、添加父类中的功能代码需求:1、使用js......
  • Python——面向对象(封装、多态、反射)
    Python——面向对象派生方法实战#coding:utf-8importjsonimportdatetime#dict_demo={#'t1':datetime.date.today(),#'t2':datetime.datetime.to......
  • Python decorator
    此处只做标记,没有深入更深层次了解!!!初步的了解,是decorator库可以通过注解的方式扩展方法,扩展是在不改变原有函数的情况下进行的,如下图所示:    另外,网上也看到一些......
  • Python Colorama
    此处借用CSND上的一篇博文作为使用说明,连接为:https://blog.csdn.net/qq_23845779/article/details/105991806该库的主要作用就是用来改变命令行或者控制台输出文字色彩的,......
  • Python获取MySQL的创建表sql到文件中
    importosimportpymysqlpath=r'D:\Projects\sql'ifnotos.path.isdir(path):os.mkdir(path)conn=pymysql.connect(host='192.168.1.17',user='root',......