tf.contrib.metrics.precision_at_recall

View source on GitHub

Computes the precision at a given recall.

This function creates variables to track the true positives, false positives, true negatives, and false negatives at a set of thresholds. Among those thresholds where recall is at least target_recall, precision is computed at the threshold where recall is closest to target_recall.

For estimation of the metric over a stream of data, the function creates an update_op operation that updates these variables and returns the precision at target_recall. update_op increments the counts of true positives, false positives, true negatives, and false negatives with the weight of each case found in the predictions and labels.

If weights is None, weights default to 1. Use weights of 0 to mask values.

For additional information about precision and recall, see http://en.wikipedia.org/wiki/Precision_and_recall

labels The ground truth values, a Tensor whose dimensions must match predictions. Will be cast to bool.
predictions A floating point Tensor of arbitrary shape and whose values are in the range [0, 1].
target_recall A scalar value in range [0, 1].
weights Optional Tensor whose rank is either 0, or the same rank as labels, and must be broadcastable to labels (i.e., all dimensions must be either 1, or the same as the corresponding labels dimension).
num_thresholds The number of thresholds to use for matching the given recall.
metrics_collections An optional list of collections to which precision should be added.
updates_collections An optional list of collections to which update_op should be added.
name An optional variable_scope name.

precision A scalar Tensor representing the precision at the given target_recall value.
update_op An operation that increments the variables for tracking the true positives, false positives, true negatives, and false negatives and whose value matches precision.

ValueError If predictions and labels have mismatched shapes, if weights is not None and its shape doesn't match predictions, or if target_recall is not between 0 and 1, or if either metrics_collections or updates_collections are not a list or tuple.
RuntimeError If eager execution is enabled.