Я пытаюсь преобразовать очень простую модель keras в CoreML, однако входные данные модели CoreML, похоже, не соответствуют моим ожиданиям.
Модель, которую я создаю, имеет форму ввода (5, 10) (пять временных шагов, 10 функций), однако, после преобразования модели и открытия модели в Xcode, она говорит, что тип ввода: MultiArray (Double 10)
, который, по моему пониманию, является одномерным массивом. У меня вопрос, что я делаю не так? Есть ли способ сообщить CoreML, что входные данные конкретно 5x10?
Вот модель keras, которую я создаю
from keras.models import Sequential
from keras.layers import LSTM
from keras.layers import Dense
length = 5
n_features = 10
out_index = 2
model = Sequential()
model.add(LSTM(25, input_shape=(length, n_features)))
model.add(Dense(n_features, activation='softmax'))
model.compile(loss='categorical_crossentropy', optimizer='adam', metrics=['accuracy'])
model.summary()
Я запускаю следующий код для преобразования модели
import coremltools
coreml_model = coremltools.converters.keras.convert(model)
coreml_model.save("Echo.mlmodel")
В Xcode вы можете видеть входные данные, которые он интерпретировал из модели 
Редактировать (01/12/20):
I пытался быть умным, и просто отредактировать модель coreml непосредственно в python,
coreml_model._spec.description.input[0].type.multiArrayType.shape[:] = [1, 5, 10]
К сожалению, это вызывает ошибки компиляции в Xcode 
Также для справки, вот версии библиотеки, на которых работает мой блокнот:
keras 2.2.5
tensorflow 1.15.0
coremltools 3.1