查看参数模型数据 .data-00000-of-00001 .index .meta

这篇博客介绍了参数模型的三个核心文件——.data-00000-of-00001, .index和.meta的作用。.data文件存储参数值,.index文件包含索引信息,而.meta文件则保存了图结构。同时,博主提供了查看节点名称、特定节点参数和所有节点参数的方法。" 39935237,2762967,自定义UITableViewCell加载 nib 文件与类,"['iOS开发', 'Swift', 'Objective-C', 'UITableView', '自定义视图']
摘要由CSDN通过智能技术生成

我的参数模型主要有三个文件:
snap-72722.data-00000-of-00001
snap-72722.index
snap-72722.meta

作用:
.data文件保存了当前参数名和值
.index文件保存了辅助索引信息
.meta文件保存了当前图结构.
当然还有一个checkpoint 文本文件,记录了模型文件的路径信息列表

1.输出节点名称

from tensorflow.python import pywrap_tensorflow

checkpoint_path = '/home/workstation/KPConv-xin/results/Log_2020-09-25_12-30-18/snapshots/snap-72722'
reader = pywrap_tensorflow.NewCheckpointReader(checkpoint_path)
var_to_shape_map = reader.get_variable_to_shape_map()
for key in var_to_shape_map:
    print("tensor_name:", key)

checkpoint_path 为路径信息,最后一个snap-72722注意不要加后缀。比如我的模型保存路径为/home/workstation/KPConv-xin/results/Log_2020-09-25_12-30-18/snapshots,在后面加上模型文件名的前缀!!!!!

2.查看某个节点的保存参数

import tensorflow as tf
from tensorflow.python.framework import graph_util
######from tensorflow.pyton.platform import gfile
def freeze_graph(input_checkpoint, output_graph):
    '''
    :param input_checkpoint:
    :param output_graph: PB模型保存路径
    :return:
    '''
    # checkpoint = tf.train.get_checkpoint_state(model_folder) #检查目录下ckpt文件状态是否可用
    # input_checkpoint = checkpoint.model_checkpoint_path #得ckpt文件路径

    # 指定输出的节点名称,该节点名称必须是原模型中存在的节点
    #outpu
  • 12
    点赞
  • 58
    收藏
    觉得还不错? 一键收藏
  • 7
    评论
TensorFlow中的元数据metadata)是为了帮助组织和管理模型的信息而添加的。元数据包括模型名称、版本号、作者、许可证、输入输出张量的名称和类型、模型的超参数等等。元数据在TensorFlow的SavedModel格式中以protobuf格式存储。 使用TensorFlow的元数据可以方便地在模型库中组织和管理模型。例如,可以使用元数据来搜索和过滤模型,或者通过元数据了解模型的详细信息,如模型的输入输出格式、模型的性能等等。元数据还可以帮助模型的用户和开发者更好地理解模型,减少使用和开发的难度。 要向TensorFlow模型添加元数据,可以使用SavedModel API中的`tf.saved_model.Builder`类。以下是一个示例代码,演示如何添加元数据: ```python import tensorflow as tf from tensorflow.python.saved_model import signature_constants from tensorflow.python.saved_model import tag_constants from tensorflow.python.saved_model import signature_def_utils # Define the input and output tensors input_tensor = tf.placeholder(tf.float32, [None, 28, 28], name='input') output_tensor = tf.placeholder(tf.float32, [None, 10], name='output') # Define the metadata builder = tf.saved_model.builder.SavedModelBuilder('./model') signature = signature_def_utils.build_signature_def( inputs={'input': signature_def_utils.build_tensor_info(input_tensor)}, outputs={'output': signature_def_utils.build_tensor_info(output_tensor)}, method_name=signature_constants.PREDICT_METHOD_NAME) builder.add_meta_graph_and_variables( tf.Session(), [tag_constants.SERVING], signature_def_map={'predict': signature}) builder.save() ``` 在上述代码中,我们首先定义了输入和输出张量。然后,我们使用`tf.saved_model.builder.SavedModelBuilder`类来创建一个SavedModel对象,并将其存储在名为“./model”的目录中。接下来,我们使用`signature_def_utils.build_signature_def()`函数来定义模型签名,包括输入和输出张量的名称和类型。最后,我们使用`builder.add_meta_graph_and_variables()`方法将元图和变量添加到SavedModel中。在这里,我们使用`tag_constants.SERVING`标记来标记SavedModel是一个用于服务的模型。我们还将模型签名映射到名称为“predict”的方法中。 添加元数据后,我们可以使用TensorFlow的工具来查看模型的信息。例如,可以使用TensorFlow Serving来启动一个模型服务器,并使用`saved_model_cli`工具来查看模型数据。以下是一个示例命令: ``` saved_model_cli show --dir ./model --all ``` 这将输出模型的所有元数据,包括模型名称、版本号、输入输出张量的名称和类型、模型签名等等。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值