快捷方式

torcheval.metrics.functional.r2_score

torcheval.metrics.functional.r2_score(input: Tensor, target: Tensor, *, multioutput: str = 'uniform_average', num_regressors: int = 0) Tensor

计算 R 平方得分,它是自变量可以解释因变量方差的比例。它的类版本是 torcheval.metrics.R2Score

参数::
  • input – 形状为 (n_sample, n_output) 的预测值张量。

  • target – 形状为 (n_sample, n_output) 的真实值张量。

  • multioutput (可选) –

    • 'uniform_average' [默认]

      返回所有输出的平均得分,权重相等。

    • 'raw_values':

      返回完整的得分集。

    • variance_weighted:

      返回所有输出的平均得分,由每个单独输出的方差加权。

  • num_regressors (可选) – 使用的自变量数量,应用于调整后的 R 平方得分。默认为零(标准 R 平方得分)。

引发::

ValueError

  • 如果 multioutput 的值不存在于 (raw_values, uniform_average, variance_weighted) 中。 - 如果 num_regressors 的值不是 [0, n_samples - 1] 范围内的 integer

示例

>>> import torch
>>> from torcheval.metrics.functional import r2_score
>>> input = torch.tensor([0, 2, 1, 3])
>>> target = torch.tensor([0, 1, 2, 3])
>>> r2_score(input, target)
tensor(0.6)

>>> input = torch.tensor([[0, 2], [1, 6]])
>>> target = torch.tensor([[0, 1], [2, 5]])
>>> r2_score(input, target)
tensor(0.6250)

>>> input = torch.tensor([[0, 2], [1, 6]])
>>> target = torch.tensor([[0, 1], [2, 5]])
>>> r2_score(input, target, multioutput="raw_values")
tensor([0.5000, 0.7500])

>>> input = torch.tensor([[0, 2], [1, 6]])
>>> target = torch.tensor([[0, 1], [2, 5]])
>>> r2_score(input, target, multioutput="variance_weighted")
tensor(0.7000)

>>> input = torch.tensor([1.2, 2.5, 3.6, 4.5, 6])
>>> target = torch.tensor([1, 2, 3, 4, 5])
>>> r2_score(input, target, multioutput="raw_values", num_regressors=2)
tensor(0.6200)

文档

访问 PyTorch 的全面开发者文档

查看文档

教程

获取针对初学者和高级开发人员的深入教程

查看教程

资源

查找开发资源并获得问题的解答

查看资源