赞
踩
3.6.1 MNIST数据集
我使用的是pyhcharm 可以直接通过setting里Install tensorflow模块导入mniset数据集
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
One-Hot编码,又称为一位有效编码,主要是采用N位状态寄存器来对N个状态进行编码,每个状态都由他独立的寄存器位,并且在任意时候只有一位有效。
One-Hot编码是分类变量作为二进制向量的表示。这首先要求将分类值映射到整数值。然后,每个整数值被表示为二进制向量,除了整数的索引之外,它都是零值,它被标记为1。
通过迭代形式以一定 batch_size 读取数据:
mnist.train.next_batch(100)
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。