1.  TF---Saver背景介绍

在训练完一个model后hope保存训练的结果(结果:model参数),以便下次迭代的训练或测试, TF针对这一需求提供了Saver类;

(1)Saver类提供了向checkpoints文件保存和从Checkpoints文件中恢复变量的相关方法,Checkpoints文件是一二进制文件,作用:把变量名映射到对应的tensor值。

(2)只要提供一个计数器,但计数器触发时,Saver类可自动生成checkpoint文件,可保存训练过程中多个训练结果,如:保存每一步训练结果…

(3)为避免填充整个磁盘,Saver可自动管理Checkpoints文件,如,可指定保存最近N个Checkpoints文件

In short, Saver类将训练结果保存为checkpoint二进制文件,同时可保存多个checkpoint文件

2.  Saver实例------4参数

isTrain: 用来区分训练阶段和测试阶段, True表训练   False 表测试

train_steps: 表 训练次数    example:100

checkpoint_steps: 表训练多少次保存一下checkpoints   example:50

checkpoint_dir: 表 checkpoints文件保存路径          example:当前路径

3.  训练阶段

使用Saver.save()方法保存模型:

sess: 当前会话  当前会话记录着当前所有变量值

checkpoint_dir + ‘ model.ckpt ’: 表checkpoint文件的文件名

global_step: 表当前是第几步

训练完成后,保存目录会至少多出4个文件(checkpoint create.py model.ckpt-50 model.ckpt-50.meta …)后面两个文件可能重复

4. 测试阶段

使用saver.restore( ) 方法恢复变量

  1. sess: 表当前会话,之前保存的结果被加载到这个sess(会话)
  2. ckpt.model_checkpoint_path:表model存储位置(不需要有模型名字,系统会自动查看ckptpoint 文件,看看最新的是谁,name是什么)

具体流程( 含命令行 )

为了保存训练好的模型参数,以便以后验证和测试,TF提供了tf.train.Saver()模块

模型保存,

1.. 创建Saver对象 同时设置max_to_keep 参数

需要创建一个Saver对象:

saver = tf.train.Saver()

在创建saver对象时,有一参数max_to_keep参数,设置保存模型的个数;默认max_to_keep=5(保存最近的5个模型);若如果你想每训练一代(epoch)就想保存一次模型,则可以将 max_to_keep设置为None或者0

saver = tf.train.Saver( max_to_keep = 0 )

若只想保存最后一次模型参数,只需saver = tf.train.Saver( max_to_keep = 1 )

2.. 保存模型

创建完Saver对象后,就可以保存模型了

如:saver.save( sess, ‘ckpt/mnist.ckpt’, global_step = step )

第一个参数sess  当前会话  当前会话记录着当前所有变量值

第二个参数指定保存路径和名字

第三个参数:将训练次数作为后缀添加到模型名字后

如:saver.save(sess, 'my-model', global_step=0) ==>      filename: 'my-model-0'

3.. 模型恢复 restore()函数

有两个参数restore( sess, save_path ) save_path指的是保存的模型路径。我们可以使用tf.train.latest_checkpoint()来自动获取最后一次保存的模型

如: model_file = tf.train.latest_checkpoint( ‘ckpt/ ‘ )

saver.restore( sess, model_file )

reference:

https://blog.csdn.net/u011500062/article/details/51728830

http://www.imooc.com/article/33993   结构清晰

http://blog.csdn.net/weixin_38208741/article/details/78812562   例子和细节

Tensorflow Saver相关推荐

  1. 手把手教你使用TF服务将TensorFlow模型部署到生产环境

    2019独角兽企业重金招聘Python工程师标准>>> 介绍 将机器学习(ML)模型应用于生产环境已成为一个火热的的话题,许多框架提供了旨在解决此问题的不同解决方案.为解决这一问题, ...

  2. tensorflow图形识别_手把手教你使用TF服务将TensorFlow模型部署到生产环境

    摘要: 训练好的模型不知道如何布置到生产环境?快来学习一下吧! 介绍 将机器学习(ML)模型应用于生产环境已成为一个火热的的话题,许多框架提供了旨在解决此问题的不同解决方案.为解决这一问题,谷歌发布了 ...

  3. 【tensorflow】生成.pb文件

    Saving, Freezing, Optimizing for inference, Restoring of tensorflow models 在训练完tensorflow模型后,会有三个文件: ...

  4. tensorflow实战:由ckpt转成pb步骤的总结

    最近真的项目很紧,996模式开启了多日,在完成项目一小步后,总算有时间进行一些梳理,也是对tensorflow有了更多的认识. 之前在学校实验室中,其实并不涉及太多tensorflow c++端的接口 ...

  5. TensorFlow 1.x 深度学习秘籍:6~10

    原文:TensorFlow 1.x Deep Learning Cookbook 协议:CC BY-NC-SA 4.0 译者:飞龙 本文来自[ApacheCN 深度学习 译文集],采用译后编辑(MTP ...

  6. tensorflow 1.x Saver(保存与加载模型) 预测

    20201231 tensorflow 1.X 模型保存 https://blog.csdn.net/qq_35290785/article/details/89646248 保存模型 saver=t ...

  7. tensorflow 1.0 学习:模型的保存与恢复(Saver)

    将训练好的模型参数保存起来,以便以后进行验证或测试,这是我们经常要做的事情.tf里面提供模型保存的是tf.train.Saver()模块. 模型保存,先要创建一个Saver对象:如 saver=tf. ...

  8. 1、Tensorflow 之 saver与checkpoint

    1.Tensorflow 模型文件 checkpoint model.ckpt-200.data-00000-of-00001 model.ckpt-200.index model.ckpt-200. ...

  9. tensorflow中用saver保存模型

      我们在用tensorflow训练模型时,可能需要训练很长很长一段时间,为了方便下次使用,应该将模型保存起来.在sklearn中,我们可以使用pickle模块进行模型保存:而在tensorflow中 ...

  10. Tensorflow保存神经网络参数有妙招:Saver和Restore

    摘要:这篇文章将讲解TensorFlow如何保存变量和神经网络参数,通过Saver保存神经网络,再通过Restore调用训练好的神经网络. 本文分享自华为云社区<[Python人工智能] 十一. ...

最新文章

  1. docker build 没有网络 执行dockerfile中yum报错 curl#6 - “Could not resolve host: mirrorlist.centos.org 解决方法
  2. 卡巴斯基实用技巧推荐(卡巴斯基使用者必看)
  3. PP生产订单的BADI增强 WORKORDER_UPDATE
  4. Oracle常见操作汇总(转)
  5. 使用Apache Storm和Apache Ignite进行复杂的事件处理(CEP)
  6. 机器人教育发展_得于人工智能发展,机器人教育低龄化越来越普及
  7. 汶川地震《生死不离》歌词
  8. ssh mysql视屏_ssh+mysql实现的Java web在线订电影票系统项目源码附带视频指导教程...
  9. python之路_面向对象
  10. 前端图片放大缩小/比例自适应/打码/码大小可调整
  11. 软件测试经典面试题之二
  12. 解决everything只能搜索C盘的问题
  13. go语言 func函数
  14. 地鼠宝宝的轶事奇闻之线程模型
  15. App推送推了10万打开100?3招提高消息推送(Push)到达率
  16. 《多元统计分析》学习笔记之多元正态分布
  17. 【大题整理】操作系统
  18. 洛谷P4113 [HEOI2012]采花 题解
  19. 2008服务器注销设置,windows-server-2008 – 终端服务器在5分钟后注销用户
  20. Vue-----Vue本地应用篇(2)

热门文章

  1. 神话情话(神雕侠侣主题曲)铃声 神话情话(神雕侠侣主题曲)手机...
  2. 广义SAM(SAM套trie)
  3. 为您详解在ChemDraw中进行3D建模的方法
  4. Linux C++ 获取文件夹大小2(通过ftw实现)
  5. 不仅国产手机被撕下遮羞布,其实苹果和三星也已没了遮羞布
  6. iOS对sqlite3进行封装
  7. 2019-3-8-win10-uwp-一张图说明水平对齐和垂直对齐
  8. spring框架 -- IOC
  9. ibm入职测试题太难了_IBM面试的IQ测试题
  10. Jackson Json 快速入门