7.1 TensorFlow笔记(基础篇):加载数据之预加载数据与填充数据

原创 2017年08月05日 17:24:02

TensorFlow加载数据

TensorFlow官方共给出三种加载数据的方式:
1. 预加载数据
2. 填充数据
预加载数据的缺点: 将数据直接嵌在数据流图中,当训练数据较大时,很消耗内存.填充的方式也有数据量大,消耗内存高的缺点,并且数据类型的转换等中间环节增加了不少开销(之前的笔记示例中主要使用的这两种方式).最好用第三种方法,在图中定义好文件读取的方法,让Tensorflow 自己从文件中读取数据,并解码成可使用的样本集.

CODE : 预加载数据与填充数据

import tensorflow as tf
import os

os.environ['TF_CPP_MIN_LOG_LEVEL'] = '2'

# 预加载数据
# 缺点: 将数据直接嵌在数据流图中,当训练数据较大时,很消耗内存
x1 = tf.constant([2,3,4])
x2 = tf.constant([4,0,1])
y = tf.add(x1,x2)

with tf.Session() as sess:
    print(sess.run(y))

# 填充数据
# 设计图
a1 = tf.placeholder(tf.int16)
a2 = tf.placeholder(tf.int16)
b = tf.add(x1,x2)
# 用 python 产生数据
li1 = [2,3,4]
li2 = [4,0,1]
# 打开一个会话,将数据填充给后端
with tf.Session() as sess:
    print(sess.run(b,feed_dict={a1: li1,a2: li2}))

# 填充的方式也有数据量大,消耗内存高的缺点,并且数据类型的转换等中间环节增加了不少开销.
# 这时最好用第三种方法,在图中定义好文件读取的方法,让Tensorflow 自己从文件中读取数据,并解码成可使用的样本集

运行结果:

[6 3 5]
[6 3 5]

相关

在TensorFlow中进行模型训练时,在官网给出的三种读取方式,中最好的文件读取方式就是将利用队列进行文件读取,而且步骤有两步:
1. 把样本数据写入TFRecords二进制文件 : http://blog.csdn.net/fontthrone/article/details/76727412
2. TensorFlow笔记(基础篇):加载数据之从队列中读取:http://blog.csdn.net/fontthrone/article/details/76728083
3. python中的argparse模块:http://blog.csdn.net/fontthrone/article/details/76735591

版权声明:转载请标明出处:http://blog.csdn.net/fontthrone

相关文章推荐

7.3 TensorFlow笔记(基础篇):加载数据之从队列中读取

前言整体步骤在TensorFlow中进行模型训练时,在官网给出的三种读取方式,中最好的文件读取方式就是将利用队列进行文件读取,而且步骤有两步: 1. 把样本数据写入TFRecords二进制文件 ...

Tensorflow实战学习(十六)【CNN实现、数据集、TFRecord、加载图像、模型、训练、调试】

AlexNet(Alex Krizhevsky,ILSVRC2012冠军)适合做图像分类。层自左向右、自上向下读取,关联层分为一组,高度、宽度减小,深度增加。深度增加减少网络计算量。训练模型数据集 S...
  • WuLex
  • WuLex
  • 2017-11-20 09:18
  • 238

Tensorflow中如何加载数据

在Tensorflow中通过以下3中方式进行读取数据:1.预加载数据(preloaded data);2.填充数据(feeding);3.从文件读取数据(reading from file); 1.预...
  • zSean
  • zSean
  • 2017-08-01 08:19
  • 112

flex基础篇二 flex加载数据的两种方式,httpService和本地xml

本次主要介绍flex获取数据的两种方式: (1)httpService从后台获取,内容只能为xml格式。   发送httpService请求,httpService通信和java的ajax比较类...

打造Android集合控件数据绑定(支持添加监听,支持AbsListView与RecycleView,支持异步加载等)(一)基础篇

使用反射+注解实现ORM关系映射,类似hmb,Spring等。 老规矩,先看一下使用效果: 调用: ListBinder.With(mRecyclerView).setLtnImpl(thi...

Java 并发专题 :FutureTask 实现预加载数据 在线看电子书、浏览器浏览网页等

继续并发专题~ FutureTask 有点类似Runnable,都可以通过Thread来启动,不过FutureTask可以返回执行完毕的数据,并且FutureTask的get方法支持阻塞。 由于:Fu...

Java 并发专题 :FutureTask 实现预加载数据 在线看电子书、浏览器浏览网页等

继续并发专题~FutureTask 有点类似Runnable,都可以通过Thread来启动,不过FutureTask可以返回执行完毕的数据,并且FutureTask的get方法支持阻塞。由于:Futu...

iOS教程:如何使用Core Data – 预加载和引入数据

这是接着上一次《iOS教程:Core Data数据持久性存储基础教程》的后续教程,程序也会使用上一次制作完成的。 再上一个教程中,我们只做了一个数据模型,之后我们使用这个数据模型中的数据创建...

巧力避免ViewPager的预加载数据,Tablayout+Fragment+viewPager

问题描述 最近在进行一个项目的开发,其中使用到了Tablayout+Fragment+viewPager来搭建一个基本的框架,从而出现了设置数据适配器的时候,item的位置错乱问题。我打印log日志...
  • pyfysf
  • pyfysf
  • 2017-04-02 15:34
  • 1135

Activity的生命周期(三)——结合Activity的生命周期理解子类继承父类预加载数据

父类代码: /** * @author 贾涛 * @date 2016-2-27 上午5:59:49 */ public class BaseActivity extends Ac...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)