深度学习入门-mnist数据集
深度学习入门-基于python的理论与实现
3.6.1 MNIST数据集 我使用的是pyhcharm 可以直接通过setting里Install tensorflow模块导入mniset数据集
mnist数据集&tensorflow简介
tensorflow是一个采用数据流图(data flow graphs),用于数值计算的开源软件库
MNIST是一个入门级的计算机视觉数据集,它包含各种手写数字图片
数据集被分成两部分:60000行的训练数据集(mnist.train)和10000行的测试数据集(mnist.test)。 每一个MNIST数据单元有两部分组成:一张包含手写数字的图片和一个对应的标签。我们把这些图片设为“xs”,把这些标签设为“ys”。训练数据集和测试数据集都包含xs和ys,比如训练数据集的图片是 mnist.train.images ,训练数据集的标签是 mnist.train.labels
每一张图片都是28*28像素
安装tensorflow需要等很久
from tensorflow.examples.tutorials.mnist import input_data import matplotlib.pyplot as plt mnist = input_data.read_data_sets("MNIST_data",one_hot=True) #MNist数据集不能直接使用,需要通过input_data函数 #联网下载数据集 如果没有MNIST_data文件夹则会创建一个,包括4个后缀为gz的文件 print(mnist.train.images.shape) print(mnist.train.labels.shape) image = mnist.train.images[1,:] image = image.reshape(28,28)#指定期望的形状 plt.figure() plt.imshow(image) plt.show()
可能会出现的错误:
运行以上代码时出现错误,显示tensorflowl.exmple.tutorials没有这个模块。
解决办法: 1.检查python/Lib/site-packages/tensorflow/example里有没有tutorials这个文件夹
2.没有就下载tutorials文件,复制到上述目录下就可以了
顺利运行代码,读取数据集Mnist
onehot编码:
One-Hot编码,又称为一位有效编码,主要是采用N位状态寄存器来对N个状态进行编码,每个状态都由他独立的寄存器位,并且在任意时候只有一位有效。
One-Hot编码是分类变量作为二进制向量的表示。这首先要求将分类值映射到整数值。然后,每个整数值被表示为二进制向量,除了整数的索引之外,它都是零值,它被标记为1。
通过迭代形式以一定 batch_size 读取数据:
mnist.train.next_batch(100)
上一篇:
通过多线程提高代码的执行效率例子