def test_empirical_from_trace(another_simple_model): with another_simple_model: step = pm.Metropolis() trace = pm.sample(100, step=step, chains=1, tune=0) emp = Empirical(trace) assert emp.histogram.shape[0].eval() == 100 trace = pm.sample(100, step=step, chains=4, tune=0) emp = Empirical(trace) assert emp.histogram.shape[0].eval() == 400
def __init__(self, n_particles=100, jitter=1, model=None, start=None, random_seed=None, estimator=KSD, kernel=test_functions.rbf, **kwargs): if kwargs.get('local_rv') is not None: raise opvi.AEVBInferenceError('SVGD does not support local groups') empirical = Empirical( size=n_particles, jitter=jitter, start=start, model=model, random_seed=random_seed) super().__init__(approx=empirical, estimator=estimator, kernel=kernel, **kwargs)