考虑到要是自己去做一个项目,那么第一步是如何把数据导入到代码中,何种形式呢?是否需要做预处理?官网中给的实例mnist,数据导入都是写好的模块,那么自己的数据呢?

  一、从文件中读取数据(CSV文件、二进制文件、图片或其他格式)

  读取文件,都需要一个阅读器reader和一个转换解码操作decode,不同格式的文件对应不同的接口API。

  1)CSV文件:用的文件读取器和解码器是 TextLineReader 和 decode_csv 。 下面代码来自TensorFlow官网,加了注释。

filename_queue = tf.train.string_input_producer(["file0.csv", "file1.csv"])
#["file0.csv", "file1.csv"]是文件名列表,tf.train.string_input_producer()用来生成文件名队列,有参数shuffle=True可执行乱序,num_epochs=None可设置文件名字符串的生成次数#对于输入管道,输出文件名字符串到队列中
reader = tf.TextLineReader()#阅读器,个人感觉功能同Python的open()。
key, value = reader.read(filename_queue)#参数是文件名队列,返回一个tuple,key和value,每次返回阅读器的下一条记录(一行)。# Default values, in case of empty columns. Also specifies the type of the
# decoded result.
record_defaults = [[1], [1], [1], [1], [1]] #定义解析的格式
col1, col2, col3, col4, col5 = tf.decode_csv(value, record_defaults=record_defaults)
#将CSV解析为tensor,每列映射为一个tensor,返回一个tensor列表。
features = tf.concat(0, [col1, col2, col3, col4])
#0代表按行合并。参数1是在哪个维度合并,参数2是待合并的值。
with tf.Session() as sess:# Start populating the filename queue.coord = tf.train.Coordinator()  #创建一个线程协调器threads = tf.train.start_queue_runners(coord=coord)  #启动Graph中所有队列的线程for i in range(1200):# Retrieve a single instance:example, label = sess.run([features, col5])#运行,获取样本和标签coord.request_stop()  #请求停止所有线程coord.join(threads)  #等待线程结束

  2)二进制文件:用的文件读取器和解码器是  tf.FixedLengthRecordReader 和 tf.decode_raw ,读取固定长度的文件。

  decode_raw操作可以将一个字符串转换为一个uint8的张量。

  3)标准TensorFlow格式:

  可以将任意的数据转换为TensorFlow所支持的格式, 这种方法可以使TensorFlow的数据集更容易与网络应用架构相匹配。方法就是使用TFRecords文件。

  写入数据后,通过修改 tf.train.Example 的Features,将 protocol buffer 序列化为一个字符串,再通过 tf.python_io.TFRecordWriter 将序列化的字符串写入 TFRecords文件中。使用tf.TFRecordReader和tf.parse_single_example解析器,可以从TFRecords文件中读取数据。这个parse_single_example操作可以将 protocol buffer 解析为张量。

  

  二、供给数据feed_dict参数

  定义了operation之后,使用sess.run()或tensor.eval()或op.run()时,通过参数feed_dict传递数据,该参数是和placeholder配套使用的。先声明一个占位符,比如x,y。然后在op中使用了x,y进行计算,等到op.run()时,op.run(feed_dict={x:x_batch,y:y_batch})即可。前提是x_batch和y_batch已知,已有数据。

转载于:https://www.cnblogs.com/xiaoxiong-kankan/p/7610934.html

TensorFlow中数据读取—如何载入样本相关推荐

  1. TF学习——TF数据读取:TensorFlow中数据读这三张图片的5个epoch +把读取的结果重新存到read 文件夹中

    TF学习--TF数据读取:TensorFlow中数据读这三张图片的5个epoch +把读取的结果重新存到read 文件夹中 目录 实验展示 代码实现 实验展示 代码实现 1.如果设置shuffle为T ...

  2. 由浅入深之Tensorflow(3)----数据读取之TFRecords

    由浅入深之Tensorflow(3)----数据读取之TFRecords 转载自http://blog.csdn.net/u012759136/article/details/52232266 原文作 ...

  3. 『TensorFlow』数据读取类_data.Dataset

    一.资料 参考原文: TensorFlow全新的数据读取方式:Dataset API入门教程 API接口简介: TensorFlow的数据集 二.背景 注意,在TensorFlow 1.3中,Data ...

  4. TensorFlow——二进制数据读取

    一.CIFAR10二进制数据集介绍 https://www.cs.toronto.edu/~kriz/cifar.html 二进制版本数据文件 二进制版本包含文件data_batch_1.bin,da ...

  5. tensorflow 标准数据读取 tfrecords

    TensorFlow提供了一种TFRecords的格式来统一存储数据.理论上,TFRecords可以存储任何形式的数据 , TFRecords文件的是以tf.train.Example Protoco ...

  6. tensorflow的数据读取 tf.data.DataSet、tf.data.Iterator

    tensorflow的工程有使用python的多进程读取数据,然后给feed给神经网络进行训练. 也有tensorflow中的 tf.data.DataSet的使用.并且由于是tensorflow框架 ...

  7. 牛客网 赛码在线编程中数据读取问题

    一. 数据读取的方式(python3) 1.  input()读取输入数据 while True:try:inputs = input()except:break 2.  网站的数据输入是是一个含有多 ...

  8. R语言中 数据读取与写入

    R中其他读取: source  #读取R代码 dget    #读取R文件 load    #读取工作空间 一.R语言读取文本文件(.txt) 在R语言中,读取文本文件的函数可以是:read.tabl ...

  9. sparksql 保存点_Spark(十二)【SparkSql中数据读取和保存】

    一. 读取和保存说明 SparkSQL提供了通用的保存数据和数据加载的方式,还提供了专用的方式 读取:通用和专用 保存 保存有四种模式: 默认: error : 输出目录存在就报错 append: 向 ...

最新文章

  1. framework7使用笔记
  2. 研究生论文“盲审”“查重”再加码!毕业或将变的更加困难
  3. 东北电力大学计算机网络复试题,2020年东北电力大学计算机学院复试(20200901201159).pdf...
  4. 微信小程序|开发实战篇之七-steps进度条组件
  5. 解决mendeley不能输入中文的情况
  6. java映射理解_Java反射的理解
  7. IDEA 编译时 报 “常量字符串过长” 解决办法
  8. nn.PReLU(planes)
  9. word 中快速加入序号等符号
  10. inner join 链表_MySQL连表操作之一对多
  11. 使用wps的邮件合并和文档附件制作带照片的准考证
  12. 一个简单的条码/二维码扫描App
  13. CCNA系列十一之Frame-Relay
  14. 获取连接到wifi热点的手机信息。
  15. Android简单电子书
  16. StarUML3.0的破解方法
  17. CIKM 2021 | 淘宝多场景推荐排序模型ZEUS
  18. Linux下 删除文件夹下的所有文件
  19. 汽车网络安全标准ISO/SAE_21434汇总介绍
  20. python股票编程入门_Python股票量化投资-3.python基础

热门文章

  1. 我的596升级到Windows Mobile 6了
  2. LeetCoed 5383. 给 N x 3 网格图涂色的方案数
  3. win7下import pytorch报错AttributeError: function 'AddDllDirectory' not found
  4. 问题 L: 一年中的第几天
  5. 问题 G: 三个数比较大小
  6. python实现文件传输_Python实现基于HTTP文件传输实例
  7. python语言的开发者_写给.NET开发者的Python教程(一):引言
  8. debian php mysql 包_debian php mysql
  9. erp生产管理系统流程_仁和ERP生产制造业ERP管理系统库存管理
  10. Python接口自动化之数据驱动