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里将list中元素依次向前移动一位
Sep 12 Python
pygame学习笔记(5):游戏精灵
Apr 15 Python
六个窍门助你提高Python运行效率
Jun 09 Python
神经网络python源码分享
Dec 15 Python
Python的多维空数组赋值方法
Apr 13 Python
python登录WeChat 实现自动回复实例详解
May 28 Python
python删除文件夹下相同文件和无法打开的图片
Jul 16 Python
修改Pandas的行或列的名字(重命名)
Dec 18 Python
浅谈SciPy中的optimize.minimize实现受限优化问题
Feb 29 Python
Python3 ID3决策树判断申请贷款是否成功的实现代码
May 21 Python
python转化excel数字日期为标准日期操作
Jul 14 Python
运行python提示no module named sklearn的解决方法
Nov 29 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开发规范手册之PHP代码规范详解
2011/01/13 PHP
有关PHP中MVC的开发经验分享
2012/05/17 PHP
php和javascript之间变量的传递实现代码
2012/12/19 PHP
PHP数据库操作二:memcache用法分析
2017/08/16 PHP
XML的代替者----JSON
2007/07/21 Javascript
JavaScript ECMA-262-3 深入解析.第三章.this
2011/09/28 Javascript
IE关闭时判断及AJAX注销案例学习
2013/02/18 Javascript
Nodejs sublime text 3安装与配置
2014/06/19 NodeJs
jQuery ajax serialize() 方法使用示例
2014/11/02 Javascript
DOM 事件流详解
2015/01/20 Javascript
JS实现带鼠标效果的头像及文章列表代码
2015/09/27 Javascript
不能不知道的10个angularjs英文学习网站
2016/03/23 Javascript
Node.js的npm包管理器基础使用教程
2016/05/26 Javascript
JS实现title标题栏文字不间断滚动显示效果
2016/09/07 Javascript
关于页面刷新vuex数据消失问题解决方案
2017/07/03 Javascript
浅谈vue中慎用style的scoped属性
2017/11/28 Javascript
vue-cli3 karma单元测试的实现
2019/01/18 Javascript
利用vue-i18n实现多语言切换效果的方法
2019/06/19 Javascript
JS事件流与事件处理程序实例分析
2019/08/16 Javascript
小程序实现背景音乐播放和暂停
2020/06/19 Javascript
Element Dropdown下拉菜单的使用方法
2020/07/26 Javascript
javascript使用canvas实现饼状图效果
2020/09/08 Javascript
vue组件实现移动端九宫格转盘抽奖
2020/10/16 Javascript
[06:21]完美世界亚洲区首席发行官竺琦TI3采访
2013/08/26 DOTA
聊聊python里如何用Borg pattern实现的单例模式
2019/06/06 Python
Python3实现mysql连接和数据框的形成(实例代码)
2020/01/17 Python
10分钟入门CSS3 Animation
2018/12/25 HTML / CSS
科技开发中心办公室主任岗位责任制
2014/02/10 职场文书
广告传媒专业应届生求职信
2014/03/01 职场文书
环保倡议书300字
2014/05/15 职场文书
中学学校门卫岗位职责
2014/08/15 职场文书
2015年社区综治工作总结
2015/04/21 职场文书
2015年采购员工作总结
2015/04/27 职场文书
2015双创工作总结
2015/07/24 职场文书
python 调用js的四种方式
2021/04/11 Python
pycharm部署django项目到云服务器的详细流程
2021/06/29 Python