如何高效地从TFRecord格式队列中读取实例数据?
- 内容介绍
- 文章标签
- 相关推荐
本文共计1424个文字,预计阅读时间需要6分钟。
TensorFlow官方网站上提供三种读取数据的方法:
1. 预加载数据:在TensorFlow图中定义常量或变量来保存所有数据,将数据直接嵌入到数据图中。当训练数据量较大时,这种方法可以节省大量内存。例如:`x1=tf.constant('tf конс')`
Tensor Flow官方网站上提供三种读取数据的方法
1. 预加载数据:在Tensor Flow图中定义常量或变量来保存所有数据,将数据直接嵌到数据图中,当训练数据较大时,很消耗内存。
如
x1=tf.constant([0,1]) x2=tf.constant([1,0]) y=tf.add(x1,x2)
2.填充数据:使用sess.run()的feed_dict参数,将Python产生的数据填充到后端,之前的MNIST数据集就是通过这种方法。也有消耗内存,数据类型转换耗时的缺点。
3. 从文件读取数据:从文件中直接读取,让队列管理器从文件中读取数据。分为两步
先把样本数据写入TFRecords二进制文件
再从队列中读取
TFRecord是TensorFlow提供的一种统一存储数据的二进制文件,能更好的利用内存,更方便的复制和移动,并且不需要单独的标记文件。下面通过代码来将MNIST转换成TFRecord的数据格式,其他数据集也类似。
本文共计1424个文字,预计阅读时间需要6分钟。
TensorFlow官方网站上提供三种读取数据的方法:
1. 预加载数据:在TensorFlow图中定义常量或变量来保存所有数据,将数据直接嵌入到数据图中。当训练数据量较大时,这种方法可以节省大量内存。例如:`x1=tf.constant('tf конс')`
Tensor Flow官方网站上提供三种读取数据的方法
1. 预加载数据:在Tensor Flow图中定义常量或变量来保存所有数据,将数据直接嵌到数据图中,当训练数据较大时,很消耗内存。
如
x1=tf.constant([0,1]) x2=tf.constant([1,0]) y=tf.add(x1,x2)
2.填充数据:使用sess.run()的feed_dict参数,将Python产生的数据填充到后端,之前的MNIST数据集就是通过这种方法。也有消耗内存,数据类型转换耗时的缺点。
3. 从文件读取数据:从文件中直接读取,让队列管理器从文件中读取数据。分为两步
先把样本数据写入TFRecords二进制文件
再从队列中读取
TFRecord是TensorFlow提供的一种统一存储数据的二进制文件,能更好的利用内存,更方便的复制和移动,并且不需要单独的标记文件。下面通过代码来将MNIST转换成TFRecord的数据格式,其他数据集也类似。

