tf.metrics.accuracy(
labels,
predictions,
weights=None,
metrics_collections=None,
updates_collections=None,
name=None
)
Defined in tensorflow/python/ops/metrics_impl.py
.
Calculates how often predictions
matches labels
.
The accuracy
function creates two local variables, total
and
count
that are used to compute the frequency with which predictions
matches labels
. This frequency is ultimately returned as accuracy
: an
idempotent operation that simply divides total
by count
.
For estimation of the metric over a stream of data, the function creates an
update_op
operation that updates these variables and returns the accuracy
.
Internally, an is_correct
operation computes a Tensor
with elements 1.0
where the corresponding elements of predictions
and labels
match and 0.0
otherwise. Then update_op
increments total
with the reduced sum of the
product of weights
and is_correct
, and it increments count
with the
reduced sum of weights
.
If weights
is None
, weights default to 1. Use weights of 0 to mask values.
Args:
labels
: The ground truth values, aTensor
whose shape matchespredictions
.predictions
: The predicted values, aTensor
of any shape.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).metrics_collections
: An optional list of collections thataccuracy
should be added to.updates_collections
: An optional list of collections thatupdate_op
should be added to.name
: An optional variable_scope name.
Returns:
accuracy
: ATensor
representing the accuracy, the value oftotal
divided bycount
.update_op
: An operation that increments thetotal
andcount
variables appropriately and whose value matchesaccuracy
.
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.RuntimeError
: If eager execution is enabled.