tensorflow 加载部分变量的实例讲解


Posted in Python onJuly 27, 2018

tensorflow模型保存为saver = tf.train.Saver()函数,saver.save()保存模型,代码如下:

import tensorflow as tf
 
v1= tf.Variable(tf.random_normal([784, 200], stddev=0.35), name="v1")
v2= tf.Variable(tf.zeros([200]), name="v2")
saver = tf.train.Saver()
with tf.Session() as sess:
 init_op = tf.global_variables_initializer()
 sess.run(init_op)
 saver.save(sess,"checkpoint/model_test",global_step=1)

当我们保存模型后,我们可以通过saver.restore()来加载模型,初始化变量:

import tensorflow as tf
 
v1= tf.Variable(tf.random_normal([784, 200], stddev=0.35), name="v1")
v2= tf.Variable(tf.zeros([200]), name="v2")
saver = tf.train.Saver()
with tf.Session() as sess:
 # init_op = tf.global_variables_initializer()
 # sess.run(init_op)
 saver.restore(sess, "checkpoint/model_test-1")
 # saver.save(sess,"checkpoint/model_test",global_step=1)

神经网络训练时,有时候我们需要从预训练的模型中加载部分参数,初始化当前模型,例如加入CNN有6层,我们需要从已有的模型初始化CNN前5层参数.这可以通过saver.restore()实现.

之前我们已经介绍可以通过tf.train.Saver()的保存部分变量的方法,即需要保存的变量列表,同样的,在变量初始化的时候,我们可以对需要单独初始化的变量分别定义一个tf.train.Saver()函数,这样就可以单独对该部分变量初始化,例如下面代码,saver1用于初始化变量v1,saver2用于初始化变量v2,v3:

import tensorflow as tf
 
v1= tf.Variable(tf.random_normal([784, 200], stddev=0.35), name="v1")
v2= tf.Variable(tf.zeros([200]), name="v2")
v3= tf.Variable(tf.zeros([100]), name="v3")
#saver = tf.train.Saver()
saver1 = tf.train.Saver([v1])
saver2 = tf.train.Saver([v2]+[v3])
with tf.Session() as sess:
 # init_op = tf.global_variables_initializer()
 # sess.run(init_op)
 saver1.restore(sess, "checkpoint/model_test-1")
 saver2.restore(sess, "checkpoint/model_test-1")
 # saver.save(sess,"checkpoint/model_test",global_step=1)

以上这篇tensorflow 加载部分变量的实例讲解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python如何实现远程控制电脑(结合微信)
Dec 21 Python
windows10下python3.5 pip3安装图文教程
Apr 02 Python
python numpy和list查询其中某个数的个数及定位方法
Jun 27 Python
Python multiprocessing多进程原理与应用示例
Feb 28 Python
Python matplotlib学习笔记之坐标轴范围
Jun 28 Python
python opencv实现简易画图板
Aug 27 Python
python/golang 删除链表中的元素
Sep 14 Python
15个应该掌握的Jupyter Notebook使用技巧(小结)
Sep 23 Python
Python内置函数及功能简介汇总
Oct 13 Python
详解Pycharm第三方库的安装及使用方法
Dec 29 Python
关于python中remove的一些坑小结
Jan 04 Python
python读取excel数据并且画图的实现示例
Feb 08 Python
Python基于递归算法求最小公倍数和最大公约数示例
Jul 27 #Python
Python切片操作深入详解
Jul 27 #Python
对Tensorflow中的变量初始化函数详解
Jul 27 #Python
JavaScript中的模拟事件和自定义事件实例分析
Jul 27 #Python
浅谈tensorflow中几个随机函数的用法
Jul 27 #Python
tensorflow 中对数组元素的操作方法
Jul 27 #Python
Python读取excel中的图片完美解决方法
Jul 27 #Python
You might like
php 数组动态添加实现代码(最土团购系统的价格排序)
2011/12/30 PHP
再Docker中架设完整的WordPress站点全攻略
2015/07/29 PHP
Yii隐藏URL中index.php的方法
2016/07/12 PHP
PHP实现的日历功能示例
2018/09/01 PHP
php设计模式之职责链模式定义与用法经典示例
2019/09/19 PHP
javascript实现的网页局布刷新效果
2008/12/01 Javascript
javascript onkeydown,onkeyup,onkeypress,onclick,ondblclick
2009/02/04 Javascript
Javascript模块化编程(三)require.js的用法及功能介绍
2013/01/17 Javascript
检测一个函数是否是JavaScript原生函数的小技巧
2015/03/13 Javascript
JavaScript中数据结构与算法(二):队列
2015/06/19 Javascript
JavaScript中style.left与offsetLeft的使用及区别详解
2016/06/08 Javascript
浅析Javascript ES6新增值比较函数Object.is
2016/08/24 Javascript
js点击任意区域弹出层消失实现代码
2016/12/27 Javascript
JS实现的DIV块来回滚动效果示例
2017/02/07 Javascript
react实现换肤功能的示例代码
2018/08/14 Javascript
微信小程序实现展示评分结果功能
2019/02/15 Javascript
使用vue-cli3新建一个项目并写好基本配置(推荐)
2019/04/24 Javascript
Vue2.0实现简单分页及跳转效果
2019/07/29 Javascript
vue中实现回车键登录功能
2020/02/19 Javascript
JS组件库AlloyTouch实现图片轮播过程解析
2020/05/29 Javascript
python中正则的使用指南
2016/12/04 Python
pandas筛选某列出现编码错误的解决方法
2018/11/07 Python
django框架使用orm实现批量更新数据的方法
2019/06/21 Python
Pandas中resample方法详解
2019/07/02 Python
Python将主机名转换为IP地址的方法
2019/08/14 Python
阿里云ECS服务器部署django的方法
2019/08/29 Python
python同义词替换的实现(jieba分词)
2020/01/21 Python
HTML5离线缓存在tomcat下部署可实现图片flash等离线浏览
2012/12/13 HTML / CSS
简单整理HTML5的基本特性和语法
2016/02/18 HTML / CSS
canvas生成带二维码海报的踩坑记录
2019/09/11 HTML / CSS
JD Sports芬兰:英国领先的运动鞋和运动服饰零售商
2018/11/16 全球购物
机关门卫岗位职责
2013/12/30 职场文书
大学学习生活感言
2014/01/18 职场文书
财务会计大学生自我评价
2014/04/09 职场文书
基于Redis过期事件实现订单超时取消
2021/05/08 Redis
微信小程序APP页面的之间的相互传递参数以及自定义组件
2022/04/19 Javascript