tf.keras.backend.get_session () и keras.backend.get_session () возвращают разные объекты сеанса - PullRequest
1 голос
/ 31 мая 2019

Я заметил, что tf.keras.backend.get_session () и keras.backend.get_session () возвращают разные объекты сеанса.

В любом случае, чтобы убедиться, что они возвращают один и тот же объект?У меня есть некоторый код, который использует tf.keras.backend.get_session () для сохранения модели Keras с помощью tf.saved_model.simple_save, но он выдает неинициализированную ошибку, если модель поступает из библиотеки, которая использует keras вместо тензор-поток.keras

Пример кода:

import tensorflow as tf
from keras.applications import ResNet50
import keras.backend as K
import tensorflow.keras.backend as J

model = ResNet50()
model.compile(optimizer='adam', loss='categorical_crossentropy', metrics=['accuracy'])

print(K.get_session())
print(J.get_session())

1 Ответ

2 голосов
/ 31 мая 2019

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

Если у вас действительно есть веская причина для изменения сеанса, вы можете использовать K.set_session, чтобы вручную установить сеанс для объекта, возвращаемого другой реализацией.

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