NegativeBinomialDistributionLoss#
- class pytorch_forecasting.metrics.distributions.NegativeBinomialDistributionLoss(name: str = None, quantiles: list[float] | None = None, reduction='mean')[source]#
Bases:
DistributionLossNegative binomial loss, e.g. for count data.
- Requirements for original target normalizer:
not centered normalization (only rescaled)
Initialize metric
- Parameters:
name (str) – metric name. Defaults to class name.
quantiles (List[float], optional) – quantiles for probability range. Defaults to [0.02, 0.1, 0.25, 0.5, 0.75, 0.9, 0.98].
reduction (str, optional) – Reduction, “none”, “mean” or “sqrt-mean”. Defaults to “mean”.
Methods
Map the tensor of parameters to a probability distribution.
rescale_parameters(parameters, target_scale, ...)Rescale normalized parameters into the scale required for the output.
to_prediction(y_pred)Convert network prediction into a point prediction.
- distribution_class#
alias of
NegativeBinomial
- map_x_to_distribution(x: Tensor) NegativeBinomial[source]#
Map the tensor of parameters to a probability distribution.
- Parameters:
x (torch.Tensor) – parameters for probability distribution. Last dimension will index the parameters
- Returns:
- torch probability distribution as defined in the
class attribute
distribution_class
- Return type:
distributions.Distribution
- rescale_parameters(parameters: Tensor, target_scale: Tensor, encoder: BaseEstimator) Tensor[source]#
Rescale normalized parameters into the scale required for the output.
- Parameters:
parameters (torch.Tensor) – normalized parameters (indexed by last dimension)
target_scale (torch.Tensor) – scale of parameters (n_batch_samples x (center, scale))
encoder (BaseEstimator) – original encoder that normalized the target in the first place
- Returns:
parameters in real/not normalized space
- Return type:
torch.Tensor
- to_prediction(y_pred: Tensor) Tensor[source]#
Convert network prediction into a point prediction.
Derives the mean as a point prediction from the distribution parameters.
- Parameters:
y_pred (torch.Tensor) – Prediction output of network — the two parameters for the negative binomial distribution.
- Returns:
Mean prediction.
- Return type:
torch.Tensor