tensorflow数据结构-MetaGraphDef

tensorflow数据结构

https://github.com/tensorflow/tensorflow/blob/r1.11/tensorflow/core/protobuf/meta_graph.proto

《Tensorflow实战深度学习框架》

​ Tensorflow的计算图在运行时,以MetaGrapDef的形式实行计算图,并且在进行计算图保存(save)时,将MetaGraphDef以二进制的形式写入磁盘,在保存模型产生的3个的文件中,MetaGraphDef保存在.meta文件中;其中模型经过训练的模型参数,权重,可训练的变量保存在.data文件中;张量名到张量的对应映射关系保存在.index文件中

​ 这里使用tf.train.Saver().export_meta_grah("../model.ckpt.meda.json")将计算图(MetaGrapDef)以可读的形式输出


计算图结构

  1. MetaGraphDef(计算图)

MetaGraphDef

message MetaGraphDef {

  // 记录图上的所有运算方法
  MetaInfoDef meta_info_def = 1;

  // GraphDef.
  // 由于MetaInfoDef,已将计算图中所有的运算信息保存了
  // 所以GraphDef就只需要记录计算图的连接结构
  GraphDef graph_def = 2;

  // SaverDef.
  // 在save时,记录需要保存的变量
  SaverDef saver_def = 3;

  // collection_def:从集合名称到集合的映射。
  map<string, CollectionDef> collection_def = 4;

  // signature_def:从用户提供的签名密钥映射到单个SignatureDef。
  map<string, SignatureDef> signature_def = 5;

  // 与定义的图表一起使用的资源文件Asset file def
  repeated AssetFileDef asset_file_def = 6;
}

猜你喜欢

转载自blog.csdn.net/qq_39124762/article/details/83857036
今日推荐