【深度学习 走进tensorflow2.0】ValueError: Cannot create group in read only mode.

导入训练好的权重文件时,报如下错误:

错误1:

 File "/home/dongli/.conda/envs/tf2/lib/python3.7/site-packages/tensorflow_core/python/keras/saving/hdf5_format.py", line 165, in load_model_from_hdf5
    raise ValueError('No model found in config file.')
ValueError: No model found in config file.

错误2:

ValueError: Cannot create group in read-only mode.

再重新训练自己的数据集以后,保存的h5模型在读取时出现Cannot create group in read only mode.的错误,通过查询发现是在模型保存时的错误,在保存时使用了model.save_weights。改为save就可以了。

model.save_weights和model.save()的区别

save()保存的模型结果,它既保持了模型的图结构,又保存了模型的参数。

save_weights()保存的模型结果,它只保存了模型的参数,但并没有保存模型的图结构。

由save()保存下来的h5文件才可以直接通过load_model()打开!

save_weights()保存的模型不含有模型结构信息,所以我们需要把模型结构再描述一遍才可以加载

keras保存模型时,使用的是m.save_weights,只保存了模型的权重而没有结构,直接使用keras.models.load_model就会报错。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

东华果汁哥

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值