Shortcuts

Pearson Corr. Coef.

Module Interface

class torchmetrics.PearsonCorrCoef(num_outputs=1, **kwargs)[source]

Computes Pearson Correlation Coefficient:

P_{corr}(x,y) = \frac{cov(x,y)}{\sigma_x \sigma_y}

Where y is a tensor of target values, and x is a tensor of predictions.

As input to forward and update the metric accepts the following input:

  • preds (Tensor): either single output float tensor with shape (N,) or multioutput float tensor of shape (N,d)

  • target (Tensor): either single output tensor with shape (N,) or multioutput tensor of shape (N,d)

As output of forward and compute the metric returns the following output:

  • pearson (Tensor): A tensor with the Pearson Correlation Coefficient

Parameters
Example (single output regression):
>>> from torchmetrics import PearsonCorrCoef
>>> target = torch.tensor([3, -0.5, 2, 7])
>>> preds = torch.tensor([2.5, 0.0, 2, 8])
>>> pearson = PearsonCorrCoef()
>>> pearson(preds, target)
tensor(0.9849)
Example (multi output regression):
>>> from torchmetrics import PearsonCorrCoef
>>> target = torch.tensor([[3, -0.5], [2, 7]])
>>> preds = torch.tensor([[2.5, 0.0], [2, 8]])
>>> pearson = PearsonCorrCoef(num_outputs=2)
>>> pearson(preds, target)
tensor([1., 1.])

Initializes internal Module state, shared by both nn.Module and ScriptModule.

Functional Interface

torchmetrics.functional.pearson_corrcoef(preds, target)[source]

Computes pearson correlation coefficient.

Parameters
  • preds (Tensor) – estimated scores

  • target (Tensor) – ground truth scores

Example (single output regression):
>>> from torchmetrics.functional import pearson_corrcoef
>>> target = torch.tensor([3, -0.5, 2, 7])
>>> preds = torch.tensor([2.5, 0.0, 2, 8])
>>> pearson_corrcoef(preds, target)
tensor(0.9849)
Example (multi output regression):
>>> from torchmetrics.functional import pearson_corrcoef
>>> target = torch.tensor([[3, -0.5], [2, 7]])
>>> preds = torch.tensor([[2.5, 0.0], [2, 8]])
>>> pearson_corrcoef(preds, target)
tensor([1., 1.])
Return type

Tensor