Keras 3 API 文档 / 指标 / 指标包装器和缩减指标

指标包装器和缩减指标

[源代码]

MeanMetricWrapper

keras.metrics.MeanMetricWrapper(fn, name=None, dtype=None, **kwargs)

使用 Mean 指标包装无状态指标函数。

您可以使用此类别从函数快速构建平均指标。该函数需要具有 fn(y_true, y_pred) 签名并返回每样本损失数组。MeanMetricWrapper.result() 将返回到目前为止所有样本的平均指标值。

例如

def mse(y_true, y_pred):
    return (y_true - y_pred) ** 2

mse_metric = MeanMetricWrapper(fn=mse)

参数

  • fn:要包装的指标函数,签名格式为 fn(y_true, y_pred, **kwargs)
  • name:(可选)指标实例的字符串名称。
  • dtype:(可选)指标结果的数据类型。
  • **kwargs:要传递给 fn 的关键字参数。

[源代码]

Mean

keras.metrics.Mean(name="mean", dtype=None)

计算给定值的(加权)平均值。

例如,如果 values 是 [1, 3, 5, 7],则平均值为 4。如果 sample_weight 指定为 [1, 1, 0, 0],则平均值为 2。

此指标创建两个变量:totalcount。返回的平均值就是 total 除以 count

参数

  • name:(可选)指标实例的字符串名称。
  • dtype:(可选)指标结果的数据类型。

示例

>>> m = Mean()
>>> m.update_state([1, 3, 5, 7])
>>> m.result()
4.0
>>> m.reset_state()
>>> m.update_state([1, 3, 5, 7], sample_weight=[1, 1, 0, 0])
>>> m.result()
2.0

[源代码]

Sum

keras.metrics.Sum(name="sum", dtype=None)

计算给定值的(加权)总和。

例如,如果 values[1, 3, 5, 7],则它们的总和为 16。如果 sample_weight 指定为 [1, 1, 0, 0],则总和为 4。

此指标创建一个变量:total。该值最终作为总和值返回。

参数

  • name:(可选)指标实例的字符串名称。
  • dtype:(可选)指标结果的数据类型。

示例

>>> m = metrics.Sum()
>>> m.update_state([1, 3, 5, 7])
>>> m.result()
16.0
>>> m = metrics.Sum()
>>> m.update_state([1, 3, 5, 7], sample_weight=[1, 1, 0, 0])
>>> m.result()
4.0