在 Keras 中向现有模型添加指标
Adding metrics to existing model in Keras
我有一个现有模型,想向其添加其他指标。 Keras metrics page 表示指标是在编译时添加的,但我想在加载后添加它们(部分原因是 model.load_model()
似乎只加载第一个指标,并且因为我有新的指标我想要首先尝试现有模型)。这可能吗?
您可以根据需要多次编译模型。这不会改变它的权重。
因此您可以加载模型,然后使用指标对其进行编译。
重新编译模型的唯一可能问题可能是重置优化器状态。
只是为了快速简单地添加这个要点 copy/paste 为了您的方便回答:
from keras.models import load_model
model_path = 'path/to/your/old_model.h5'
new_metrics = [<metrics to add>...] # for example ['binary_accuracy']
model = load_model(model_path)
model.compile(optimizer=model.optimizer,
loss=model.loss,
metrics=model.metrics+new_metrics)
如果使用除上述情况之外的任何其他方式,请确保将需要的参数添加到编译函数中。
我有一个现有模型,想向其添加其他指标。 Keras metrics page 表示指标是在编译时添加的,但我想在加载后添加它们(部分原因是 model.load_model()
似乎只加载第一个指标,并且因为我有新的指标我想要首先尝试现有模型)。这可能吗?
您可以根据需要多次编译模型。这不会改变它的权重。
因此您可以加载模型,然后使用指标对其进行编译。
重新编译模型的唯一可能问题可能是重置优化器状态。
只是为了快速简单地添加这个要点 copy/paste 为了您的方便回答:
from keras.models import load_model
model_path = 'path/to/your/old_model.h5'
new_metrics = [<metrics to add>...] # for example ['binary_accuracy']
model = load_model(model_path)
model.compile(optimizer=model.optimizer,
loss=model.loss,
metrics=model.metrics+new_metrics)
如果使用除上述情况之外的任何其他方式,请确保将需要的参数添加到编译函数中。