是否可以将 tflite 转换为 pb?
Is it possible to convert tflite to pb?
是否可以将tflite模型转换为pb模型?
我看过很多关于转换“pb->tflite”的文章,
但没有机会找到“tflite->pb”。
如果不可能,
有什么办法可以只用 tflite 文件进行量化吗?
(到目前为止,我注意到 tf.lite.TFLiteConverter.from_saved_model() 只接受 pb 文件,
这就是我尝试将 tflite 转换为 pb 的原因)。
任何提示或建议都会很棒!
谢谢
首先,没有官方的TensorFlow API支持从tflite到graphdef(pb)文件的转换,如上节所述的jdduke@
实际上,有两种使用“pb”扩展名的 TensorFlow 图序列化格式:
(1) 保存的模型(推荐)- 在 TF 版本一和二中都可以将给定的 TF 图导出到保存的模型。保存的模型格式并不简单,通常以目录的形式表示。在保存的模型目录下,包含以下文件,包括“pb”文件:
- saved_model.pb(或有时 saved_model.pbtxt)
- variables/variables.index
- variables.data-00000-of-00001
您可以将上述文件位置的目录名提供到tf.lite.TFLiteConverter.from_saved_model(saved_model_dir)
中,将保存的模型格式转换为对应的TFLite模型文件。
(2) Graph def 序列化文件(已弃用)- graph def 序列化文件是 TF v1 内容,已弃用。大多数时候,图形定义文件以“pb”扩展名存储。在这种情况下,您可以使用 tf.compat.v1.lite.TFLiteConverter.from_frozen_graph(...)
进行转换。
“pb”关键字的意思是“protobuf”,这是一种二进制序列化格式,正在TensorFlow产品中使用。因此,TensorFlow 中的“pb”文件可能会根据上下文携带不同的内容。
是否可以将tflite模型转换为pb模型?
我看过很多关于转换“pb->tflite”的文章, 但没有机会找到“tflite->pb”。
如果不可能, 有什么办法可以只用 tflite 文件进行量化吗?
(到目前为止,我注意到 tf.lite.TFLiteConverter.from_saved_model() 只接受 pb 文件, 这就是我尝试将 tflite 转换为 pb 的原因)。
任何提示或建议都会很棒!
谢谢
首先,没有官方的TensorFlow API支持从tflite到graphdef(pb)文件的转换,如上节所述的jdduke@
实际上,有两种使用“pb”扩展名的 TensorFlow 图序列化格式:
(1) 保存的模型(推荐)- 在 TF 版本一和二中都可以将给定的 TF 图导出到保存的模型。保存的模型格式并不简单,通常以目录的形式表示。在保存的模型目录下,包含以下文件,包括“pb”文件:
- saved_model.pb(或有时 saved_model.pbtxt)
- variables/variables.index
- variables.data-00000-of-00001
您可以将上述文件位置的目录名提供到tf.lite.TFLiteConverter.from_saved_model(saved_model_dir)
中,将保存的模型格式转换为对应的TFLite模型文件。
(2) Graph def 序列化文件(已弃用)- graph def 序列化文件是 TF v1 内容,已弃用。大多数时候,图形定义文件以“pb”扩展名存储。在这种情况下,您可以使用 tf.compat.v1.lite.TFLiteConverter.from_frozen_graph(...)
进行转换。
“pb”关键字的意思是“protobuf”,这是一种二进制序列化格式,正在TensorFlow产品中使用。因此,TensorFlow 中的“pb”文件可能会根据上下文携带不同的内容。