(1)cannot import name 'to_categorical' from 'keras.utils'
原代码位置:
from keras.utils import to_categorical
解决:版本问题,把头改成这样:
from keras import utils as np_utils
#调用时
np_utils.to_categorical()
(2)cannot import name 'Adam' from 'keras.optimizers'
原代码:
from keras.optimizers import Adam
opt =Adam(lr=lr,decay =lr/epochs)
解决:keras库更新后无法按照原方式导入包
修改为:
from keras.optimizers import adam_v2
opt = adam_v2.Adam(learning_rate =lr ,decay=lr/epochs)
(3)No module named 'keras.utils.training_utils'
原代码:
from keras.utils.training_utils import multi_gpu_model
解决:是因为模块位置变了,所以改为:
from tensorflow.keras.utils import multi_gpu_model
(4)from keras.backend.tensorflow_backend import set_session
ModuleNotFoundError: No module named 'keras.backend.tensorflow_backend'; 'keras.backend' is not a package
原代码:
from keras.backend.tensorflow_backend import set_session
set_session(tf.Session(config=config))
解决:因为tensorflow2.0以上的版本已经没有set_session
去掉import,直接调用:
tf.compat.v1.keras.backend.set_session(tf.compat.v1.Session(config=config))
(5)太多版本问题,直接降低安装了低版本的tensorflow
最低只能安装2.2.0的tensorflow,对应2.3.1的keras