Tensorflow: 从checkpoint文件中读取tensor方式

在使用pre-train model时候,我们需要restore variables from checkpoint files.

经常出现在checkpoint 中找不到”Tensor name not found”.

这时候需要查看一下ckpt中到底有哪些变量

import os
from tensorflow.python import pywrap_tensorflow

checkpoint_path = os.path.join(model_dir, "model.ckpt")
# Read data from checkpoint file
reader = pywrap_tensorflow.NewCheckpointReader(checkpoint_path)
var_to_shape_map = reader.get_variable_to_shape_map()
# Print tensor name and values
for key in var_to_shape_map:
 print("tensor_name: ", key)
 print(reader.get_tensor(key))

可以显示ckpt中的tensor名字和值,当然也可以用pycharm调试。

以上这篇Tensorflow: 从checkpoint文件中读取tensor方式就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持我们。

(0)

相关推荐

  • tensorflow实现训练变量checkpoint的保存与读取

    1.保存变量 先创建(在tf.Session()之前)saver saver = tf.train.Saver(tf.global_variables(),max_to_keep=1) #max_to_keep这个保证只保存最后一次training的训练数据 然后在训练的循环里面 checkpoint_path = os.path.join(Path, 'model.ckpt') saver.save(session, checkpoint_path, global_step=step) #这里

  • Tensorflow中使用tfrecord方式读取数据的方法

    前言 本博客默认读者对神经网络与Tensorflow有一定了解,对其中的一些术语不再做具体解释.并且本博客主要以图片数据为例进行介绍,如有错误,敬请斧正. 使用Tensorflow训练神经网络时,我们可以用多种方式来读取自己的数据.如果数据集比较小,而且内存足够大,可以选择直接将所有数据读进内存,然后每次取一个batch的数据出来.如果数据较多,可以每次直接从硬盘中进行读取,不过这种方式的读取效率就比较低了.此篇博客就主要讲一下Tensorflow官方推荐的一种较为高效的数据读取方式--tfre

  • TensorFlow Saver:保存和读取模型参数.ckpt实例

    在使用TensorFlow的过程中,保存模型参数变量是很重要的一个环节,既可以保证训练过程信息不丢失,也可以帮助我们在需要快速恢复或使用一个模型的时候,利用之前保存好的参数之间导入,可以节省大量的训练时间.本文通过最简单的例程教大家如何保存和读取.ckpt文件. 一.保存到文件 首先是导入必要的东西: import tensorflow as tf import numpy as np 随便写几个变量: # Save to file # remember to define the same d

  • 初探TensorFLow从文件读取图片的四种方式

    本文记录一下TensorFLow的几种图片读取方法,官方文档有较为全面的介绍. 1.使用gfile读图片,decode输出是Tensor,eval后是ndarray import matplotlib.pyplot as plt import tensorflow as tf import numpy as np print(tf.__version__) image_raw = tf.gfile.FastGFile('test/a.jpg','rb').read() #bytes img =

  • TensorFlow实现从txt文件读取数据

    TensorFlow从txt文件中读取数据的方法很多有种,我比较常用的是下面两种: [1]np.loadtxt import numpy as np data=np.loadtxt('ex1data1.txt',dtype='float',delimiter=',') X_train=data[:,0] y_train=data[:,1] [2]pd.read_csv import pandas as pd data=pd.read_csv("ex2data2.txt",names=[

  • 详解Tensorflow数据读取有三种方式(next_batch)

    Tensorflow数据读取有三种方式: Preloaded data: 预加载数据 Feeding: Python产生数据,再把数据喂给后端. Reading from file: 从文件中直接读取 这三种有读取方式有什么区别呢? 我们首先要知道TensorFlow(TF)是怎么样工作的. TF的核心是用C++写的,这样的好处是运行快,缺点是调用不灵活.而Python恰好相反,所以结合两种语言的优势.涉及计算的核心算子和运行框架是用C++写的,并提供API给Python.Python调用这些A

  • tensorflow实现读取模型中保存的值 tf.train.NewCheckpointReader

    使用tf.trian.NewCheckpointReader(model_dir) 一个标准的模型文件有一下文件, model_dir就是MyModel(没有后缀) checkpoint Model.meta Model.data-00000-of-00001 Model.index import tensorflow as tf import pprint # 使用pprint 提高打印的可读性 NewCheck =tf.train.NewCheckpointReader("model&quo

  • Tensorflow: 从checkpoint文件中读取tensor方式

    在使用pre-train model时候,我们需要restore variables from checkpoint files. 经常出现在checkpoint 中找不到"Tensor name not found". 这时候需要查看一下ckpt中到底有哪些变量 import os from tensorflow.python import pywrap_tensorflow checkpoint_path = os.path.join(model_dir, "model.

  • tensorflow模型的save与restore,及checkpoint中读取变量方式

    创建一个NN import tensorflow as tf import numpy as np #fake data x = np.linspace(-1, 1, 100)[:, np.newaxis] #shape(100,1) noise = np.random.normal(0, 0.1, size=x.shape) y = np.power(x, 2) + noise #shape(100,1) + noise tf_x = tf.placeholder(tf.float32, x.

  • Tensorflow 如何从checkpoint文件中加载变量名和变量值

    假设你已经经过上千次的迭代,并且得到了以下模型: 则从这些checkpoint文件中加载变量名和变量值代码如下: model_dir = './ckpt-182802' import tensorflow as tf from tensorflow.python import pywrap_tensorflow reader = pywrap_tensorflow.NewCheckpointReader(model_dir) var_to_shape_map = reader.get_varia

  • 查看TensorFlow checkpoint文件中的变量名和对应值方法

    实例如下所示: from tensorflow.python import pywrap_tensorflow checkpoint_path = os.path.join(model_dir, "model.ckpt") reader = pywrap_tensorflow.NewCheckpointReader(checkpoint_path) var_to_shape_map = reader.get_variable_to_shape_map() for key in var_

  • tensorflow实现从.ckpt文件中读取任意变量

    思路有些混乱,希望大家能理解我的意思. 看了faster rcnn的tensorflow代码,关于fix_variables的作用我不是很明白,所以写了以下代码,读取了预训练模型vgg16得fc6和fc7的参数,以及faster rcnn中heat_to_tail中的fc6和fc7,将它们做了对比,发现结果不一样,说明vgg16的fc6和fc7只是初始化了faster rcnn中heat_to_tail中的fc6和fc7,之后后者被训练. 具体读取任意变量的代码如下: import tensor

  • C++从txt文件中读取二维的数组方法

    此文章用来做笔记, 从MATLAB中保存的二维数组1500*2的数据到txt文件中,格式化保存方式如下: MATLAB代码: fid=fopen('data.txt','wt'); for i=1:1500 fprintf(fid,'%.3f\t%.3f\n',r(i,:)); end fclose(fid); 其中r是1500*2的矩阵 在C++中读取到程序中,使用文件流: #include<iostream> #include<fstream> #include<type

  • TensorFlow实现checkpoint文件转换为pb文件

    由于项目需要,需要将TensorFlow保存的模型从ckpt文件转换为pb文件. import os from tensorflow.python import pywrap_tensorflow from net2use import inception_resnet_v2_small#这里使用自己定义的模型函数即可 import tensorflow as tf if __name__=='__main__': pb_file = "./model/output.pb" ckpt_

  • java从文件中读取数据的六种方法

    目录 1.Scanner 2.Files.lines (Java 8) 3.Files.readAllLines(java8) 4.Files.readString(JDK 11) 5.Files.readAllBytes() 6.经典管道流的方式 本文主要介绍了java从文件中读取数据的六种方法,分享给大家,具体如下: Scanner(Java 1.5) 按行读数据及String.Int类型等按分隔符读数据. Files.lines, 返回Stream(Java 8) 流式数据处理,按行读取

  • Perl从文件中读取字符串的两种实现方法

    1. 一次性将文件中的所有内容读入一个数组中(该方法适合小文件): 复制代码 代码如下: open(FILE,"filename")||die"can not open the file: $!";@filelist=<FILE>; foreach $eachline (@filelist) {        chomp $eachline;}close FILE;@filelist=<FILE>; 当文件很大时,可能会出现"out

  • Python3实现从文件中读取指定行的方法

    本文实例讲述了Python3实现从文件中读取指定行的方法.分享给大家供大家参考.具体实现方法如下: # Python的标准库linecache模块非常适合这个任务 import linecache the_line = linecache.getline('d:/FreakOut.cpp', 222) print (the_line) # linecache读取并缓存文件中所有的文本, # 若文件很大,而只读一行,则效率低下. # 可显示使用循环, 注意enumerate从0开始计数,而line

随机推荐