我通过google训练我的CNN (VGG)并生成.h5文件。现在的问题是,我可以通过google成功地预测我的输出,但是当我下载经过.h5训练的模型文件并尝试在我的笔记本电脑上预测输出时,我在加载模型时会出现错误。
以下是代码:
import tensorflow as tf
from tensorflow import keras
import h5py
# Initialization
loaded_model = keras.models.load_model('./train_personCount_model.h5')而错误是:
ValueError: Unknown initializer: GlorotUniform发布于 2018-12-06 16:56:17
我遇到了同样的问题。改变后:
from tensorflow import keras
至:
import keras
生活再一次值得活下去。
发布于 2019-02-26 05:54:34
我解决了这个问题:
在此之前:
from keras.models import load_model
classifierLoad = load_model('model/modeltest.h5')为我工作
import tensorflow as tf
classifierLoad = tf.keras.models.load_model('model/modeltest.h5')发布于 2018-12-09 05:01:21
哇,我只是花了6个小时才弄明白.Dmitri在这里发布了一个解决方案:我在google上训练了一个keras模型。现在无法在我的系统上本地加载它。
我只是把它重新贴在这里因为它对我有用。
这看起来像是keras中的某种序列化错误。如果你把你的load_model用下面的CustomObjectScope包裹起来.一切都应该工作..。
import keras
from keras.models import load_model
from keras.utils import CustomObjectScope
from keras.initializers import glorot_uniform
with CustomObjectScope({'GlorotUniform': glorot_uniform()}):
model = load_model('imdb_mlp_model.h5')https://stackoverflow.com/questions/53183865
复制相似问题