无法将Keras模型转换为Coreml

时间:2019-09-24 04:08:04

标签: keras coreml

我尝试了多种方法使用core ml工具将Keras模型转换为core ml,但这给了我这个错误。

  

不支持Keras图层”。

我正在尝试将.h5模型转换为核心ml,以便可以在我的应用中使用它,但它给了我一些我无法解决的错误。另外,我尝试将.h5模型转换为PB(冻结图),但在那儿遇到了错误。

这是我的模型的样子。

img_input = layers.Input(shape=(224, 224, 3))


seed = 230

numpy.random.seed(seed)


x = layers.Conv2D(16, 3, activation='relu')(img_input)

x = layers.MaxPooling2D(2)(x)

x = layers.Conv2D(32, 3, activation='relu')(x)

x = layers.MaxPooling2D(2)(x)

x = layers.Flatten()(x)

x = layers.Dense(128, activation='relu')(x)

x = layers.Dropout(0.4)(x)

output = layers.Dense(3, activation='softmax')(x)

model = Model(img_input, output)

model.compile(loss ='sparse_categorical_crossentropy',optimizer ='adam',metrics = ['accuracy'])

这是我在网上找到的将Keras模型转换为核心ml工具的代码。

导入喀拉拉邦 导入coremltools

fcn_mlmodel = coremltools.converters.keras.convert(model,input_names ='image',image_input_names ='image',output_names ='class_label')

fcn_mlmodel.input_description ['image'] =“图片大小(224,224,3)”

fcn_mlmodel.output_description ['class_label'] =“类标签”

fcn_mlmodel.save(“ Test_my.mlmodel”)

Err:不支持Keras图层”。 –

1 个答案:

答案 0 :(得分:0)

无法重现您的问题,请复制所有内容。也许是您的版本有问题:

pip install -U coremltools==3.0b6 tensorflow==1.13.1 keras==2.2.4协同工作良好。