Skip to main content

将模型转换为 Google Coral 的 Edge TPU TFlite 格式

简介

Coral M.2 加速器 配备双 Edge TPU,是一个 M.2 模块,可为具有 M.2 E-key 插槽的现有系统和产品提供两个 Edge TPU 协处理器。TensorflowPytorch 是最流行的深度学习框架。因此,为了使用 Edge TPU,我们需要将模型编译为 Edge TPU 格式。

本文将指导您完成将模型编译并运行在 Google Coral TPU 上的过程,使您能够利用其高性能机器学习应用的能力。

准备硬件

树莓派 5 8GB树莓派 M.2 HAT+Coral M.2 加速器 B+M key

安装硬件

pir

转换模型

note

在开始之前,请确保您已按照安装指南将 Google Coral TPU 安装到 Pi 5。

note

所有过程均已在 Python 3.11.9 上测试。

安装 Tensorflow

pip install tensorflow

检查 tflite_converter

tflite_convert -h

结果应如下所示:

2024-07-23 10:41:03.750087: I tensorflow/core/platform/cpu_feature_guard.cc:182] 此 TensorFlow 二进制文件已优化以在性能关键操作中使用可用的 CPU 指令。
要启用以下指令:AVX2 FMA,请在其他操作中使用适当的编译器标志重新构建 TensorFlow。
2024-07-23 10:41:04.276520: W tensorflow/compiler/tf2tensorrt/utils/py_utils.cc:38] TF-TRT 警告:未找到 TensorRT
usage: tflite_convert [-h] --output_file OUTPUT_FILE [--saved_model_dir SAVED_MODEL_DIR | --keras_model_file KERAS_MODEL_FILE] [--saved_model_tag_set SAVED_MODEL_TAG_SET]
[--saved_model_signature_key SAVED_MODEL_SIGNATURE_KEY] [--enable_v1_converter] [--experimental_new_converter [EXPERIMENTAL_NEW_CONVERTER]]
[--experimental_new_quantizer [EXPERIMENTAL_NEW_QUANTIZER]]

TensorFlow Lite 转换器的命令行工具。

可选参数:
-h, --help 显示此帮助信息并退出
--output_file OUTPUT_FILE
输出文件的完整路径。
--saved_model_dir SAVED_MODEL_DIR
包含 SavedModel 的目录的完整路径。
--keras_model_file KERAS_MODEL_FILE
包含 tf.Keras 模型的 HDF5 文件的完整路径。
--saved_model_tag_set SAVED_MODEL_TAG_SET
用逗号分隔的标签集,用于标识 SavedModel 中的 MetaGraphDef。所有标签必须存在。要传递空标签集,请传递 ""。(默认值 "serve")
--saved_model_signature_key SAVED_MODEL_SIGNATURE_KEY
标识包含输入和输出的 SignatureDef 的键。(默认值 DEFAULT_SERVING_SIGNATURE_DEF_KEY)
--enable_v1_converter
在 2.0 中启用 TensorFlow V1 转换器
--experimental_new_converter [EXPERIMENTAL_NEW_CONVERTER]
实验性标志,可能会更改。启用基于 MLIR 的转换,而不是 TOCO 转换。(默认值 True)
--experimental_new_quantizer [EXPERIMENTAL_NEW_QUANTIZER]
实验性标志,可能会更改。启用基于 MLIR 的量化器,而不是 flatbuffer 转换。(默认值 True)

将 Tensorflow 模型转换为 TFlite 模型

tflite_convert --saved_model_dir=YOUR_MODEL_PATH --output_file=YOUR_MODEL_NAME.tflite

将 TFlite 模型转换为 Edge TPU 模型

note

在将 tflite 模型转换为 edge tpu 模型之前,您应该优化您的模型,请查看优化 Tensorflow 模型

安装 edgetpu 编译器

curl https://packages.cloud.google.com/apt/doc/apt-key.gpg | sudo apt-key add -

echo "deb https://packages.cloud.google.com/apt coral-edgetpu-stable main" | sudo tee /etc/apt/sources.list.d/coral-edgetpu.list

sudo apt-get update

sudo apt-get install edgetpu-compiler

将 TFlite 模型转换为 Edge TPU 模型

edgetpu_compiler YOUR_MODEL_NAME.tflite

然后您应该会得到一个名为 YOUR_MODEL_NAME_edgetpu.tflite 的新文件。

技术支持与产品讨论

感谢您选择我们的产品!我们致力于为您提供各种支持,以确保您使用我们的产品时体验顺畅。我们提供多种沟通渠道,以满足不同的偏好和需求。

Loading Comments...