TensorFlow Saver:保存和读取模型参数.ckpt实例


Posted in Python onFebruary 10, 2020

在使用TensorFlow的过程中,保存模型参数变量是很重要的一个环节,既可以保证训练过程信息不丢失,也可以帮助我们在需要快速恢复或使用一个模型的时候,利用之前保存好的参数之间导入,可以节省大量的训练时间。本文通过最简单的例程教大家如何保存和读取.ckpt文件。

一、保存到文件

首先是导入必要的东西:

import tensorflow as tf
import numpy as np

随便写几个变量:

# Save to file
# remember to define the same dtype and shape when restore
W = tf.Variable([[1,2,3],[3,4,5]], dtype=tf.float32, name='weights')
b = tf.Variable([[1,2,3]], dtype=tf.float32, name='biases')
 
init= tf.initialize_all_variables()

定义一个saver,来存储我们的各种变量:

saver = tf.train.Saver()

保存的文件用.ckpt后缀:

with tf.Session() as sess:
  sess.run(init)
  save_path = saver.save(sess, "my_net/save_net.ckpt")
  print("Save to path: ", save_path)

上面我们就完成了保存操作。

接下来我们要把之前保存过的变量取出来。

二、取出之前保存的变量

这里要注意,取出时要先开辟一个容器来装,shape和type要和我们之前保存的.ckpt一样。

# restore variables
# redefine the same shape and same type for your variables
W = tf.Variable(np.arange(6).reshape((2, 3)), dtype=tf.float32, name="weights")
b = tf.Variable(np.arange(3).reshape((1, 3)), dtype=tf.float32, name="biases")

restore时,不需要进行init= tf.initialize_all_variables()操作。

利用saver提取文件:

saver = tf.train.Saver()
with tf.Session() as sess:
  saver.restore(sess, "my_net/save_net.ckpt")
  print("weights:", sess.run(W))
  print("biases:", sess.run(b))

结果:

TensorFlow Saver:保存和读取模型参数.ckpt实例

以上这篇TensorFlow Saver:保存和读取模型参数.ckpt实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python实现系统状态监测和故障转移实例方法
Nov 18 Python
利用一个简单的例子窥探CPython内核的运行机制
Mar 30 Python
pip安装Python库时遇到的问题及解决方法
Nov 23 Python
Python数据类型中的“冒号“[::]——分片与步长操作示例
Jan 24 Python
Tensorflow中使用tfrecord方式读取数据的方法
Jun 19 Python
在Pycharm中将pyinstaller加入External Tools的方法
Jan 16 Python
将string类型的数据类型转换为spark rdd时报错的解决方法
Feb 18 Python
django之使用celery-把耗时程序放到celery里面执行的方法
Jul 12 Python
python def 定义函数,调用函数方式
Jun 02 Python
python操作ini类型配置文件的实例教程
Oct 30 Python
python 写一个文件分发小程序
Dec 05 Python
Python如何导出导入所有依赖包详解
Jun 08 Python
tensorflow实现读取模型中保存的值 tf.train.NewCheckpointReader
Feb 10 #Python
解决tensorflow添加ptb库的问题
Feb 10 #Python
使用TensorFlow直接获取处理MNIST数据方式
Feb 10 #Python
python如何实现单链表的反转
Feb 10 #Python
基于python求两个列表的并集.交集.差集
Feb 10 #Python
python实现串口通信的示例代码
Feb 10 #Python
基于Tensorflow高阶读写教程
Feb 10 #Python
You might like
PHP网页游戏学习之Xnova(ogame)源码解读(四)
2014/06/23 PHP
PHP获取当前完整URL地址的函数
2014/12/21 PHP
PHP的Yii框架中使用数据库的配置和SQL操作实例教程
2016/03/17 PHP
php读取torrent种子文件内容的方法(测试可用)
2016/05/03 PHP
静态的动态续篇之来点XML
2006/08/15 Javascript
js 方法实现返回多个数据的代码
2009/04/30 Javascript
JS父页面与子页面相互传值方法
2014/03/05 Javascript
利用js制作html table分页示例(js实现分页)
2014/04/25 Javascript
JS完整获取IE浏览器信息包括类型、版本、语言等等
2014/05/22 Javascript
js调试系列 源码定位与调试[基础篇]
2014/06/18 Javascript
分享一则javascript 调试技巧
2015/01/02 Javascript
JS Attribute属性操作详解
2016/05/19 Javascript
sso跨域写cookie的一段js脚本(推荐)
2016/05/25 Javascript
jQuery遍历DOM的父级元素、子级元素和同级元素的方法总结
2016/07/07 Javascript
微信小程序 标签传入数据
2017/05/08 Javascript
基于angular实现三级联动的生日插件
2017/05/12 Javascript
vue.js实现数据动态响应 Vue.set的简单应用
2017/06/15 Javascript
纯JS实现可用于页码更换的飞页特效示例
2018/05/21 Javascript
原生javascript中this几种常见用法总结
2020/02/24 Javascript
python3.6.3+opencv3.3.0实现动态人脸捕获
2018/05/25 Python
Django中数据库的数据关系:一对一,一对多,多对多
2018/10/21 Python
python安装pil库方法及代码
2019/06/25 Python
python使用Qt界面以及逻辑实现方法
2019/07/10 Python
python实现淘宝购物系统
2019/10/25 Python
Django项目中使用JWT的实现代码
2019/11/04 Python
pymysql 插入数据 转义处理方式
2020/03/02 Python
网络体系结构及协议的定义
2014/03/13 面试题
总经理办公室主任岗位职责
2013/11/12 职场文书
后勤主管工作职责
2013/12/07 职场文书
自行车租赁公司创业计划书
2014/01/28 职场文书
空中乘务员岗位职责
2014/03/08 职场文书
公司离职证明样本
2014/09/13 职场文书
优秀班主任主要事迹材料
2014/12/16 职场文书
自主招生学校推荐信范文
2015/03/26 职场文书
写给同事的离职感言
2015/08/04 职场文书
MySQL中TIMESTAMP类型返回日期时间数据中带有T的解决
2022/12/24 MySQL