13

AutoML 似乎很棒。一个大问题是 - 我们可以导出训练好的模型以进行离线推理,例如使用 tensorflow 或 tensoflow lite 吗?

4

4 回答 4

5

自 2019 年 3 月起,不支持此功能。如果您对此功能感兴趣,请对此请求加注星标: https ://issuetracker.google.com/issues/113122585

还要检查该链接,以防谷歌自此答案以来已实施该功能。

更新:已为分类添加了初始支持,但尚未检测。请参阅彼得吉布森的回答。

于 2019-03-14T14:09:31.107 回答
3

编辑:现在可以导出图像分类和对象检测模型。请参阅https://cloud.google.com/vertex-ai/docs/export/export-edge-model#object-detection

原始答案如下

AutoML Vision 的当前状态(2019 年 8 月)是您可以导出 AutoML 图像分类模型,但不能导出对象检测。此功能处于测试阶段(AutoML Vision 本身也是如此)。我找不到其他 AutoML 产品的详细信息,也没有亲自尝试过,所以我不确定它们的状态。

来自https://cloud.google.com/vision/automl/docs/

AutoML Vision Edge 现在允许您导出自定义训练模型。

  • AutoML Vision Edge 允许您训练和部署针对边缘设备优化的低延迟、高精度模型。
  • 借助 Tensorflow Lite、Core ML 和容器导出格式,AutoML Vision Edge 支持各种设备。
  • 支持的硬件架构:Edge TPU、ARM 和 NVIDIA。
  • 要在 iOS 或 Android 设备上构建应用程序,您可以使用 ML Kit 中的 AutoML Vision Edge。此解决方案可通过 Firebase 获得,并提供端到端开发流程,用于使用 ML Kit 客户端库创建自定义模型并将其部署到移动设备。

文档https://cloud.google.com/vision/automl/docs/edge-quickstart

我训练了一个分类模型,导出了 tflite 模型(它导出到云存储),并且能够下载模型文件并使用 Python API 将它们加载到 tensorflow 中,而没有太多麻烦。以下是加载模型和运行推理的相关代码:

基于https://www.tensorflow.org/lite/guide/inference#load_and_run_a_model_in_python

# Load TFLite model and allocate tensors.
interpreter = tf.lite.Interpreter(model_path=MODEL_PATH)
interpreter.allocate_tensors()

# Get input and output tensors.
input_details = interpreter.get_input_details()
output_details = interpreter.get_output_details()

def predict(frame):
    interpreter.set_tensor(input_details[0]['index'], frame)
    interpreter.invoke()

    # The function `get_tensor()` returns a copy of the tensor data.
    # Use `tensor()` in order to get a pointer to the tensor.
    output_data = interpreter.get_tensor(output_details[0]['index'])
于 2019-08-05T02:46:29.110 回答
2

应该是这样的:

https://cloud.google.com/vision/automl/docs/deploy

请注意,导出选项(至少目前)不会出现在您已经训练好的模型上。您必须选择其中一个模型,进行训练,然后您可以选择将模型留在云端或生成边缘版本。

您可以使用 ExportModel API 将通用 Tensorflow Lite 格式、Edge TPU 编译的 TensorFlow Lite 格式或 TensorFlow 格式的图像分类模型导出到 Google Cloud Storage 位置。

于 2019-05-23T11:09:47.473 回答
0

尚无法从 AutoML 导出模型。@Infinite Loops、automl 和 ml 引擎是不同的产品。

于 2018-10-12T07:06:07.830 回答