def main(): distribution = Banana() # distribution = Flower(amplitude=6, frequency=6, variance=1, radius=10, dimension=8) # Visualise.visualise_distribution(distribution) show() # sigma = 5 print "using sigma", sigma kernel = GaussianKernel(sigma=sigma) mcmc_sampler = KameleonWindowLearnScale(distribution, kernel, stop_adapt=inf) start = asarray([0, -5.]) mcmc_params = MCMCParams(start=start, num_iterations=30000) chain = MCMCChain(mcmc_sampler, mcmc_params) chain.append_mcmc_output( PlottingOutput(distribution, plot_from=3000, colour_by_likelihood=False, num_samples_plot=0)) chain.append_mcmc_output(StatisticsOutput(plot_times=False)) chain.run() print distribution.emp_quantiles(chain.samples[10000:])
def main(): dist=Ring(dimension=50) X=dist.sample(10000).samples #print X[:,2:dist.dimension] print dist.emp_quantiles(X) dist2=Banana(dimension=50) X2=dist2.sample(10000).samples print dist2.emp_quantiles(X2)
def main(): distribution = Banana(dimension=8, bananicity=0.1, V=100.0) sigma = 5 print "using sigma", sigma kernel = GaussianKernel(sigma=sigma) mcmc_sampler = KameleonWindow(distribution, kernel) start = zeros(distribution.dimension) mcmc_params = MCMCParams(start=start, num_iterations=80000) chain = MCMCChain(mcmc_sampler, mcmc_params) # chain.append_mcmc_output(PlottingOutput(distribution, plot_from=3000)) chain.append_mcmc_output(StatisticsOutput(plot_times=True)) chain.run() print distribution.emp_quantiles(chain.samples)
def main(): distribution = Banana() # distribution = Flower(amplitude=6, frequency=6, variance=1, radius=10, dimension=8) # Visualise.visualise_distribution(distribution) show() # sigma = 5 print "using sigma", sigma kernel = GaussianKernel(sigma=sigma) mcmc_sampler = KameleonWindowLearnScale(distribution, kernel, stop_adapt=inf) start = asarray([0,-5.]) mcmc_params = MCMCParams(start=start, num_iterations=30000) chain = MCMCChain(mcmc_sampler, mcmc_params) chain.append_mcmc_output(PlottingOutput(distribution, plot_from=3000, colour_by_likelihood=False, num_samples_plot=0)) chain.append_mcmc_output(StatisticsOutput(plot_times=False)) chain.run() print distribution.emp_quantiles(chain.samples[10000:])