【TF】checkpoint版本

本文参考:https://blog.csdn.net/u014061630/article/details/80698843

根据官方的说明,checkpoint有两个版本:1和2

在0.12版本tensorflow更新了checkpoint版本,默认情况下写入和读取的checkpoint都是新的V2版本,新版本能够在restore过程中显著降低内存峰值。

两种版本模型保存方式如下:

v1v2
model.ckpt-66000model.ckpt-66000.index
model.ckpt-66000.metamodel.ckpt-66000.meta
 model.ckpt-66000.data-00000-of-00001

版本1

版本1保存ckpt时,有两个文件model.ckpt-xxx(包含了参数名和参数值)和model.ckpt-xxx.meta(图结构)

要读取该ckpt时,路径按平常写法写

版本2

版本2保存模型时,有三个文件model.ckpt-xxx.data(参数值)、model.ckpt-xxx.index(参数名)、model.ckpt-xxx.meta(图结构)

要读取该ckpt时,路径按只写三个文件的公共部分

保存版本的选择

TF默认保存为v2格式,保存的checkpoint的版本可以在创建saver的时候指定

import tensorflow as tf
from tensorflow.core.protobuf import saver_pb2
# 保存成v1版本
saver = tf.train.Saver(write_version=saver_pb2.SaverDef.V1)
# 保存成v2版本
saver = tf.train.Saver(write_version=saver_pb2.SaverDef.V2)

从ckpt中恢复变量

虽然保存时有差别,但恢复时,两个版本都可以(但须注意不同版本的ckpt的路径书写方式不同)

v1 
直接书写完整的ckpt文件的路径

v2 
直接书写完整的ckpt文件的路径中的model.ckpt-xxx即可

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值