Восстановление нескольких моделей с общими слоями в Keras - PullRequest
0 голосов
/ 08 июля 2020

Использование tensorflow-gpu 2.0.0.b1.

У меня есть набор полностью подключенных моделей от Model_0 до Model_n в списке с именем mymodels. Входной слой и первые 3 плотных слоя называются «Входной, Shared_0, Shared_1, Shared_2», и каждая модель имеет дополнительные плотные слои, подключенные к «Shared_2». Эти модели создаются с использованием подхода FunctionalAPI.

Я пытаюсь сохранить модели и восстановить их позже и продолжить обучение.

Проблема: в настоящее время я сохраняю модели с помощью mymodels [i] .save (f'Model_ {i} / '). В настоящее время я использую mymodels [i] = tf.keras.models.load_model (f'Model_ {i} / ') для загрузки моделей.

При проверке слоев моделей я вижу, что общий слои являются теми же объектами до их сохранения. После загрузки моделей общие слои представляют собой разные объекты для каждой модели, но имеют правильные имена. т.е. mymodels [0] .layers [1] == mymodels [1] .layers [1] возвращает True перед сохранением, но возвращает False после загрузки.

Каков правильный подход к сохранению моделей и загрузке им продолжить обучение?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...