【发布时间】:2020-02-03 04:12:27
【问题描述】:
我用从keras_metrics 导入的precision 和recall 指标训练了一个cnn 模型。但是当我尝试加载模型时,我收到了错误:ValueError: Unknown metric function:binary_precision。我没有在任何地方使用过binary_precision 函数,但我仍然根据错误在custom_objects 中给出了`binary_precision':
model = load_model(modelfilepath,custom_objects={'metrics': [keras_metrics.precision(),binary_precision]})
这样我得到了错误,NameError: name 'binary_precision' is not defined。我该怎么办。
我的代码如下:
#compiling the model
model.compile(optimizer=SGD(),loss='binary_crossentropy',metrics = ['accuracy',keras_metrics.precision(),keras_metrics.recall()])
#loading the model after training and saving it
model = load_model(modelfilepath,custom_objects={'metrics': [keras_metrics.precision(),binary_precision]})
【问题讨论】:
-
忘记括号了吗?
binary_precision()。此外,我认为binary_precision也位于 keras_metrics 包中,所以你必须写keras_metrics.binary_precision() -
@JuliaK,我也试过了,但还是同样的问题
标签: python tensorflow keras deep-learning conv-neural-network