导入错误:无法从部分初始化的模块 'keras' 导入名称 '__version__'(很可能是由于循环导入)

时间:2021-07-06 05:28:17

标签: python tensorflow keras

我已经为我的机器学习项目导入了以下库,但是当我尝试在命令提示符下运行我的模型时出现问题...

from tensorflow.python.keras import Model

from tensorflow.python.keras.layers import Layer, Input, Conv2D, MaxPooling2D, Conv2DTranspose, concatenate, Lambda

from tensorflow.python.keras.initializers import TruncatedNormal

from keras.optimizers import Adam

from tensorflow.python.keras.callbacks import ModelCheckpoint, LearningRateScheduler, CSVLogger, Callback

from tensorflow.python.keras.models import load_model

from tensorflow.python.keras.utils import Sequence

这是我尝试在命令提示符下运行模型时收到的错误消息。

ImportError: cannot import name '__version__' from partially initialized module 'keras' (most likely due to a circular import) (C:\Users\gurun\AppData\Local\Programs\Python\Python39\lib\site-packages\keras\__init__.py)

1 个答案:

答案 0 :(得分:0)

始终建议使用 tensorflow.keras.* 而不是 tensorflow.python.*

这是因为 tensorflow.python.* 下的任何内容都是私有的,仅用于开发,而不是公共使用。

import tensorflow as tf
print(tf.__version__)

from tensorflow.keras import Model

from tensorflow.keras.layers import Layer, Input, Conv2D, MaxPooling2D, Conv2DTranspose, concatenate, Lambda

from tensorflow.keras.initializers import TruncatedNormal

from tensorflow.keras.optimizers import Adam

from tensorflow.keras.callbacks import ModelCheckpoint, LearningRateScheduler, CSVLogger, Callback

from tensorflow.keras.models import load_model

from tensorflow.keras.utils import Sequence

输出:

2.5.0