Keras手写数字识别(初识MNIST数据集)

本文介绍了MNIST手写数字识别,包括数据下载、预处理及Keras模型的初步构建。通过Keras加载MNIST数据集,进行图像和标签的预处理,为后续的多层感知器模型训练做准备。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

这篇文章将会分成两个部分,第一部分将简单认识一下keras中的手写数据集MNIST,第二部分将会介绍用Keras建立多层感知器模型,然后训练模型,评估模型的准确率,最后用训练完成的模型识别MNIST的手写数字

1.MNIST简介

MNIST是深度学习的经典入门demo,它是由Yann LeCun搜集的,这个demo是由6万张训练图片和1万张测试图片构成的,每张图片都是28px*28px大小,而且都是黑白色构成,这些图片是采集的不同的人手写从0到9的数字。Keras将这个数据集和相关操作封装到了库中,下面我们将一步步了解MNIST的一些相关操作。

1.1下载MNIST数据

首先,导入相关模块和下载数据

import numpy as np
import pandas as pd
from keras.utils import np_utils      #导入keras.utils,在后面可以将label变迁转换为One-Hot Encoding(一位有效编码)
from keras.datasets import mnist  #Keras已集成MNIST模块,可直接导入
np.random.seed(10)                     #设置seed可以产生随机数

运行结果如下
在这里插入图片描述
因为Tensorflow是Keras的后端引擎,即以Tensorflow作为底层,所以可以看到Keras自动以Tensorflow作为Backend。

接着下载数据

(X_train_image,y_train_label),(X_test_image,y_test_label)=mnist.load_data()  

第一次执行load_data()这个方法,程序会自动帮用户下载MNIST文件,可能下载需要花点时间,第二次以后再调用这个方法就可以直接调用本地文件了。

以下为各变量说明

变量名 说明
X_train_image 训练样本图像
y_train_label 训练样本标签(即正确答案)
X_test_image 测试样本图像
y_test_label 测试样本答案

1.2查看下载的数据

print('X_train_image.shape:',X_train_image.shape)
print('y_train_label.shape:',y_train_label.shape)
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值