AbstractDiscrepancyModel

class pmrf.discrepancy_models.AbstractDiscrepancyModel

Bases: Module

Abstract base class for discrepancy models.

A discrepancy model maps a model prediction to an updated model prediction. This updated prediction can either be deterministic (e.g. a polynomial) or probabilistic (e.g. a Gaussian process) by either returning a JAX array or a distreqx probability distribution.

Note that probabilistic discrepancy models operate in “event space”. Here, probability events (e.g. frequency) are moved to the last axis.

These models are commonly used in conjuction with a likelihood function via pmrf.evaluators.MarginalLogLikelihood.

See pmrf.discrepancy_models for built-in discrepancy models.

abstractmethod __call__(y_event: Array) Array | AbstractDistribution

Apply discrepancy correction to a model prediction.

Parameters:

y_event (jnp.ndarray) – The initial model prediction in event space.

Returns:

The updated deterministic or probabilistic prediction.

Return type:

jnp.ndarray | dist.AbstractDistribution