在Nvidia Digits上用tensorflow框架直接拿来使用的mnist数据集十分方便,现在为了究竟,使用Python直接实现加载mnist数据集。
from tensorflow.example.tutorials.mnist import input_data
import tensorflow as tf
#加载数据集
mnist = input_data.read_data_sets('E:/soft/MNIST_DATA',one_hot=True)
#加载训练集样本
tran_x = mnist.train.images
#加载验证集样本
validation_x = mnist.validation.image
#加载测试样本
test_x = mnist.test.images
#加载训练集标签
train_y = mnist.train.labels
#加载测试集标签
test_y = mnist.test.labels
print('train_x.shape:',train_x.shape,'train_y.shape:',rain_y.shape)
#查看训练集中第一个样本的内容和标签
print(train_x[1])
print(train_y[1])
#获取训练集数据的前100个
images.labels = mnist.train.next_batch(100)
print('images.shape:',images.shape,'labels.shape',labels.shape)
#数据可视化
import matplotlib.pylpot as pit
#绘制训练集前20个样本
fig.ax = plt.subplots(nrows=4,ncols=5)
ax = ax.flatten()
for i in range(20)
img = train_x[i].reshape(28,28)
ax[i].imshow(img,cmap='Greys')
ax[0].set_xticks([])
ax[0].set_yticks([])
plt.show()
onhot编码是:
[0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0 ]
绘制前20张样本图片