Tensorflow读取并输出已保存模型的权重数值方式

yipeiwu_com6年前Python基础

这篇文章是为了对网络模型的权重输出,可以用来转换成其他框架的模型。

import tensorflow as tf
from tensorflow.python import pywrap_tensorflow

#首先,使用tensorflow自带的python打包库读取模型
model_reader = pywrap_tensorflow.NewCheckpointReader(r"model.ckpt")

#然后,使reader变换成类似于dict形式的数据
var_dict = model_reader.get_variable_to_shape_map()

#最后,循环打印输出
for key in var_dict:
  print("variable name: ", key)
  print(model_reader.get_tensor(key))

结果(其中一个权重的示例)

........
variable name: InceptionV3/Mixed_7c/Branch_3/Conv2d_0b_1x1/weights
[[[[ 0.00013783 -0.00251428 0.02235526 ... -0.01409702 0.00340105
  -0.00752808]
  [ 0.01590012 -0.00258413 -0.00627338 ... -0.03600493 0.01220086
  -0.01254225]
  [-0.02394262 -0.00764508 -0.00895328 ... -0.01731405 0.03568469
   0.00918952]
  ...
  [-0.01865693 -0.00358359 -0.02342288 ... 0.00935838 0.00367858
  -0.00976252]
  [ 0.01297642 0.00223457 0.00652326 ... -0.00762609 -0.0136022
  -0.01129473]
  [-0.01395879 -0.00920246 0.01061887 ... 0.0236958  0.00041993
  -0.01291134]]]]
......

以上这篇Tensorflow读取并输出已保存模型的权重数值方式就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

python 实现简单的FTP程序

python 实现简单的FTP程序

FTP即文件传输协议;它基于客户机-服务器模型体系结构,应用广泛。它有两个通道:一个命令通道和一个数据通道。命令通道用于控制通信,数据通道用于文件的实际传输。使用FTP可以做很多事情,比...

Python使用CMD模块更优雅的运行脚本

本文实例讲述了Python使用CMD模块更优雅的运行脚本的方法。分享给大家供大家参考。具体分析如下: 平时由于经常给测试人员调试一些东西,虽然写了一些脚本,感觉还是不方便。 python...

python+selenium打印当前页面的titl和url方法

dr.title //获取页面title dr.current_url // 获取页面url 代码如下: from selenium import webdriver dr = w...

Python进阶:生成器 懒人版本的迭代器详解

从容器、可迭代对象谈起 所有的容器都是可迭代的(iterable),迭代器提供了一个next方法。iter()返回一个迭代器,通过next()函数可以实现遍历。 def is_it...

Python箱型图处理离群点的例子

Python箱型图处理离群点的例子

首先我们简单地区分一下离群点(outlier)以及异常值(anomaly): 离群点: 异常值: 个人觉着异常值和离群点是两个不同的概念,当然大家在数据预处理时对于这两个概念不做细致...