Tensorflow 踩的坑(一)-程序员宅基地

技术标签: python  

上午,准备将一个数据集编码成TFrecord 格式。然后,总是报错,下面这个bug一直无法解决,无论是Google,还是github。出现乱码,提示:

Invalid argument: Could not parse example input, value ‘#######’

这个好像牛头不对马嘴,出现在控制台上最后的提示是:

OutOfRangeError (see above for traceback): RandomShuffleQueue '_2_shuffle_batch/random_shuffle_queue' is closed and has insufficient elements (requested 1, current size 0) [[Node: shuffle_batch = QueueDequeueManyV2[component_types=[DT_UINT8, DT_UINT8],

这个博客OutOfRangeError : RandomShuffleQueue '_1_shuffle_batch/random_shuffle_queue' is closed说,可能是tf.train.shuffle_batch()函数中参数num_threads的原因。于是,我就将这个改成了64,128。线程多了,电脑一下子死机了,中间还不断输出乱码。

这个给我提醒了一下,可能是因为文件输入来不及读取完全的缘故。而我处理的文件是遥感图片tiff,一个图片(5000,5000,3),一张图片大概是72M大小。于是我裁剪了图片(900,900,3),然后程序运行良好。


算是一个坑吧,网上没找到相关记录,记录下,看到的人少走弯路吧~



输入大文件的时候,完整报错如下:

2018-06-03 14:50:15.765894: W c:\l\tensorflow_1501907206084\work\tensorflow-1.2.1\tensorflow\core\platform\cpu_feature_guard.cc:45] The TensorFlow library wasn't compiled to use SSE instructions, but these are available on your machine and could speed up CPU computations.
2018-06-03 14:50:15.766269: W c:\l\tensorflow_1501907206084\work\tensorflow-1.2.1\tensorflow\core\platform\cpu_feature_guard.cc:45] The TensorFlow library wasn't compiled to use SSE2 instructions, but these are available on your machine and could speed up CPU computations.
2018-06-03 14:50:15.766605: W c:\l\tensorflow_1501907206084\work\tensorflow-1.2.1\tensorflow\core\platform\cpu_feature_guard.cc:45] The TensorFlow library wasn't compiled to use SSE3 instructions, but these are available on your machine and could speed up CPU computations.
2018-06-03 14:50:15.767003: W c:\l\tensorflow_1501907206084\work\tensorflow-1.2.1\tensorflow\core\platform\cpu_feature_guard.cc:45] The TensorFlow library wasn't compiled to use SSE4.1 instructions, but these are available on your machine and could speed up CPU computations.
2018-06-03 14:50:15.767453: W c:\l\tensorflow_1501907206084\work\tensorflow-1.2.1\tensorflow\core\platform\cpu_feature_guard.cc:45] The TensorFlow library wasn't compiled to use SSE4.2 instructions, but these are available on your machine and could speed up CPU computations.
2018-06-03 14:50:17.411339: W c:\l\tensorflow_1501907206084\work\tensorflow-1.2.1\tensorflow\core\framework\op_kernel.cc:1158] Invalid argument: Could not parse example input, value: '
���/
���
    label_raw���
���
��������������������������������������
Traceback (most recent call last):
  File "D:\Anaconda3\lib\site-packages\tensorflow\python\client\session.py", line 1139, in _do_call
    return fn(*args)
  File "D:\Anaconda3\lib\site-packages\tensorflow\python\client\session.py", line 1121, in _run_fn
    status, run_metadata)
  File "D:\Anaconda3\lib\contextlib.py", line 66, in __exit__
    next(self.gen)
  File "D:\Anaconda3\lib\site-packages\tensorflow\python\framework\errors_impl.py", line 466, in raise_exception_on_not_ok_status
    pywrap_tensorflow.TF_GetCode(status))
tensorflow.python.framework.errors_impl.OutOfRangeError: RandomShuffleQueue '_2_shuffle_batch/random_shuffle_queue' is closed and has insufficient elements (requested 1, current size 0)
     [[Node: shuffle_batch = QueueDequeueManyV2[component_types=[DT_UINT8, DT_UINT8], timeout_ms=-1, _device="/job:localhost/replica:0/task:0/cpu:0"](shuffle_batch/random_shuffle_queue, shuffle_batch/n)]]

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "E:/experiment/01_try/MLStudy/CAN_Seg/makedataset.py", line 130, in <module>
    i, l = sess.run([images, labels])  # 在会话中取出image和label
  File "D:\Anaconda3\lib\site-packages\tensorflow\python\client\session.py", line 789, in run
    run_metadata_ptr)
  File "D:\Anaconda3\lib\site-packages\tensorflow\python\client\session.py", line 997, in _run
    feed_dict_string, options, run_metadata)
  File "D:\Anaconda3\lib\site-packages\tensorflow\python\client\session.py", line 1132, in _do_run
    target_list, options, run_metadata)
  File "D:\Anaconda3\lib\site-packages\tensorflow\python\client\session.py", line 1152, in _do_call
    raise type(e)(node_def, op, message)
2018-06-03 14:50:18.943971: W c:\l\tensorflow_1501907206084\work\tensorflow-1.2.1\tensorflow\core\framework\op_kernel.cc:1158] Invalid argument: Could not parse example input, value: '
���/
���
    label_raw���
���
���
tensorflow.python.framework.errors_impl.OutOfRangeError: RandomShuffleQueue '_2_shuffle_batch/random_shuffle_queue' is closed and has insufficient elements (requested 1, current size 0)
     [[Node: shuffle_batch = QueueDequeueManyV2[component_types=[DT_UINT8, DT_UINT8], timeout_ms=-1, _device="/job:localhost/replica:0/task:0/cpu:0"](shuffle_batch/random_shuffle_queue, shuffle_batch/n)]]

Caused by op 'shuffle_batch', defined at:
  File "E:/experiment/01_try/MLStudy/CAN_Seg/makedataset.py", line 123, in <module>
    images, labels = get_batch(filename_queue, batch_size=1)
  File "E:/experiment/01_try/MLStudy/CAN_Seg/makedataset.py", line 82, in get_batch
    capacity=10, min_after_dequeue=7)
  File "D:\Anaconda3\lib\site-packages\tensorflow\python\training\input.py", line 1217, in shuffle_batch
    name=name)
  File "D:\Anaconda3\lib\site-packages\tensorflow\python\training\input.py", line 788, in _shuffle_batch
    dequeued = queue.dequeue_many(batch_size, name=name)
  File "D:\Anaconda3\lib\site-packages\tensorflow\python\ops\data_flow_ops.py", line 457, in dequeue_many
    self._queue_ref, n=n, component_types=self._dtypes, name=name)
  File "D:\Anaconda3\lib\site-packages\tensorflow\python\ops\gen_data_flow_ops.py", line 946, in _queue_dequeue_many_v2
    timeout_ms=timeout_ms, name=name)
  File "D:\Anaconda3\lib\site-packages\tensorflow\python\framework\op_def_library.py", line 767, in apply_op
    op_def=op_def)
  File "D:\Anaconda3\lib\site-packages\tensorflow\python\framework\ops.py", line 2506, in create_op
    original_op=self._default_original_op, op_def=op_def)
  File "D:\Anaconda3\lib\site-packages\tensorflow\python\framework\ops.py", line 1269, in __init__
    self._traceback = _extract_stack()

OutOfRangeError (see above for traceback): RandomShuffleQueue '_2_shuffle_batch/random_shuffle_queue' is closed and has insufficient elements (requested 1, current size 0)
     [[Node: shuffle_batch = QueueDequeueManyV2[component_types=[DT_UINT8, DT_UINT8], timeout_ms=-1, _device="/job:localhost/replica:0/task:0/cpu:0"](shuffle_batch/random_shuffle_queue, shuffle_batch/n)]]

转载于:https://www.cnblogs.com/blog4ljy/p/9129285.html

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/weixin_30832983/article/details/99029026

智能推荐

Go: go get 获取第三方库【国内gopm】_go get github-程序员宅基地

文章浏览阅读4.1k次。因为网络问题,常常拉不下来(github上的一般能拿下来),所以用国内的一个工具来获取第三方库.gopm:https://gopm.io/1. 拿 github上的包:(前提是安装git)go get -u github.com/gpmgo/gopm稍微等一会儿,然后就可以看到它为我做了几件事:在GOPATH下生成了E:\GoProjects\src\gi..._go get github

一文读懂“大语言模型”_大语言模型相关ppt-程序员宅基地

文章浏览阅读1.2w次,点赞45次,收藏262次。深度学习是机器学习的分支,大语言模型是深度学习的分支。机器学习是人工智能(AI)的一个子领域,它的核心是让计算机系统能够通过对数据的学习来提高性能。在机器学习中,我们不是直接编程告诉计算机如何完成任务,而是提供大量的数据,让机器通过数据找出隐藏的模式或规律,然后用这些规律来预测新的、未知的数据。深度学习是机器学习的一个子领域,它尝试模拟人脑的工作方式,创建所谓的人工神经网络来处理数据。这些神经网络包含多个处理层,因此被称为“深度”学习。_大语言模型相关ppt

python 安装 .whl 文件(仅提供解决办法)_cryptography-42.0.5-cp37-abi3-win_amd64.whl-程序员宅基地

文章浏览阅读2.9k次,点赞3次,收藏8次。python 安装.whl文件(针对No module named "xxxx.pep425tags"问题)_cryptography-42.0.5-cp37-abi3-win_amd64.whl

Java Spring Cloud Alibaba-Nacos 注册中心:(六)Nacos Discovery 对外暴露的 Endpoint_nacos discovery endpoint-程序员宅基地

文章浏览阅读3.6k次。Nacos Discovery 对外暴露的 Endpoint1.给项目添加依赖2.修改配置文件3.查询效果Nacos Discovery 内部提供了一个 Endpoint, 对应的 endpoint id 为 nacos-discovery。我们通过该 Endpoint,能获取到:当前服务有哪些服务订阅者 ;当前应用 Nacos 的基础配置信息 ;1.给项目添加依赖假设我们想看服务提供者(provider)有那些订阅者,以及 Nacos 的基础配置信息。我们就需要给 provider 项目_nacos discovery endpoint

java Compiler API (java编译api)-程序员宅基地

文章浏览阅读1.3w次,点赞20次,收藏53次。在早期的版本中(Java SE5及以前版本)中只能通过tools.jar中的com.sun.tools.javac包来调用Java编译器,但由于tools.jar不是标准的Java库,在使用时必须要设置这个jar的路径。而在Java SE6中为我们提供了标准的包来操作Java编译器,这就是javax.tools包。编译java文件使用Java API来编译Java源代码有非常多方法,目前让..._java compiler api

matlab绘制球面模型_MATLAB采用surf/surfc/surfl/surfnorm绘制球体-程序员宅基地

文章浏览阅读2.1k次。利用绘制球体sphere(n),展示了MATLAB中的surf,surfc,surfl,surfnorm,surface五个绘图命令。启动MATLAB,新建脚本(Ctrl+N),输入如下代码:close all; clear all; clcn=20;[x,y,z]=sphere(n);figure(1);surf(x,y,z);axis equalfigure(2);surfc(x,y,z);a..._利用sphere(n)产生绘制球面数据,其中的n取值为学号后两位(若后两位小于等于5,需要

随便推点

Linux命令大全(非常详细)从零基础入门到精通,看完这一篇就够了_linux系统基本操作命令-程序员宅基地

文章浏览阅读6k次,点赞10次,收藏81次。网络安全行业产业以来,随即新增加了几十个网络安全行业岗位︰网络安全专家、网络安全分析师、安全咨询师、网络安全工程师、安全架构师、安全运维工程师、渗透工程师、信息安全管理员、数据安全工程师、网络安全运营工程师、网络安全应急响应工程师、数据鉴定师、网络安全产品经理、网络安全服务工程师、网络安全培训师、网络安全审计员、威胁情报分析工程师、灾难恢复专业人员、实战攻防专业人员…最常用的打包命令是 tar,使用 tar 程序打出来的包我们常称为 tar 包,tar 包文件的命令通常都是以 .tar 结尾的。_linux系统基本操作命令

NoSQL注入基础及思路_nosql sql注入-程序员宅基地

文章浏览阅读1.2k次,点赞23次,收藏26次。本篇介绍了NoSQL注入的基础以及思路,详细内容包含了、NoSQL1、为什么使用NoSQL2、RDBMS与NoSQL区别3、NoSQL产品4、NoSQL 数据库分类-、MongoDB1、认识MongoDB2、MongoDB特性3、MongoDB工作方式4、MongoDB缺陷5、MongoDB基本概念数据库Database7、文档Document8、集合Collection三、MongoDB基本操作1、数据库操作2、集合操作3、文档操作4、Where语句比较四、Mon等内容_nosql sql注入

2023年09月CCF-GESP编程能力等级认证Scratch图形化编程二级真题解析_我国第一台大型通用电子计算机使用的逻辑部件是( ) 。-程序员宅基地

文章浏览阅读124次。我国第一台大型通用电子计算机使用的逻辑部件是( )。A:集成电路B:大规模集成电路C:晶体管D:电子管。_我国第一台大型通用电子计算机使用的逻辑部件是( ) 。

tp文件上传到服务器,tp文件上传到远程服务器-程序员宅基地

文章浏览阅读399次。tp文件上传到远程服务器 内容精选换一换为加强对系统数据的容灾管理,云堡垒机支持配置日志备份,提高审计数据安全性和系统可扩展性。本小节主要介绍如何在系统配置FTP/SFTP服务器参数,将日志远程备份至FTP/SFTP服务器。开启远程备份后,系统默认在每天零点备份前一天的系统数据。以天为单位自动备份,生成日志文件,并上传到FTP/SFTP服务器相应路径。服务器同一路径下,不能重复以昇腾模型压缩工具的..._tp6上传远程服务器

解题报告 (十三) 尺取法_尺取法课后作业 答 题 卡 上 一 题 下 一 题 2. k13629 字符计数 题目描述 给定一-程序员宅基地

文章浏览阅读2.8w次,点赞2次,收藏7次。解题报告 破折号 最简单的算法_尺取法课后作业 答 题 卡 上 一 题 下 一 题 2. k13629 字符计数 题目描述 给定一

北京理工大学计算机学院张教授,张子剑_北京理工大学计算机学院-程序员宅基地

文章浏览阅读490次。代表性学术成果1.Yiwei Liu, Jiamou Liu, Zijian Zhang, Liehuang Zhu, Ansheng Li. REM: From Structural Entropy To Community Structure Deception. NeurIPS 2019, Accepted, Vancouver, Canada.2.Liehuang Zhu, Meng ..._rem: from structural entropy to community structure deception