mixle package¶
mixle — a capability-oriented probability/statistics library.
The structure (see docs/ARCHITECTURE.md and docs/CAPABILITIES.md):
Objects — the families:
mixle.dist(the umbrella over every distribution, including the graph / ranking / set / Markov families),mixle.process(stochastic processes),mixle.models(generic / applied models — GPs, neural nets, random forests, knowledge graphs, POMDPs — which aren’t full Distribution-contract families but still participate in some concerns), andmixle.relations.Concerns — what you can do, each its own module:
mixle.enumeration,mixle.inference,mixle.ops. (Drawing from a model is intrinsic behavior, not a separate concern:mixle.stats.sample()is the verb, and thePosteriorhierarchy that inference produces lives inmixle.stats.compute.posterior/mixle.inference.posterior.)Kernel —
mixle.contracts(every ABC/Protocol in one import) and the capability meta-layer re-exported here (supports(),capabilities(),describe(),catalog(),what_supports(),require()).
Start with mixle.describe(x) to see what any object can do.
- class Model(spec=None, *, notes=None)[source]
Bases:
objectOne object over the model lifecycle: build / fit / evaluate / enumerate / distill / deploy / use.
- fit(data, *, restarts='auto', calibrate=False, **optimize_kw)[source]
Fit via
mixle.inference.optimize(); the algorithm follows from the model’s structure.restarts="auto"(default) makes latent-variable fitting genuinely automatic: after the plain fit, a family-agnostic saddle check runs (a mixture stuck at the symmetric saddle gives every observation a ~uniform component posterior), and on suspicion the fit silently reruns as multi-restart EM (mixle.inference.best_of()), keeping the better log-likelihood and recording what happened innotes. Pass an int to force that many restarts up front, orrestarts=Nonefor the raw single fit.calibrate(opt-in, default off): reserve a holdout slice (a fraction, orTruefor 25%), fit on the rest, and attach aCalibrationReportonself.calibrationmeasuring whether the model’s uncertainty is honest on the held-out data (PIT test + held-out log-density). Off by default because it costs training data.
- evaluate(data)[source]
Held-out fit quality: total and mean log-density over
data.
- sample(size=None, *, seed=None)[source]
- enumerate()[source]
The fitted distribution’s enumerator (top-k / top-p / rank / seek), where supported.
- Return type:
- posterior(x)[source]
Latent posterior for one observation (mixtures, HMMs, …), where supported.
- distill(teacher=None, inputs=None, **solve_kw)[source]
Distill a tiny deployable student via
mixle.task.solve().With
teacher=Nonethe fitted model itself teaches: inputs are labeled by their most-probable latent component (posteriorargmax), so a fitted mixture becomes a fast, calibrated classifier of its own clusters. Returns amixle.task.Solution(call it,report(),improve()).
- deploy(path)[source]
Persist a durable artifact directory (model + manifest);
Model.load()restores it.
- explain_prediction(x)[source]
Exact per-part attribution of
log p(x)—mixle.inference.explain().- Parameters:
x (Any)
- forecast(history, horizon, **kw)[source]
Horizon predictions with honest intervals —
mixle.inference.forecast()(HMMs).
- do(interventions, **kw)[source]
Graph-surgery intervention —
mixle.inference.do()(learned Bayesian networks).
- propose(data, *, fit=False, llm=None, holdout=0.25, seed=0, max_its=25, **recommend_kw)[source]
Propose a model for
datafrom a verified frontier of candidates and return the winner.Candidates come from every proposer the library has — the heuristic recommendation (
mixle.task.recommend.recommend_model(), dependency-aware), the plain independence baseline (mixle.utils.automatic.get_estimator()), and, when anllmhandle is given, an LLM-designed structure (mixle.task.design.design_model(), allowlisted-spec, fit-validated). Each candidate is fitted on a train split and scored on held-out data, so the ranking is out-of-sample, not a guess. The winner becomes the returnedModel; the full ranking lands inModel.frontierand the per-field confidence / dependency / candidate notes inModel.notes(shown byexplain()). Passfit=Trueto also fit the winner to all ofdatabefore returning.
- supports(obj, capability)[source]
Return whether
objprovidescapability(a Protocol or a PredicateCapability).
- capabilities(obj)[source]
Return the set of capability names
objprovides — “what can I do with this?”.
- describe(obj)[source]
Return a plain-English summary of what
objis and what you can do with it.The one-call answer to “what can this do?”: its category, the capabilities it has and notably lacks, the engines it runs on, and how to fit it. Works on any object; richest for distributions.
- summarize(obj)[source]
Return every closed-form summary statistic
objexposes, selected by its capabilities.The numeric companion to
describe()(which says what an object can do): mean/variance/std (plus skewness/kurtosis when present) for aHasMomentsdistribution,entropyforHasEntropy, and the median forHasCDF. Keys absent from the result are not available in closed form forobj– sosummarizenever raises on a partially-featured distribution.
- catalog()[source]
Return the full capability vocabulary (every facet/contract/role), as data.
- Return type:
tuple[CapabilitySpec, …]
- what_supports(capability, among)[source]
Return the names of the objects in
amongthat providecapability.amongis an iterable of instances (or classes for method-presence protocols) — e.g.what_supports(Conditionable, [mvn, gaussian, mixture]).
- require(obj, capability, op=None)[source]
Raise
CapabilityError(early, with a clear message) ifobjlackscapability.
Subpackages¶
- mixle.analysis package
- mixle.data package
- mixle.doe package
- Submodules
- mixle.doe.active module
- mixle.doe.analysis module
- mixle.doe.batch module
- mixle.doe.bayesopt module
- mixle.doe.calibrate module
- mixle.doe.constrained module
- mixle.doe.designs module
- mixle.doe.entropy module
- mixle.doe.factorial module
- mixle.doe.mixture module
- mixle.doe.multifidelity module
- mixle.doe.multiobjective module
- mixle.doe.optimal module
- mixle.doe.optimizer module
- mixle.doe.propagate module
- mixle.doe.sensitivity module
- mixle.doe.trust_region module
- Submodules
- mixle.engines package
- Submodules
- mixle.engines.affine module
- mixle.engines.arithmetic module
- mixle.engines.base module
- mixle.engines.bitpacked module
- mixle.engines.build_kernels module
- mixle.engines.error_tracing module
- mixle.engines.extended module
- mixle.engines.formats module
- mixle.engines.heterogeneous module
- mixle.engines.highprec module
- mixle.engines.jax_engine module
- mixle.engines.lns module
- mixle.engines.lns_nn module
- mixle.engines.numpy_engine module
- mixle.engines.packing module
- mixle.engines.precision module
- mixle.engines.qlut module
- mixle.engines.spectrum module
- mixle.engines.symbolic_engine module
- mixle.engines.symbolic_export module
- mixle.engines.torch_engine module
- Submodules
- mixle.enumeration package
- Subpackages
- Submodules
- mixle.enumeration.algorithms module
- mixle.enumeration.assignment module
- mixle.enumeration.autoregressive module
- mixle.enumeration.best_first module
- mixle.enumeration.density_rank module
- mixle.enumeration.envelope module
- mixle.enumeration.hmm_paths module
- mixle.enumeration.model_enumeration module
- mixle.enumeration.rescore module
- mixle.enumeration.seek_index module
- mixle.enumeration.spanning module
- mixle.enumeration.streams module
- mixle.evolve package
- mixle.experimental package
- mixle.inference package
- Subpackages
- Submodules
- mixle.inference.backends module
- mixle.inference.bayesian_network module
- mixle.inference.belief module
- mixle.inference.blackbox module
- mixle.inference.block_gibbs module
- mixle.inference.calibrate_fit module
- mixle.inference.calibration module
- mixle.inference.causal module
- mixle.inference.conformal module
- mixle.inference.create module
- mixle.inference.cross_validation module
- mixle.inference.decision module
- mixle.inference.diagnostics module
- mixle.inference.em module
- mixle.inference.errors_in_variables module
- mixle.inference.estimation module
- mixle.inference.event_study module
- mixle.inference.explain module
- mixle.inference.fisher module
- mixle.inference.forecast module
- mixle.inference.fusion_policy module
- mixle.inference.glm module
- mixle.inference.gradient_fit module
- mixle.inference.heterogeneous_executor module
- mixle.inference.jit module
- mixle.inference.model_comparison module
- mixle.inference.mpi_executor module
- mixle.inference.multiple_testing module
- mixle.inference.nonparametric module
- mixle.inference.objectives module
- mixle.inference.orchestration module
- mixle.inference.ordinal module
- mixle.inference.placement module
- mixle.inference.planning module
- mixle.inference.posterior module
- mixle.inference.precision_plan module
- mixle.inference.priors module
- mixle.inference.project module
- mixle.inference.reproduce module
- mixle.inference.resampling module
- mixle.inference.robust module
- mixle.inference.scoring module
- mixle.inference.select module
- mixle.inference.simulate module
- mixle.inference.skill module
- mixle.inference.spark_executor module
- mixle.inference.streaming module
- mixle.inference.structure module
- mixle.inference.survival module
- mixle.inference.synthesize module
- mixle.inference.target module
- mixle.inference.uncertainty module
- mixle.inference.uq module
- mixle.models package
- Submodules
- mixle.models.continual module
- mixle.models.dependence module
- mixle.models.dirichlet_process_mixture module
- mixle.models.dpo_leaf module
- mixle.models.embedding module
- mixle.models.energy module
- mixle.models.gaussian_process module
- mixle.models.grammar module
- mixle.models.knowledge_graph module
- mixle.models.language_model module
- mixle.models.mixture_density module
- mixle.models.neural module
- mixle.models.neural_density module
- mixle.models.neural_families module
- mixle.models.neural_leaf module
- mixle.models.partially_observable_markov_decision_process module
- mixle.models.random_forest module
- mixle.models.random_graph module
- mixle.models.softmax_leaf module
- mixle.models.sparse_gaussian_process module
- mixle.models.streaming_transformer_leaf module
- mixle.models.train_search module
- mixle.models.transformer module
- Submodules
- mixle.ppl package
- Submodules
- mixle.ppl.autograd module
- mixle.ppl.conformal module
- mixle.ppl.core module
- mixle.ppl.density module
- mixle.ppl.diagnostics module
- mixle.ppl.distributions module
- mixle.ppl.field module
- mixle.ppl.guide module
- mixle.ppl.inference module
- mixle.ppl.neural module
- mixle.ppl.predictive module
- mixle.ppl.priors module
- mixle.ppl.provenance module
- mixle.ppl.regression module
- mixle.ppl.rough_paths module
- mixle.ppl.statespace module
- mixle.ppl.summarize module
- mixle.ppl.survival module
- mixle.ppl.vmp module
- Submodules
- mixle.pool package
- mixle.reason package
- mixle.represent package
- Submodules
- mixle.represent.api module
- mixle.represent.embed module
- mixle.represent.generative module
- mixle.represent.graph module
- mixle.represent.heterogeneous module
- mixle.represent.learned_segment module
- mixle.represent.modality module
- mixle.represent.posterior module
- mixle.represent.quantize module
- mixle.represent.segment module
- Submodules
- mixle.stats package
- Subpackages
- mixle.stats.bayes package
- mixle.stats.combinator package
- mixle.stats.compute package
- mixle.stats.directional package
- mixle.stats.graphs package
- mixle.stats.latent package
- mixle.stats.matrix package
- mixle.stats.multivariate package
- mixle.stats.processes package
- mixle.stats.rankings package
- mixle.stats.sequences package
- mixle.stats.sets package
- mixle.stats.trees package
- mixle.stats.univariate package
- Submodules
- Subpackages
- mixle.substrate package
- Submodules
- mixle.substrate.act module
- mixle.substrate.answer module
- mixle.substrate.context module
- mixle.substrate.core module
- mixle.substrate.factuality module
- mixle.substrate.freshness module
- mixle.substrate.governance module
- mixle.substrate.harness module
- mixle.substrate.ingest module
- mixle.substrate.interop module
- mixle.substrate.kg_rag module
- mixle.substrate.multihop module
- mixle.substrate.reasoner module
- mixle.substrate.retrieve module
- mixle.substrate.security module
- mixle.substrate.spaces module
- mixle.substrate.trust module
- Submodules
- mixle.task package
- Submodules
- mixle.task.active module
- mixle.task.artifact module
- mixle.task.calibrate module
- mixle.task.cascade module
- mixle.task.constrained module
- mixle.task.density module
- mixle.task.design module
- mixle.task.distill module
- mixle.task.distill_methods module
- mixle.task.economics module
- mixle.task.edge module
- mixle.task.extract module
- mixle.task.generative_text module
- mixle.task.harness module
- mixle.task.llm module
- mixle.task.model module
- mixle.task.multilabel module
- mixle.task.plan module
- mixle.task.quantize module
- mixle.task.recommend module
- mixle.task.regress module
- mixle.task.router module
- mixle.task.scorecard module
- mixle.task.sft_plan module
- mixle.task.solve module
- mixle.task.structured_out module
- mixle.task.toolcall module
- mixle.task.traces module
- mixle.task.tune module
- Submodules
- mixle.telemetry package
- mixle.utils package