gpt4 book ai didi

python - 保存 Keras 模型 - UserWarning : Layer XX was passed non-serializable keyword arguments

转载 作者:太空宇宙 更新时间:2023-11-04 02:10:50 26 4
gpt4 key购买 nike

我刚刚使用 Keras 训练并完成了我的第一个序列到序列模型,现在想保存它,以便稍后加载模型并使用它(不必每次都训练它)。保存时我会这样做:

model.save_weights('models/model_weights.h5')
with open('models/model_architecture.json', 'w') as f:
f.write(model.to_json())

但是,这样做会产生一堆类型的用户警告(每一层或多或少一个警告):

path/to/site-packages/keras/engine/topology.py:2379: UserWarning: Layer lstm_15 was 
passed non-serializable keyword arguments: {'initial_state': [<tf.Tensor 's0_7:0'
shape=(?, 64) dtype=float32>, <tf.Tensor 'c0_7:0' shape=(?, 64) dtype=float32>]}.
They will not be included in the serialized model (and thus will be missing at
deserialization time).
str(node.arguments) + '. They will not be included '

即使只是警告,这确实会在加载模型后推迟模型和准确性。

训练后一切正常(做出正确的预测等),只是保存部分失败了。我该怎么办?还有其他人经历过同样的事情并以某种方式解决了吗?有解决方法吗?我给不同层的名称可能有任何问题吗?

最佳答案

您可以保存模型“代码”,也许是一个 .py 文件,只是为了完全按照原样创建模型。

然后加载权重:model.load_weights('models/model_weights.h5')

关于python - 保存 Keras 模型 - UserWarning : Layer XX was passed non-serializable keyword arguments,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53761145/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com