Keras 1 和 Keras 2 模型结构不兼容ValueError Improper config format {'l2' 9

当尝试用Keras 2读取Keras 1保存的模型时,会遇到`ValueError: Improper config format`。解决方案包括使用Keras 1读取模型或手动编辑模型JSON文件,将`W_regularizer`和`activity_regularizer`的旧格式转换为Keras 2的新格式。
摘要由CSDN通过智能技术生成

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".

评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值