maxmetric
Metric
MaxMetricfromtorchmetrics(torchmetrics.MaxMetric)
When to invoke this skill
The user has predictions + ground truth and asks to evaluate with MaxMetric, or
mentions torchmetrics.MaxMetric directly, or wants the standard torchmetrics implementation.
Reference signature
from torchmetrics import MaxMetric
# MaxMetric(nan_strategy: Union[Literal['error', 'warn', 'ignore', 'disable'], float] = 'warn', **kwargs: Any) -> None
Library docstring
Aggregate a stream of value into their maximum value.
As input to ``forward`` and ``update`` the metric accepts the following input
- ``value`` (:class:`~float` or :class:`~torch.Tensor`): a single float or an tensor of float values with
arbitrary shape ``(...,)``.
As output of `forward` and `compute` the metric returns the following output
- ``agg`` (:class:`~torch.Tensor`): scalar float tensor with aggregated maximum value over all inputs received
Args:
nan_strategy: options:
- ``'error'``: if any `nan` values are encountered will give a RuntimeError
- ``'warn'``: if any `nan` values are encountered will give a warning and continue
- ``'ignore'``: all `nan` values are silently removed
- ``'disable'``: disable all `nan` checks
- a float: if a float is provided will impute any `nan` values with this value
kwargs: Additional keyword arguments, see :ref:`Metric kwargs` for more info.
Raises:
ValueError:
If ``nan_strategy`` is not one of ``error``, ``warn``, ``ignore``, ``disable`` or a float
Example:
>>> from torch import tensor
>>> from torchmetrics.aggregation import MaxMetric
>>> metric = MaxMetric()
>>> metric.update(1)
>>> metric.update(tensor([2, 3]))
>>> metric.compute()
tensor(3.)
Quick recipe
import torchmetrics as _m
score = _m.MaxMetric(y_true, y_pred)
Don'ts
- Don't reimplement when the library version handles edge cases (NaN, ties, empty inputs) better than a hand-rolled formula.
- Always check the library version's argument order — sklearn is
(y_true, y_pred)while torchmetrics is(preds, target).