[ allennlp.training.metrics.boolean_accuracy ]
class BooleanAccuracy(Metric): | def __init__(self) -> None
Just checks batch-equality of two tensors and computes an accuracy metric based on that.
That is, if your prediction has shape (batch_size, dim_1, ..., dim_n), this metric considers that
as a set of
batch_size predictions and checks that each is entirely correct across the remaining dims.
This means the denominator in the accuracy computation is
batch_size, with the caveat that predictions
that are totally masked are ignored (in which case the denominator is the number of predictions that have
at least one unmasked element).
This is similar to
CategoricalAccuracy, if you've already done a
on your predictions. If you have categorical output, though, you should typically just use
CategoricalAccuracy. The reason you might want to use this instead is if you've done
some kind of constrained inference and don't have a prediction tensor that matches the API of
CategoricalAccuracy, which assumes a final dimension of size
| def get_metric(self, reset: bool = False)
- The accumulated accuracy.
| @overrides | def reset(self)