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实现对百度云的文件上传(实例讲解)
Oct 21 Python
Python中sort和sorted函数代码解析
Jan 25 Python
Python3.5面向对象与继承图文实例详解
Apr 24 Python
Python的互斥锁与信号量详解
Sep 12 Python
给我一面国旗 python帮你实现
Sep 30 Python
对pytorch的函数中的group参数的作用介绍
Feb 18 Python
python标准库OS模块函数列表与实例全解
Mar 10 Python
Python Switch Case三种实现方法代码实例
Jun 18 Python
用opencv给图片换背景色的示例代码
Jul 08 Python
Python 调用 ES、Solr、Phoenix的示例代码
Nov 23 Python
python3实现无权最短路径的方法
May 12 Python
python b站视频下载的五种版本
May 27 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 数学运算验证码实现代码
2009/10/11 PHP
php生成随机数的三种方法
2014/09/10 PHP
yii实现图片上传及缩略图生成的方法
2014/12/04 PHP
PHP多态代码实例
2015/06/26 PHP
PHP实现打包下载文件的方法示例
2017/10/07 PHP
PhpStorm2020.1 安装 debug - Postman 调用的详细教程
2020/08/17 PHP
js 文本滚动效果的实例代码
2013/08/17 Javascript
Javascript脚本实现静态网页加密实例代码
2013/11/05 Javascript
JS实现图片高亮展示效果实例
2015/11/24 Javascript
angularJS 如何读写缓冲的方法(推荐)
2016/08/06 Javascript
jQuery获取table下某一行某一列的值实现代码
2017/04/07 jQuery
使用Vue自定义数字键盘组件(体验度极好)
2017/12/19 Javascript
详解Vue源码学习之callHook钩子函数
2018/07/25 Javascript
axios简单实现小程序延时loading指示
2018/07/30 Javascript
微信小程序开发之转发分享功能
2019/10/22 Javascript
JavaScript基于SVG的图片切换效果实例代码
2020/12/15 Javascript
[01:48]帕吉至宝加入游戏,遗迹战场现“千劫神屠”
2018/04/07 DOTA
python爬虫框架scrapy实现模拟登录操作示例
2018/08/02 Python
朴素贝叶斯Python实例及解析
2018/11/19 Python
用Cython加速Python到“起飞”(推荐)
2019/08/01 Python
python GUI库图形界面开发之PyQt5中QMainWindow, QWidget以及QDialog的区别和选择
2020/02/26 Python
Python实现查找数据库最接近的数据
2020/06/08 Python
微信浏览器取消缓存的方法
2015/03/28 HTML / CSS
canvas探照灯效果的示例代码
2018/11/30 HTML / CSS
精油和天然健康美容产品:Art Naturals
2018/01/27 全球购物
印尼在线购买隐形眼镜网站:Lensza.co.id
2019/04/27 全球购物
StubHub美国:购买或出售您的门票
2019/07/09 全球购物
澳大利亚在线购买葡萄酒:The Wine Collective
2020/02/20 全球购物
java程序员面试交流
2012/11/29 面试题
绩效考核实施方案
2014/03/18 职场文书
学校领导班子四风问题整改意见
2014/10/02 职场文书
骨干教师个人总结
2015/02/11 职场文书
盲山观后感
2015/06/11 职场文书
三八节活动简报
2015/07/20 职场文书
vue+springboot实现登录验证码
2021/05/27 Vue.js
Pycharm连接远程服务器并远程调试的全过程
2021/06/24 Python