阅读(11.4k) 书签 (0)

TensorFlow函数:tf.metrics.accuracy

2018-09-14 14:01 更新

tf.metrics.accuracy函数

tf.metrics.accuracy(
    labels,
    predictions,
    weights=None,
    metrics_collections=None,
    updates_collections=None,
    name=None
)

定义在:tensorflow/python/ops/metrics_impl.py.

计算predictions与labels匹配的频率.

该accuracy函数创建两个局部变量,total和count被用于计算predictions与labels匹配的频率.这个频率被最终返回为accuracy:一个幂等操作,简单地按计数除以总数.

为了估计数据流上的度量,该函数创建一个update_op操作来更新这些变量并返回accuracy.在内部,一个is_correct操作计算一个Tensor元素1.0,其中,predictions和labels中相应的元素匹配,否则为0.0.然后update_op更新total和count的值.

如果weights是None,则权重默认为1,使用权重0来屏蔽值.

参数:

  • labels:ground truth值,形状与predictions匹配的Tensor.
  • predictions:预测值,可以是任何形状的Tensor.
  • weights:可选的Tensor,其秩为0或与labels具有相同的秩,并且必须可广播到labels(即,所有维度必须1或者与相应的labels维度相同).
  • metrics_collections:accuracy应添加到的可选集合列表.
  • updates_collections:update_op应添加到的可选集合列表.
  • name:可选的variable_scope名称.

返回:

  • accuracy:Tensor表示准确性,值total除以count.
  • update_op:适当增加total和count变量并且其值与accuracy匹配的操作.

可能引发的异常:

  • ValueError:如果predictions和labels有不匹配的形状,或者weights不是None,它的形状与predictions不匹配,或者如果metrics_collections或updates_collections中有一个不是一个列表或元组.
  • RuntimeError:如果启用了急切执行.