tf.contrib.metrics.streaming_auc(predictions, labels, weights=None, num_thresholds=200, metrics_collections=None, updates_collections=None, curve='ROC', name=None)
Computes the approximate AUC via a Riemann sum.
The streaming_auc
function creates four local variables, true_positives
, true_negatives
, false_positives
and false_negatives
that are used to compute the AUC. To discretize the AUC curve, a linearly spaced set of thresholds is used to compute pairs of recall and precision values. The area under the ROC-curve is therefore computed using the height of the recall values by the false positive rate, while the area under the PR-curve is the computed using the height of the precision values by the recall.
This value is ultimately returned as auc
, an idempotent operation that computes the area under a discretized curve of precision versus recall values (computed using the afformentioned variables). The num_thresholds
variable controls the degree of discretization with larger numbers of thresholds more closely approximating the true AUC.
For estimation of the metric over a stream of data, the function creates an update_op
operation that updates these variables and returns the auc
.
If weights
is None
, weights default to 1. Use weights of 0 to mask values.
Args:
-
predictions
: A floating pointTensor
of arbitrary shape and whose values are in the range[0, 1]
. -
labels
: Abool
Tensor
whose shape matchespredictions
. -
weights
: An optionalTensor
whose shape is broadcastable topredictions
. -
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:
-
auc
: A scalar tensor representing the current area-under-curve. -
update_op
: An operation that increments thetrue_positives
,true_negatives
,false_positives
andfalse_negatives
variables appropriately and whose value matchesauc
.
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.
Please login to continue.