python – 如何在Keras中计算指标?

我想知道Keras如何计算度量(自定义或不自定义).

例如,假设我有以下度量,它产生预测和基本事实之间的最大误差:

def max_error(y_true, y_pred):

    import keras.backend as K

    return K.max(K.abs(y_true-y_pred))

输出标量指标是在所有小批量上计算然后平均的,还是直接在整个数据集上计算的指标(培训或验证)?

最佳答案 关于VALIDATION集的度量的其他信息:

与另一个答案中的建议相反,我只是看到验证集上的度量是分批计算,然后是平均值(当然使用了在时期结束时训练的模型,与度量得分的方式相反)计算训练集).

如果要立即在整个验证数据上计算它,则必须使用已接受答案中所述的回调.

当然,对于通常的指标,无论您是先批量计算还是平均计算,或者在一个大批量中全部计算,都没有任何区别.但是对于自定义指标,很可能就是:我只是根据数据调整了一个参数的情况.

点赞