Tensorflow v1.4: Layer.input не поддерживается в режиме ожидания

Я понимаю, что режим Eager - это новая альфа-функция в ночных сборках и что он еще не идеален, но я не знаю, есть ли какие-либо обходные пути tf.keras для этой проблемы.

Ошибка Layer.input not supported in Eager mode. срабатывает на блоке

model = tf.keras.models.Sequential()
model.add(tf.layers.Dense(2, input_shape = (None, 1)))
model.add(tf.layers.Dense(units = 1))
model.compile(optimizer = "sgd", loss = "mean_squared_error")

Я ничего не знаю о keras или API тензорного потока keras, и мне было интересно, есть ли способ избежать Layer.input с помощью методов keras, чтобы оставаться в режиме Eager. Следуя руководству в документации tf.Eager, я подтвердил, что model = tf.layers.Dense(1) работает, но я не знаю, как добавить еще один слой.

Любая помощь очень ценится.

РЕДАКТИРОВАТЬ Начиная с tensorflow v1.10, keras поддерживается в активном режиме.


person abeoliver    schedule 09.11.2017    source источник
comment
Активировали ли вы активный режим тензорного потока, вызвав tfe.enable_eager_execution() перед запуском этого блока кода? По умолчанию активный режим отключен.   -  person Shanqing Cai    schedule 09.11.2017
comment
@scai Да, я это сделал, я считаю, что любой интерфейс, который хочет использовать keras, просто еще не поддерживается. Мне интересно, какие методы keras существуют, чтобы избежать Layer.input   -  person abeoliver    schedule 13.11.2017
comment
Я считаю, что это должно быть решено сейчас, поскольку Eager теперь поддерживает модели Keras.   -  person Max Ghenis    schedule 09.09.2018


Ответы (1)


Keras Models еще не поддерживаются при активном исполнении, но слои Keras поддерживаются. Это означает, что, хотя вы еще не можете использовать tf.keras.models.Sequential, вы можете комбинировать слои самостоятельно. См. руководство пользователя.

Надеюсь, это поможет.

person ash    schedule 15.11.2017