tensorflow tf.train.batch之数据批量读取方式


Posted in Python onJanuary 20, 2020

在进行大量数据训练神经网络的时候,可能需要批量读取数据。于是参考了这篇文章的代码,结果发现数据一直批量循环输出,不会在数据的末尾自动停止。

然后发现这篇博文说slice_input_producer()这个函数有一个形参num_epochs,通过设置它的值就可以控制全部数据循环输出几次。

于是我设置之后出现以下的报错:

tensorflow.python.framework.errors_impl.FailedPreconditionError: Attempting to use uninitialized value input_producer/input_producer/limit_epochs/epochs

     [[Node: input_producer/input_producer/limit_epochs/CountUpTo = CountUpTo[T=DT_INT64, _class=["loc:@input_producer/input_producer/limit_epochs/epochs"], limit=2, _device="/job:localhost/replica:0/task:0/cpu:0"](input_producer/input_producer/limit_epochs/epochs)]]

找了好久,都不知道为什么会错,于是只好去看看slice_input_producer()函数的源码,结果在源码中发现作者说这个num_epochs如果不是空的话,就是一个局部变量,需要先调用global_variables_initializer()函数初始化。

于是我调用了之后,一切就正常了,特此记录下来,希望其他人遇到的时候能够及时找到原因。

哈哈,这是笔者第一次通过阅读源码解决了问题,心情还是有点小激动。啊啊,扯远了,上最终成功的代码:

import pandas as pd
import numpy as np
import tensorflow as tf


def generate_data():
  num = 25
  label = np.asarray(range(0, num))
  images = np.random.random([num, 5])
  print('label size :{}, image size {}'.format(label.shape, images.shape))
  return images,label

def get_batch_data():
  label, images = generate_data()
  input_queue = tf.train.slice_input_producer([images, label], shuffle=False,num_epochs=2)
  image_batch, label_batch = tf.train.batch(input_queue, batch_size=5, num_threads=1, capacity=64,allow_smaller_final_batch=False)
  return image_batch,label_batch


images,label = get_batch_data()
sess = tf.Session()
sess.run(tf.global_variables_initializer())
sess.run(tf.local_variables_initializer())#就是这一行
coord = tf.train.Coordinator()
threads = tf.train.start_queue_runners(sess,coord)
try:
  while not coord.should_stop():
    i,l = sess.run([images,label])
    print(i)
    print(l)
except tf.errors.OutOfRangeError:
  print('Done training')
finally:
  coord.request_stop()
coord.join(threads)
sess.close()

以上这篇tensorflow tf.train.batch之数据批量读取方式就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
详解python实现读取邮件数据并下载附件的实例
Aug 03 Python
python 随机数使用方法,推导以及字符串,双色球小程序实例
Sep 12 Python
python编程之requests在网络请求中添加cookies参数方法详解
Oct 25 Python
python实现时间o(1)的最小栈的实例代码
Jul 23 Python
python使用turtle库绘制奥运五环
Feb 24 Python
python统计文章中单词出现次数实例
Feb 27 Python
基于Tensorflow的MNIST手写数字识别分类
Jun 17 Python
Python爬虫如何应对Cloudflare邮箱加密
Jun 24 Python
python爬取招聘要求等信息实例
Nov 20 Python
Jmeter调用Python脚本实现参数互相传递的实现
Jan 22 Python
python如何读取.mtx文件
Apr 22 Python
Python爬虫之爬取二手房信息
Apr 27 Python
Python list运算操作代码实例解析
Jan 20 #Python
Python模块future用法原理详解
Jan 20 #Python
使用Tensorflow将自己的数据分割成batch训练实例
Jan 20 #Python
Python JSON编解码方式原理详解
Jan 20 #Python
从训练好的tensorflow模型中打印训练变量实例
Jan 20 #Python
利用Tensorflow构建和训练自己的CNN来做简单的验证码识别方式
Jan 20 #Python
新年福利来一波之Python轻松集齐五福(demo)
Jan 20 #Python
You might like
超人钢铁侠联手合作?美漫作家呼吁DC漫威合作联动以抵抗疫情
2020/04/09 欧美动漫
PHP 常用的header头部定义汇总
2015/06/19 PHP
PHP用mb_string函数库处理与windows相关中文字符及Win环境下开启PHP Mb_String方法
2015/11/11 PHP
laravel 之 Eloquent 模型修改器和序列化示例
2019/10/17 PHP
php 的多进程操作实践案例分析
2020/02/28 PHP
基于Asp.net与Javascript控制的日期控件
2010/05/22 Javascript
获取offsetTop和offsetLeft值的js代码(兼容)
2013/04/16 Javascript
使用JavaScript修改浏览器URL地址栏的实现代码
2013/10/21 Javascript
Javascript 多浏览器兼容总结(实战经验)
2013/10/30 Javascript
解决用jquery load加载页面到div时,不执行页面js的问题
2014/02/22 Javascript
JS父页面与子页面相互传值方法
2014/03/05 Javascript
jQuery实现鼠标划过展示大图的方法
2015/03/09 Javascript
AngualrJS中的Directive制作一个菜单
2016/01/26 Javascript
JS简单获取及显示当前时间的方法
2016/08/03 Javascript
基于js实现二级下拉联动
2016/12/17 Javascript
轻松理解vue的双向数据绑定问题
2017/10/30 Javascript
用node-webkit把web应用打包成桌面应用(windows环境)
2018/02/01 Javascript
微信小程序实现列表的横向滑动方式
2020/07/15 Javascript
Python算法应用实战之栈详解
2017/02/04 Python
python登录并爬取淘宝信息代码示例
2017/12/09 Python
python删除某个字符
2018/03/19 Python
python破解zip加密文件的方法
2018/05/31 Python
PyQt5创建一个新窗口的实例
2019/06/20 Python
使用python的pandas为你的股票绘制趋势图
2019/06/26 Python
pytorch中的transforms模块实例详解
2019/12/31 Python
python 6种方法实现单例模式
2020/12/15 Python
全球在线商店:BerryLook
2019/04/14 全球购物
应用化学专业职业生涯规划书
2014/01/22 职场文书
20年同学聚会感言
2014/02/03 职场文书
核心价值观演讲稿
2014/05/13 职场文书
在职党员进社区活动总结
2014/07/05 职场文书
看上去很美观后感
2015/06/10 职场文书
安全教育第一课观后感
2015/06/17 职场文书
《狮子和鹿》教学反思
2016/02/16 职场文书
《失物招领》教学反思
2016/02/20 职场文书
导游词之山东孔庙
2019/11/04 职场文书