首页 > 解决方案 > tensorflow_hub 找不到“keras.api”模块

问题描述

我正在使用带有 python 3.8 的 Anaconda Spyder5 我的 tensorflow 工作正常,我可以训练和预测 NN。但是当我尝试导入“tensorflow_hub”时,出现以下错误:

import tensorflow as tf
print("TF Version: ", tf.__version__)

import tensorflow_hub as hub
print("TF-Hub version: ", hub.__version__)

生成的错误:

TF Version:  2.6.0
Traceback (most recent call last):

  File "C:\Users\aurelio\AppData\Local\Temp/ipykernel_9332/220386776.py", line 4, in <module>
    import tensorflow_hub as hub

  File "C:\ProgramData\Anaconda3\envs\tenso\lib\site-packages\tensorflow_hub\__init__.py", line 29, in <module>
    from tensorflow_hub.estimator import LatestModuleExporter

  File "C:\ProgramData\Anaconda3\envs\tenso\lib\site-packages\tensorflow_hub\estimator.py", line 64, in <module>
    class LatestModuleExporter(tf_v1.estimator.Exporter):

  File "C:\Users\aurelio\AppData\Roaming\Python\Python38\site-packages\tensorflow\python\util\lazy_loader.py", line 62, in __getattr__
    module = self._load()

  File "C:\Users\aurelio\AppData\Roaming\Python\Python38\site-packages\tensorflow\python\util\lazy_loader.py", line 45, in _load
    module = importlib.import_module(self.__name__)

  File "C:\ProgramData\Anaconda3\envs\tenso\lib\importlib\__init__.py", line 127, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)

  File "C:\ProgramData\Anaconda3\envs\tenso\lib\site-packages\tensorflow_estimator\__init__.py", line 10, in <module>
    from tensorflow_estimator._api.v1 import estimator

  File "C:\ProgramData\Anaconda3\envs\tenso\lib\site-packages\tensorflow_estimator\_api\v1\estimator\__init__.py", line 10, in <module>
    from tensorflow_estimator._api.v1.estimator import experimental

  File "C:\ProgramData\Anaconda3\envs\tenso\lib\site-packages\tensorflow_estimator\_api\v1\estimator\experimental\__init__.py", line 10, in <module>
    from tensorflow_estimator.python.estimator.canned.dnn import dnn_logit_fn_builder

  File "C:\ProgramData\Anaconda3\envs\tenso\lib\site-packages\tensorflow_estimator\python\estimator\canned\dnn.py", line 29, in <module>
    from tensorflow_estimator.python.estimator.canned import optimizers

  File "C:\ProgramData\Anaconda3\envs\tenso\lib\site-packages\tensorflow_estimator\python\estimator\canned\optimizers.py", line 34, in <module>
    'Adagrad': tf.keras.optimizers.Adagrad,

  File "C:\Users\aurelio\AppData\Roaming\Python\Python38\site-packages\tensorflow\python\util\lazy_loader.py", line 62, in __getattr__
    module = self._load()

  File "C:\Users\aurelio\AppData\Roaming\Python\Python38\site-packages\tensorflow\python\util\lazy_loader.py", line 45, in _load
    module = importlib.import_module(self.__name__)

  File "C:\ProgramData\Anaconda3\envs\tenso\lib\importlib\__init__.py", line 127, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)

ModuleNotFoundError: No module named 'keras.api'

我试过的:

  1. 卸载并安装所有 tensorflow 和 keras 包
  2. 升级所有软件包

非常欢迎任何帮助!

谢谢

标签: pythontensorflowkerasmodulenotfounderrortensorflow-hub

解决方案


我们目前看到 TF 2.6.0 安装tensorflow-estimator2.7.0 的问题。如果您已安装tensorflow-estimator2.7.0,请尝试将其降级到 2.6.0。如果您没有 2.7.0 版本,请提供您已安装的库和版本的更完整列表。


推荐阅读