遇到了一个常见的错误,当使用keras加载模型时,可能会出现未知的初始化器GlorotUniform¹。GlorotUniform是一种均匀分布的权重初始化器,也叫做Xavier均匀初始化器²。
这个错误可能是因为你在不同的环境下安装和导入了keras模块¹⁴。例如,如果你在服务器上使用tensorflow内置的keras进行安装和保存模型,而在Windows下面使用独立的keras进行加载模型,就会出现这个错误¹⁴。
你可以尝试统一你的keras模块来源,或者使用tensorflow内置的keras来加载模型。例如,你可以把
from keras.models import load_model
改为
from tensorflow.keras.models import load_model
然后重新运行代码。
2023/3/20(1) keras load_model ValueError: Unknown initializer: GlorotUniform. https://www.programminghunter.com/article/9016206845/ 访问时间 2023/3/20.
(2) tf.keras.initializers.GlorotUniform | TensorFlow v2.11.0. https://www.tensorflow.org/api_docs/python/tf/keras/initializers/GlorotUniform 访问时间 2023/3/20.
(3) keras load_model ValueError: Unknown initializer: GlorotUniform - 听~雨 - 博客园. https://www.cnblogs.com/hanwen1014/p/13267740.html 访问时间 2023/3/20.
(4) Unknown initializer: GlorotUniform when loading Keras model #798 - GitHub. https://github.com/tensorflow/tfjs/issues/798 访问时间 2023/3/20.
当使用keras加载模型时可能出现GlorotUniform初始化器未知的错误,这可能由于环境差异导致。统一keras模块来源或使用tensorflow.keras加载模型可解决此问题。例如,将`fromkeras.modelsimportload_model`改为`fromtensorflow.keras.modelsimportload_model`。
3424

被折叠的 条评论
为什么被折叠?



