导入错误:无法导入名称'transpose_shape'。

8
我正在跟随Coursera的Andrew Ng的深度学习课程,学习使用YOLO算法进行物体检测。我正在尝试在我的Windows PC上使用Anaconda Navigator运行该算法,已经安装了Keras以在TensorFlow后端上运行。但是当我输入以下命令时:
import tensorflow as tf
from keras import backend as K

它显示了以下内容:
Using TensorFlow backend.
Traceback (most recent call last):

  File "<ipython-input-8-0bcaeab92875>", line 2, in <module>
    from keras import backend as K

  File "C:\Users\AbanoubMamdouh\Anaconda3\lib\site-packages\keras\__init__.py", line 3, in <module>
    from . import utils

  File "C:\Users\AbanoubMamdouh\Anaconda3\lib\site-packages\keras\utils\__init__.py", line 6, in <module>
    from . import conv_utils

  File "C:\Users\AbanoubMamdouh\Anaconda3\lib\site-packages\keras\utils\conv_utils.py", line 9, in <module>
    from .. import backend as K

  File "C:\Users\AbanoubMamdouh\Anaconda3\lib\site-packages\keras\backend\__init__.py", line 89, in <module>
    from .tensorflow_backend import *

  File "C:\Users\AbanoubMamdouh\Anaconda3\lib\site-packages\keras\backend\tensorflow_backend.py", line 24, in <module>
    from ..utils.generic_utils import transpose_shape

ImportError: cannot import name 'transpose_shape'

似乎在tensorflow_backend.py文件的这一行存在问题:
from ..utils.generic_utils import transpose_shape

非常感谢您的帮助!谢谢


1
TF2.0开始,keras已经与tensorflow集成。因此,您可以将后端模块导入为from tensorflow.keras import backend as k,您将不会遇到上述问题。 - user11530462
5个回答

4

尝试使用pip卸载tensorflow和keras,然后安装keras,它也会安装tensorflow。这对我有效!!!


很奇怪,因为我的原始安装是在一个空的环境中,但它确实解决了问题! - Dr_Zaszuś

3
可能是安装包配置错误:
pip uninstall -y tensorflow keras tf-nightly keras-nightly

接着:

pip install tensorflow

0

使用 from tensorflow.keras import backend as K 代替 from keras import backend as K。


0

尝试重新安装现有版本,但没有成功。

我正在运行Windows 10,Python 3.7.5 64位版本

对我有效的方法是安装Keras 2.3.1,Tensorflow 2.0


0
from tensorflow.keras import

因为Keras已经被TensorFlow所拥有。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接