TensorFlow持久化原理及数据格式整理

本文深入探讨了TensorFlow模型持久化的原理与数据格式,详细分析了save.save()方法生成的四个关键文件:meta_info_def、graph_def、saver_def和collection_def的作用与内容,通过实例演示了如何在Python环境中实现模型的保存。
部署运行你感兴趣的模型镜像

最近在学习Tensorflow实战,可以在熟悉的章节上策马奔腾,但是有些章节就举步维艰(比如这一节),此篇目的是深入理解此章节。

持久化原理及数据格式整理

当使用save.save()时,TensorFlow程序会自动生成4个文件,这4个文件用来实现TensorFlow模型的持久化:

meta_info_def : 它记录了TensorFlow计算图中的元数据以及TensorFlwo程序中所有使用到的运算方法的信息

      graph_def :  主要记录了TensorFlow计算图上的节点信息

      saver_def :  记录了持久化模型时需要用到的一些参数,比如保存到文件的文件名保存操作加载操作的名称以及保存频率、                            清理历史信息等等

collection_def :  属性是一个从集合名称到集合内容的映射,其中集合名称为字符串,集合内容为CollectionDef Protocol Buffer

 

 

然后具体操作一波

import tensorflow as tf
from tensorflow.python.framework import graph_util

v1 = tf.Variable(tf.constant(1.0, shape=[1]),name='v1')
v2 = tf.Variable(tf.constant(2.0,shape=[2]),name='v2')
result = v1+v2

init_op = tf.global_variables_initializer()

saver = tf.train.Saver()

with tf.Session() as sess:
    sess.run(init_op)
    saver.export_meta_graph("./model.ckpt.meda.json",as_text=True)

文件夹中粗现了一下文件

使用chrome打开,发现十几页的数据.... 先说一下只管感受吧,长度上graph_def>meta_info_def>saver_def=collection_def

奇怪的是colection_def出现了两次

 

 结论:collection_def每个存的是集合信息,graph_def存的是节点信息, 包含v1/assign, const, v1/read, add, save/const等等节点, 并不仅仅包含图中所示的3个节点, meta_info_def会存有类似上面的信息,大概T类似于java模板类的一种东西, saver_def主要存有关于save相关的信息。

未完待续

 

 

您可能感兴趣的与本文相关的镜像

TensorFlow-v2.15

TensorFlow-v2.15

TensorFlow

TensorFlow 是由Google Brain 团队开发的开源机器学习框架,广泛应用于深度学习研究和生产环境。 它提供了一个灵活的平台,用于构建和训练各种机器学习模型

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值