用于评估的 Tensorflow 平均绝对误差 (MAE)

tru*_*gnm 5 python machine-learning tensorflow

查看 MAE 的 tensorflow 文档,我看到tf.metrics.mean_absolute_error将返回:

  • mean_absolute_error:代表当前平均值的张量,总数除以计数的值。
  • update_op:适当增加总数和计数变量的操作,其值与 mean_absolute_error 匹配。

如何实现这一评估目的?如前所述这里

mean_absolute_error 用于评估,因此它没有梯度。mean_absolute_error 还返回一个必须用于更新均值的更新操作(您在上面的代码中忽略了该操作),因此此函数的梯度概念实际上没有意义。在获得平均值之前,必须调用 tf.metrics.mean_absolute_error(pred, y) 的更新操作。

我不知道如何处理mean_absolute_error函数的返回值。有人可以用这个函数写一个简单的例子吗?非常感谢。

iga*_*iga 2

听起来您不确定返回的张量/操作的含义以及如何使用它们。这是一篇很好的文章,解释了如何以及为什么:http://ronny.rest/blog/post_2017_09_11_tf_metrics/

对于简单的独立示例用法,您可以查看测试。例如:https: //github.com/tensorflow/tensorflow/blob/cda36b817e9998906da37ec87c525f1b278c71a7/tensorflow/python/kernel_tests/metrics_test.py#L2816