keras2不兼容

举报
风吹稻花香 发表于 2021/06/04 23:23:20 2021/06/04
【摘要】   Keras 1 和 Keras 2 模型结构不兼容:ValueError: Improper config format: {‘l2’: 9.999999747378752e-06, ‘name’: ‘L1L2Regularizer’, ‘l1’: 0.0} Bug背景: 这个问题在keras上有一个issue: 当用keras 2来读取keras 1保存的预...

 

Keras 1 和 Keras 2 模型结构不兼容:ValueError: Improper config format: {‘l2’: 9.999999747378752e-06, ‘name’: ‘L1L2Regularizer’, ‘l1’: 0.0}
Bug背景:
这个问题在keras上有一个issue: 当用keras 2来读取keras 1保存的预训练模型时,不能够读取,会报如下错误

ValueError: Improper config format: {‘l2’: 9.999999747378752e-06, ‘name’: ‘L1L2Regularizer’, ‘l1’: 0.0}

如果我们需要使用的预训练模型只有用keras 1训练的,而我们需要用keras 2来读取这个模型该如何解决呢?

Solution1:
使用keras 1来读取不就行了! 是个很好的办法没错.

Solution 2:
我现在非要用keras 2来读取这个模型,怎么的?

这是由于keras 2将模型保存在json文件时, L1/L2 regularizer的语法发送了变化. 你可以用keras2.2.4生成一个模型json保存,观察一下"kernel_regularizer",以及keras 1的模型保存格式"W_regularizer",你就会发现语法发送了变化,同样的还有"activity_regularizer".

所以我们只需要把keras 1保存的模型json文件中的

"W_regularizer": {"l2": 9.999999747378752e-06, "name": "L1L2Regularizer", "l1": 0.0}, "trainable": false, "subsample_length": 1, "bias": true, "name": "co

文章来源: blog.csdn.net,作者:网奇,版权归原作者所有,如需转载,请联系作者。

原文链接:blog.csdn.net/jacke121/article/details/106478980

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。