KerasClassifier 对象没有属性模型

KerasClassifier object has no attribute model

我正在使用 CalibratedClassifierCV 来校准我的 CNN 模型的概率。我正在使用以下代码:

from tensorflow.keras.models import load_model
from tensorflow.keras.wrappers.scikit_learn import KerasClassifier
from sklearn.calibration import CalibratedClassifierCV
def load_model(*args, **kwargs):
    path="my_model.hd5"
    model = load_model(path)
    return model

clf = KerasClassifier(build_fn=load_model)
calib = CalibratedClassifierCV(clf, cv='prefit', method='sigmoid')
calib.fit(X_train, y_train)

使用此代码时,我收到错误消息 AttributeError: 'KerasClassifier' object has no attribute 'model'。此外,当我使用 clf.predict(X_test) 时,我遇到了同样的错误。所以 KerasClassifier.

似乎有问题

我的代码有错误吗?

您使用同名函数 (def load_model(*args, **kwargs)) 重新定义了 keras 的 load_model 函数 (from tensorflow.keras.models import load_model) - 这可能是问题所在。