pymc.step_methods.DEMetropolis#

class pymc.step_methods.DEMetropolis(*args, **kwargs)[source]#

Differential Evolution Metropolis sampling step.

Parameters:
lamb: float

Lambda parameter of the DE proposal mechanism. Defaults to 2.38 / sqrt(2 * ndim)

vars: list

List of variables for sampler

S: standard deviation or covariance matrix

Some measure of variance to parameterize proposal distribution

proposal_dist: function

Function that returns zero-mean deviates when parameterized with S (and n). Defaults to NormalProposal(S).

scaling: scalar or array

Initial scale factor for epsilon. Defaults to 0.001

tune: str

Which hyperparameter to tune. Defaults to ‘scaling’, but can also be ‘lambda’ or None.

tune_interval: int

The frequency of tuning. Defaults to 100 iterations.

model: PyMC Model

Optional model for sampling step. Defaults to None (taken from context).

mode: string or `Mode` instance.

compilation mode passed to PyTensor functions

References

[Braak2006]

Cajo C.F. ter Braak (2006). A Markov Chain Monte Carlo version of the genetic algorithm Differential Evolution: easy Bayesian computing for real parameter spaces. Statistics and Computing link

Methods

DEMetropolis.__init__([vars, S, ...])

Parameters:

DEMetropolis.astep(q0)

Perform a single sample step in a raveled and concatenated parameter space.

DEMetropolis.competence(var, has_grad)

DEMetropolis.link_population(population, ...)

Links the sampler to the population.

DEMetropolis.step(point)

Perform a single step of the sampler.

DEMetropolis.stop_tuning()

Attributes

default_blocked

name

stats_dtypes

A list containing <=1 dictionary that maps stat names to dtypes.

stats_dtypes_shapes

Maps stat names to dtypes and shapes.

vars

Variables that the step method is assigned to.