无法从“tensorflow.compat.v2.experimental”导入名称“dtensor”

Fyn*_*ynn 18 python tensorflow

我尝试在 Windows 10 计算机上运行 TensorFlow 时遇到问题。代码在我的 MacOS 机器上运行良好。

Traceback (most recent call last):
  File "c:\Users\Fynn\Documents\GitHub\AlpacaTradingBot\ai.py", line 15, in <module>
    from keras.models import Sequential, load_model
  File "C:\Users\Fynn\AppData\Local\Programs\Python\Python39\lib\site-packages\keras\__init__.py", line 24, in <module>
    from keras import models
  File "C:\Users\Fynn\AppData\Local\Programs\Python\Python39\lib\site-packages\keras\models\__init__.py", line 18, in <module>
    from keras.engine.functional import Functional
  File "C:\Users\Fynn\AppData\Local\Programs\Python\Python39\lib\site-packages\keras\engine\functional.py", line 24, in <module>
    from keras.dtensor import layout_map as layout_map_lib
  File "C:\Users\Fynn\AppData\Local\Programs\Python\Python39\lib\site-packages\keras\dtensor\__init__.py", line 22, in <module>
    from tensorflow.compat.v2.experimental import dtensor as dtensor_api  # pylint: disable=g-import-not-at-top
ImportError: cannot import name 'dtensor' from 'tensorflow.compat.v2.experimental' (C:\Users\Fynn\AppData\Local\Programs\Python\Python39\lib\site-packages\tensorflow\_api\v2\compat\v2\experimental\__init__.py)
Run Code Online (Sandbox Code Playgroud)

Jes*_*sen 38

这可能是由于您tensorflow和您的keras版本之间不兼容造成的。特别是我在tensorflow==2.6.0and中看到了这一点keras==2.9.0,但如果其他版本也能导致这种情况,我不会感到惊讶。

通过以下方式更新您的tensorflow版本:

pip install tensorflow==2.8
Run Code Online (Sandbox Code Playgroud)

keras通过以下方式降级您的版本:

pip install keras==2.6
Run Code Online (Sandbox Code Playgroud)

  • 全新安装tensorflow 2.6.0(在Windows机器上)后,按照建议使用Keras 2.6对我来说很有效,只需使用“pip install keras==2.6”即可 (2认同)

Fyn*_*ynn 0

我尝试了很多解决方案都没有效果,最后这个对我有用!

pip3 uninstall tensorflow absl-py astunparse flatbuffers gast google-pasta grpcio h5py keras keras-preprocessing libclang numpy opt-einsum protobuf setuptools six tensorboard tensorflow-io-gcs-filesystem termcolor tf-estimator-nightly typing-extensions wrapt
Run Code Online (Sandbox Code Playgroud)
pip3 install --disable-pip-version-check --no-cache-dir tensorflow
Run Code Online (Sandbox Code Playgroud)