Pytorch与tensorflow模型转换

使用pytorch_pretrained_bert将tensorflow模型转化为pytorch模型:https://blog.csdn.net/sunyueqinghit/article/details/103458365/

bert_config.json
bert_model.ckpt.data-00000-of-00001
bert_model.ckpt.index
bert_model.ckpt.meta
vocab.txt

比如:
tensorflow 模型文件
checkpoint
model.ckpt-200.data-00000-of-00001
model.ckpt-200.index
model.ckpt-200.meta
1、checkpoint文件
checkpoint是一个文本文件,记录了训练过程中在所有中间节点上保存的模型的名称,首行记录的是最后(最近)一次保存的模型名称。

checkpoint是检查点文件,文件保存了一个目录下所有的模型文件列表;

2、data文件
model.ckpt-200.data-00000-of-00001:数据文件,保存的是网络的权值,偏置,操作等等。

3、index文件
model.ckpt-200.index是一个不可变得字符串表,每一个键都是张量的名称,它的值是一个序列化的BundleEntryProto。 每个BundleEntryProto描述张量的元数据:“数据”文件中的哪个文件包含张量的内容,该文件的偏移量,校验和,一些辅助数据等等

4、meta文件
model.ckpt-200.meta文件保存的是图结构,通俗地讲就是神经网络的网络结构。一般而言网络结构是不会发生改变,所以可以只保存一个就行了

bert模型文件相关解释:

$ tree chinese_L-12_H-768_A-12/
chinese_L-12_H-768_A-12/
├── bert_config.json                     <- 模型配置文件
├── bert_model.ckpt.data-00000-of-00001  <- 保存断点文件列表,可以用来迅速查找最近一次的断点文件
├── bert_model.ckpt.index                <- 为数据文件提供索引,存储的核心内容是以tensor name为键以BundleEntry为值的表格entries,BundleEntry主要内容是权值的类型、形状、偏移、校验和等信息。
├── bert_model.ckpt.meta                 <- 是MetaGraphDef序列化的二进制文件,保存了网络结构相关的数据,包括graph_def和saver_def等
└── vocab.txt                            <- 模型词汇表文件

0 directories, 5 files

你可能感兴趣的:(小技巧,tensorflow,pytorch,checkpoint,ckpt,bert)