使用TensorFlow直接获取处理MNIST数据方式


Posted in Python onFebruary 10, 2020

MNIST是一个非常有名的手写体数字识别数据集,TensorFlow对MNIST数据集做了封装,可以直接调用。MNIST数据集包含了60000张图片作为训练数据,10000张图片作为测试数据,每一张图片都代表了0-9中的一个数字,图片大小都是28*28。虽然这个数据集只提供了训练和测试数据,但是为了验证训练网络的效果,一般从训练数据中划分出一部分数据作为验证数据,测试神经网络模型在不同参数下的效果。TensorFlow提供了一个类来处理MNIST数据。

代码如下:

from tensorflow.examples.tutorials.mnist import input_data

#载入MNIST数据集,如果指定地址下没有下载好的数据,那么TensorFlow会自动在网站上下载数据
mnist = input_data.read_data_sets("/tensorflow_google")

#打印训练数据大小
print("Training data size:", mnist.train.num_examples)

#打印验证集大小
print("Validating data size:", mnist.validation.num_examples)

#打印测试集大小
print("Testing data size:", mnist.test.num_examples)

#打印训练样例
print("Example training data", mnist.train.images[0])

#打印训练样例的标签
print("Example training data label:", mnist.train.labels[0])

>>Training data size: 55000
Validating data size: 5000
Testing data size: 10000
Example training data [ 0.     ... 0.    ]
Example training data label: 7

处理后的每一张图片是一个长度为784(28*28)的一维数组,数组中的数据为图片的像素,像素元素取值范围为0-1,代表了颜色的深浅,其中0为白色,1为黑色。为了可以使用随机梯度下降,input_data.read_data_sets生成的类还提供了mnist.train.next_batch,可以从素有的训练数据中读取一小部分作为一个训练batch,例如:

batch_size = 200
xs, ys = mnist.train.next_batch(batch_size) #xs是数据,ys是对应的标签
print("X shape", xs.shape)
print("Y shape", ys.shape)

>>X shape (200, 784) #X是200*784的数组
Y shape (200,) #Y是200维的一维数组

以上这篇使用TensorFlow直接获取处理MNIST数据方式就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python调用C语言开发的共享库方法实例
Mar 18 Python
Python中正则表达式的详细教程
Apr 30 Python
python简单猜数游戏实例
Jul 09 Python
python中异常捕获方法详解
Mar 03 Python
pandas数据清洗,排序,索引设置,数据选取方法
May 18 Python
使用EduBlock轻松学习Python编程
Oct 08 Python
numpy 对矩阵中Nan的处理:采用平均值的方法
Oct 30 Python
Django Channels 实现点对点实时聊天和消息推送功能
Jul 17 Python
Django密码系统实现过程详解
Jul 19 Python
Python列表倒序输出及其效率详解
Mar 04 Python
Pytorch高阶OP操作where,gather原理
Apr 30 Python
Flask-SocketIO服务端安装及使用代码示例
Nov 26 Python
python如何实现单链表的反转
Feb 10 #Python
基于python求两个列表的并集.交集.差集
Feb 10 #Python
python实现串口通信的示例代码
Feb 10 #Python
基于Tensorflow高阶读写教程
Feb 10 #Python
python集合删除多种方法详解
Feb 10 #Python
pandas中的数据去重处理的实现方法
Feb 10 #Python
对tensorflow中cifar-10文档的Read操作详解
Feb 10 #Python
You might like
德生PL990,目前市面上唯一一款便携式插卡蓝牙全波段高性能收音机
2021/03/02 无线电
数据库的日期格式转换
2006/10/09 PHP
通过缓存数据库结果提高PHP性能的原理介绍
2012/09/05 PHP
使用PHP遍历文件目录与清除目录中文件的实现详解
2013/06/24 PHP
ThinkPHP 3.2.3实现页面静态化功能的方法详解
2017/08/03 PHP
浅谈Laravel POST,PUT,PATCH 路由的区别
2019/10/15 PHP
javascript中的几个运算符
2007/06/29 Javascript
Dreamweaver jQuery智能提示插件,支持版本提示,支持1.6api
2011/07/31 Javascript
超级有用的13个基于jQuery的内容滚动插件和教程
2011/07/31 Javascript
解决JS浮点数运算出现Bug的方法
2013/03/12 Javascript
jQuery中:last选择器用法实例
2014/12/30 Javascript
javascript实现10个球随机运动、碰撞实例详解
2015/07/08 Javascript
关于cookie的初识和运用(js和jq)
2016/04/07 Javascript
VueJS事件处理器v-on的使用方法
2017/09/27 Javascript
利用CDN加速react webpack打包后的文件详解
2018/02/22 Javascript
Node.js 实现简单的无侵入式缓存框架的方法
2019/07/21 Javascript
原生js实现自定义滚动条组件
2021/01/20 Javascript
[01:11]辉夜杯战队访谈宣传片—CDEC.Y
2015/12/26 DOTA
详解Python中映射类型(字典)操作符的概念和使用
2015/08/19 Python
Python网络爬虫项目:内容提取器的定义
2016/10/25 Python
JPype实现在python中调用JAVA的实例
2017/07/19 Python
Python爬虫实例_城市公交网络站点数据的爬取方法
2018/01/10 Python
Python类中方法getitem和getattr详解
2019/08/30 Python
opencv3/python 鼠标响应操作详解
2019/12/11 Python
pandas中read_csv、rolling、expanding用法详解
2020/04/21 Python
Python 中由 yield 实现异步操作
2020/05/04 Python
python中有函数重载吗
2020/05/28 Python
深入分析python 排序
2020/08/24 Python
python中delattr删除对象方法的代码分析
2020/12/15 Python
python日志通过不同的等级打印不同的颜色(示例代码)
2021/01/13 Python
解决pycharm修改代码后第一次运行不生效的问题
2021/02/06 Python
会计工作心得体会
2014/01/13 职场文书
会计专业毕业自荐书范文
2014/02/08 职场文书
《雨点》教学反思
2014/02/12 职场文书
驳回起诉裁定书
2015/05/19 职场文书
小喇叭开始广播了! 四十多年前珍贵老照片
2022/05/09 无线电