gpt4 book ai didi

python - 在 keras 中保存和加载权重

转载 作者:IT老高 更新时间:2023-10-28 21:56:46 24 4
gpt4 key购买 nike

我正在尝试从我训练的模型中保存和加载权重。

我用来保存模型的代码是。

TensorBoard(log_dir='/output')
model.fit_generator(image_a_b_gen(batch_size), steps_per_epoch=1, epochs=1)
model.save_weights('model.hdf5')
model.save_weights('myModel.h5')

如果这是不正确的方法,或者是否有更好的方法,请告诉我。

但是当我尝试加载它们时,使用这个,

from keras.models import load_model
model = load_model('myModel.h5')

但我收到此错误:


ValueError                                Traceback (most recent call 
last)
<ipython-input-7-27d58dc8bb48> in <module>()
1 from keras.models import load_model
----> 2 model = load_model('myModel.h5')

/home/decentmakeover2/anaconda3/lib/python3.5/site-
packages/keras/models.py in load_model(filepath, custom_objects, compile)
235 model_config = f.attrs.get('model_config')
236 if model_config is None:
--> 237 raise ValueError('No model found in config file.')
238 model_config = json.loads(model_config.decode('utf-8'))
239 model = model_from_config(model_config,
custom_objects=custom_objects)

ValueError: No model found in config file.

关于我可能做错的任何建议?提前谢谢你。

最佳答案

这是一个 YouTube 视频,它准确地解释了您想要做什么:Save and load a Keras model

Keras 提供了三种不同的保存方法。这些在上面的视频链接(带有示例)以及下面都有描述。

首先,您收到错误的原因是您错误地调用了 load_model

要保存和加载模型的权重,您首先要使用

model.save_weights('my_model_weights.h5')

保存权重,如您所显示的。要加载权重,您首先需要构建模型,然后在模型上调用 load_weights,如

model.load_weights('my_model_weights.h5')

另一种保存技术是model.save(filepath)。这个 save 函数保存:

  • 模型的架构,允许重新创建模型。
  • 模型的权重。
  • 训练配置(损失、优化器)。
  • 优化器的状态,允许从您中断的地方继续训练。

要加载此保存的模型,您可以使用以下内容:

from keras.models import load_model
new_model = load_model(filepath)'

最后,model.to_json(),只保存模型的架构。要加载架构,您可以使用

from keras.models import model_from_json
model = model_from_json(json_string)

关于python - 在 keras 中保存和加载权重,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47266383/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com