我可以将在 Google Colab 的 Tensorflow 上创建的“.py”或“.ipynb”model/file 转换为 coreML 模型/文件吗?

Can I convert a ".py" or ".ipynb" model/file created on Google Colab's Tensorflow to a coreML model/ file?

我在 Google Colab 的 Tensorflow 上创建了一个 CNN 模型,并将该文件下载为“.py”文件。如何将此文件转换为“.coreml”文件?

非常感谢任何建议!

谢谢!

关于如何转换为 Core ML 的 .mlmodels 的文档:https://developer.apple.com/documentation/coreml/converting_trained_models_to_core_ml

对于 TensorFlow 模型,您需要将其转换为 frozen.pb 模型作为转换函数的输入。以下是一些示例:https://github.com/tf-coreml/tf-coreml/tree/master/examples

如果您下载了 .py 文件,那么您还没有下载模型,而是下载了整个 Python 脚本。

编译模型后,可以使用 python 包 coremltools 将 TensorFlow/Keras 模型转换为 .mlmodel 文件。

import coremltools

core_mlmodel = coremltools.converters.keras.convert(your_keras_model, respect_trainable=True)
core_mlmodel.save("YourModel.mlmodel")

然后您会在 Files 的左侧找到您的模型。

@塞巴斯蒂安·J·沃格特。这是我的转换代码。这是正确的吗?谢谢!

import coremltools

category_output_labels = ['dress', 'shirt', 'trousers']
color_output_labels = ['black', 'blue', 'green', 'pink', 'red', 
'white']

coreml_model = coremltools.converters.keras.convert('./fashion_multi_output_v02.h5',

input_names='image', image_input_names='image', class_labels=['category_output_labels', 'color_output_labels'])