Keras ValueError: Неизвестный слой: имя при попытке загрузить модель на другую платформу - PullRequest
0 голосов
/ 07 ноября 2018

Я обучил сверточную нейронную сеть, используя Keras 2.2.4 на плате Nvidia Quadro. Я сохранил обученную модель в двух отдельных файлах: один файл (model.json), который описывает архитектуру, и другой файл (model.h5), который имеет все веса.

Я хочу загрузить сохраненную модель на плату Nvidia Jetson TX2, на которой установлен Keras 2.2.2, и пытаюсь сделать это следующим образом:

# load json and create model
    json_file = open(prefix+'final_model.json', 'r')
    loaded_model_json = json_file.read()
    json_file.close()
    loaded_model = model_from_json(loaded_model_json)
# load weights into new model
    loaded_model.load_weights(prefix+"model.h5")
    model = loaded_model

Однако при попытке загрузить я получил следующую ошибку:

Загруженная_модель = model_from_json (загруженная_модель_json)

Файл "/home/nvidia/.local/lib/python3.5/site-packages/keras/engine/saving.py", строка 368, в model_from_json вернуть десериализацию (config, custom_objects = custom_objects) Файл "/home/nvidia/.local/lib/python3.5/site-packages/keras/layers/init.py", строка 55, в десериализации printable_module_name = 'слой') Файл "/home/nvidia/.local/lib/python3.5/site-packages/keras/utils/generic_utils.py", строка 145, в deserialize_keras_object Список (custom_objects.items ()))) Файл "/home/nvidia/.local/lib/python3.5/site-packages/keras/engine/sequential.py", строка 292, из from_config custom_objects = custom_objects) Файл "/home/nvidia/.local/lib/python3.5/site-packages/keras/layers/init.py", строка 55, в десериализации printable_module_name = 'слой') Файл "/home/nvidia/.local/lib/python3.5/site-packages/keras/utils/generic_utils.py", строка 165, в deserialize_keras_object ':' + имя_функции) ValueError: Неизвестный слой: имя

Я также пытался сохранить всю модель в одном файле, но получил ту же ошибку.

Я пробовал решение из здесь , но не смог его решить.

Кто-нибудь видел эту ошибку раньше? Есть предложения?

Ответы [ 2 ]

0 голосов
/ 03 декабря 2018

просто обновите пакет keras до последнего, используя следующую команду

conda update keras

0 голосов
/ 10 ноября 2018

У меня вчера была такая же проблема, я только что обновил керас через конду и все отлично заработало.

...