Tensorflow学习之MNIST数据集

前言:

       最近有段时间没学习了,主要是MNIST数据集这一节的代码很多错误,比较难调试,而且每次报的错误还不一样,在网上百度又尝试了好多种解决办法最后才解决,挺烦的。还有就是自己本来选的人工智能方向,但是导师在这个方向貌似资源比较少,估计开学了就准备换个硬件方向了,一直都在怀疑自己还应不应该继续学Tensflow。最后就是,自己这段时间超级想买个Ipad Pro,也不知道是怎么会使,感觉跟有毒一样,本来钱就少但是就是想买,就天天在看能不能等到便宜的Ipad Pro。总是有很多事情影响学习啊!!!

言归正传

本节学习的内容:搭建神经网络,在 minist 数据集上训练模型,输出手写数字识别准确率。

mnist 数据集

       包含7万张黑底白字手写数字图片,其中55000张为训练集,5000张为验证集,10000张为测试集。每张图片大小为 28x28 像素,图片中纯黑色的像素值为0,纯白色像素值为1。数据集的标签是长度为10的一维数组,数组中每个元素索引号表示对应数字出现的概率。我们将 mnist 数据集中的数据喂入神经网络之前,把数据集中的每张图像的像素用长度是 784 的一维数组来代替,这样再将这个数组作为神经网络的输入特征喂入神经网络。

使用 input_data 模块中的 read_data_sets() 函数加载 minist 数据集:

from tensorflow.examples.tutorials.mnist import input_data

mnist = input_data.read_data_sets('./data/', one_hot = True)

       在 read_data_sets() 函数中两个参数,第一个参数表示数据集存放路径,第二个参数表示数据集的存取形式。当第二个参数为 True 时,表示以独热码形式存取数据集。read_data_sets() 函数运行时,会检查指定路径内是否已经有数据集,若指定路径中没有数据集,则会自动下载,并将 mnist 数据集分为训练集 train、验证集 validation 和测试集 test 存放。

在 Tensorflow 中用以下函数返回子集样本数:

返回训练集、验证集和测试集的样本数

print "train data size : ", mnist.train.num_examples

print "validation data size : ", mnist.validation.num_examples

print "test data size : ", mnist.test.num_examples

输出结果:

train data size : 55000

validation data size : 5000

test data size : 10000

使用 train.labels 函数返回 mnist 数据集标签

例如:

在 mnist 数据集中,若想要查看训练集中第0张图片的标签,则使用函数 mnist.train.labels[0]

输出结果:array([0.,0.,0.,0.,0.,0.,1.,0.,0.,0])

使用 train.images 函数返回 mnist 数据集图片像素值

例如:

在 mnist 数据集中,若想要查看训练集中第 0 张图片像素值,则使用函数 mnist.train.images[0]

  • 6
    点赞
  • 32
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值