mbi.Estimator
- class mbi.Estimator(*args, **kwargs)[source]
Bases:
ProtocolDefines the callable signature for marginal-based estimators.
An estimator estimates a discrete distribution, or more generally a `Projectable’ object from a loss function defined over it’s low-dimensional marginals.
Examples of conforming functions from mbi.estimation: - mirror_descent - lbfgs - dual_averaging - interior_gradient - universal_accelerated_method - … and more from other modules
Methods
__init__- __call__(domain: Domain, loss_fn: MarginalLossFn | list[LinearMeasurement], *, known_total: float | None = None, **kwargs: Any) Projectable[source]
Estimate a Projectable from noisy marginal measurements.
- Parameters:
domain – The Domain object specifying the attributes and their cardinalities over which the model is defined.
loss_fn – Either a MarginalLossFn object or a list of LinearMeasurement objects. This defines the objective function to be minimized.
known_total – An optional float for the known or estimated total number of records. If not specified, the estimator will attempt to learn this automatically.
**kwargs – Additional optional keyword arguments specific to the estimation algorithm.
- Returns:
A Projectable object that is maximally consistent with the noisy measurements taken in some sense.