老宋的地盘

 找回密码
 我要加入
搜索
老宋 首页 文章 技术 查看内容

AI模型各种存储格式文件介绍(pb, onnx, ckpt, tflite, h5)

2024-2-4 22:31| 发布者: herosrx| 查看: 118| 评论: 0

摘要: .ckpt模型文件tensorflow框架下保存的模型,包含以下几个子文件:model.ckpt.meta :保存Tensorflow计算图结构,可以理解为神经网络的网络结构model.ckpt :保存Tensorflow程序中每一个变量的取值,变量是模型中可训 ...
.ckpt模型文件

tensorflow框架下保存的模型,包含以下几个子文件:
model.ckpt.meta :保存Tensorflow计算图结构,可以理解为神经网络的网络结构
model.ckpt :保存Tensorflow程序中每一个变量的取值,变量是模型中可训练的部分
checkpoint :保存一个目录下所有模型文件列表

.pb 模型文件
pb是protocol buffer的缩写。TensorFlow训练模型后存成的pb文件,是一种表示模型(神经网络)结构的二进制文件,不带有源代码,也一般无法映射成源代码。这就有点像C 语言编译产生的机器码一般无法映射回源代码一样。
tensorflow可以通过graph_util.convert_variables_to_constants函数将sess graph转换为frozen graph保存pb文件形式。

.tflite模型文件

tflite是谷歌自己的一个轻量级推理库,主要用于移动端AI模型部署。
TFLite提供一系列针对移动平台的核心算子,包括量化和浮点运算。TFLite是基于FlatBuffers定义了一种新的模型文件格式。FlatBuffers类似于protocol buffers, FlatBuffers在访问数据之前不需要进行解析/解包步骤,通常与每个对象的内存分配相结合。而且,FlatBuffers的代码占用空间比protocol buffers小一个量级。


.hdf5模型文件

基于tf.keras框架保存的模型文件存储格式。
HDF5 文件一般以 .h5 或者 .hdf5 作为后缀名,需要专门的软件才能打开预览文件的内容。HDF5 文件结构中有 2 个主要对象: Groups 和 Datasets。
Groups 就类似于文件夹,每个 HDF5 文件其实就是根目录 (root) group'/'。
Datasets 类似于 NumPy 中的数组 array 。
每个 dataset 可以分成两部分: 原始数据 (raw) data values 和 元数据 metadata (a set of data that describes and gives information about other data => raw data)。

.onnx模型文件

ONNX是一种针对机器学习所设计的开放式的文件格式,用于存储训练好的模型。它使得不同的深度学习框架(如Pytorch, MXNet)可以采用相同格式存储模型数据。简而言之,ONNX是一种便于在各个主流深度学习框架中迁移模型的中间表达格式。

ONNX使用protobuf序列化AI模型,顶层是一个模型(Model)结构,主要由关联的元数据和一个图(Graph)组成;图由元数据、模型参数、输入输出、和计算节点(Node)序列组成,这些节点构成了一个计算无环图,每一个计算节点代表了一次操作符的调用,主要由节点名称、操作符、输入列表、输出列表和属性列表组成,属性列表主要记录了一些运行时常量,比如模型训练时生成的系数值。

ONNX模型解析流程:

读取.onnx文件,获得model结构;
通过model结构访问graph结构;
通过graph访问整个网络的所有node以及inputs、outputs;
通过node结构,可以获取每一个OP的参数信息。
其中,graph结构中还定义了initializer和value_info,分别存放了模型的权重参数和每个节点的输出信息。


Netron 支持目前大多数主流深度学习框架的模型,如下所示:

  • ONNX(.onnx,.pb)
  • Keras(.h5,.keras)
  • CoreML(.mlmodel)
  • TensorFlow Lite(.tflite)
  • Netron对Caffe(.caffemodel)
  • Caffe2(predict_net.pb)
  • MXNet(.model,-symbol.json)
  • TensorFlow.js(model.json,.pb)
  • TensorFlow(.pb,.meta)
td

路过

雷人

握手

鲜花

鸡蛋

相关阅读

最新评论

歌名 - 歌手
0:00

    QQ|手机版|小黑屋|老宋 ( 备案中... )

    GMT+8, 2024-4-24 08:33 , Processed in 0.056536 second(s), 19 queries , Gzip On.

    Powered by Discuz! X3.5

    © 2001-2024 Discuz! Team.

    返回顶部