zoukankan      html  css  js  c++  java
  • 7.1 TensorFlow笔记(基础篇):加载数据之预加载数据与填充数据

    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

  • 相关阅读:
    Log4j2_java日志使用
    Log4j_java日志使用
    DB_常用知识
    Oracle_内置信息
    Loadrunner使用时IE浏览器打不开怎么办
    性能测试
    python条件语句及循环语句
    计算机网络
    单元测试
    边界条件测试
  • 原文地址:https://www.cnblogs.com/fonttian/p/9162796.html
Copyright © 2011-2022 走看看