繁体   English   中英

在Keras中保存模型和重量(单个文件中)

[英]Saving just model & weights in Keras (in single file)

我有Python代码,使用Keras生成深度卷积神经网络。 我正在尝试保存模型,但结果是巨大的(100s的MB)。 我想稍微削减一点,以使一些更易于管理的东西。

问题是model.save()存储(引用model.save() FAQ):

  • 模型的体系结构,允许重新创建模型
  • 模型的权重
  • 训练配置(损失,优化器)
  • 优化器的状态,允许您从中断的位置恢复训练。

如果我不再接受任何培训,我想我只需要前两个。

我可以使用model.to_json()来创建体系结构的JSON字符串并将其保存,并使用model.save_weights()创建包含权重的单独文件。 这大约是完整model.save()结果的三分之一。 但我想知道是否有一些方法可以将这些存储在一个自包含的文件中? (没有输出两个文件,将它们压缩在一起,并删除原件。)或者,也许有一种方法可以在训练完成时删除训练配置和优化器状态,​​因此model.save()不会给我一些东西很大?

谢谢。

模型的保存功能具有完全相同的参数,称为include_optimizer,将其设置为false将保存模型而不包括优化器状态,​​这将导致更小的HDF5文件:

model.save("something.hdf5", include_optimizer=False)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM