pmrf.fitting.BayesianContext
- class pmrf.fitting.BayesianContext(model, measured, frequency, features, measured_features, output_path=None, output_root=None, sparam_kind=None, logger=None, likelihood_kind=None, likelihood_params=None, feature_sigmas=None)[source]
Bases:
FitContextContext object for Bayesian fitting, containing likelihood configurations.
- Parameters:
model (Model)
measured (Network | NetworkCollection)
frequency (Frequency)
features (list[tuple[str, str, tuple[int, int]]])
measured_features (ndarray)
output_path (str | None)
output_root (str | None)
sparam_kind (str | None)
logger (Logger | None)
likelihood_kind (str)
likelihood_params (dict[str, Parameter])
feature_sigmas (list[str] | None)
- likelihood_kind
The type of likelihood function (e.g., ‘gaussian’, ‘multivariate_gaussian’).
- Type:
str or None
- likelihood_params
Parameters governing the likelihood function (e.g., noise standard deviation).
- Type:
dict[str, Parameter] or None
- feature_sigmas
Mapping of feature names to likelihood parameter names for multivariate cases.
- Type:
list[str] or None
- __init__(model, measured, frequency, features, measured_features, output_path=None, output_root=None, sparam_kind=None, logger=None, likelihood_kind=None, likelihood_params=None, feature_sigmas=None)
- Parameters:
model (Model)
measured (Network | NetworkCollection)
frequency (Frequency)
features (list[tuple[str, str, tuple[int, int]]])
measured_features (ndarray)
output_path (str | None)
output_root (str | None)
sparam_kind (str | None)
logger (Logger | None)
likelihood_kind (str | None)
likelihood_params (dict[str, Parameter] | None)
feature_sigmas (list[str] | None)
- Return type:
None
Methods
__delattr__(name, /)Implement delattr(self, name).
__dir__()Default dir() implementation.
__eq__(other)Return self==value.
__format__(format_spec, /)Default object formatter.
__ge__(value, /)Return self>=value.
__getattribute__(name, /)Return getattr(self, name).
__gt__(value, /)Return self>value.
__init__(model, measured, frequency, ...[, ...])__init_subclass__This method is called when a class is subclassed.
__le__(value, /)Return self<=value.
__lt__(value, /)Return self<value.
__ne__(value, /)Return self!=value.
__new__(**kwargs)__reduce__()Helper for pickle.
__reduce_ex__(protocol, /)Helper for pickle.
__repr__()Return repr(self).
__setattr__(name, value, /)Implement setattr(self, name, value).
__sizeof__()Size of object in memory, in bytes.
__str__()Return str(self).
__subclasshook__Abstract classes can override this to customize issubclass().
Get names of all parameters (model and likelihood).
Get names of the likelihood parameters.
make_feature_function([as_numpy])Create a JIT-compiled function to extract features from model parameters.
Create a simple Gaussian log-likelihood function (single sigma).
make_log_likelihood_fn([as_numpy])Create the log-likelihood function based on the context configuration.
make_log_prior_fn([as_numpy])Create the log-prior probability density function.
Create a multivariate Gaussian log-likelihood function (multiple sigmas).
make_prior_transform_fn([as_numpy])Create the prior transform function (unit hypercube to parameter space).
model_param_names()Get the names of the flat parameters of the model.
settings([solver_kwargs, fitter_kwargs])Create a FitSettings object from the current context.
Attributes
__annotations____dataclass_fields____dataclass_params____dict____doc____hash____match_args____module____weakref__list of weak references to the object (if defined)
loggerNumber of parameters in the likelihood function.
Number of flat parameters in the model.
Total number of parameters (model + likelihood).
output_pathoutput_rootsparam_kindmodelmeasuredfrequencyfeaturesmeasured_features- likelihood_kind: str = None
- feature_sigmas: list[str] | None = None
- property num_params: int
Total number of parameters (model + likelihood).
- Type:
int
- property num_model_params: int
Number of flat parameters in the model.
- Type:
int
- property num_likelihood_params: int
Number of parameters in the likelihood function.
- Type:
int
- likelihood_param_names()[source]
Get names of the likelihood parameters.
- Returns:
The names of the likelihood parameters.
- Return type:
list of str
- flat_param_names()[source]
Get names of all parameters (model and likelihood).
- Returns:
Combined list of parameter names.
- Return type:
list of str
- make_prior_transform_fn(as_numpy=False)[source]
Create the prior transform function (unit hypercube to parameter space).
- Parameters:
as_numpy (bool, optional, default=False) – If True, returns a function compatible with NumPy arrays; otherwise JAX arrays.
- Returns:
Function transforming a unit hypercube vector u to parameter vector theta.
- Return type:
callable
- make_log_prior_fn(as_numpy=False)[source]
Create the log-prior probability density function.
- Parameters:
as_numpy (bool, optional, default=False) – If True, returns a function compatible with NumPy arrays.
- Returns:
Function returning the log-probability of the given parameters.
- Return type:
callable
- make_log_likelihood_fn(as_numpy=False)[source]
Create the log-likelihood function based on the context configuration.
- Parameters:
as_numpy (bool, optional, default=False) – If True, returns a function compatible with NumPy arrays.
- Returns:
Function returning the log-likelihood of the parameters given the data.
- Return type:
callable
- Raises:
Exception – If the likelihood_kind is unsupported.
- make_gaussian_log_likelihood_fn()[source]
Create a simple Gaussian log-likelihood function (single sigma).
- Returns:
JIT-compiled log-likelihood function.
- Return type:
callable
- make_multivariate_gaussian_log_likelihood_fn()[source]
Create a multivariate Gaussian log-likelihood function (multiple sigmas).
- Returns:
JIT-compiled log-likelihood function.
- Return type:
callable
- __init__(model, measured, frequency, features, measured_features, output_path=None, output_root=None, sparam_kind=None, logger=None, likelihood_kind=None, likelihood_params=None, feature_sigmas=None)
- Parameters:
model (Model)
measured (Network | NetworkCollection)
frequency (Frequency)
features (list[tuple[str, str, tuple[int, int]]])
measured_features (ndarray)
output_path (str | None)
output_root (str | None)
sparam_kind (str | None)
logger (Logger | None)
likelihood_kind (str | None)
likelihood_params (dict[str, Parameter] | None)
feature_sigmas (list[str] | None)
- Return type:
None