coniii.models module
Maximum-entropy model classes.
A Model bundles a Hamiltonian (the energy / observable
functions) with a sampler, providing a single object that can evaluate
energies and draw samples for a given set of multipliers. The solvers
in coniii.solvers construct a model internally; users can also
instantiate one directly to sample from a known model.
Public API (see __all__)
ModelBase class outlining the model interface.
Ising(aliasPairwiseMaxent)Pairwise maximum-entropy (Ising) model.
TripletMaxent model with third-order interactions.
Potts3Three-state Potts model.
- class coniii.models.Model(multipliers, rng=None, verbose=False)[source]
Bases:
objectBasic model class outline.
- setup_sampler(sample_method='metropolis', sample_size=1000, sampler_kwargs={})[source]
Instantiate sampler class object. Uses self.rng as the random number generator.
- Parameters:
sample_method (str, 'metropolis') – ‘metropolis’
sample_size (int, 1000)
sampler_kwargs (dict, {}) – Kwargs that can be passed into the initialization function for the sampler.
- generate_sample(n_iters, burn_in, multipliers=None, sample_size=None, sample_method=None, parallel=True, generate_kwargs={})[source]
Wrapper around generate_sample() generate_sample_parallel() methods in samplers.
Samples are saved to self.sample.
- Parameters:
n_iters (int)
burn_in (int)
multipliers (ndarray, None)
sample_size (int, None)
sample_method (str, None)
parallel (bool, True)
generate_kwargs (dict, {})
- class coniii.models.Ising(multipliers, rng=None, n_cpus=None, verbose=False)[source]
Bases:
ModelIsing model parameterized by fields and couplings.
- class coniii.models.Triplet(multipliers, rng=None, n_cpus=None, verbose=False)[source]
Bases:
ModelThird order maxent model constraining means, pairwise correlations, and triplet correlations.