Python 将加载的Keras分类器与自定义度量函数一起使用时出错

Python 将加载的Keras分类器与自定义度量函数一起使用时出错,python,keras,Python,Keras,我有一个keras模型,它使用自定义函数来度量: model.compile(optimizer=tf.keras.optimizers.Adam(),loss='binary\u crossentropy',metrics=['accurity',roc\u auc]) 该函数工作正常,模型的行为符合预期。但是,当通过model.save()保存模型,然后通过model.load\u model()加载模型时,运行以下代码时,我会得到ValueError:Unknown metric func

我有一个keras模型,它使用自定义函数来度量:

model.compile(optimizer=tf.keras.optimizers.Adam(),loss='binary\u crossentropy',metrics=['accurity',roc\u auc])


该函数工作正常,模型的行为符合预期。但是,当通过
model.save()
保存模型,然后通过
model.load\u model()
加载模型时,运行以下代码时,我会得到
ValueError:Unknown metric function:roc\u auc
:model.predict(X)。有趣的是,当我通过命令shell再次运行同一命令时,这个错误不会出现,它只在第一次运行时出现。这是一个bug吗?

你是说
keras.models.load\u model(path)
?有
model.load\u model()
听起来很奇怪


您可能缺少
load\u model
中的参数
custom\u objects={'roc\u auc':roc\u auc}
。如果Keras不知道roc_auc的含义,则无法创建模型

是的,我指的是带有路径的模型。您的解决方案有效,我缺少
自定义对象
参数。仍然困惑为什么它在第二次运行相同的东西时没有给出错误