.h5 和 .hdf5 格式有什么区别? [已关闭]

问题描述 投票:0回答:1

假设我们将模型保存为h5,那么我们可以使用keras的load_model函数加载模型。 我浏览了多个 github 链接,其中作者提供了权重文件(.h5 或 .hdf5 文件)。

那么我们可以使用 load_model 来使用那些预训练的权重/模型吗?

load_model 和 load_weights 有什么区别?

我可以使用 load_model (keras) 加载权重文件还是应该使用 (load_weight)。如果我们正在加载重量,那么我们还必须加载模型的整个架构..

请举一些例子来提供更深入的理解..

python tensorflow keras deep-learning pre-trained-model
1个回答
5
投票

定义模型

model = ...

训练模型

model.fit(...)

保存模型:

model.save('model_topology.h5') 

保存权重:

model.save_weights('weights.h5')

调用load_model()时,如果要进行推理,则必须调用loadweights来加载预训练的权重。

model = load_model('model_topology.h5')
model.load_weights('weights.h5')

处理以 HDF5 格式 (.h5) 保存的模型时确实如此。

Tensorflow
提供了另一种保存模型的格式:
saved_model
格式。 save_model 格式将模型拓扑(图)和训练参数(权重和偏差)保存在目录中。这样就可以使用一个命令加载模型。

model = tf.saved_model.load(path_to_dir)

关于

h5
HDF5
h5
只是以 HDF5 格式保存的文件的缩写扩展名。

© www.soinside.com 2019 - 2024. All rights reserved.