MNIST是一个经典的深度学习和计算机视觉的数据集,里面包含了0-9的手写数字图片,开发人员可使用此数据集来训练和测试神经网络,训练后的神经网络可以识别手写数字。
Keras库已经包含了这个数据集,可以从Keras库中加载:
from keras.datasets import mnist # 将预打乱的MNIST数据加载到训练和测试集中 (X_train, y_train), (X_test, y_test) = mnist.load_data() # Downloading data from https://s3.amazonaws.com/img-datasets/mnist.npz # 11493376/11490434 [==============================] - 483s 42us/step
可以查看数据集的形状:
print (X_train.shape) # (60000, 28, 28)
可以看到,训练集中有60000个样本,每个图像都是28像素x28像素。要查看手写数字图像,可以使用matplotlib绘制,下面绘制MNIST数据集中的第一个图像:
from matplotlib import pyplot as plt plt.imshow(X_train[0]) plt.show()
这是图像输出:
一般来说,当开发深度学习应用时,在进行任何算法工作之前,可视化地绘制数据是很有用的。这是一个快速的完整性检查,可以防止低级错误(比如搞错数据维度)。