Я работаю с Keras, в комплекте с Tensorflow 2.1. Я пробую много разных модельных архитектур. Я узнал, что объекты Keras Model
трудно, если не невозможно, сериализовать, используя Python s pickle
. Использование JSON
, конечно, исключено.
Запись объекта Model
на диск с использованием pickle.dump()
не дает сбоя. Однако, когда вы пытаетесь перезагрузить его, вы потеряли вес модели. Я не уверен почему. Чтобы обойти эту проблему, я создал класс оболочки Python для моделей Keras, который может реконструировать модель из данных, которые можно сериализовать. Я должен перекомпилировать модель и установить ее вес после перезагрузки с диска, но это не является огромным препятствием.
Теперь я хочу сделать то же самое для Optimizer
, который я сделано для моих моделей. Я уже определил, что JSON отклоняет Оптимизаторы, и Pickle принимает их. Но я также знаю, что при работе с объектами Model открепление может не работать.
Возможно, у меня проблема с объектами Tensorflow Dataset
. Я могу создать подкласс Dataset
, но я могу добавлять только атрибуты и НОВЫЕ методы. Мне не удалось переопределить существующий метод набора данных (я хотел изменить Dataset.padded_batch()
).
Прежде чем тратить время на попытки применить подходы Pythoni c к объектам Keras (Tensorflow): кто-нибудь знает, какой из этих объекты могут быть сериализованы и / или подклассы? Где-нибудь есть гид? Пока мне действительно нужно знать об Оптимизаторах, но в будущем, я думаю, я мог бы попытаться сохранить или создать подкласс другого объекта.
Спасибо за ваш совет.