Tensorflow的模型保存和读取tf.train.Saver

本文介绍了如何在TensorFlow中使用tf.train.Saver来保存和恢复训练好的模型。通过实例化Saver,可以在训练过程中定期保存模型的权重。在需要时,可以使用restore方法恢复模型,继续训练或用于测试。保存操作会产生四个文件,包括权重和元数据。示例展示了基本的保存和读取模型的代码,强调了saver操作必须在建立会话后执行,并且保存路径需要正确指定。

深度学习平台:TensorFlow    

目标:训练网络后想保存训练好的模型,以及在程序中读取以保存的训练好的模型。

简介

首先,保存和恢复都需要实例化一个 tf.train.Saver。

  • saver = tf.train.Saver()

然后,训练循环中,定期调用 saver.save() 方法,向文件夹中写入包含当前模型中所有可训练变量的 checkpoint 文件。

  • saver.save(sess, FLAGS.train_dir, global_step=step)

之后,就可以使用 saver.restore() 方法,重载模型的参数,继续训练或用于测试数据。

  • saver.restore(sess, FLAGS.train_dir)

一次 saver.save() 后可以在文件夹中看到新增的四个文件,

实际上每调用一次保存操作会创建后3个数据文件并创建一个检查点(checkpoint)文件,简单理解就是权重等参数被保存到 .ckpt.data 文件中,以字典的形式;图和元数据被保存到 .ckpt.meta 文件中,可以被 tf.train.import_meta_graph 加载到当前默认的图。

 

示例

下面代码是简单的保存和读取模型:(不包括加载图数据)

import tensorflow as tf
import numpy as np
import os

#用numpy产生数据
x_data = np.li
评论 20
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值