【问题标题】:Tensorflow v1.4: Layer.input not supported in Eager modeTensorflow v1.4:Eager 模式不支持 Layer.input
【发布时间】:2017-11-09 15:05:41
【问题描述】:

我了解 Eager 模式是 nightly 构建中的一个新 alpha 功能,它还不完美,但我不知道是否有任何 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 或 keras tensorflow API 一无所知,我想知道是否有办法使用 keras 技术避免 Layer.input 以保持在 Eager 模式下。按照 tf.Eager 文档中的教程,我已确认 model = tf.layers.Dense(1) 有效,但我不知道如何添加另一层。

非常感谢任何帮助。

编辑 从 tensorflow v1.10 开始,在 Eager 模式下支持 keras。

【问题讨论】:

  • 在运行此代码块之前,您是否通过调用 tfe.enable_eager_execution() 激活了 TensorFlow Eager 模式? Eager 模式默认禁用。
  • @scai 是的,我做到了,我相信 keras 想要使用的任何接口都不支持。我想知道有什么 keras 方法可以避免Layer.input
  • 我认为现在应该解决这个问题,因为 Eager 现在支持 Keras 模型。

标签: python tensorflow keras eager


【解决方案1】:

Keras Models 尚不支持 Eager Execution,但 Keras 层支持。这意味着虽然您还不能使用tf.keras.models.Sequential,但您可以自己组合图层。见the user guide

希望对您有所帮助。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-07-10
    • 1970-01-01
    • 2022-09-27
    相关资源
    最近更新 更多