tf.contrib.metrics.streaming_curve_points(
labels=None,
predictions=None,
weights=None,
num_thresholds=200,
metrics_collections=None,
updates_collections=None,
curve='ROC',
name=None
)
Defined in tensorflow/contrib/metrics/python/ops/metric_ops.py
.
Computes curve (ROC or PR) values for a prespecified number of points.
The streaming_curve_points
function creates four local variables,
true_positives
, true_negatives
, false_positives
and false_negatives
that are used to compute the curve values. To discretize the curve, a linearly
spaced set of thresholds is used to compute pairs of recall and precision
values.
For best results, predictions
should be distributed approximately uniformly
in the range [0, 1] and not peaked around 0 or 1.
For estimation of the metric over a stream of data, the function creates an
update_op
operation that updates these variables.
If weights
is None
, weights default to 1. Use weights of 0 to mask values.
Args:
labels
: ATensor
whose shape matchespredictions
. Will be cast tobool
.predictions
: A floating pointTensor
of arbitrary shape and whose values are in the range[0, 1]
.weights
: OptionalTensor
whose rank is either 0, or the same rank aslabels
, and must be broadcastable tolabels
(i.e., all dimensions must be either1
, or the same as the correspondinglabels
dimension).num_thresholds
: The number of thresholds to use when discretizing the roc curve.metrics_collections
: An optional list of collections thatauc
should be added to.updates_collections
: An optional list of collections thatupdate_op
should be added to.curve
: Specifies the name of the curve to be computed, 'ROC' [default] or 'PR' for the Precision-Recall-curve.name
: An optional variable_scope name.
Returns:
points
: ATensor
with shape [num_thresholds, 2] that contains points of the curve.update_op
: An operation that increments thetrue_positives
,true_negatives
,false_positives
andfalse_negatives
variables.
Raises:
ValueError
: Ifpredictions
andlabels
have mismatched shapes, or ifweights
is notNone
and its shape doesn't matchpredictions
, or if eithermetrics_collections
orupdates_collections
are not a list or tuple.
TODO(chizeng): Consider rewriting this method to make use of logic within the precision_recall_at_equal_thresholds method (to improve run time).