问题:
使用如下指定的 keras 模型(部分):
# create model
model = Sequential()
model.add(Dense(12, input_dim=8, activation='relu'))
model.add(Dense(8, activation='relu'))
model.add(Dense(1, activation='sigmoid'))
# Compile model
model.compile(loss='binary_crossentropy', optimizer='adam', metrics=['accuracy'])
# Fit the model
model.fit(X, Y, epochs=150, batch_size=10)
是否有可能以任何方式保存模型中的所有细节供以后使用?
详情:
我一直在关注 machinelearningmastery.com 中的示例并尝试修改和添加模型的特征/参数,例如
- 激活='relu'
- activation='sigmoid'
- 指标=['准确性']
正如问题所暗示的,我想存储模型设置供以后使用。 我知道这些参数是不同函数的一部分,但不应该都一样吗?
我尝试过的:
1. model.save() 和 model.load()
只返回
AttributeError: 'Sequential' object has no attribute 'load'
2. model.get_config()
在这里,我已经能够找到一些设置,例如:
[{'class_name': 'Dense', 'config': {'activation': 'relu',
但我还没有找到将该配置作为独立模型加载的方法,而且通常情况下,我似乎无法找到所有设置。
3. 我还查看了其他帖子,例如 K eras - Reuse weights from a previous layer - converting to keras tensor ,但似乎并未涵盖模型的所有方面。
有什么建议吗?
请您参考如下方法:
而不是尝试 model.load()尝试使用 load_model()由 keras 提供,用于加载您使用 model.save() 保存的模型
from keras.models import load_model
load_model(filepath)
您还可以使用 model.to_json() 将模型保存为 json并使用 model_from_json() 从 json 加载
您可以在 Keras 文档中看到更多保存和加载模型的方法 here
