Keras定制损失监测仪

ohtdti5x  于 2023-06-23  发布在  其他
关注(0)|答案(1)|浏览(79)

在Keras模型中,我创建了一个自定义损失,其中输出的某些部分使用MSE,某些部分使用二进制交叉熵。

def loss(y_true, y_pred):
        y_true = tensorflow.convert_to_tensor(y_true)
        y_pred = tensorflow.convert_to_tensor(y_pred)

        numerical_data_loss = mean_squared_error(y_true[:, 0], y_pred[:, 0])
        binary_data_loss = binary_crossentropy(y_true[:, 1], y_pred[:, 1])

        loss = numerical_data_loss + binary_data_loss
        return loss

我如何独立监控影响我的自定义损失的因素,即一个指标用于MSE,一个指标用于二元交叉熵?

cidc1ykv

cidc1ykv1#

再Google一下:
model.fitmetrics kwarg可以接受一系列自定义损失函数,这些函数的签名与您已经为实际损失编写的函数的签名相同。您可以将损失函数分解为单独的单个损失函数,并将它们传递给度量,以观察每个损失对最终损失的贡献,并在最终损失函数中将它们相加以进行反向传播。

相关问题