Tensorflow有几个模型格式的类型:
- TensorFlow SavedModel 2. Frozen 模型 3. 会话捆绑包 4. Tensorflow Hub 模块
如何在磁盘上区分它们? (稍后与tensorflowjs-converter一起使用)
每个模型是如何创建的?
是的,有很多不同的模型类型,它们都有很好的理由。我不会声称我对每一个都非常清楚,但这就是我所知道的(我想我知道)。
- The
.pb
文件:PB代表protobuff或Protocol Buffer。这是模型结构,一般没有经过训练的权重,并且以二进制格式存储。
- The
.pbtxt
文件:非二进制文件pb
供人类阅读的文件。
- 未冻结的 Protobuf 文件需要检查点
.ckpt
文件也一样。检查点文件是缺失的一组权重pb
needs.
- The
.h5
文件:Keras 保存的模型 + 权重
- The
.tflite
文件将是 TensorflowLite 模型
-
冰雪奇缘模型:冷冻模型结合了
pb
与权重文件,所以你不必管理其中两个。通常,这意味着添加单词frozen
到文件名。我确信在加载文件时可以推断出这一点,但在磁盘上,它们更多地位于荣誉系统上,并且没有ckpt
文件。这会去除无关的图形信息;它基本上就像该模型的“生产就绪”版本。
- 会话包:是一个目录。它们已不再使用,而且很少见。
- Tensorflow Hub 模块:这些是预先存在的流行模型,很可能已经导出到 TFJS,不需要您手动转换它们。我认为他们得到支持是为了谷歌的利益,比我们的利益更多。但很高兴知道如果您使用集线器,您随时可以转换它。
多重导出的文件分组如下图所示。从这里,你可以看到很多可以变成 TFJS 的东西。
![Different TF file types](https://i.stack.imgur.com/LiBA8.png)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)