解决tensorflow测试模型时NotFoundError错误的问题

yipeiwu_com6年前Python基础

错误代码如下:

NotFoundError (see above for traceback): Unsuccessful TensorSliceReader constructor: 

Failed to find any matching files for xxx
……

经查资料分析,错误原因可能出在加载模型时的路径问题。我采用的加载模型方法:

with tf.Session() as sess:
  print("Reading checkpoints...")
  ckpt = tf.train.get_checkpoint_state(logs_train_dir)
  if ckpt and ckpt.model_checkpoint_path:
   global_step = ckpt.model_checkpoint_path.split('/')                              [-1].split('-')[-1]
   saver.restore(sess, ckpt.model_checkpoint_path)
   print('Loading success, global_step is %s' % global_step)
  else:
   print('No checkpoint file found')

在保存模型时,采用的方法为

saver = tf.train.Saver()
……
……
……
if step % 1000 == 0 or (step + 1) == MAX_STEP:
 checkpoint_path = os.path.join(logs_train_dir, './model.ckpt')
 saver.save(sess, checkpoint_path, global_step=step)

注意代码块中的./model.ckpt,这是关键,原来为model.ckpt就会报错。如果在加载模型时采用直接加载模型文件的方法,则:

改之前代码:

saver.restore(sess,'model.ckpt')

改之后的代码:

saver.restore(sess,'./model.ckpt')

我的改之后是没有什么问题了,如果这种方法不能解决你的问题,再查资料解决吧

以上这篇解决tensorflow测试模型时NotFoundError错误的问题就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

详解Python字符串切片

详解Python字符串切片

在python中,我们定义好一个字符串,如下所示。 在python中定义个字符串然后把它赋值给一个变量。 我们可以通过下标访问单个的字符,跟所有的语言一样,下标从0开始(==,我自己...

python基于pdfminer库提取pdf文字代码实例

安装pdfminer 库 windows 下安装pdfminer3k pip install pdfminer3k Liunx 下安装pdfminer pip install...

Python中使用MELIAE分析程序内存占用实例

写的dht协议搜索的程序,这几天优化了一下发现速度确实快了好多。但是出现了一个新的问题,内存直接飙升,我开了十个爬虫占用内存800m。开始我以为是节点太多了,找了几个小问题修改一下,发现...

python批量修改文件夹及其子文件夹下的文件内容

python批量修改文件夹及其子文件夹下的文件内容

前言:前几天我看一位同学要修改很多文件中的数据,该文件数据很规律,一行只有三个数,需要将每行最后一个数字改为负数,但文件有上千个,分布在每个文件夹下面以及它的多级子文件夹下,看他用exc...

python requests指定出口ip的例子

爬虫需要,一个机器多个口,一个口多个ip,为轮询这些ip demo #coding=utf-8 import requests,sys,socket from requests_to...