运行tensorflow.keras.models.load_model(")时出现上述错误
我在Spyder环境中研究tensorflow,没有任何问题。由于我一直得到提示(每当启动Spyder时),Spyder的新版本5可用,我卸载了现有的Spyder版本并安装了最新版本。事实上,我卸载了Anaconda并重新安装了它(因为上面的问题仍然存在)。但是,当运行相同的程序并包含用于加载现有保存的LSTM模型的代码时,我得到了以下错误:
prediction_model = tensorflow.keras.models.load_model(")模型保存为。h5文件。
运行load_model命令时的完整错误字符串如下:
File "C:Usersayappanaconda3libsite-packageskerasutilstraceback_utils.py", line 67, in error_handler
raise e.with_traceback(filtered_tb) from None
File "C:Usersayappanaconda3libsite-packageskerasoptimizersoptimizer_experimentaloptimizer.py", line 94, in _process_kwargs
raise TypeError(f"{k} is not a valid argument, kwargs should be empty "
TypeError: weight_decay is not a valid argument, kwargs should be empty for `optimizer_experimental.Optimizer`.
当我在早期版本的Spyder中工作时,这个问题从未遇到过。
谁能提出一个解决方案?使用Model = tensorflow.keras.models。load_model(文件名、编译= False)然后Model.compile(不管这里的设置是什么)
改写@Christian Velez的答案,使其更清晰。
示例代码:
model = Sequential()
...
model.compile(//some arguments) #Copy This Line
model.save(//path)
解决方案:
model = load_model(//path, compile=False)
model.compile(//some arguments) #Paste it here
确保训练模型和你试图预测的环境的tensorflow版本相同。这对我有用