首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >未知初始化程序:加载Keras模型时的GlorotUniform

未知初始化程序:加载Keras模型时的GlorotUniform
EN

Stack Overflow用户
提问于 2018-11-07 05:09:17
回答 11查看 48.4K关注 0票数 37

我通过google训练我的CNN (VGG)并生成.h5文件。现在的问题是,我可以通过google成功地预测我的输出,但是当我下载经过.h5训练的模型文件并尝试在我的笔记本电脑上预测输出时,我在加载模型时会出现错误。

以下是代码:

代码语言:javascript
复制
import tensorflow as tf
from tensorflow import keras
import h5py

# Initialization

loaded_model = keras.models.load_model('./train_personCount_model.h5')

而错误是:

代码语言:javascript
复制
ValueError: Unknown initializer: GlorotUniform
EN

回答 11

Stack Overflow用户

回答已采纳

发布于 2018-12-06 16:56:17

我遇到了同样的问题。改变后:

from tensorflow import keras

至:

import keras

生活再一次值得活下去。

票数 44
EN

Stack Overflow用户

发布于 2019-02-26 05:54:34

我解决了这个问题:

在此之前:

代码语言:javascript
复制
from keras.models import load_model
classifierLoad = load_model('model/modeltest.h5')

为我工作

代码语言:javascript
复制
import tensorflow as tf 
classifierLoad = tf.keras.models.load_model('model/modeltest.h5')
票数 43
EN

Stack Overflow用户

发布于 2018-12-09 05:01:21

哇,我只是花了6个小时才弄明白.Dmitri在这里发布了一个解决方案:我在google上训练了一个keras模型。现在无法在我的系统上本地加载它。

我只是把它重新贴在这里因为它对我有用。

这看起来像是keras中的某种序列化错误。如果你把你的load_model用下面的CustomObjectScope包裹起来.一切都应该工作..。

代码语言:javascript
复制
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')
票数 30
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/53183865

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档