tensorflow获取预训练模型某层参数并赋值到当前网络指定层方式


Posted in Python onJanuary 24, 2020

已经有了一个预训练的模型,我需要从其中取出某一层,把该层的weights和biases赋值到新的网络结构中,可以使用tensorflow中的pywrap_tensorflow(用来读取预训练模型的参数值)结合Session.assign()进行操作。

这种需求即预训练模型可能为单分支网络,当前网络为多分支,我需要把单分支A复用到到多个分支去(B,C,D)。

tensorflow获取预训练模型某层参数并赋值到当前网络指定层方式

先导入对应的工具包

from tensorflow.python import pywrap_tensorflow

接下来的操作在一个tf.Session中进行

reader = pywrap_tensorflow.NewCheckpointReader(pre_train_model_path)

# 获取当前图可训练变量
trainable_variables = tf.trainable_variables()
# 需要赋值的当前网络层变量,这里只是随便起的名字。
restore_v_target_name = "fc_target"
# 需要的预训练模型中的某层的名字
restore_v_source_name = "fc_source"
for v in trainable_variables:
  if restore_v_target_name == v.name:
   # 回复weights和biases
    sess.run(
      tf.assign(v, reader.get_tensor(restore_v_source_name + "/weights"))) if "weights" in v.name else sess.run(
      tf.assign(v, reader.get_tensor(restore_v_source_name + "/biases")))

以上这篇tensorflow获取预训练模型某层参数并赋值到当前网络指定层方式就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python字典序问题实例
Sep 26 Python
Python 比较两个数组的元素的异同方法
Aug 17 Python
利用python操作SQLite数据库及文件操作详解
Sep 22 Python
python实现对excel进行数据剔除操作实例
Dec 07 Python
jupyter notebook引用from pyecharts.charts import Bar运行报错
Apr 23 Python
tensorflow saver 保存和恢复指定 tensor的实例讲解
Jul 26 Python
如何使用Python进行OCR识别图片中的文字
Apr 01 Python
python实现socket+threading处理多连接的方法
Jul 23 Python
对python中 math模块下 atan 和 atan2的区别详解
Jan 17 Python
通过python检测字符串的字母
Feb 18 Python
在python中logger setlevel没有生效的解决
Feb 21 Python
关于Numpy之repeat、tile的用法总结
Jun 02 Python
keras获得某一层或者某层权重的输出实例
Jan 24 #Python
浅谈keras的深度模型训练过程及结果记录方式
Jan 24 #Python
关于Keras模型可视化教程及关键问题的解决
Jan 24 #Python
基于keras 模型、结构、权重保存的实现
Jan 24 #Python
Python 文件数据读写的具体实现
Jan 24 #Python
利用keras加载训练好的.H5文件,并实现预测图片
Jan 24 #Python
keras模型可视化,层可视化及kernel可视化实例
Jan 24 #Python
You might like
PHP 读取文件内容代码(txt,js等)
2009/12/06 PHP
PHP 文件系统详解
2012/09/13 PHP
如何批量替换相对地址为绝对地址(利用bat批处理实现)
2013/05/27 PHP
php计算2个日期的差值函数分享
2015/02/02 PHP
Windows下编译PHP5.4和xdebug全记录
2015/04/03 PHP
laravel orm 关联条件查询代码
2019/10/21 PHP
超级兔子让浮动层消失的前因后果
2007/03/09 Javascript
B/S开发中常用javaScript技术与代码
2007/03/09 Javascript
深入理解JavaScript作用域和作用域链
2011/10/21 Javascript
ExtJs设置GridPanel表格文本垂直居中示例
2013/07/15 Javascript
JavaScript实现点击自动选择TextArea文本的方法
2015/07/02 Javascript
Clipboard.js 无需Flash的JavaScript复制粘贴库
2015/10/02 Javascript
jQuery基本过滤选择器用法示例
2016/09/09 Javascript
BootStrap中
2016/12/10 Javascript
webpack配置文件和常用配置项介绍
2017/04/28 Javascript
详解利用jsx写vue组件的方法示例
2017/07/17 Javascript
addeventlistener监听scroll跟touch(实例讲解)
2017/08/04 Javascript
JavaSctit 利用FileReader和滤镜上传图片预览功能
2017/09/05 Javascript
详解用Node.js写一个简单的命令行工具
2018/03/01 Javascript
基于Axios 常用的请求方法别名(详解)
2018/03/13 Javascript
详解Axios统一错误处理与后置
2018/09/26 Javascript
详解Vue项目中实现锚点定位
2019/04/24 Javascript
layui 富文本图片上传接口与普通按钮 文件上传接口的例子
2019/09/23 Javascript
微信小程序 行的删除和增加操作实现详解
2019/09/29 Javascript
python实现在windows下操作word的方法
2015/04/28 Python
Python连接DB2数据库
2016/08/27 Python
pytorch使用 to 进行类型转换方式
2020/01/08 Python
Python3如何在服务器打印资产信息
2020/08/27 Python
python 代码运行时间获取方式详解
2020/09/18 Python
html5使用html2canvas实现浏览器截图的示例
2017/08/31 HTML / CSS
Nobody Denim官网:购买高级女士牛仔裤
2021/03/15 全球购物
银行求职信范文怎么写
2015/03/20 职场文书
选调生挂职锻炼工作总结
2015/10/23 职场文书
2016医师资格考试考生诚信考试承诺书
2016/03/25 职场文书
python Polars库的使用简介
2021/04/21 Python
WebRTC记录音视频流(web技术分享)
2022/02/24 Javascript