导入错误:无法从“keras.engine”导入名称“Layer”

问题描述 投票:0回答:3

我在解决这个错误时遇到了困难。 我想将 Layer 对象传递给 python 中的类,我遇到导入错误。 这是错误消息。

Traceback (most recent call last):
  File "/Users/mianafra/Documents/NLP/D2V-BiGRU-CRF/annotate_docs.py", line 3, in <module>
    from wrap import Sequence
  File "/Users/mianafra/Documents/NLP/D2V-BiGRU-CRF/wrap.py", line 6, in <module>
    from models_d2v import BiLSTMCRFD2V_to_dense, save_model, load_model
  File "/Users/mianafra/Documents/NLP/D2V-BiGRU-CRF/models_d2v.py", line 10, in <module>
    from layers import CRF
  File "/Users/mianafra/Documents/NLP/D2V-BiGRU-CRF/layers.py", line 9, in <module>
    from keras.engine import Layer
ImportError: cannot import name 'Layer' from 'keras.engine'   
python keras
3个回答
1
投票

确保您已经安装了项目所需的正确的 Keras 版本。

如果是这个 D2V-BiGRU-CRF 项目,它似乎是

keras==2.2.0


0
投票

我认为您的tensorflow安装有问题,您是否尝试过重新安装tensorflow? 也许尝试看看这里:https://github.com/tensorflow/tensorflow/issues/24847

尝试使用以下命令安装不带 tf 包的 keras:

pip3 install keras

0
投票

尝试导入

from tensorflow.keras.layers import Layer

而不是

from keras.layers import Layer
© www.soinside.com 2019 - 2024. All rights reserved.