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中除法使用的注意事项
Aug 21 Python
python实现JAVA源代码从ANSI到UTF-8的批量转换方法
Aug 10 Python
Python轻量级ORM框架Peewee访问sqlite数据库的方法详解
Jul 20 Python
老生常谈Python之装饰器、迭代器和生成器
Jul 26 Python
Windows下python3.6.4安装教程
Jul 31 Python
pygame游戏之旅 python和pygame安装教程
Nov 20 Python
Python实现的爬取百度文库功能示例
Feb 16 Python
python3.7 的新特性详解
Jul 25 Python
Python 脚本拉取 Docker 镜像问题
Nov 10 Python
关于numpy数组轴的使用详解
Dec 05 Python
解决pycharm导入本地py文件时,模块下方出现红色波浪线的问题
Jun 01 Python
基于Keras中Conv1D和Conv2D的区别说明
Jun 19 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 中检查或过滤IP地址的实现代码
2011/11/27 PHP
CI框架源码阅读,系统常量文件constants.php的配置
2013/02/28 PHP
PHP添加Xdebug扩展的方法
2014/02/12 PHP
PHP获取远程图片并保存到本地的方法
2015/05/12 PHP
joomla组件开发入门教程
2016/05/04 PHP
PHP 自动加载的简单实现(推荐)
2016/08/12 PHP
php面向对象的用户登录身份验证
2017/06/08 PHP
提高网站信任度的技巧
2008/10/17 Javascript
基于JQuery的日期联动实现代码
2011/02/24 Javascript
javascript 闭包
2011/09/15 Javascript
js拖拽一些常见的思路方法整理
2014/03/19 Javascript
解析javascript中鼠标滚轮事件
2015/05/26 Javascript
多种js图片预加载实现方式分享
2016/02/19 Javascript
返回函数的JavaScript函数
2016/06/14 Javascript
jQuery选择器之属性筛选选择器用法详解
2017/09/19 jQuery
解决layui前端框架 form表单,table表等内置控件不显示的问题
2018/08/19 Javascript
详解JavaScript添加给定的标签选项
2018/09/17 Javascript
微信小程序中使用Async-await方法异步请求变为同步请求方法
2019/03/28 Javascript
JavaScript实现Tab选项卡切换
2020/02/13 Javascript
Vue的全局过滤器和私有过滤器的实现
2020/04/20 Javascript
python使用pil生成缩略图的方法
2015/03/26 Python
python 迭代器和iter()函数详解及实例
2017/03/21 Python
python微信跳一跳系列之色块轮廓定位棋盘
2018/02/26 Python
Python 点击指定位置验证码破解的实现代码
2019/09/11 Python
PyCharm如何导入python项目的方法
2020/02/06 Python
新手学习Python2和Python3中print不同的用法
2020/06/09 Python
Win10环境中如何实现python2和python3并存
2020/07/20 Python
几款好用的python工具库(小结)
2020/10/20 Python
python 第三方库paramiko的常用方式
2021/02/20 Python
css 省略号 css3让多余的字符串消失并附加省略号的实现代码
2013/02/07 HTML / CSS
HTML5之SVG 2D入门6—视窗坐标系与用户坐标系及变换概述
2013/01/30 HTML / CSS
SCDKey德国:全球领先的数字游戏市场
2019/04/09 全球购物
解释DataSet(ds) 和 ds as DataSet 的含义
2014/07/27 面试题
新闻系毕业生推荐信
2013/11/16 职场文书
民政局副局长民主生活会个人对照检查材料
2014/09/19 职场文书
公司离职证明范本
2014/10/17 职场文书