mixle.stats.univariate.continuous.laplace module¶
Laplace distributions over real values.
Reference: Johnson, Kotz & Balakrishnan, Continuous Univariate Distributions (2nd ed., Wiley, 1994/95).
- class LaplaceDistribution(mu, b, name=None, keys=None)[source]
Bases:
SequenceEncodableProbabilityDistributionLaplace distribution with location mu and scale b > 0.
- classmethod compute_capabilities()[source]
Describe backend support for generated Laplace kernels.
- classmethod compute_declaration()[source]
Return the structured compute declaration for Laplace distributions.
- density(x)[source]
Return the probability density or mass at a single observation.
- log_density(x)[source]
Return the log-density or log-mass at a single observation.
- seq_log_density(x)[source]
Return vectorized log-density values for sequence-encoded observations.
- static backend_log_density_from_params(x, mu, b, engine)[source]
Engine-neutral Laplace log-density from explicit parameters.
- backend_seq_log_density(x, engine)[source]
Engine-neutral vectorized log-density for encoded data.
- classmethod backend_stacked_params(dists, engine)[source]
Return stacked Laplace parameters for a homogeneous mixture kernel.
- classmethod backend_stacked_log_density(x, params, engine)[source]
Return an
(n, k)matrix of Laplace log densities.
- classmethod backend_stacked_sufficient_statistics(x, weights, params, engine)[source]
Return per-component raw weighted observations using engine-resident arrays.
- cdf(x)[source]
Cumulative distribution function
P(X <= x)(exact). The continuous ‘index of’ a value.
- quantile(q)[source]
Inverse CDF
F^{-1}(q): the value at cumulative-probability indexq(continuous unranking).
- sampler(seed=None)[source]
Return a sampler for drawing observations from this distribution.
- Parameters:
seed (int | None)
- Return type:
LaplaceSampler
- estimator(pseudo_count=None)[source]
Return an estimator for fitting this distribution from data.
- Parameters:
pseudo_count (float | None)
- Return type:
LaplaceEstimator
- dist_to_encoder()[source]
Return the data encoder used by this distribution for vectorized methods.
- Return type:
LaplaceDataEncoder
- class LaplaceSampler(dist, seed=None)[source]
Bases:
DistributionSamplerDraw iid Laplace observations.
- Parameters:
dist (LaplaceDistribution)
seed (int | None)
- class LaplaceAccumulator(name=None, keys=None)[source]
Bases:
SequenceEncodableStatisticAccumulatorAccumulate weighted observations for exact weighted-median M-step.
- update(x, weight, estimate)[source]
Store one positively weighted observation for the weighted-median M-step.
- initialize(x, weight, rng)[source]
Initialize statistics from one observation.
- Parameters:
x (float)
weight (float)
rng (RandomState | None)
- Return type:
None
- seq_update(x, weights, estimate)[source]
Store positively weighted encoded observations for estimation.
- seq_update_engine(x, weights, estimate, engine)[source]
Engine-aware accumulation. Laplace’s MLE is a weighted median, so the sufficient statistic is the (positively weighted) data itself; this path accepts engine (e.g. torch) weights and stores host arrays. Matches seq_update.
- seq_initialize(x, weights, rng)[source]
Initialize statistics from encoded observations.
- Parameters:
x (ndarray)
weights (ndarray)
rng (RandomState | None)
- Return type:
None
- combine(suff_stat)[source]
Merge raw weighted observations from another accumulator.
- from_value(x)[source]
Replace accumulator contents from raw observations and weights.
- scale(c)[source]
Scale weights while preserving the raw observation payload.
- Parameters:
c (float)
- Return type:
LaplaceAccumulator
- key_merge(stats_dict)[source]
Merge keyed statistics into
stats_dictwhen keys are configured.
- key_replace(stats_dict)[source]
Replace this accumulator from keyed statistics when available.
- acc_to_encoder()[source]
Return the encoder used by this accumulator.
- Return type:
LaplaceDataEncoder
- class LaplaceAccumulatorFactory(name=None, keys=None)[source]
Bases:
StatisticAccumulatorFactoryFactory for LaplaceAccumulator.
- make()[source]
Create a fresh Laplace accumulator.
- Return type:
LaplaceAccumulator
- class LaplaceEstimator(pseudo_count=None, suff_stat=None, min_scale=1.0e-8, name=None, keys=None)[source]
Bases:
ParameterEstimatorExact weighted-MLE estimator for Laplace location and scale.
- Parameters:
- accumulator_factory()[source]
Return an accumulator factory for Laplace raw-observation statistics.
- Return type:
LaplaceAccumulatorFactory