MNIST数据集分析
mnist数据集托管在
Yann LeCun’s website
下载下来包含四个压缩文件,总共包含60,000个图片和对应的标签(55,000个训练数据和5000个验证数据)和10,000个测试图片和标签
以train-image为例子,解压转化为十六进制文件,命令为
$cp train-images-idx3-ubyte.gz
train-images.gz
$gzip -d train-images.gz
$xxd t10k-images-idx3-ubyte >/tmp/t10k-images-idx3-ubyte.txt
$vi
/tmp/t10k-images-idx3-ubyte.txt
打开显示如下
每2个数字代表一个字节,前4个字节是
0000 0803
代表魔数,表明这是LeCunn官方数据。接下来的4个字节
0000 ea60
代表有60,000个图片。再接下来,
0000 001c
代表28像素,第一行最后四个字节也是代表28像素。
从第二行开始之后的784个字节是第一张图片对应的像素值。每行有16个字节,所以一张图片占 784/16=49行。每张图片解析出来,类似如下,可以使用数组形式来描述它。