{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# Markov Chain Monte Carlo" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Recap\n", "\n", "We have some target function (the likelihood times the prior) in some parameter space, and we want to integrate it.\n", "\n", "As a toy example, we chose the following likelihood:" ] }, { "cell_type": "code", "execution_count": 63, "metadata": {}, "outputs": [], "source": [ "def loglikelihood(*parameters):\n", " a = np.asarray(parameters)[:-1] * 10\n", " b = np.asarray(parameters)[1:] * 10\n", " return -2 * (100 * (b - a**2)**2 + (1 - a)**2).sum()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "And we assume our prior is uniform in the domain -1/2 to +1/2 in each parameter. \n", "We use two parameters at the moment." ] }, { "cell_type": "code", "execution_count": 64, "metadata": {}, "outputs": [], "source": [ "lo = -0.5\n", "hi = 0.5\n", "dim = 2" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Lets plot this function in 2d:" ] }, { "cell_type": "code", "execution_count": 65, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "import numpy as np\n", "import matplotlib.pyplot as plt\n", "\n", "a = np.linspace(lo, hi, 400)\n", "b = np.linspace(lo, hi, 400)\n", "\n", "grid = np.meshgrid(a, b)\n", "grid_unnormalised_logposterior = np.vectorize(loglikelihood)(grid[0], grid[1])\n", "\n", "plt.imshow(\n", " np.exp(grid_unnormalised_logposterior[::-1]),\n", " extent=(lo, hi, lo, hi),\n", " aspect='equal', cmap='gray_r');" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Markov Chain Monte Carlo intro" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "In importance sampling, we used uncorrelated points. \n", "\n", "### Important terminology\n", "\n", "Now we use an algorithm which produces a sequence of points: $\\theta_1,\\theta_2,...\\theta_N$. We call this a **chain**.\n", "\n", "A sequence of points where the next point **only** depends on the immediately previous point and not on earlier points is called a **Markov Chain**. We say the chain has a Markov property.\n", "\n", "![Markov Chain](img/chain.png)\n", "\n", "If the distribution of chain points approximates the target distribution, we call the chain **converged**. This may require very long chains. Important technical terms are **stationarity** and **ergodicity**: stationary processes do not shift over time. \n", "Ergodicity is if the distribution within a long chain is the same as one random point taken from many chains.\n", "![Stationary](img/stationary.png)\n", "![Ergodicity](img/ergodicity.jpg)\n", "\n", "\n", "Because the algorithm will use random numbers to generate the next point in the Markov Chain (a Monte Carlo algorithm), it is a **Markov Chain Monte Carlo** (MCMC) algorithm.\n", "\n", "The transition from one point to the next is called a **transition kernel**: $P(\\theta_{i+1}|\\theta_i)$. Each transition kernel gives a subclass of MCMC algorithms.\n", "\n", "Here we will focus on transition kernels based on a **Gaussian random walk**:\n", "\n", "$\\theta_{proposed} \\sim Normal(\\theta_i, \\sigma)$:\n", "\n", "In words, the next point is suggested by a Gaussian draw around the current point.\n", "\n", "![Gaussian proposal](img/gaussian-proposal.jpg)\n" ] }, { "cell_type": "code", "execution_count": 5, "metadata": {}, "outputs": [], "source": [ "mychain = [[0, 0]]\n", "proposal_sigma = 0.001" ] }, { "cell_type": "code", "execution_count": 6, "metadata": {}, "outputs": [], "source": [ "previous_point = mychain[-1]\n", "proposed_point = np.random.normal(previous_point, proposal_sigma)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "The final ingredient is the acceptance rule, to decide whether we stay with the current point or accept the proposed point. The rule is very simple and says:\n", "\n", "*We accept with a probability $\\alpha$, which is the target probability ratio of the current to the proposed point*:\n", "\n", "$\\alpha = p_\\mathrm{accept} = \\frac{f(\\theta')}{f(\\theta)}$\n", "\n", "This means there are three scenarios:\n", "\n", "* The proposed point $\\theta'$ has a much, much lower probability than $\\theta$ -> stay\n", "* The proposed point $\\theta'$ has a higher or equal probability than $\\theta$ -> accept\n", "* The proposed point $\\theta'$ has a slightly lower probability than $\\theta$ -> there is a chance we will accept.\n", "\n", "This is called the **Metropolis algorithm**. There is also an extension, the Metropolis-Hasting algorithm, for asymmetric transition kernels.\n", "\n", "Lets implement our update rule:" ] }, { "cell_type": "code", "execution_count": 22, "metadata": {}, "outputs": [], "source": [ "def metropolis_algorithm(theta_new, theta_old):\n", " # TODO by you:\n", " prob_new = # call loglikelihood using *theta_new, and convert to linear from ln\n", " prob_old = # call loglikelihood using *theta_old, and convert to linear from ln\n", " \n", " alpha = # take the ratio between prob_new and prob_old\n", " \n", " # draw randomly proportional to prob_ratio\n", " u = np.random.uniform()\n", " if u < alpha:\n", " return True\n", " else:\n", " return False" ] }, { "cell_type": "code", "execution_count": 8, "metadata": {}, "outputs": [], "source": [ "Niter = 10000\n", "Naccepts = 0\n", "\n", "for i in range(Niter):\n", "\n", " # get last point added to the chain\n", " previous_point = mychain[-1]\n", "\n", " # pick a proposed point\n", " proposed_point = np.random.normal(previous_point, proposal_sigma)\n", "\n", " # do we accept this point?\n", " if metropolis_algorithm(proposed_point, previous_point):\n", " Naccepts += 1\n", " next_point = proposed_point\n", " else:\n", " next_point = previous_point\n", "\n", " mychain.append(next_point)\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Lets already go ahead and make several chains, so we get a better feel for the typical behaviour:" ] }, { "cell_type": "code", "execution_count": 9, "metadata": {}, "outputs": [], "source": [ "def mcmc(starting_point, Niter, proposal_sigma):\n", " Naccepts = 0\n", " chain = [starting_point]\n", "\n", " for i in range(Niter):\n", "\n", " previous_point = chain[-1]\n", "\n", " proposed_point = np.random.normal(previous_point, proposal_sigma)\n", "\n", " # do we accept this point?\n", " if metropolis_algorithm(proposed_point, previous_point):\n", " Naccepts += 1\n", " next_point = proposed_point\n", " else:\n", " next_point = previous_point\n", "\n", " chain.append(next_point)\n", "\n", " return Naccepts, chain" ] }, { "cell_type": "code", "execution_count": 54, "metadata": {}, "outputs": [], "source": [ "chains_results = [mcmc(starting_point=[0, 0], Niter=10000, proposal_sigma=0.001) for i in range(4)]" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Lets see how often the proposal was accepted, and a transition was made:" ] }, { "cell_type": "code", "execution_count": 55, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "acceptance rates: 92.4%, 90.6%, 92.1%, 92.3%\n" ] } ], "source": [ "print(\"acceptance rates: \" + ', '.join(['%.1f%%' % (100 * Naccepts / len(chain)) for Naccepts, chain in chains_results]))" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "As a rule of thumb for Metropolis MCMC:\n", "\n", "* 23% is ideal (unless in very low dimensions)\n", "* \\>50% indicates the proposal is too small and the algorithm performs a levy-flight.\n", "* 0% indicates the chain is stuck: The proposal is too wide and does not find good nearby points.\n" ] }, { "cell_type": "code", "execution_count": 56, "metadata": {}, "outputs": [], "source": [ "chains = np.asarray([chain for Naccepts, chain in chains_results])" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# Visualisations" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## 2d: conditional probability distribution" ] }, { "cell_type": "code", "execution_count": 57, "metadata": { "scrolled": true }, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "plt.scatter(\n", " np.asarray(chains[0])[:,0],\n", " np.asarray(chains[0])[:,1],\n", " c=np.arange(len(chains[0])),\n", ");" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Trace plots" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "For each parameter, plot iteration vs value:" ] }, { "cell_type": "code", "execution_count": 58, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "for i in range(dim):\n", " plt.figure()\n", "\n", " # TODO by you: plot all four chains instead of mychain\n", " plt.plot(np.asarray(mychain)[:,i])\n", " \n", " plt.ylabel(\"Parameter %d\" % (i+1))\n", " plt.xlabel(\"Iteration\");" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Marginal probability distribution" ] }, { "cell_type": "code", "execution_count": 59, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "for i in range(dim):\n", " plt.figure()\n", "\n", " # TODO by you: plot all four chains instead of mychain\n", " plt.hist(np.asarray(mychain)[:,i], bins=100, histtype='step')\n", "\n", " plt.xlabel(\"Parameter %d\" % (i+1))\n", " plt.ylabel(\"Number of samples\")\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# Evaluation" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "The trace plots show clearly that there is correlation between points.\n", "\n", "Points are not independent, but **correlated**.\n", "\n", "We can see this by splitting the chain into chunks:" ] }, { "cell_type": "code", "execution_count": 60, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "for i in [0]:\n", " plt.figure()\n", " chain = chains[0]\n", " chain_chunks = np.array_split(chain, 4)\n", " for chunk in chain_chunks:\n", " plt.hist(chunk[:,i], bins=20, histtype='step')\n", " plt.xlabel(\"Parameter %d\" % (i+1))\n", " plt.ylabel(\"Number of samples\")\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "If the histograms are quite different between chunks, the chain has not converged. " ] }, { "cell_type": "code", "execution_count": 61, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "j = 0\n", "\n", "for i in [0]:\n", " plt.figure()\n", " for chain in chains:\n", " chain_chunks = np.array_split(chain, 4)\n", " for chunk in chain_chunks:\n", " plt.errorbar(x=chunk.mean(), xerr=chunk.std(), y=j + 1, marker='x', color='k')\n", " j += 1\n", " plt.errorbar(x=chain[:,i].mean(), xerr=chain[:,i].std(), y=j + 1, marker='o', color='r')\n", " j += 2\n", " \n", " plt.xlabel(\"Parameter %d\" % (i+1))\n", " plt.ylabel(\"Number of samples\")\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Ideally, we want all of the markers (x and o) to line up." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "We can quantify this by comparing the variance of the means within the chunks and across chains:\n", "\n", "* Let $W$ be the average of the chunk variances\n", "* Let $M_i$ be the mean in chain i, and $M$ the overall mean\n", "* Let $B$ be the variance of M_ij: $B=\\frac{1}{m-1}\\sum_{i=1}^m (M_i - M)^2$\n", "* Let $\\hat{R} \\approx \\sqrt{1 + B/W}$\n", "\n", "If the variances across chains are much smaller ($B\\approx0$) than the variances within each chain (W), then $\\hat{R}=1$. In other words, the means for each chain are comparable.\n", "\n", "Deviations from 1 (e.g., \\>1.01) are a sign that the chain has not converged.\n", "\n", "![Variance within a chain](img/variance-within-chain.png)\n", "\n", "![Variance between chains](img/variance-between-chains.png)\n" ] }, { "cell_type": "code", "execution_count": 62, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "B: 0.0006125435020075697 W: 0.0007333165098014844\n", "Rhat for Parameter 0: 1.35\n", "\n", "B: 0.0003182154013342918 W: 0.0003374937287057879\n", "Rhat for Parameter 1: 1.39\n", "\n" ] } ], "source": [ "for i in range(dim):\n", " mean = np.mean(chains[:,:,i])\n", "\n", " chunk_variances = []\n", " \n", " chain_variances = []\n", " for chain in chains:\n", " chain_variances.append(np.var(chain[:,i]))\n", " chain_chunks = np.array_split(chain, 4)\n", " for chunk in chain_chunks:\n", " chunk_variances.append( ((chunk[:,i].mean() - mean)**2))\n", " \n", " W = np.mean(chain_variances)\n", " B = sum(chunk_variances) / (len(chunk_variances) - 1)\n", " \n", " print(\"B:\", B, \"W:\", W)\n", " print(\"Rhat for Parameter %d: %.2f\" % (i, np.sqrt(1+B/W)))\n", " print()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Exercise 1 (30 points)\n", "\n", "* Play with the number of MCMC iterations and the proposal standard deviation.\n", "\n", "* Observe the trace plots. What do you notice? Can you make Rhat=1?\n", "\n", "* Plot the Niter needed so that Rhat becomes <1.01, for different values of sigma (0.1, 0.04, 0.01, for example).\n", "\n", "* Plot acceptance rate vs sigma.\n", "\n", "* Plot Niter vs sigma.\n", "\n", "## Exercise 2 (10 points)\n", "\n", "Try starting the chain at a random location in prior space.\n", "\n", "The algorithm we used works in probabilities, but has numerical problems when they become smaller than 1e-330.\n", "\n", "--> Rewrite the MCMC algorithm to work with logarithmic probabilities only (never using exp).\n", "\n", "## Homework exercise 1 (20 points)\n", "\n", "Find the [auto-correlation length](https://emcee.readthedocs.io/en/stable/tutorials/autocorr/) of one of the chains.\n", "\n", "Measure the effective sample size by dividing the number of samples by the auto-correlation length.\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Questions" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Related to efficiency:\n", "* What have you learned about the proposal distribution and auto-correlation?\n", "* Will a small proposal size give higher or lower correlation between points?\n", "* What proposal shape and size would be most efficient?\n", "\n", "Related to using the output of MCMC algorithms:\n", "* How would you use the marginal histograms to get parameter uncertainties?\n", "* If the chain is not converged, what would a user of a single chain conclude about the credible interval? What could go wrong?\n", "* How did we compute the Bayesian evidence (normalising factor)?\n", "* Is convergence defined for the chain globally, or for each parameter?\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Homework exercise 2 (60 points)\n", "\n", "Set up a target density which sums two Gaussians:\n", "\n", "$f(\\theta)=\\mathrm{NormalPDF}(\\theta|\\mu=-\\Delta,\\sigma=1) + \\mathrm{NormalPDF}(\\theta|\\mu=+\\Delta,\\sigma=1).$\n", "\n", "Plot $\\Delta$ vs the number of iterations needed for convergence, for 2d and 20d.\n", "\n", "Starting the chains at random locations.\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Further reading\n", "\n", "MCMC is a very mature field and its algorithmic variants have been studied for >50 years.\n", "\n", "There are lots of resources (slides, papers, tutorials) online, just search for \"intro/tutorial to MCMC\".\n", "\n", "Gaussian Random Walk Metropolis MCMC is quite inefficient in moderate dimensions (>5), even with optimally adapted proposals.\n", "\n", "Important MCMC variants:\n", "\n", "* Gibbs sampling: analytic conditional distributions allow 100% efficient updates of one parameter.\n", "* Slice sampling\n", "* Simulated tempering, Parallel tempering: make chain easier to navigate by suppressing the likelihod $L^{\\beta}, \\beta=0...1$.\n", "* Ensemble updates: Maintain several walkers (chains) and update them all\n", " * Differential Evolution MCMC\n", " * Goodman Weare, aka, Affine-Invariant Ensemble sampler\n", " * [emcee](https://emcee.readthedocs.io/) implementation extremely popular in astronomy\n", " * Sensitive to initialisation, two tuning parameters: number of walkers and gamma.\n", " * Beware of bad behaviour in high-d: https://arxiv.org/abs/1509.02230\n", " * Ensemble Slice Sampling (zeus)\n", " * [zeus](https://zeus-mcmc.readthedocs.io/) implementation, similar use as emcee\n", "* Reversible Jump MCMC: allows varying dimensionality. Difficult to work with.\n", "* Hamiltonian Monte Carlo: Uses likelihood gradients to make trajectories. Efficient in high dimensions.\n", "\n", "Diagnostics:\n", "\n", "* https://arviz-devs.github.io/arviz/\n", "* CODA R package\n", "* state-of-the-art R-hat paper: https://arxiv.org/abs/1903.08008\n", "\n", "Conceptual introduction: https://arxiv.org/pdf/1701.02434.pdf\n", "\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# Ticket to leave\n", "\n", "Fill out the [form below](https://indico.ph.tum.de/event/6875/surveys/8) and then you can leave the class. (+5 points)" ] }, { "cell_type": "code", "execution_count": 67, "metadata": {}, "outputs": [ { "data": { "text/html": [ "\n", "\n" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "%%html\n", "\n", "" ] } ], "metadata": { "kernelspec": { "display_name": "Python 3", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.8.10" } }, "nbformat": 4, "nbformat_minor": 4 }