Keras 2 如何聚合自定义指标的结果?

How does Keras 2 aggregate the results of custom metrics?

Keras documentation 在最后给出了一个函数示例,该函数获取 y_true 和 y_pred 以及 returns 一个值,每批一次,并且该值在训练期间显示。

如果我尝试实现 Keras Metric class,并查看其他指标,它们通常使用 assign_add(),并且在每批之后计算结果,但使用来自整个时代,他们在时代结束时被重置。

我的理解是否正确,如果我简单地将自定义 keras 指标编写为一个函数,我将得到批量结果,而我在一个纪元结束时看到的最终结果仅仅是结果 在最后一批 上,通过实施 Metric 我将获得按纪元计算的结果,而我在一个纪元结束时看到的最后一个结果是整个纪元?

用调试器找到它 - 值被传递给 MeanMetricWrapper,后者又计算自定义无状态指标的所有结果的平均值,这很有意义。