使用自定义损失函数编译 Keras 模型时出现 TypeError

TypeError while compiling Keras model with custom loss function

我已经训练了一个带有自定义损失函数 BinaryCrossEntropy 的模型,使用 Jaccard,使用分段模型库,当我试图加载和编译模型以开始预测时,我得到了这个错误: model = compile(optimizer='adam', loss=bce_jaccard_loss, metrics=['iou_score']) TypeError: compile() missing required argument 'source' (pos 1)

请问我该如何解决?

import keras
import segmentation_models as sm
from segmentation_models.losses import bce_jaccard_loss
from segmentation_models.metrics import iou_score

model = keras.models.load_model("ResNet_34_Aug.h5", compile = False)
model = compile(optimizer='adam', loss=bce_jaccard_loss, metrics=['iou_score'])

整个问题都在代码的最后一行,缺少的必需参数 'source'(位置 1)是模型本身,所以我已将其修复为:

model.compile(optimizer='adam', loss=bce_jaccard_loss, metrics=['iou_score'])