utations. Returns: The returned shape depends on the ``average`` and ``multidim_average`` arguments: - If ``multidim_average`` is set to ``global``: - If ``average='micro'/'macro'/'weighted'``, the output will be a scalar tensor - If ``average=None/'none'``, the shape will be ``(C,)`` - If ``multidim_average`` is set to ``samplewise``: - If ``average='micro'/'macro'/'weighted'``, the shape will be ``(N,)`` - If ``average=None/'none'``, the shape will be ``(N, C)`` Example (preds is int tensor): >>> from torch import tensor >>> from torchmetrics.functional.classification import multiclass_f1_score >>> target = tensor([2, 1, 0, 0]) >>> preds = tensor([2, 1, 0, 1]) >>> multiclass_f1_score(preds, target, num_classes=3) tensor(0.7778) >>> multiclass_f1_score(preds, target, num_classes=3, average=None) tensor([0.6667, 0.6667, 1.0000]) Example (preds is float tensor): >>> from torchmetrics.functional.classification import multiclass_f1_score >>> target = tensor([2, 1, 0, 0]) >>> preds = tensor([[0.16, 0.26, 0.58], ... [0.22, 0.61, 0.17], ... [0.71, 0.09, 0.20], ... [0.05, 0.82, 0.13]]) >>> multiclass_f1_score(preds, target, num_classes=3) tensor(0.7778) >>> multiclass_f1_score(preds, target, num_classes=3, average=None) tensor([0.6667, 0.6667, 1.0000]) Example (multidim tensors): >>> from torchmetrics.functional.classification import multiclass_f1_score >>> target = tensor([[[0, 1], [2, 1], [0, 2]], [[1, 1], [2, 0], [1, 2]]]) >>> preds = tensor([[[0, 2], [2, 0], [0, 1]], [[2, 2], [2, 1], [1, 0]]]) >>> multiclass_f1_score(preds, target, num_classes=3, multidim_average='samplewise') tensor([0.4333, 0.2667]) >>> multiclass_f1_score(preds, target, num_classes=3, multidim_average='samplewise', average=None) tensor([[0.8000, 0.0000, 0.5000], [0.0000, 0.4000, 0.4000]]) rB