当前位置: 首页 > 知识库问答 >
问题:

获取input_array和output_array项以将模型转换为tflite格式

缪远
2023-03-14

请不要让我直接将Keras模型转换为tflite,因为我的.h5文件无法直接转换为.tflite。我设法将.h5文件转换为.pb

我使用Keras跟踪此Jupyter笔记本进行人脸识别。然后,我将模型保存到模型中。h5文件,然后将其转换为冻结的图形,模型。pb使用。

现在我想在Android中使用我的张量流文件。为此,我需要Tensorflow Lite,这需要我将模型转换为。tflite格式。

为此,我在这里尝试遵循官方指南。如您所见,它需要input_arrayoutput_arrayarray。如何从我的模型中获取这些内容的详细信息。pb文件?

共有1个答案

储法
2023-03-14

< code >输入数组和< code >输出数组是分别存储输入和输出张量的数组。

他们打算通知TFLite转换器将在推理时使用的输入和输出张量。

对于凯拉斯模型,

输入张量是第一层的占位张量。

input_tensor = model.layers[0].input

输出张量可能与激活函数有关。

output_tensor = model.layers[ LAST_LAYER_INDEX ].output

对于冻结图,

import tensorflow as tf
gf = tf.GraphDef()   
m_file = open('model.pb','rb')
gf.ParseFromString(m_file.read())

我们得到节点的名称,

for n in gf.node:
    print( n.name )

要得到张量,

tensor = n.op

输入张量可以是占位张量。输出张量是使用< code>session.run()运行的张量

对于转换,我们得到,

input_array =[ input_tensor ]
output_array = [ output_tensor ]
 类似资料:
  • 我目前在转换张量流时遇到问题。pb模型到TFlite格式。我目前正在遵循谷歌代码实验室的指示,错误说 Traceback(最近调用的最后一次):文件/usr/local/bin/tflite_convert,第5行,在tensorflow.lite.python.tflite_convert导入主重要错误:没有模块命名lite.python.tflite_convert 我正在使用谷歌提供的命令

  • 我已经使用tensorflow后端训练了一个DNN,我想在FireBase中托管它。训练好的模型被保存为.meta文件,我尝试使用下面的代码将模型转换为tflite,但我遇到了一些错误。那么我如何将这个模型转换成Tensorflow Lite呢?

  • 我有以下脚本,使用它我能够成功地将deeplabv3_mnv2_pascal_train.pb模型(点击这里下载)转换成tflite格式 我使用以下python脚本获得了DeepLabv3_mnv2_pascal_train.pb的input_arrays和output_arrays。我将这个python脚本取自:获取input_array和output_array项以将model转换为tflit

  • 我已经使用Keras来微调MobileNet v1。现在我有,我需要将其转换为TensorFlow Lite,以便在Android应用程序中使用。 我使用TFLite转换脚本。我可以在没有量化的情况下进行转换,但我需要更高的性能,所以我需要进行量化。 如果我运行此脚本: 它失败了: F tensorflow/contrib/lite/toco/tooling\u util。cc:1634]Arra

  • 我想在Tensorflow中将整数量化的tflite模型转换为冻结图(.pb)。我通读并尝试了许多有关StackOverflow的解决方案,但没有一个有效。具体来说,toco不起作用(输出格式不能是TENSORFLOW\u GRAPHDEF)。 我的最终目标是通过tf2onnx获得量化的ONNX模型,但tf2onnx不支持tflite作为输入(只支持保存的_模型、检查点和图形_定义)。但是,在使用

  • 我是Tensorflow的初学者,请原谅我这个简单的问题,但我在哪里都找不到这个答案。我正致力于将mobilenet分段模型(http://download.tensorflow.org/models/deeplabv3_mnv2_pascal_trainval_2018_01_29.tar.gz)转换为Tensorflow-lite,用于移动推理,已经用了一个多星期了,但没有成功。我无法正确定义