如何在 Edge TPU 模型编译器上编译嵌入提取器?
How to compile a embedding extractor on Edge TPU Model Compiler?
在 coral 上编译嵌入式提取器时出错
我正在尝试在我的 coral edgeTPU 设备上重新训练图像分类器。因此,我按照 Coral's "Retrain an image classification model on-device" tutorial:
上解释的步骤进行操作
嵌入式提取器创建
事实上,我根据给定的示例创建了一个嵌入提取器 tflite 文件:
tflite_convert \
--output_file=mobilenet_v1_embedding_extractor.tflite \
--graph_def_file=mobilenet_v1_1.0_224_quant_frozen.pb \
--input_arrays=input \
--output_arrays=MobilenetV1/Logits/AvgPool_1a/AvgPool
Edge TPU 模型编译器上传
我得到了文件 mobilenet_v1_embedding_extractor.tflite
并将其上传到 Edge TPU Model Compiler
中。不幸的是,编译过程确实失败了,我收到以下错误消息:
ERROR: Something went wrong. Couldn't compile model.
More details
--------------
Start Time 2019-05-02T14:14:53.309219Z
State FAILED
Duration 5.963912978s
Type type.googleapis.com/google.cloud.iot.edgeml.v1beta1.CompileOperationMetadata
Name operations/compile/16259636989695619987
根据我的理解,必须在使用 classification_transfer_learning.py
脚本在 raspberryPi + edgeTPU/devBoard 上执行设备上学习之前完成上述过程。
希望大家指点解决问题,在此先谢过了。
2019 年 5 月 3 日更新
当我使用未修改的 mobilenet_v1_1.0_224_quant.tflite
模型时,编译工作没有任何错误。
我用的是quantized model from tensorflow.
似乎缺少 tflite_convert 的某些标志。我们会尽快在网站上修复。请尝试:
tflite_convert \
--output_file=mobilenet_v1_embedding_extractor.tflite \
--graph_def_file=mobilenet_v1_1.0_224_quant_frozen.pb \
--inference_type=QUANTIZED_UINT8 \
--mean_values=128 \
--std_dev_values=128 \
--input_arrays=input \
--output_arrays=MobilenetV1/Logits/AvgPool_1a/AvgPool
表明您要转换为量化模型,这是edgetpu转换器目前唯一有效的格式。使用这些标志,它应该可以正常工作。
在 coral 上编译嵌入式提取器时出错
我正在尝试在我的 coral edgeTPU 设备上重新训练图像分类器。因此,我按照 Coral's "Retrain an image classification model on-device" tutorial:
上解释的步骤进行操作嵌入式提取器创建
事实上,我根据给定的示例创建了一个嵌入提取器 tflite 文件:
tflite_convert \
--output_file=mobilenet_v1_embedding_extractor.tflite \
--graph_def_file=mobilenet_v1_1.0_224_quant_frozen.pb \
--input_arrays=input \
--output_arrays=MobilenetV1/Logits/AvgPool_1a/AvgPool
Edge TPU 模型编译器上传
我得到了文件 mobilenet_v1_embedding_extractor.tflite
并将其上传到 Edge TPU Model Compiler
中。不幸的是,编译过程确实失败了,我收到以下错误消息:
ERROR: Something went wrong. Couldn't compile model.
More details
--------------
Start Time 2019-05-02T14:14:53.309219Z
State FAILED
Duration 5.963912978s
Type type.googleapis.com/google.cloud.iot.edgeml.v1beta1.CompileOperationMetadata
Name operations/compile/16259636989695619987
根据我的理解,必须在使用 classification_transfer_learning.py
脚本在 raspberryPi + edgeTPU/devBoard 上执行设备上学习之前完成上述过程。
希望大家指点解决问题,在此先谢过了。
2019 年 5 月 3 日更新
当我使用未修改的 mobilenet_v1_1.0_224_quant.tflite
模型时,编译工作没有任何错误。
我用的是quantized model from tensorflow.
似乎缺少 tflite_convert 的某些标志。我们会尽快在网站上修复。请尝试:
tflite_convert \
--output_file=mobilenet_v1_embedding_extractor.tflite \
--graph_def_file=mobilenet_v1_1.0_224_quant_frozen.pb \
--inference_type=QUANTIZED_UINT8 \
--mean_values=128 \
--std_dev_values=128 \
--input_arrays=input \
--output_arrays=MobilenetV1/Logits/AvgPool_1a/AvgPool
表明您要转换为量化模型,这是edgetpu转换器目前唯一有效的格式。使用这些标志,它应该可以正常工作。