从0到1数据分析实战学习笔记(七)KNN对手写数字进行识别

本文介绍了KNN(K-最近邻)算法的工作原理,并通过sklearn库中的手写数字数据集进行实战演练,包括数据加载、准备阶段(数据可视化、规范化)和分类阶段,最终实现手写数字的识别。
摘要由CSDN通过智能技术生成

KNN的工作原理

“近朱者赤,近墨者黑”可以说是KNN的工作原理。整个计算过程分为三步:

计算待分类物体与其他物体之间的距离;

统计距离最近的K个邻居;

对于K个最近的邻居,它们属于哪个分类最多,待分类物体就属于哪一类。

在这里插入图片描述

项目实战

通过sklearn中自带的手写数字数据集来进行实战
整个训练过程基本上都会包括三个阶段:
1.数据加载:我们可以直接从sklearn中加载自带的手写数字数据集;
2.准备阶段:在这个阶段中,我们需要对数据集有个初步的了解,比如样本的个数、图像长什么样、识别结果是怎样的。你可以通过可视化的方式来查看图像的呈现。通过数据规范化可以让数据都在同一个数量级的维度。另外,因为训练集是图像,每幅图像是个8*8的矩阵,我们不需要对它进行特征选择,将全部的图像数据作为特征值矩阵即可;
3.分类阶段:通过训练可以得到分类器,然后用测试集进行准确率的计算。

1.数据加载

通过引用 sklearn.datasets 的 load_digits,加载自带的手写数字数据集

# 加载数据
digits = load_digits()
data = digits.data
# 数据探索
print(data.shape)
2.准备阶段

                
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值