Не удается преобразовать модель Keras в Coreml - PullRequest
0 голосов
/ 24 сентября 2019

Я пробовал различные способы преобразования моей модели Keras в core ml с использованием инструментов core ml, но это выдает мне эту ошибку.

Слой Keras '' не поддерживается.

Я пытаюсь преобразовать модель .h5 в core 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', оптимизатор = 'adam', metrics = ['precision']))

это код, который я нашел в Интернете для преобразования модели Keras в инструменты core ml.

import keras import 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")

Ошибка: слой Keras '' не поддерживается.-

1 Ответ

0 голосов
/ 25 сентября 2019

Не могу воссоздать вашу проблему, все скопировал.Возможно, это проблема ваших версий:

pip install -U coremltools==3.0b6 tensorflow==1.13.1 keras==2.2.4 хорошо работает вместе.

...