AttributeError:模块'keras.engine'没有属性'input_layer'

时间:2018-07-05 08:19:52

标签: python keras

我正在尝试使用google colab!

但是我一直在说喀拉拉邦的问题: AttributeError:模块“ keras.engine”没有属性“ input_layer”

但是,检查他们的github库,在keras / engine中有一个input_layer.py。

此外,这在本地有效,只是不适用于google colab。

有什么想法吗?

2 个答案:

答案 0 :(得分:1)

上面的导入在您的本地设备上有效,因为您没有在本地设备上使用任何硬件加速器(GPU)。我不知道为何此导入无法在GPU运行时上运行的原因。这是两个解决方法。

  1. 将Colab运行时更改为,此导入将正常进行。
  2. 我查看了 input_layer 的代码,发现它具有 Input (函数)和 InputLayer (类)。因此,如果您不想更改运行时,则需要进行重构。

删除

from keras.engine import input_layer.InputLayer
from keras.engine import input_layer.Input

from keras.layers import InputLayer, Input

我希望两个人都做同样的事情

答案 1 :(得分:0)

我对Google colab有同样的问题。我得到的错误是:

模块'tensorflow._api.v1.keras'没有属性'engine'。

这是我的代码:

 import tensorflow as tf
 from tensorflow import keras
 from keras import backend as K

 def reinitLayers(model):
     session = K.get_session()
     for layer in model.layers: 
         if isinstance(layer,keras.engine.network.Network):
             reinitLayers(layer)
....

但是存在keras.engine: https://github.com/tensorflow/tensorflow/tree/master/tensorflow/python/keras/engine