{"library":"torchmetrics","code":"import torch\nimport torchmetrics\nfrom torchmetrics import Accuracy, MetricCollection\nfrom torchmetrics.functional import accuracy\n\n# 1. Functional API: For single-batch, stateless computation\npreds_f = torch.randn(10, 5).softmax(dim=-1)\ntarget_f = torch.randint(5, (10,))\nacc_functional = accuracy(preds_f, target_f, task=\"multiclass\", num_classes=5)\nprint(f\"Functional Accuracy: {acc_functional.item()}\")\n\n# 2. Class-based API: For accumulating metrics over multiple batches/epochs\nmetric = Accuracy(task=\"multiclass\", num_classes=5)\npreds_c = torch.randn(10, 5).softmax(dim=-1)\ntarget_c = torch.randint(5, (10,))\nmetric.update(preds_c, target_c)\n\n# Simulate another batch\npreds_c2 = torch.randn(10, 5).softmax(dim=-1)\ntarget_c2 = torch.randint(5, (10,))\nmetric.update(preds_c2, target_c2)\n\nfinal_acc = metric.compute()\nprint(f\"Class-based Accuracy (accumulated): {final_acc.item()}\")\nmetric.reset() # Reset metric states for the next epoch/evaluation\n\n# 3. MetricCollection: Group multiple metrics\nmetrics = MetricCollection({\n    'Accuracy': Accuracy(task=\"multiclass\", num_classes=5),\n    'F1Score': torchmetrics.F1Score(task=\"multiclass\", num_classes=5)\n})\npreds_mc = torch.randn(10, 5).softmax(dim=-1)\ntarget_mc = torch.randint(5, (10,))\nmetrics.update(preds_mc, target_mc)\nresult_mc = metrics.compute()\nprint(f\"MetricCollection Result: {result_mc}\")","lang":"python","description":"This quickstart demonstrates the core ways to use TorchMetrics: the functional API for stateless, single-batch computation, the class-based API for accumulating states over multiple batches, and MetricCollection for grouping several metrics. Remember to reset class-based metrics after each epoch or evaluation phase to avoid mixing states.","tag":null,"tag_description":null,"last_tested":"2026-04-24","results":[{"runtime":"python:3.10-alpine","exit_code":1},{"runtime":"python:3.10-slim","exit_code":-1},{"runtime":"python:3.11-alpine","exit_code":1},{"runtime":"python:3.11-slim","exit_code":-1},{"runtime":"python:3.12-alpine","exit_code":1},{"runtime":"python:3.12-slim","exit_code":-1},{"runtime":"python:3.13-alpine","exit_code":1},{"runtime":"python:3.13-slim","exit_code":-1},{"runtime":"python:3.9-alpine","exit_code":1},{"runtime":"python:3.9-slim","exit_code":-1}]}