{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# Dirichlet process mixture models\n", "\n", "[Bayesian mixture models](bayesian_mixture_models.ipynb) introduced how to infer the posterior of the parameters of a mixture model with a fixed number of components $K$. We can either find $K$ using model selection, i.e. with AIC, BIC, WAIC, etc., or try to automatically infer this number. Nonparametric mixture models do exactly this. \n", "\n", "Here we implement a nonparametric Bayesian mixture model using *Gibbs sampling*. We use a *Chinese restaurant process* prior and stick-breaking construction to sample from a *Dirichlet process* (see for instance Nils Hjort's [*Bayesian Nonparametrics*](https://www.cambridge.org/ch/academic/subjects/statistics-probability/statistical-theory-and-methods/bayesian-nonparametrics?format=HB&isbn=9780521513463), Peter Orbanz' [lecture notes](http://stat.columbia.edu/~porbanz/papers/porbanz_BNP_draft.pdf)), Kevin Murphy's [book](https://mitpress.mit.edu/books/machine-learning-1) and last but not least Herman Kamper's [notes](https://www.kamperh.com/notes/kamper_bayesgmm13.pdf). \n", "\n", "We'll implement the Gibbs sampler using the CRP ourselves, since (I think) Stan doesn't allow us to do this and then use the stick-breaking construction with Stan. That is technically not possible though, so we use a small hack (a truncated DP)." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "We need to load some libraries first." ] }, { "cell_type": "code", "execution_count": 1, "metadata": {}, "outputs": [], "source": [ "suppressMessages({\n", " library(e1071)\n", " library(mvtnorm)\n", " library(dplyr)\n", " library(ggplot2)\n", " library(MCMCpack)\n", " library(bayesplot)\n", " library(rlang)\n", " library(logisticPCA) \n", " library(abind)\n", " library(rstan)\n", "})\n", "\n", "set.seed(23)" ] }, { "cell_type": "code", "execution_count": 2, "metadata": {}, "outputs": [], "source": [ "rstan_options(auto_write = TRUE)\n", "options(mc.cores = parallel::detectCores())" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "In [Bayesian mixture models](bayesian_mixture_models.ipynb) we used following hierarchical form to describe a mixture model:\n", "\n", "\\begin{align*}\n", "\\boldsymbol \\theta_k & \\sim \\mathcal{G}_0\\\\\n", "\\boldsymbol \\pi & \\sim \\text{Dirichlet}(\\boldsymbol \\alpha_0)\\\\\n", "z_i & \\sim \\text{Discrete}(\\boldsymbol \\pi)\\\\\n", "\\mathbf{x}_i \\mid z_i = k & \\sim {P}(\\boldsymbol \\theta_k)\n", "\\end{align*}\n", "\n", "where $\\mathcal{G}_0$ is some base distribution for the model parameters." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "The DP on contrast, as any BNP model, puts priors on structures that accomodate infinite sizes. The resulting posteriors give a distribution on structures that grow with new observations. A mixture model using an possibly infinite number of components could look like this:\n", "\n", "\\begin{align*}\n", "\\mathcal{G} & \\sim \\mathcal{DP}(\\alpha, \\mathcal{G}_0)\\\\\n", "\\boldsymbol \\theta_i & \\sim \\mathcal{G}\\\\\n", "\\mathbf{x}_i& \\sim {P}(\\boldsymbol \\theta_i)\n", "\\end{align*}\n", "\n", "where $\\mathcal{G}_0$ is the same base measure as above and $\\mathcal{G}$ is a sample from the DP, i.e. also a random measure." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## The Chinese restaurant process\n", "\n", "One way, and possibly the easiest, to implement a DPMM is using a *Chinese restaurant process* (CRP) which is a distribution over partitions." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Data generating process\n", "\n", "The hierarchical model using a CRP is:\n", "\n", "\\begin{align*}\n", "\\boldsymbol \\theta_k & \\sim \\mathcal{G}_0 \\\\\n", "z_i \\mid \\mathbf{z}_{1:i-1} & \\sim \\text{CRP} \\\\\n", "\\mathbf{x}_i & \\sim P(\\boldsymbol \\theta_{z_i})\n", "\\end{align*}\n", "\n", "where $\\text{CRP}$ is a prior on possible infinitely many classes. Specifically the CRP is defined as:\n", "\n", "\\begin{align*}\n", "P(z_i = k \\mid \\mathbf{z}_{-i}) = \\left\\{\n", " \\begin{array}{ll}\n", " \\frac{N_k}{N - 1 + \\alpha}\\\\\n", " \\frac{\\alpha}{N - 1 + \\alpha}\\\\\n", " \\end{array}\n", " \\right.\n", "\\end{align*}\n", "\n", "where $N_k$ is the number of customers at table $k$ and $\\alpha$ some hyperparameter." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "For the variables of interest, $\\boldsymbol \\theta_k$ and $\\boldsymbol z$ the posterior is:\n", "\n", "\\begin{align*}\n", "P(\\boldsymbol \\theta, \\boldsymbol z \\mid \\mathbf{X}) \\propto P(\\mathbf{X} \\mid \\boldsymbol \\theta, \\boldsymbol z ) P(\\boldsymbol \\theta) P ( \\boldsymbol z )\n", "\\end{align*}" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Using a Gibbs sampler, we iterate over the following two steps:\n", "\n", "1) sample $z_i \\sim P(z_i \\mid \\mathbf{z}_{-i}, \\mathbf{X}, \\boldsymbol \\theta) \\propto P(z_i \\mid \\mathbf{z}_{-i}) P(\\mathbf{x}_i \\mid \\boldsymbol \\theta_{z_i}, \\mathbf{X}_{-i}, \\mathbf{z})$\n", "\n", "2) sample $\\boldsymbol \\theta_k \\sim P(\\boldsymbol \\theta_k \\mid \\mathbf{z}, \\mathbf{X})$\n", "\n", "So we alternate sampling assignments of data to classes and sampling the parameters of the data distribution given the class assignments. The major difference here compared to the finite case is the way of sampling $z_i$ which we do using the CRP in the infinite case. The CRP itself is defined by $P(z_i \\mid \\mathbf{z}_{-i})$, so replacing this by a usual finite sample would give us a finite mixture. Evaluation of the likelihoods in the first step is fairly straightforward as we will see. Updating the model parameters in the second step is conditional on every class, an by that also not too hard to do." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Stick-breaking construction\n", "\n", "With the CRP with put a prior distribution on the possibly infinite number of class assignments. An alternative approach is to use *stick-breaking* construction. The advantage here is that we could use Stan using a truncated DP, thus we don't need to implement the sampler ourselves." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Data generating process\n", "\n", "If we, instead of putting a CRP prior on the latent labels, put a prior on the possibly infinite sequence of mixing weights $\\boldsymbol \\pi$ we arrive at the *stick-breaking* construction. The hierarchical model now looks like this:\n", "\n", "\\begin{align*}\n", "\\nu_k &\\sim \\text{Beta}(1, \\alpha) \\\\\n", "\\pi_k & = \\nu_k \\prod_{j=1}^{k-1} (1 - \\nu_j) \\\\\n", "\\boldsymbol \\theta_k & \\sim G_0 \\\\\n", "\\mathbf{x}_i & \\sim \\sum_k \\pi_k P(\\boldsymbol \\theta_k)\n", "\\end{align*}\n", "\n", "where $N_k$ is the number of customers at table $k$ and $\\alpha$ some hyperparameter. The distribution of the mixing weights is sometimes denoted as\n", "\n", "$$\n", "\\boldsymbol \\pi \\sim \\text{GEM}(\\alpha)\n", "$$" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Gaussian DPMM" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "In the following section, we derive a Gaussian Dirichlet process mixture using the CRP with a Gibbs sampler and the stick-breaking construction using Stan." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### CRP" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "In the Gaussian case the hierarchical model using the CRP has the following form:\n", "\n", "\\begin{align*}\n", "\\boldsymbol \\Sigma_k & \\sim \\mathcal{IW}\\\\\n", "\\boldsymbol \\mu_k & \\sim \\mathcal{N}(\\boldsymbol \\mu_0, \\boldsymbol \\Sigma_0) \\\\\n", "z_i \\mid z_{1:i-1} & \\sim \\text{CRP} \\\\\n", "\\mathbf{x}_i & \\sim \\mathcal{N}(\\boldsymbol \\mu_{z_i}, \\boldsymbol \\Sigma_{z_i})\n", "\\end{align*}" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Let's derive the Gibbs sampler for a infinite Gaussian mixture using the CRP." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "First we set data $\\mathbf{X}$ some constants. We create a very simple data set to avoid problems with identifiability and label switching. For a treatment of the topic see Michael Betancourt's [case study](https://betanalpha.github.io/assets/case_studies/identifying_mixture_models.html). $n$ is the number of samples, $p$ is the dimensionality of the Gaussian, $\\alpha$ is the Dirichlet concentration." ] }, { "cell_type": "code", "execution_count": 3, "metadata": {}, "outputs": [], "source": [ "n <- 100\n", "p <- 2\n", "alpha <- .5" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Latent class assignments (Z), the current table index and the number of customers per table:" ] }, { "cell_type": "code", "execution_count": 4, "metadata": {}, "outputs": [], "source": [ "Z <- integer(n)\n", "X <- matrix(0, n, p)\n", "curr.tab <- 0\n", "tables <- c()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Parameters of the Gaussians:" ] }, { "cell_type": "code", "execution_count": 5, "metadata": {}, "outputs": [], "source": [ "sigma <- .1\n", "mus <- NULL" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Then we create a random assignment of customers to tables with probability $P(z_i \\mid Z_{-i})$, i.e. we use the CRP to put data into classes.\n", "Note that we don't know the number of classes that comes out!" ] }, { "cell_type": "code", "execution_count": 6, "metadata": {}, "outputs": [], "source": [ "for (i in seq(n))\n", "{ \n", " probs <- c(tables / (i - 1 + alpha), alpha / (i - 1 + alpha))\n", " table <- rdiscrete(1, probs)\n", " if (table > curr.tab) \n", " {\n", " curr.tab <- curr.tab + 1\n", " tables <- c(tables, 0)\n", " mu <- mvtnorm::rmvnorm(1, c(0, 0), 10 * diag(p))\n", " mus <- rbind(mus, mu)\n", " }\n", " Z[i] <- table\n", " X[i,] <- mvtnorm::rmvnorm(1, mus[Z[i], ], sigma * diag(p))\n", " tables[table] <- tables[table] + 1\n", "}" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Let's see how many clusters and how many data points per clusters we have." ] }, { "cell_type": "code", "execution_count": 7, "metadata": {}, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAA0gAAANICAMAAADKOT/pAAACLlBMVEUAAAABAQEDAwMEBAQF\nBQUJCQkLCwsMDAwNDQ0ODg4QEBARERESEhITExMUFBQZGRkbGxsdHR0eHh4fHx8gICAiIiIl\nJSUoKCgrKystLS0uLi4vLy8yMjIzMzM0NDQ1NTU3Nzc8PDw9PT0+Pj4/Pz9AQEBDQ0NERERI\nSEhKSkpNTU1OTk5QUFBRUVFSUlJUVFRVVVVXV1dYWFhZWVlaWlpbW1tcXFxeXl5fX19gYGBh\nYWFiYmJjY2NkZGRlZWVnZ2doaGhqampsbGxubm5vb29xcXFycnJzc3N1dXV2dnZ3d3d4eHh5\neXl6enp8fHx9fX1+fn5/f3+AgICBgYGDg4OFhYWIiIiJiYmKioqLi4uMjIyNjY2Ojo6Pj4+Q\nkJCSkpKVlZWWlpaXl5eYmJiZmZmampqdnZ2enp6fn5+hoaGjo6OkpKSmpqanp6eoqKipqamq\nqqqsrKytra2urq6vr6+wsLCxsbGysrK0tLS1tbW2tra4uLi5ubm8vLy9vb2/v7/AwMDExMTF\nxcXGxsbHx8fJycnKysrLy8vMzMzNzc3Ozs7Pz8/Q0NDR0dHS0tLT09PU1NTW1tbX19fY2NjZ\n2dna2trb29vc3Nzd3d3e3t7f39/g4ODh4eHi4uLj4+Pk5OTm5ubn5+fo6Ojp6enq6urr6+vs\n7Ozt7e3u7u7v7+/w8PDx8fHy8vLz8/P09PT19fX29vb39/f4+Pj5+fn6+vr7+/v8/Pz9/f3+\n/v7///8DoWScAAAACXBIWXMAABJ0AAASdAHeZh94AAAe20lEQVR4nO2c/X/V91mH06ldrW7T\n+VTd5tQ5nSdQ6MgoZbCiuO6hiH0a3RRmWQV1m61WpnVrV6CLNrVlW0bpw7Z2rjvlkEASnkK+\n/51JgECw/ebc5/t5399z776uH5KSV8jnSt6fqzkkgZEKABoz0rYAwM8DhARQAEICKAAhARSA\nkAAKQEgABSAkgAIQEkABgoR0rne+bYWBuNSbaVthMKZOtW0wGLO9+XYODhLS2e65thUGYr57\num2FweidbNtgMM50L7ZzMCFJISRnCKkeQnKGkIwQkhRCcoaQ6iEkZwjJCCFJISRnCKkeQnKG\nkIwQkhRCcoaQ6iEkZwjJCCFJISRnCKkeQnKGkIwQkhRCcoaQ6iEkZwjJCCFJISRnCKkeQnKG\n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\nmEITAAAAAElFTkSuQmCC", "text/plain": [ "plot without title" ] }, "metadata": { "image/png": { "height": 420, "width": 420 }, "text/plain": { "height": 420, "width": 420 } }, "output_type": "display_data" } ], "source": [ "data.frame(table(Z))%>%\n", " ggplot() +\n", " geom_col(aes(Z, Freq), width=.5) +\n", " theme_minimal()" ] }, { "cell_type": "code", "execution_count": 8, "metadata": {}, "outputs": [ { "data": { "image/png": "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", "text/plain": [ "plot without title" ] }, "metadata": { "image/png": { "height": 420, "width": 420 }, "text/plain": { "height": 420, "width": 420 } }, "output_type": "display_data" } ], "source": [ "data.frame(X=X, Z=as.factor(Z)) %>%\n", " ggplot() +\n", " geom_point(aes(X.1, X.2, col=Z)) +\n", " theme_minimal()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "#### Posterior inference using Gibbs sampling\n", "\n", "We randomly initialize the cluster assignments and set all customers to table 1. Hyperparameter $\\alpha$ controls the probability of opening a new table." ] }, { "cell_type": "code", "execution_count": 9, "metadata": {}, "outputs": [], "source": [ "# initialization of the cluster assignments\n", "K <- 1\n", "zs <- rep(K, n)\n", "alpha <- 5\n", "tables <- n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "We assume the covariances to be known." ] }, { "cell_type": "code", "execution_count": 10, "metadata": {}, "outputs": [], "source": [ "mu.prior <- matrix(c(0, 0), ncol = 2)\n", "sigma.prior <- diag(p)\n", "q.prior <- solve(sigma.prior)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Base distribution $\\mathcal{G}_0$:" ] }, { "cell_type": "code", "execution_count": 11, "metadata": {}, "outputs": [], "source": [ "sigma0 <- diag(p)\n", "prec0 <- solve(sigma0)\n", "mu0 <- rep(0, p)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "To infer the posterior we would use the Gibbs sampler described above. Here, I am only interested in the most likely assignment, i.e. the MAP of $Z$." ] }, { "cell_type": "code", "execution_count": 12, "metadata": {}, "outputs": [], "source": [ "for (iter in seq(100))\n", "{\n", " for (i in seq(n))\n", " {\n", " # look at data x_i and romove its statistics from the clustering\n", " zi <- zs[i]\n", " tables[zi] <- tables[zi] - 1\n", " if (tables[zi] == 0) {\n", " K <- K - 1\n", " zs[zs > zi] <- zs[zs > zi] - 1\n", " tables <- tables[-zi]\n", " mu.prior <- mu.prior[-zi, ]\n", " }\n", " \n", " # compute posterior probabilitites P(z_i \\mid z_-i, ...)\n", " no_i <- seq(n)[-i]\n", " probs <- sapply(seq(K), function(k) {\n", " crp <- sum(zs[no_i] == k) / (n + alpha - 1)\n", " lik <- mvtnorm::dmvnorm(X[i, ], mu.prior[k,], sigma.prior)\n", " crp * lik\n", " })\n", " \n", " # compute probability for opening up a new one\n", " crp <- alpha / (n + alpha - 1)\n", " lik <- mvtnorm::dmvnorm(X[i, ], mu0, sigma.prior + sigma0)\n", " probs <- c(probs, crp * lik)\n", " probs <- probs / sum(probs)\n", " \n", " # sample new z_i according to the conditional posterior above\n", " z_new <- which.max(probs)\n", " if (z_new > K) {\n", " K <- K + 1\n", " tables <- c(tables, 0)\n", " mu.prior <- rbind(mu.prior, mvtnorm::rmvnorm(1, mu0, sigma0))\n", " }\n", " zs[i] <- z_new \n", " tables[z_new] <- tables[z_new] + 1\n", " \n", " # compute conditional posterior P(mu \\mid ...)\n", " for(k in seq(K)) {\n", " Xk <- X[zs == k, ,drop=FALSE]\n", " lambda <- solve(q.prior + tables[k] * q.prior)\n", " nominator <- tables[k] * q.prior %*% apply(Xk, 2, mean)\n", " mu.prior[k, ] <- mvtnorm::rmvnorm(1, lambda %*% nominator, lambda)\n", " }\n", " }\n", "}" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Let's see if that worked out!" ] }, { "cell_type": "code", "execution_count": 13, "metadata": {}, "outputs": [ { "data": { "image/png": "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\nKcF/vlPn86UUFtl+8qvAZx+phw8pNptpwCDzpVMlmf76LRS7119//YEHHrj00ku/973vHTx4\n8C9/+csVV1yxZs2aoUOHRr3KwsJCn8/ncrkyMjJEJBAI2O324uLisE9WFCUnJyfqdbULdrvd\nZrPZbDa9gySpyspKVVUN/zaImt/vdzqdvD5Ncblcfr8/IyOD3w2aUlVVlZ2dze+WYWma5vF4\nLBYLH7GmuN1uTdOC/6CnCCW/wHLtDXqnaFILxe6JJ54YOXLk559/HizjN95444QJE2699dav\nvvoq6l/vunfvnpaWtmXLlnHjxolIeXm5yWTq1atXdEsDAABAUAu/opWXl1977bV1m1j79Onz\n7LPPrl279o033oh6lZmZmdOmTXvppZf27t27b9++F154YdKkSQUFBVEvEAAAoF0bM2aMpmlt\nvO2EtFjssrKynE7n+ZM5c+ZMmjTpF7/4RVuOJL3ttttGjx793//93w8//PDAgQPvuuuuqBcF\nAACAoBaK3ciRI1988cX9+/efP/zzn/986tSpW265JerT481m8/z581988cW//vWvP/jBDzgo\nFQAAoO1aKHa/+93vKioqBg8ePHv27A8//DA4HDBgwMKFC99///0hQ4asWbMm/iEBAADQspa3\n2K1fv37KlCnLly9ftWpV3fy222574403vF7vhg0b4pwQAAAAEWn5OnbDhw8P3r8s5Pa0c+fO\nnTNnzpYtW/bs2ROvdAAAAIhYK24p1vhCayaTacSIESNGjIhpJAAAAESjrVek/OMf/7hgwYKY\nRAEAAEBbtLXYPf744w899FAskgAAAKBNWrErNqzf//733FobAAAgGbS12N14440xyQEAAIA2\nam5XbCT3DXM6nffee2/s8gAAACBKzRW766677tprrz158mRTT/jyyy+HDx/+xz/+MQ7BAAAA\n0DrNFbvZs2e//fbbgwcPfvXVV0P+yG63/+hHP5oyZcrBgwd/+ctfxjMhAAAAItJcsVu8ePHi\nxYszMzPnzZs3a9as48ePB+efffbZsGHDnn766fHjx2/YsOGRRx5JSFQAAAA0p4XLncyePbu8\nvPzHP/7xP//5zyFDhrzwwgt33HHHtGnTzp49+/TTT69cuXLYsGGJCQoAAIDmKZqmRfK89evX\nX3/99cG7h82cOfPZZ58tKSmJc7ZUYbfbbTZb4xt7IKiyslJV1aKiIr2DJCm/3+90OnNzc/UO\nkqRcLpfD4cjJyUlLS9M7S5KqqqrKzc01mdp6WVND0jStoqLCZrPxEWuK2+3WNC0jI0PvIDgn\nok9ybW3t3//+9/379wfLR1lZ2aZNm+IcDAAAAK3TcrFbvHjx4MGDn3zyycmTJ+/YseOtt95y\nu90zZsy47rrrTpw4kYCIAAAARnXy5Mnvfve7JSUlBQUF06dPLysra8vSmit2hw4dmjlz5pw5\nc+x2+wsvvPDpp5/26tVrzpw55eXl8+bNe+ONNwYOHPjss89GuDMXAACgvVtbs33a+rvzvphW\nsmzmrdv++7jnTBsXOG/evLKysldeeeXjjz/Ozc2dOnVq3emqUWjuGLvs7GyHwzFr1qxnnnmm\nS5cuIX/6/vvv33nnnceOHZs4ceLKlSujTgCOsWsex9g1j2Psmscxdi3iGLtmcIxdi1LtGLtN\ntbsnrpnvUj11kwFZ3deN/2u2OcpX4OjRo6WlpStXrpw4caKI+Hy+zp07//73v7/99tujW2Bz\nn+SsrKzXX3/9nXfeadzqRGTmzJnbtm275ZZbVq1aFd26AQAA2pF7dz15fqsTkZ2OQ08eej3q\nBQYCgYceemjMmDHBhz6fz+12q6oa9QKbu1dseXl585tJ8vPzX3rppeuuuy7q1QMAALQXG2p2\nNh6ur9kR9QK7d+/+4IMPBr92Op0333xzYWHht7/97agX2NwWuwh3fk2fPj3q1QMAALQXGaYw\nB3VkmtPbuFhN015++eWBAweeOnVq/fr1hYWFUS+KgyoAAAAiMqvjJY2Hsztc2pZlnj59esqU\nKQ888MAjjzzyxRdfdOzYsS1La25XLAAAAOo82u+uFVVl2+z76ibfK7lqbqepUS9Q07Qrr7yy\npKSkrKwsLy+v7QkpdgAAABHJs2RvGP/XF48tWVNdnmlOu7J44pXFE9uywM8//3z9+vU//elP\n161bVzccMGBAaWlpdAuk2AEAAETKZrLeWXrNnaXXxGRpmzdv1jRt3rx55w+feuqpu+66K7oF\nRnqvWMQP17FrHtexax7XsWse17FrEdexawbXsWtRql3HLvnxSQYAADAIih0AAIBBUOwAAAAM\ngmIHAABgEBQ7AAAAg6DYAQAAGATFDgAAwCAodgAAAAZBsQMAADAIih0AAIBBUOwAAAAMgmIH\nAABgEBQ7AAAAg6DYAQAAGATFDgAAwCAodgAAAAZBsQMAADAIih0AAIBBUOwAAABaQdXkZI1U\nOWOztB07dsyYMaOwsLBTp07XXXfd4cOH27I0S2xCAQAApIDlu+TNtWJ3i4iUFsotF0vvDtEv\nzePxzJgxY8yYMZ988smxY8ceffTRuXPnfvXVV1EvkGIHAAAQkY0H5aXl9Q+PnJU/fiwPXyMF\nWVEucNOmTfv27Vu3bl1BQYGIZGdnX3bZZXa7PTs7O7oFsisWAAAgIu9uDJ04PPKvbdEvcOzY\nsXa7vaCgwOFwbN68+c0337zggguibnXCFjsAAIAInayJdBghs9mclZUlItOnT1+xYkVBQcHK\nlSujXxzFDgAANHbQfeKBPc+tqiqzmMyXFV7wYO/vd7QV6B1Kfznp4vGFDnPTY7Dkd999t7a2\n9vnnn7/00kv37duXk5MT3XLYFQsAABo46jk99t/f+/vxD/e6ju50HPp/h9+asGZ+td+udy79\nXdI/zHBiv+gXuGXLlo8//lhECgsLe/To8Zvf/MbpdC5dujTqBVLsAABAA7/e/cwZX9X5k32u\no7/f/7JeeZLHjOEyvnf9Q6tZvnOh9OsU/QI3b9580003+f3+4MPq6mq32221WqNeILtiAQBI\ndZ+dXfdl5UZNtEvzR15eNO7f1VsbP2dV9ZbEB0s2JpPcMUW+MVT2nxabRQaVSFH05zmIiEyf\nPv0nP/nJbbfddvfdd7vd7ocffrhPnz6XXnpp1Auk2AEAkLo00W7auuCV4x/XTeZ2mmpVwtSD\nNCX6zUgG06uD9GrDtevOV1xc/MEHH9x3331Tp07NzMycNGnSc889l5mZGfUCKXYAAKSu5468\ne36rE5H/O/n5lIIx5Y79Ic+8onhCAnOlkHHjxi1btixWS+MYOwAAUtcbJz9rPHQGXEOze58/\nmVQw6p7u305UKESPLXYAAKSusOe61gZc6y/86zOH315RtdmimC8rHHtr15kWxZz4eGgtih0A\nAKlraHbv9TU7QobDcvqkm2w/7XH9T3tcr0sqRI1dsQAAGFZAU497zqia2tQT/qv3rbmWBjc6\nzTZnLOg9P/7REBcUOwAADMgecP145x+zP59SsmxmzheX/XL30y7V0/hpvTO6fj7mqUsKRloU\ns0UxT8wf9umYhQOyujezZI/qq/TVxi042oRdsQAAGNAd5Y+8euKT4NfOgPsPBxZV+e1/HvTL\nxs8ckztw2dhnvKpPE0kzNXdNkx2Og3fveOyLyvUBTe2X2e3RfnddkTs+LukRLbbYAQBgNGX2\nPXWtrs5zR97Z5zra1LfYTNbmW91ZX83lG+759OzagKaKyG7n4Tmbf/Vp5dqYBEasUOwAADCa\n7fYDYeflTcwjsfDwm0fcp0KG/7n/uagXiHig2AEAYDQF1pyw80JrbtTLLLeHXrJYRLa7Dka9\nQMRDsh9jp2ladXW13iniS1VVn8/ndDr1DpKkVFXVNK2qqqrlp6YkTdNUVeX1aYqqqiLicDhc\nLpfeWZJUIBCorq5WFEXvIMnL5/O1u4/YcFOvbraOh70NNrD1TS/tp3WJ+u+SqaU1HuaZstxu\nt8cT5rSMBMjLy+OtGyLZi52iKHl5eXqniC+Hw2G1Wm02m95BklRVVZWqqoZ/G0TN7/e7XK6c\nnPC/ncPlcjmdzszMzLS0MP8mQUSqq6tzcnJMJnbghKFp2tmzZ61Wa7v7iOWJ/GPEb6/Z/MtT\n3srgpCSt+PURvy3OKYp6mTeVXvHXUx+EDK/vNC0tLS0jIyP6rG1Aq2ss2YudpMb/NkVRUuGv\n2Ra8Pk0JvjK8Pk2pe314iZrB69Oi9vj6TMwftvOiN94+ufSA+3jvjJK5naZmm9tUv6YWjX24\nz/z/2vt83WRywegFPW/j/ZNU2kGxAwAAUci3ZN/a9aoYLvCB3rfO7jjpozP/dgRcF+QNurJ4\nosft0TQthqtAG1HsAABApIZl9xmW3UfvFGgSB1UAAAAYBMUOAADAICh2AAAABkGxAwAAMAiK\nHQAAgEFQ7AAAAAyCYgcAAGAQFDsAAACDoNgBAAAYBMUOAADAICh2AAAABkGxAwAAMAiKHQAA\ngEFQ7AAAAAzConcAAADQnmyz7/v1nmdWVW1JN9km5416qMf3+2Z01zsUzqHYAQCASO1xHpmw\ndn6t3xl8+MqpT5ZXb948cVG+JVvfYAhiVywAAIjUL3c/Xdfqgg55Tj6y/+WwT6701SYkFOpR\n7AAAQKTW1WxvPFzbcOhRfQ/sfa7gi8sLl34j/4vLf737GZfqSVTAVMeuWAAAEKl0U1rjYaa5\nwfCnO5945sjbwa+r/fZHDrx8ynf2L4P/IxH5Uh5b7AAAQKRmdrg4zLC4frjPdbSu1dV58eiS\ncsf++CaDiFDsAABA5B7uM3907oDzJzOLLppfOqvuYbn9QNhv3GrfF9dgCGJXLAAAiFSmOf3f\n41546eiS1dVbrYplcu6o2UWXKKLUPSHPkhX2GwssOYnKmNIodgAAoBWsiuX20tm3l84WEbfb\nrWna+X86Pm9Ir4yS/a5j5w+7pXe6KH94QlOmKnbFAgCAmLGZrK8Ne7iDLb9uUmTNe3XYgkxz\nuo6pUgdb7AAAQCyNzxuy66I3Xz/x6R7nkd6ZJdd1mlZozdU7VKqg2AEAgBjLt2TfUTpb7xSp\niF2xAAAABkGxAwAAMAiKHQAAgEFQ7AAAAAyCYgcAAGAQFDsAAAzOo/p+v//l/iu/nfP51LFf\nfe+Nk5/pnQjxwuVOAAAwuNvKf7fo+EfBr9fX7Liu7D+rBtXezuVIjIgtdgAAGNnq6q11ra7O\nz3b9yRlw65IHcUWxAwDAyNbVbG88tAdcOxwHY7WKLys3Tl73w8Kl3+izYu59uxZW++2xWjJa\ni12xAAAYWYYpLfzcHH7eWkurNly59b7g15W+2scOvvrv6q1Lx/4/i2KOyfLRKmyxAwDAyC4v\nGte42w3I6j4wq0dMln/vvoUhk5VVZY13/iIxKHYAABhZj/TOTw786fmTPEv2oqEPKaK0feGO\ngGuHM8wu3bXh9v8iAdgVCwCAwc3vOmtc7uBXTnx8xH1qYFbPO0pnd7IVxmTJVsViVkwBTQ2Z\nN7X/F/FGsQMAwPhG5PQbkdMv5ou1mazT8i/4uPKrkPnMDhfHfF2IBLtiAQBA9Bb2/WlJWvH5\nk5/3nDepYJReeVIcW+wAAED0StM6bp/4jz8feWdT7a4Ca86cjpOnFo7VO1TqotgBAIA2ybVk\n/bznPL1TQIRiBwAAYmV19day2j2F1twphaOLrfl6x0lFFDsAANBWzoB7btn9H55ZHXxYYM15\nYfD9czpO1jVUKuLkCQAA0FY/3/1UXasTkUpf7c1bH97rOqpjpNREsQMAAG3i1wIvHV0SMrQH\nXK8e/1iXPKmMYgcAANqk1u90qZ7G85Pes4kPk+IodgAAoE3yrdlhT5Xol9kt8WFSHMUOAAC0\niSLKf/a+JWTYI73zzSUz9IiT0ih2AACgre7p/u2H+8zPNKcHH47PG7Jk1GP5lmx9U6UgLncC\nAADaShHlgd63/rznjbuchwotuaXpHfVOlKIodgAAIDbSTbbh2X31TpHS2BULAABgEBQ7AAAA\ng6DYAQAAGATFDgAAwCAodgAAAAZBsQMAADAIih0AAIBBcB07AABSyJsnP19yekW13zEmd8Dd\n3b/NzSEMhmIHAECquGXbb/527IPg1++eXvbMkcVrx7/YNa2DvqkQQ3ruivX7/fPmzautrdUx\nAwAAKeK908vrWl3Qcc+Z7259+OK1t+d9cVnHpVfevPXhU95KveIhJvTZYuf1enfs2PHRRx/R\n6gAASIwPz6xuPPz87Lqvv3S+fPzDf51du+uiN7LNGYkMhhjSZ4vdkiVLnnjiiS1btuiydgAA\nUpBX87X4nOOeMxeu+f67p5clIA/iQdE0Ta9179mz5957733llVdycnKaeo6maV6vN5GpEs/t\ndlssFouF4x3DczgcmqZlZ3N4b3iBQMDr9WZk8Ot1eF6v1+PxpKenW61WvbMkKYfDkZmZqSiK\n3kGSkaZpdrvdYrEY4yP24oklP9z1vxE+eX6Xqxf2u7fFp/l8Pk3TbDZb26JFKS0tTZf1JrNk\nLxOapqXC7lqfr+XfolJcKrwN2oLXp3lut9vtduudInnZ7Xa9IyQ1v99vjI/YNZkXv5S1ZK1j\nRyRPfv74e9OyxkzNGR3Jkz0eT9uiRclms/E7SYhEFLtVq1Y98sgjwa+feeaZrl27Rv69iqIY\nflONx+Mxm81ssWuK0+lUVdXwb4Ooqarq9XrT09P1DpKkfD5fcIsdH7GmOJ3OjIwM/nUMS9M0\nh8NhsVgM8xH75/DH/nD4lQ8rV1f57TbFut99rJknf+ncfHWXS5tfYHDDBFvEk0ciftKNHz/+\nH//4R/Dr1m7NVhTFMB+npvj9fpvNptd27OTncrlS4W0QNb/f7/f7eX2aommax+OxWq3ssmmK\n2+1OS0szmbhefRjBYmcymQzzEUuX9P8ZdPf/yN0i8vzRd28vf6SZJ/tNaiR/cU3TDPP6GEAi\nPslmsznza/xSCABAq7jUuOzovKnLFcOz+zbzhAvzhsRjvYgrfkUDACAZuVXvQ3tf6PTllZmf\nTe7y5VW/3/+yT/PHcPnpJtsHox+/vvPl6SabiCjSYMvLxfkjvtvlyhiuDonBQScAACSjH+/8\n43NH3gl+fcJbcf+eZ077Kh/v/+MYrqJrWofXhj0c0FRHwLXLeeihvX/ZULsz35I9u+Ol9/e6\nxayw9af90fNyJwiy2+0cY9eMyspKVVWLior0DpKk/H6/0+nMzc3VO0iScrlcDocjJyeHY+ya\nUlVVlZubyzF2YWmaVlFRYbPZEv8R2+E4OGjV9Y3nBy5Z3CO9c4LDNMPtdmuaZozLwRgDn2QA\nAJLOFvve8PPa8HMgiGIHAEDSybFkhp3nWrISnATtC8UOAICkc0n+iC5pxSHDHumdx3OmKprF\nyRMAACSdLHPGoqEPXrP5VzV+R3BSYM15ddjDaaaEXgr4/dMr/nlmpSPgHps78PbS2RkmjlVN\ndhQ7AACS0dTCsbsueuOV4x8fcB3vndn1xi7fLLbmJzLAbeW/+8vR94NfLzr+0VOH/+/f414o\nsuYlMgNai2IHAECS6mQrvLfHDbqs+p1Ty+paXdAe55Gf7Hzi70Mf1CUPIsQxdgAAINSSMysa\nD987vTzxSdAqbLEDALSVununduiAmM2mvv2V0u56x0EMuFVv46FH9WqihdyjAkmFYgcAaANV\n9S16Ud1WVjcwXzzZMnOOjokQE2NzB71y/OPGQ1pdkmNXLAAgeoFln53f6kQksGKpWrZRrzzt\nxUH3iZ/t+tOMjT+bX/77ZZWb9I4Txp2l1wzP7nv+JN1ke3LAT/XKgwixxQ4AEL3AxvXhhutM\nw0clPkx7sbp662XrfuRSPcGHLxx97w/9fvTznvP0TRUi3WT7bOzCB/e+8MGZVdV++7jcwb/t\ne8eY3IF650ILKHYAgDZwu8IMXc6E52g3NNG+u3VBXasL+q+9z83scPHArB56pQqr2Jr/9MD7\n9E6B1mFXLAAgekrHMDekVzqXJD5Je7HHeWSP80jI0K16Pz27Vpc8MBiKHQAgepZvzhBLw3sh\nZGSaJ0/TKU474FV9rZoDrUKxAwBETyntbr15vtK5i4iIoph69rbNv0vJL9A7V/Lqn9U97M0b\nJuYPS3wYGA/H2AEA2sTUf6Ct/6/F7RKTWWw2veMkO6tieXrgfddveeD84fe7zrwwb6hekWAk\nFDsAQCykZ+idoN24rvO0Ilveo/v/Xu7Y3zWtw3dLrryz9Bq9Q8EgKHYAACTatMILphVeoHcK\nGBDFDgAAw/Jp/jdPfl5Wu6fQmnt1h0uS7YoqiDmKHQAAxnTGVzVl3V1b7fuCD/9r73OP9b/n\nrm5z9U2FuOKsWAAAjOmu7f9b1+pExKP67tu1sMy+R8dIiDeKHQAABuRVfYtPfRkydKve/zv5\nhS55kBgUOwAADMgRcPs0f+N5td+e+DBIGIodAAAGlG/N7prWofF8aHbvxIdBwlDsAAAwIEWU\n/+l/d8hwRE6/m7pcoUseJAbFDgAAY7qh8+UvD/2v3hldRSTdZLu+8+UfPON4UwAAIABJREFU\njHo83cTdQYyMy50AAGBYN3W54qYuV9T4HVnmDLPC1hzjo9gBQEry+dRjR8TlVDKzJTdX7zSI\nr1xLlt4RkCAUOwBIOeqeXf43X9GqKkUkXSRw4cWmWXPFxOYcoN3jYwwAqUWrqvQt+kuw1QWp\n/14R+OJfOkYCECsUOwBILer6r8TlChn6V3whmqZLHgAxRLEDgNSiVVeFmTqd4vMlPAuAGKPY\nAUBqUfLywwwzs8TGVTCAdo9iBwCpxTRmvGRkhgzNl0zRJQyA2KLYAUBqUfILrDfequQX1E1M\nEy4xT56mYyQAscLlTgAg5Zj69rf9/D/VY0fF6azNys7pWsq1TgBjoNgBQEqyWE3de4qIVhXu\nXAoA7RO/ogEAABgExQ4AAMAgKHYAAAAGQbEDAAAwCIodAACAQVDsAAAADIJiBwAAYBAUOwAA\nAIPgAsUAYCCaFti0Tl2zWquqVIo7mC+eYhowSO9MABKHYgcAxuH/5J+Bzz8Jfq2drVB37bBc\ne4N53AR9UwFIGHbFAoBBaGdO17W6Ov733xK3W5c8ABKPYgcABqEeOhBm6vWqx48kOgoAnbAr\nFgAMQjE18bu6ydzi96rlWwKbN4rTrnTqYr5kipKXH+NwABKCYgcABqH06isWq/h9DYZZ2aau\npc1/Y+Cf76grlp57sGtH4KtVth/+ROnSNT4xAcQRu2IBwCCUvDzLVbPrHmoiYrFYvvUdsVib\n+S7T0cP/v707jZKiuv8/fm9Vdc/GwCzgwAzLwLAJgoCERREQiWhAwT1oEjcMkp+anyfk6Dnq\n7xyf/KMnMerBBI0LajAiUcE1GsUNBQVFQEVAQHZBGGbfuqvu/T9oGIaenoFZuqu65v16kEx9\nu7rqS9vd85m6VbeOp7qIUF146eK4tAggzjhiBwD+YY4/V/YoUGs/0yVHZNdu5jkTZV6Pkzzl\nh+2Ni3r/Pl1ZITtlxqdNAPFCsAMAXzEK+xmF/U59fa1U7AeaqgPwMIZiAaBDUz17NS7KnFyZ\n2TnxzQBoI4IdAHRoqt8AOWxEVNG6fLaQ0pV+ALQFQ7EA0NFZV/9aF/ZTG9bpygrZPd86f5rs\n2dvtpgC0BsEOADo80zQnTDYnTHa7DwBtxVAsAACAT3DEDgDQJrqsTG1cp8tKZddu5ojRIjXV\n7Y6AjotgBwBoPfXdN+F/PStCdZFF5723A3N+J7vnu9sV0GExFAsASci29Z5d6rtvdMkRF7vQ\nVVXhpYvrU50QQleUh194VmjtYldAR8YROwBIMmrnDnvxIl1RFlk0Bg8N/GaOMM3Ed6K3bRHV\n1dHFAz/qgz9y0A5wRRIEO90B/vLTWneEf2Zb8Po0JfLK8Po0pf718c1LpCsr7KcX6ro6IYTQ\nQkihNn8bevaJwA1zW7M52zYO/aTssMzt2opnq5qapuqGL17w+reNb94/7U4f48reJbMtNuL1\nYKe1Li0tdbuL+FJKhUKh6kZ/9SLCcRwhhO/fBm2hlOL1aUrk9011dXVNExEk6Vgr3w/WHRv6\nPPZLTW/ZVLZ/v05Pb9GmAmtWWSs/SAmHHCHCed1DF81ULTzMZnTKjHGhhGFUpKRpH70nw+Ew\nH7GmRD5idXV1J10zHrKyssh2Ubwe7KSU2dnZbncRX5WVlcFgMBgMut2IR5WUlCilfP82aDXb\ntqurqzt35u5PsdXU1FRVVWVkZKSkpLjdS/sIHymOeQ/XzCOHzILoG0g0w1m72n7/nfpF4+CB\ntJdfCPzvnbJTZgu6yc4ODxuhvl7fsGZOmZaV75NxWK11cXFxIBDgI9aU2tparXVaWprbjeAo\nLp4AgGQi0zNi11Nb9pvVWfFOVEVXlKvPV7W0n8CV15rnnifS0oQQMrOzNX2Wdf60lm4EQHvx\n+hE7AEBDxoRJzrrPRdQZTZZl9C5swVaUink5rT58qMUNpaRYMy61Zlwq6uqEXw6LAsmLYAcA\n8aSUs2Gd3rtbBIPG4KFGn75t3J6R39McP9FZ9XHDonXZL1sWqgxDpmfo6qroemYbBhxJdYAH\nEOwAIG5CdaHHF+i9uyNLzvv/NSdOsabPauNWrZlXGANPt1d+IEqPyNO6m+f9vBV50Rgz3vnw\nvRNKgYB51s+aeYouLXHWrBYlxSI7xxw9TubktnSnAOKNYAcA8WK/9Vp9qotwPn7fKBpoDB7S\nxi0bpw8Nnj60LVuwLpiuDx9S32w4upyaas26Uub1aGp99f3m8LNPinAosuh8/H7g2huM089o\nSw8A2h3BDgDiJepy0WPFr9oe7NqBaQZ+fZPet6dy6+b0nFyjaIBMz9CHfhLBoOySFb1yOGy/\nuLg+1R2tLH0+eOf/iRZetAEgrgh2ABAvOhRjci/t0oxfJ3Ac59OPnNUrdWlJoEu2njBJfbPR\nfuf1yG0kZI9867LZRu8+9aurPTt1RXnUNnR1ldq5wxjcpgOHANoX050AQLwYPQpOsZhg9luv\n2m8u10eKhVKypNh5/RV72Yv1NwfTP+63Fz2myxpMyRsKx95QKBS7DsAlBDsAiBfzFzOjKjIn\n1zxnkivN1NPFh5xPPjzJOtVVDS+8lfkFwojx+0IW9Grf3gC0EcEOAOLFKOwXuPlW2bO3MAwR\nTDGGjQj89jaRGuMuXImk9+87pdUazGknU9NEavT9yowBg1p3h1kA8cM5dgAQR0b/gcHb5gvH\nEYYhPHJTy1O7gWHDe4s5X30hqiujVtD79wmtvfKPAiCE4IgdACSCaXonABmFRTKj00lXkw2u\nitCHDjZeQVdV6qrotAfAXQQ7AOhgUlKsq38lAic5bift4xdMxL5BrWlKt4eVAUQh2AFAh2MM\nGhKcf7f181+Yo8c6w0ae8Fj9XWjl8V8QxvARjYKgNoePElYgvo0CaCHOsQMAz3Mc4TineG7c\nKZJZ2ebUC4UQVQcOmFs2ifop9yIjxoGALDx+mzLZ9TTrsqvtV16sn6PY6N3XmnlFO/YDoF0Q\n7ADAu/Thn+zXXlbbtgqlZF5366JL2n1CYJ2aas68wvn38w2L1sWXNbx4QghhjvqZUTRAbdkk\nqqpkjwJj0OneOWsQQD2CHQB4VXV1+Im/qdKSSIDSB34ML3o8MPd2o1//9t2PMepnRrfTnFUr\nRUmxyMo2x08w+sbYheySZY45u313DaB9EewAwKPsTz/Ux1Ld8eJbrwZv/UO778vo09fo0/fk\n6wHwNi6eAACP0gcPxCge+DHxnQBIFhyxAwCPijmZiExL0xXleu9uIaXs2TvqTDgAHRzBDgA8\nyhg+yln7WVRRdu0WeuA+EQ4LIUQgaF04w5wwOfG9AfAmhmIBwKOMgYPNKRecUMnroXZsO5rq\nhBDhkP36K2rLJheaA+BJHLEDAO+yps0wzzhTbd2sa2uNPoXO6pXiYPQ5ds6qj41BQ1xpD4DX\nEOwAwNNkQS+zoFfkZ/vtNxqvoMtKE9sRAO9iKBYAkobMzo5VzE18JwC8iWAHAEnDPHdKrOJ5\nie8EgDcR7AAgaRj9B1qXzxZpaUeX09OtK69t9xtRAEhenGMHAMnEHDPePHOU+nGfkNLokS+C\nKW53BMBDCHYAkGxSUozCfm43AcCLGIoFAADwCYIdAACATxDsAAAAfIJgBwAA4BMEOwAAAJ8g\n2AGAh2mtS46oXT/o6iq3WwGQBJjuBAA8Shcftl/6l9qxTQghpDTHnG1dcpmwAkIIXVmhNn2t\ny8qM0/KMocOFxZc5ACEIdgDgUbYd/ueT+sf9Rxe1dj7/VBiGNetKteW78AvPiJoaIYQjhAim\nWJdfbY4Y7WKzADyCYAcAJ6crytXnn+rDh0WXLPOsMfK0vHjvUW3+9niqO8b5/FNzwnn2kuci\nqe6oUJ39wnOittYcNyHeXQHwOIIdAJyE2vVD+Km/i7q6yKLzyQfWFdeYI+N7hEwfKY7VilIb\nv4x5vp392ivGGWfKTplx7QqAx3HxBAA0Syl7yXP1qU4IIWzbfuVFXVEe3/1mdo5Zdvbvi72+\nY+vdO+PXDoCkwBE7AGiOPrA/xsGzUJ3atjWuB+3M04c6qam6tjb6gZ3bW7O5cNhZs0rv2yNS\nUo3TzzAGDm57hwA8iGAHAM3R4XDsB8Kh+O44NU0WFunN30b3U1Eh+xXpHY3inRWQvQtjbklX\nVYX/9qAuPhxZdFZ9bJ490Zp5RTs3DMADGIoFgOYYed0jM4xE13v2jveuZV73GNXUtMCv5hh9\n+h5d1Ef/35oxq6kT7OzXXq5PdRHOqo/V5k3t1ykAryDYAUCzUtOsC2dE1cwx42V+z3jv2Rwx\nunGmNEePlRkZgd/dEZjzP8bgoTK/wDhjeGDO/5jjz21qO2rT18cD4AlFAH7DUCwAnIQ5YbJI\nz3BWfqAP/SSzsswx480J5yVgvzK/wJp5uf3ay+LYcLAx8HTrwouP/jxgkDFg0Mm3orWww0LI\n6Hq8h5IBuIFgBwAnI6V51hjzrDFt35IuLVFbvxPV1bJHgTFwsJCN8taJzDFnGwNPV99vFrW1\nsqCX0a9/i3cppSzopffsii7HfygZQOIR7AAgQZwvPreX/7v+UJlR2C9w4zyRktL8s2RWtvmz\n8W3Zr3XJ5eHHFwj7+FUgskeBOfactmwTgDdxjh0AJIL+6aC9fGnDAVC1c4f92ssJ2LXRuzDw\n21uNogEiJUV2yTLHTQjcfCu3lwV8iQ82ACSCs2GdaDRzirP+C+uyq4VpxnvvRp++xm9vi/de\nALiOI3YAkBCx7gMmbFuE6mLUAaBVOGIHAIkgu50Wo5jZWaSmnfpG9L49ztrPdFmp7NrNHH+u\nzMltvwYB+AHBDgASwRw91vn0I3340AnFadNPemFsPWftavulF44vrl4ZuH6u0X/gCStp7Xz1\nhdr8rQiFjJ69zHMmi7QWBEcAyY6hWABIiGBK4MZb6qc4kekZ1swrTv1yV11eZr964pUW4bD9\n4j+F45xQe36R/eI/1YZ16rtv7Hf/E/rr/9MV5e30DwCQBDhiBwAJInO7BW76nair0zXVskvW\nqR+rE0Ko7d83nlJYl5fp/Xtlrz5H19mwTn29PmoF+9WXAr+6sY2dA0gWBDsASKyUFHmyueti\ncOyYZe049fFQbd3c+HG15bsW7wtA0mIoFgCSgHHssNwJAgGje/7xxROHZYUQQkihlNDRN4oF\n4FcEOwBIAjKvhzFsRFTRmj5LpKYeX6dPYeMnGn36tmjMF0BSI9gBQBJwVn0cdf6cNXGKOf7c\nhhVzzNlG7z5CCFF/hC4QtGZenpgOAXgBwQ4AvE6XldlvvhpVtNeujp7c2DQDN99qTrlAFhTI\nnFzjzFHB3/9R5vVIXKMA3MbFEwDgdXrXDmFH345M1NSovXuMfv1PKAZTrGkzxLQZCesNgKdw\nxA4APK+pqx+4KgLAiQh2AOB1snehMM3oajBoFPRyox0A3kWwAwCvk9k51tSLoorWzCsaXhIL\nAIJz7AAgKZhTLpCndXfWfKpLjsjcbua5k42igSd/GoAOhmAHAMnBOGO4ccZwt7sA4GnuBLvS\n0tJFixatX78+FAoNGjTo+uuvLywsdKUTAAAA33DnHLsHH3xw586d8+fPv++++9LS0u6+++6S\nkhJXOgEAAPANF4JdcXHxhg0b5s2bN2zYsIEDB86fP18IsWbNmsR3AgBeoKuq9I/7o2cbBoCW\nc2EoVik1e/bsoqKiyKJt26FQSCkVc2WtdVVVVQK7c0E4HFZKhUIhtxvxKKWU1rqystLtRjxK\nKWXbNq9PU2zbFkLU1taGw40m+PWC8jLzzeXGti1CCCGlyD3NOWeiGjYikXd3VUpVVVVJ7ifb\nNMdx+Ig1xXEcrbXjOK7sPSMjg7duFKldnd+yrq7u4Ycf3rJlyyOPPJKZmdl4BaXUkSNHEt8Y\nAMSd42QsecbYvy+qHB40pPbiyxOZ7U6FtXO7uXOHDIXs/J72kGHCYLYsuC83N5dgFyURwW7V\nqlX3339/5OeFCxcWFBQIIbTWH3zwweLFi/Py8u66664uXbo09fTIH9w+Vl1dHQgEAoGA2414\nVHl5uda6mXdIB+c4Tm1tbUZGhtuNeFRdXV1NTU16enowGHS7l2h6yyb13JMxH5JXXmOMGJ2Y\nNioqKjIyMoxmg5pa9qL+4vPjy/k9zZtvFd57Sdud1rqsrCwQCPARa0ooFNJap6SkuLJ3y2Jy\nj2iJeEXGjh27ZMmSyM9paWlCiLKysgceeODgwYPXXXfdxIkTm4/bvv/PZhiGaZq+/2e2mpRS\na83r0wwpJa9PUyIjsN78iDmlJbHPQRFCbt1sjR6XmDYi759mgp36er3TMNUJIfbvFe+9ZV1y\nRdybc1vk2AcfsWbYts1XtKck4r+EaZrp6en1i1rr++67LycnZ8GCBQ3rANChyIxOTT7meGik\nwvlmY+Oi+maD6ADBDkg6LkTsjRs3bt++febMmd9//319saCgoGvXrolvBgDcYgweIrt00WVl\nMR7qXZjwdpoW43JdrVt7vZc+/JPasV0ox+jTV/YoaGNrAKK4EOx++OEHrfWDDz7YsDh37tzp\n06cnvhkAcE1qmnXNDfY/n9KVFQ2qWublm2dPcq2rRmR+T7Hp66iakd+rFZuy3/2P88F/xbEr\nKM1xE6xZV3rtMhEgqbkQ7GbNmjVr1qzE7xcAvMYo7Be88/+cNZ85az8T5aUiLc0YPMScepHw\n0tVU1rmT1bo1+kjx8VIgYM1o8de4+u4b573/NKw4n30ie+Sb4ya0vUkAEZztCACuCqaYEyaZ\nEzx0iC5aalpg7u32f15TW74TdtjoVWheOEPm92zpZpwvPotRXPsZwQ5oRwQ7AMBJyKzswOzr\nhBBC69aPnMac47eKiX+B9sQMkwCAUxaV6hxHHzp44jmCTT+162mnWATQahyxAwC0hvPx+/Z7\n/xF1dUIIo09f67Jfyu49mlnfnHy+s3GdOPFyWvP8afHtEuhgOGIHAGgx5/NV9pvLI6lOCKF2\n/RBe9JioqW7mKbJbXuC639YfopNdugR+daPRtyjuvQIdCUfsAAAtFnV9qxBCl5Y4az8zJ05p\n5llG/4HBP96jS0uEUjI7h4lOgHZHsAMAtFAopMtjzKusD/90Ks+WWdnt3RCAoxiKBQC0UCAg\ngrFu+t4pM+GtADgBR+wAwD/UtxudNat0aans2s2cMDleZ7BJaf5srPPpxycUAwFzxOi47A7A\nKSPYAYBPOO//137njcjP+sB+9c0G65e/MUfGJWxZF83Uhw+pLd8dXU5JsS69Wp6WF499ATh1\nBDsA8AN9pLg+1dWzly81hw6LPWzaRoFA4MZ5aucOvW+vSE83+g+UmZ3bfy8AWohgBwB+oHbt\niFGtrVX79sZvShGjsJ8o7BenjQNoBS6eAAB/aGLqEKYUAToSgh0A+IFR2E9YJw7CaCHS0o2C\nni51BMAFBDsA8AOZnWNNm3FiSQQu/6UIBF3qCIALOMcOAHzCnDhFds931qwSZSUit5s1YbLs\n2Tu+uwyF9JFimZUlUtPiuyMAp4ZgBwD+YQwcbAwcnIg9hUP2m686n38qlBJCGMNHWjOvkExQ\nDLiNoVgAQIvZr73srF4ZSXVCCLXxK/tfzwqt3e0KAMEOANAyuqzUWbM6qqi2b1U/bHelHwD1\nCHYAgJbRxYdj1w//lOBOAEQh2AEAWkZmdIpd5xw7wG0EOwBAy8jT8ow+faOL2TlG/0Gu9AOg\nHsEOANBCUlq//I3s3uN4ISs7cO0NIsiceYDLmO4EADoepXRtjUzPaPUGZE5u8Pd3qq2b9eGf\nZFa2Meh0ZkIGvIBgBwAdiC4vs99Ypr7ZIBxHZnY2p14oBp/Rym0ZhjF4iBBD2rVBAG3CUCwA\n+IvjqN271Kav9ZHixg+Fn/mH2rBOOI4QQleU28uWml994UKTAOKDI3YA4B9q9y77xef04UOR\nRWPk6MAVs4UViCw6G9fpfXuinhL46F1x7mRh8Hc+4Ad8kgHAL6qr7cVP1qc6IYT66gv7zVfr\nF/XBA42fJGtqdEV5ItoDEH8EOwDwCefrr3RZWXTx809FOBT5WaalxXialDI1Vh1AEiLYAYBP\n6NKSGFXH0RUVkR+NoWeKQCD68f6DREpKvHsDkBgEOwDwCZmVE6NqGDIt9egKXbtZs65qmO1k\nXo/QRZckpj0ACcDFEwDgE+bwEc6Kt3VZ6bGCFkIKpcKvLA1ce8PRdUaPNfr1V5u+1tVVRvd8\n44wzq8s5wQ7wD47YAYBfpKUHfnWjlIbQkWUZ+T+18Su1fWv9WjIn15ww2bpgujF8JBfDAj7D\nRxoAfCQtXWt1LNEdp/fsdqMbAInGUCwAuCocsj94T234UldVGXndzfOnGQNPb/3WrCa+1Zuq\nA/AXjtgBgHu0Di9+2lnxtj58SNRUq507wk8tVN9ubPX2ZHaO7J4fXbUCxqA2hEUAyYNgBwCu\nUZu/VZs3RRXt5f8WWrd6m4Grfy1OnJfOunCG7JbX6g0CSCIcnAcA16i9MU590+VluqxUZmW3\nbpsyvyD4x3uc1Sv1wQOyc2djxGijd2GbugSQPAh2AOAaaUVPF3xUINimzXbKtH7+i7ZsAUCS\nYigWAFxjDBoSo9inr8zISHwzAHyAYAcArpH5Bda0GSdU0jOsK691qx8AyY6hWABwkznlAtmv\nv9q4TldWGt3zzXETRHp67FUdx/nsE/XDdqG10bfIHDfBo5OYaK22f69/3CfS0o2Bg2XnLm43\nBHQgnvxSAICOxCjsZxT2O8lKth167BG9Z1dkSX2zwflyTfB3dzS88asnhOrCix5XO7YdXQym\nWJddbY4c7WpPQAfCUCwAJAHno/fqU12E3r/Xfv8dt/ppiv36K8dTnRAiVGe/vEQfOuheR0DH\nQrADgCSgtm6OUdzyXeI7aY5SzrovoovhkLN+nRvdAB0RwQ4AkoB2nBjVmEUXheqEHY5Rr6pM\neCtAB0WwA4AkYPTpe4pFN6Wkyk6ZjW+awX0vgIQh2AFAErDOvzDqXhQys7M5bbpb/cQmpXnB\nL2RULberedYYd/oBOh6uigWAZJCeHrj1D857b6vtW4UWRr/+5s8vkhmd3G4rmjn2HBEK2e+9\nLWprhBBG0QDr0qtFaqrbfQEdBcEOAJKDzOxsXXqV212cnHnueeY5k3RJsUzPEGlNzMkHID4I\ndgCA9mYYMreb200AHRHn2AEAAPgEwQ4AkoRte25+EwAew1AsAHid2r3LeeMVtWeXEMLoXWhd\nfJns2dvtpgB4EUfsAMDT9KGfwk88qnb9IJQSSqmdO0JPPKqLD7vdFwAvItgBgKfZ774lQnUn\nlGprnffedqkdAJ5GsAMAT9MHf2xcVAf2J74TAN5HsAMAT5OpaadYBACCHQB4mjF8VIziiBhF\nACDYAYCnmWefawwf2bBijBxtjjnbrX4AeBnTnQCAt0kZuPYGNeZs9cM2IaRRNMAoGuB2TwA8\nimAHAEnAGDDIGDDI7S4AeB1DsQAAAD6RBEfswuGw2y3El1LKtm0ppduNeJTWWnSAt0GrOY6j\nlOL1aYrjOJH/9eVLpCsrZDgssrJFG75AtNbhcNgw+Ds/hsj3T+QlcrsXj3Icx8XXJxAIuLJf\nL/N6sNNa19XVnXy9ZBb5VCil3G7Eo7TWHeFt0GpKKaUUr09TbNsWQoTDYZ99xOS+Peaby+XB\nH7UQolOm8/OL1BkjWrcprXUoFOJvy2bwEWtG5G8nt14fy7J460bxerCTUnbq1MntLuKrsrIy\nGAwGg0G3G/GoyK9k378NWs227erqal6fptTU1Ni2nZqampKS4nYv7UaXloReeFbUVB9drqww\nly1Nzck1Bp7eiq2VlpZmZGRwxC4mrXVtba1pmnzEmlJbW6u1TktjYkWv4JMMAEnG+eTD46mu\nvvjuW640A8BTCHYAkGT0oZ8a11SMIoAOh2AHAElGZmREVbSQMoOxQgAEOwBINsZZY4UQQuj6\nihTCHD3OrX4AeIfXL54AAH/T5WXOu2+p7duEVkbfIvOC6TIru/mnGEUDrF9cYv/3LWHbRytn\njjInnR//ZgF4HcEOANxTXR1+9EFdVhpZco4Uqy3fBf73TpnZufnnmZOmGmeMUNu3inDY6F0o\ne/WJf68AkgDBDgBcY694uz7VRejKCuedN6wrrjnpc2VuVzO3a9xaA5CUOMcOAFyjd+9sXFSx\nigBwKgh2AOAe0zzVIgCcAoIdALjGGDQkRnHw0MR3AsAfCHYA4Bpz4hSjT9+GFVnQy5oyza1+\nACQ7Lp4AAPeYZuCW3ztrV6vt3wutjb5F5thzGIoF0GoEOwBwlWGYY88xx57jdh8A/IChWAAA\nAJ8g2AEAAPgEwQ4AAMAnCHYAAAA+QbADAADwCYIdAACATxDsAAAAfIJgBwAA4BMEOwAAAJ8g\n2AEAAPgEwQ4AAMAnCHYAAAA+QbADAADwCYIdAACATxDsAAAAfIJgBwAA4BMEOwAAAJ8g2AEA\nAPgEwQ4AAMAnCHYAAAA+QbADAADwCYIdAACATxDsAAAAfIJgBwAA4BMEOwAAAJ8g2AEAAPgE\nwQ4AAMAnCHYAAAA+QbADAADwCYIdAACAT0ittds9dHRaayml2114V+QtykvUDN5CzeD9c1K8\nf5rHW6h5vD5eQ7ADAADwCYZiAQAAfIJgBwAA4BMEOwAAAJ8g2AEAAPgEwQ4AAMAnCHYAAAA+\nQbADAADwCcvtBoBopaWlixYtWr9+fSgUGjRo0PXXX19YWBi1zksvvfTcc8/VL5qmuWzZsoR2\nCY9xHOfZZ59dtWqVbdtjxoy5+eabA4FAK9ZBh8U3D/yBCYrhOffee295efmcOXNSUlKWLVu2\ncePGRx99NDs7u+E6jzzySFlZ2YwZMyKLUsqRI0e60Sy84oknnli1atW8efMsy1q4cOGQIUPu\nuOOOVqyDDotvHvgDQ7HwluLi4g0bNsybN2/YsGEDBw6cP3++EGLNmjVRq+3bt2/kyJGjjuG7\ntYOrqal5991358yZM2bMmFGjRt1yyy0rV64sKytr6TrosPjmgW89rwPwAAAFY0lEQVQwFAtv\nUUrNnj27qKgosmjbdigUUkpFrbZv377169e/8sordXV1gwcPvummmwoKChLeLLxi165dtbW1\nI0aMiCyeeeaZjuPs2LGj4e/dU1kHHRbfPPANjtjBW7p16zZ79uzImU91dXUPP/xwZmbmhAkT\nGq5TXl5eUVEhpZw/f/5dd91VV1d3zz33VFdXu9Qy3FdSUmJZVkZGRmTRsqxOnTodOXKkpeug\nw+KbB77BETu4bNWqVffff3/k54ULF0b+/NVaf/DBB4sXL87Ly3vooYcyMzMbPiUjI2PRokU5\nOTlSSiFEUVHRddddt3bt2kmTJiW+f3iB1jryZmjIcZyWroMOjm8e+ADBDi4bO3bskiVLIj+n\npaUJIcrKyh544IGDBw9ed911EydObPzL2DTN3Nzc+sWMjIy8vLzDhw8nrGd4TU5OTjgcrqmp\nibyFHMeprKzs2rVrS9dBR8Y3D/yBoVi4zDTN9GOklFrr++67Lz09fcGCBZMmTWr83SqEWLt2\n7W233VZRURFZrK2tPXToUM+ePRPbODykd+/eKSkpX3/9dWRx06ZNhmH07du3peugw+KbB77B\nETt4y8aNG7dv3z5z5szvv/++vlhQUNC1a9cVK1aEQqGLLrpo6NChFRUVDz744KxZs4LB4NKl\nS/Py8kaPHu1i23BXenr61KlTFy1alJubK6V88sknJ02aFJmoov5t08w6AN888A3msYO3LF++\n/Omnn44qzp07d/r06ffee29VVdVf//pXIcSuXbueeuqprVu3pqSkjBgx4oYbbsjKynKjX3iF\n4zhPP/306tWrlVJjx46dM2dO5ET4hm+bptYB+OaBbxDsAAAAfIJz7AAAAHyCYAcAAOATBDsA\nAACfINgBAAD4BMEOAADAJwh2AAAAPkGwAwAA8AmCHQAAgE8Q7AAAAHyCYAfAfcXFxXl5eZ06\nddq9e3fUQ7NmzZJSLl261JXGACC5EOwAuC83N3fBggVVVVW33nprw/ry5ctfffXVSy+99Kqr\nrmrm6VrrXr16vfjii3FuEwC8jmAHwBOuuuqqmTNnvv7668uWLYtUKisrb7vttpycnIULFzb/\n3GeeeWbv3r3x7xEAvI5gB8ArFi5cmJWVdfvtt1dUVAgh7rnnnr179y5YsCAvLy/m+mVlZffe\ne+/UqVNvuummxHYKAB5FsAPgFT169PjLX/6yd+/ee++998svv3z00Ucvvvjia665pqn1q6qq\nPvnkE8dxhg8fnsg+AcCzpNba7R4A4LipU6d++OGHffv2PXz48KZNm3r06HHSp6xYsWLq1KlL\nliy5+uqrE9AhAHgWR+wAeMsTTzxhGMa2bdv+/Oc/n0qqAwDUI9gB8Jb169eHw2EhxNq1a93u\nBQCSDMEOgIccOXJk3rx5ffr0ufjii//xj3+sWLHC7Y4AIJkQ7AB4yO23337w4MG//e1vjz32\nWOfOnefMmVNVVeV2UwCQNAh2ALzijTfeeP7556+66qrp06fn5+f/6U9/2rlz55133ul2XwCQ\nNAh2ADyhtLR07ty5Xbp0efjhhyOVW265Zdy4cX//+98/+ugjd3sDgGRBsAPgCXfcccf+/fvv\nv//++ithDcN4/PHHTdO86aabqqurhRCLFy/u1avXQw895GqnAOBdBDsA7nvnnXeeeeaZ8ePH\nz507t2F9+PDhf/jDH7Zv33733XcLIaqqqvbu3VteXu5SmwDgdUxQDAAA4BMcsQMAAPAJgh0A\nAIBPEOwAAAB8gmAHAADgEwQ7AAAAnyDYAQAA+ATBDgAAwCcIdgAAAD5BsAMAAPAJgh0AAIBP\nEOwAAAB8gmAHAADgEwQ7AAAAn/j/Hpdp/4nMrigAAAAASUVORK5CYII=", "text/plain": [ "plot without title" ] }, "metadata": { "image/png": { "height": 420, "width": 420 }, "text/plain": { "height": 420, "width": 420 } }, "output_type": "display_data" } ], "source": [ "data.frame(X=X, Z=as.factor(zs)) %>%\n", " ggplot() +\n", " geom_point(aes(X.1, X.2, col=Z)) +\n", " theme_minimal()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Except for the lone guy on top the clustering worked nicely." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Stick breaking construction" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "In order to make the DPMM with stick-breaking work in Stan, we need to supply a maximum number of clusters $K$ from which we can choose. Setting $K=n$ would mean that we allow that every data point defines its own cluster. For the sake of the exercise I'll set it the maximum number of clusters to $10$. The hyperparameter $\\alpha$ parameterizes the Beta-distribution which we use to sample stick lengths. We use the same data we already generated above." ] }, { "cell_type": "code", "execution_count": 14, "metadata": {}, "outputs": [], "source": [ "K <- 10\n", "alpha <- 2" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "The model is a bit more verbose in comparison to the finite case ([Bayesian mixture models](bayesian_mixture_models.ipynb)). We only need to add the stick breaking part in the transformed parameters, the rest stays the same. We again use the LKJ prior for the correlation matrix of the single components and set a fixed prior scale of $1$. In order to get nice, unimodel posteriors, we also introduce an ordering of the mean values." ] }, { "cell_type": "code", "execution_count": 15, "metadata": { "scrolled": true }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "data {\n", "\tint K;\n", "\tint n;\n", "\tint p;\n", "\trow_vector[p] x[n];\n", "\treal alpha;\n", "}\n", "\n", "parameters { \t\n", " \tordered[p] mu[K];\n", "\tcholesky_factor_corr[p] L;\n", "\treal nu[K];\n", "}\n", "\n", "transformed parameters {\n", " simplex[K] pi;\n", " pi[1] = nu[1];\n", " for(j in 2:(K-1)) \n", " {\n", " pi[j] = nu[j] * (1 - nu[j - 1]) * pi[j - 1] / nu[j - 1]; \n", " }\n", "\n", " pi[K] = 1 - sum(pi[1:(K - 1)]);\n", "}\n", "\n", "model {\n", " \treal mix[K];\n", "\n", " \tL ~ lkj_corr_cholesky(5);\n", " \tnu ~ beta(1, alpha);\t\n", "\tfor (i in 1:K) \n", "\t{\n", "\t\tmu[i] ~ normal(0, 5);\n", "\t}\n", "\n", " \n", " \tfor(i in 1:n) \n", " \t{\n", "\t\tfor(k in 1:K) \n", "\t\t{\n", "\t\t\tmix[k] = log(pi[k]) + multi_normal_cholesky_lpdf(x[i] | mu[k], L);\n", "\t\t}\n", "\t\ttarget += log_sum_exp(mix);\n", " \t}\n", "}\n" ] } ], "source": [ "stan.file <- \"_models/dirichlet_process_mixture.stan\"\n", "cat(readLines(stan.file), sep=\"\\n\")" ] }, { "cell_type": "code", "execution_count": 16, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "\n", "SAMPLING FOR MODEL 'dirichlet_process_mixture' NOW (CHAIN 1).\n", "Chain 1: \n", "Chain 1: Gradient evaluation took 0.000499 seconds\n", "Chain 1: 1000 transitions using 10 leapfrog steps per transition would take 4.99 seconds.\n", "Chain 1: Adjust your expectations accordingly!\n", "Chain 1: \n", "Chain 1: \n", "Chain 1: Iteration: 1 / 10000 [ 0%] (Warmup)\n", "Chain 1: Iteration: 1000 / 10000 [ 10%] (Warmup)\n", "Chain 1: Iteration: 1001 / 10000 [ 10%] (Sampling)\n", "Chain 1: Iteration: 2000 / 10000 [ 20%] (Sampling)\n", "Chain 1: Iteration: 3000 / 10000 [ 30%] (Sampling)\n", "Chain 1: Iteration: 4000 / 10000 [ 40%] (Sampling)\n", "Chain 1: Iteration: 5000 / 10000 [ 50%] (Sampling)\n", "Chain 1: Iteration: 6000 / 10000 [ 60%] (Sampling)\n", "Chain 1: Iteration: 7000 / 10000 [ 70%] (Sampling)\n", "Chain 1: Iteration: 8000 / 10000 [ 80%] (Sampling)\n", "Chain 1: Iteration: 9000 / 10000 [ 90%] (Sampling)\n", "Chain 1: Iteration: 10000 / 10000 [100%] (Sampling)\n", "Chain 1: \n", "Chain 1: Elapsed Time: 60.5386 seconds (Warm-up)\n", "Chain 1: 217.612 seconds (Sampling)\n", "Chain 1: 278.15 seconds (Total)\n", "Chain 1: \n" ] }, { "name": "stderr", "output_type": "stream", "text": [ "Warning message:\n", "“The largest R-hat is NA, indicating chains have not mixed.\n", "Running the chains for more iterations may help. See\n", "http://mc-stan.org/misc/warnings.html#r-hat”\n", "Warning message:\n", "“Bulk Effective Samples Size (ESS) is too low, indicating posterior means and medians may be unreliable.\n", "Running the chains for more iterations may help. See\n", "http://mc-stan.org/misc/warnings.html#bulk-ess”\n", "Warning message:\n", "“Tail Effective Samples Size (ESS) is too low, indicating posterior variances and tail quantiles may be unreliable.\n", "Running the chains for more iterations may help. See\n", "http://mc-stan.org/misc/warnings.html#tail-ess”\n" ] } ], "source": [ "fit <- stan(\n", " stan.file, \n", " data = list(K=K, n=n, x=X, p=p, alpha=alpha), \n", " iter = 10000, \n", " warmup = 1000,\n", " chains = 1\n", ")" ] }, { "cell_type": "code", "execution_count": 17, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "Inference for Stan model: dirichlet_process_mixture.\n", "1 chains, each with iter=10000; warmup=1000; thin=1; \n", "post-warmup draws per chain=9000, total post-warmup draws=9000.\n", "\n", " mean se_mean sd 2.5% 25% 50% 75% 97.5% n_eff\n", "mu[1,1] -3.83 0.00 0.16 -4.14 -3.94 -3.83 -3.72 -3.51 3105\n", "mu[1,2] 0.83 0.00 0.16 0.51 0.72 0.83 0.94 1.15 3370\n", "mu[2,1] -0.40 0.00 0.04 -0.49 -0.43 -0.40 -0.37 -0.32 4557\n", "mu[2,2] -0.37 0.00 0.04 -0.45 -0.40 -0.37 -0.34 -0.29 7036\n", "mu[3,1] 1.31 0.00 0.06 1.19 1.27 1.31 1.35 1.43 6064\n", "mu[3,2] 1.36 0.00 0.06 1.24 1.32 1.36 1.40 1.49 7512\n", "mu[4,1] -2.73 0.05 3.84 -10.62 -5.01 -2.76 -0.23 4.75 4940\n", "mu[4,2] 2.54 0.04 3.90 -4.69 0.08 2.11 4.95 10.98 7536\n", "mu[5,1] -2.80 0.05 3.94 -11.08 -5.30 -2.72 -0.19 4.70 5537\n", "mu[5,2] 2.70 0.05 4.01 -4.85 0.11 2.38 5.18 11.33 6419\n", "mu[6,1] -2.89 0.05 4.05 -11.14 -5.49 -2.83 -0.16 4.69 5724\n", "mu[6,2] 2.76 0.04 3.95 -4.70 0.13 2.60 5.30 10.96 9324\n", "mu[7,1] -2.78 0.06 4.09 -11.14 -5.46 -2.71 -0.11 5.14 4958\n", "mu[7,2] 2.76 0.04 4.14 -4.86 -0.11 2.59 5.49 11.28 8613\n", "mu[8,1] -2.80 0.05 4.15 -11.29 -5.53 -2.69 0.00 5.22 5825\n", "mu[8,2] 2.81 0.04 4.16 -5.07 -0.04 2.66 5.57 11.48 9361\n", "mu[9,1] -2.75 0.06 4.13 -11.15 -5.45 -2.67 0.06 5.05 5304\n", "mu[9,2] 2.77 0.04 4.10 -4.91 0.01 2.67 5.48 11.21 8501\n", "mu[10,1] -2.76 0.06 4.14 -11.29 -5.40 -2.72 -0.06 5.28 5012\n", "mu[10,2] 2.87 0.04 4.11 -4.90 0.09 2.72 5.58 11.08 9137\n", "L[1,1] 1.00 NaN 0.00 1.00 1.00 1.00 1.00 1.00 NaN\n", "L[1,2] 0.00 NaN 0.00 0.00 0.00 0.00 0.00 0.00 NaN\n", "L[2,1] -0.88 0.00 0.02 -0.91 -0.89 -0.88 -0.87 -0.84 3722\n", "L[2,2] 0.48 0.00 0.03 0.42 0.46 0.48 0.50 0.55 4220\n", "nu[1] 0.38 0.00 0.05 0.29 0.35 0.38 0.42 0.48 6267\n", "nu[2] 0.68 0.00 0.06 0.56 0.64 0.68 0.72 0.79 5209\n", "nu[3] 0.88 0.00 0.08 0.67 0.84 0.90 0.94 0.98 1676\n", "nu[4] 0.35 0.00 0.24 0.01 0.14 0.31 0.52 0.86 4437\n", "nu[5] 0.33 0.00 0.24 0.01 0.13 0.29 0.50 0.84 6578\n", "nu[6] 0.34 0.00 0.24 0.01 0.14 0.30 0.51 0.85 5516\n", "nu[7] 0.33 0.00 0.23 0.01 0.14 0.29 0.50 0.84 6267\n", "nu[8] 0.33 0.00 0.24 0.01 0.13 0.29 0.50 0.84 7093\n", "nu[9] 0.33 0.00 0.24 0.01 0.13 0.29 0.50 0.85 7553\n", "nu[10] 0.33 0.00 0.23 0.01 0.13 0.29 0.50 0.84 6291\n", "pi[1] 0.38 0.00 0.05 0.29 0.35 0.38 0.42 0.48 6267\n", "pi[2] 0.42 0.00 0.05 0.32 0.39 0.42 0.45 0.52 6424\n", "pi[3] 0.17 0.00 0.04 0.11 0.15 0.17 0.20 0.25 6177\n", "pi[4] 0.01 0.00 0.01 0.00 0.00 0.00 0.01 0.04 899\n", "pi[5] 0.00 0.00 0.01 0.00 0.00 0.00 0.01 0.02 3217\n", "pi[6] 0.00 0.00 0.01 0.00 0.00 0.00 0.00 0.02 1264\n", "pi[7] 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.01 2234\n", "pi[8] 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.01 4943\n", "pi[9] 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.01 5497\n", "pi[10] 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.01 4415\n", "lp__ -406.32 0.09 4.45 -415.89 -409.14 -405.94 -403.12 -398.75 2356\n", " Rhat\n", "mu[1,1] 1\n", "mu[1,2] 1\n", "mu[2,1] 1\n", "mu[2,2] 1\n", "mu[3,1] 1\n", "mu[3,2] 1\n", "mu[4,1] 1\n", "mu[4,2] 1\n", "mu[5,1] 1\n", "mu[5,2] 1\n", "mu[6,1] 1\n", "mu[6,2] 1\n", "mu[7,1] 1\n", "mu[7,2] 1\n", "mu[8,1] 1\n", "mu[8,2] 1\n", "mu[9,1] 1\n", "mu[9,2] 1\n", "mu[10,1] 1\n", "mu[10,2] 1\n", "L[1,1] NaN\n", "L[1,2] NaN\n", "L[2,1] 1\n", "L[2,2] 1\n", "nu[1] 1\n", "nu[2] 1\n", "nu[3] 1\n", "nu[4] 1\n", "nu[5] 1\n", "nu[6] 1\n", "nu[7] 1\n", "nu[8] 1\n", "nu[9] 1\n", "nu[10] 1\n", "pi[1] 1\n", "pi[2] 1\n", "pi[3] 1\n", "pi[4] 1\n", "pi[5] 1\n", "pi[6] 1\n", "pi[7] 1\n", "pi[8] 1\n", "pi[9] 1\n", "pi[10] 1\n", "lp__ 1\n", "\n", "Samples were drawn using NUTS(diag_e) at Thu May 14 15:08:51 2020.\n", "For each parameter, n_eff is a crude measure of effective sample size,\n", "and Rhat is the potential scale reduction factor on split chains (at \n", "convergence, Rhat=1)." ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "fit" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "High effective sample sizes, no divergent transitions and $\\hat{R}$s of one looks good. Our model seems well specified! Let's look at some plots though. First the traces for the means and mixing weights." ] }, { "cell_type": "code", "execution_count": 18, "metadata": {}, "outputs": [], "source": [ "posterior <- extract(fit)" ] }, { "cell_type": "code", "execution_count": 19, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n/ykAABMCHsUCQFI333xzXl7e66+/fscdd7z66qtTp04dKDu8e/fuRx55JDc3d/78+YsXL25o\naFi4cOEIDytJEvuDDfht2LDh5ptvvuAzM2fOHKN/BADABILEDgCScrlcCxcuPHjwYCQSOXjw\n4COPPGKz2TiOi8Vijz766P333793716e59mHE4lEsuNQSge/PHXqFJs/N336dI7j7HZ7VVXV\nwP/37Nmz//3f/11QUDAe/yIAgMyGR7EAkMqiRYv6+voee+yxWCw2sIri9OnTiUTiRz/60UBW\n984775w/f/6CBI5xu90nT54khLCXhw8f/uqrr9jfeXl58+bNe+GFFwYevFJKlyxZct999zkc\njnH9dwEAZCSbpmlmxwAA1iXL8iWXXBIOh6+77roPPvhg4M1p06YRQmpqav7sz/7s+PHj//RP\n/+RwOGRZ3rZt29KlS9kT27a2No7jNm/e/Mtf/nLBggV33XXXqVOnmpqaZsyY0dfX19nZyXFc\nR0fH3Llzc3Nzly1bxvP8oUOH/uM//uM3v/nNAw88YOK/GgAgTWHEDgBScTqdd9xxh6ZpA8sm\n2JuHDx/+8z//8507d/785z/v6+v78MMPX3311SuvvPJ3v/vdBUd4/PHH16xZ09HRsWbNmn//\n938/cODAAw88MGfOHPb/nT179scffzxnzpyXXnrpV7/6ldvtPnjwILI6AIDvByN2AAAAABkC\nI3YAAAAAGQKJHQAAAECGQGIHAAAAkCGQ2AEAAABkCCR2AAAAABkCiR0AAABAhkBiBwAAAJAh\nkNgBAAAAZAgkdgAAAAAZAokdAAAAQIZAYgcAAACQIZDYAQAAAGQIJHYAAAAAGeL/AxWm8mkV\nUlbqAAAAAElFTkSuQmCC", "text/plain": [ "plot without title" ] }, "metadata": { "image/png": { "height": 480, "width": 420 }, "text/plain": { "height": 480, "width": 420 } }, "output_type": "display_data" } ], "source": [ "options(repr.fig.width=4, repr.plot.height=8)\n", "data.frame(posterior$pi) %>% \n", " set_names(paste0(\"PI_\", 1:10)) %>%\n", " tidyr::gather(key, value) %>%\n", " ggplot(aes(x = value, y = ..density.., fill=key), position=\"dodge\") + \n", " facet_grid(key ~ ., scales=\"free\") +\n", " geom_histogram(bins=50) +\n", " theme_minimal()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "From the plot above it looks as if Stan believes it's sufficient to use three components as the means of the mixing weights of the seven other components are fairly low or even zero. However, let's extract all means of the posterior means and assign each data point to a cluster." ] }, { "cell_type": "code", "execution_count": 20, "metadata": {}, "outputs": [], "source": [ "post.mus <- do.call(\n", " \"rbind\", \n", " lapply(1:10, function(i) apply(posterior$mu[,i,], 2, mean)))" ] }, { "cell_type": "code", "execution_count": 21, "metadata": {}, "outputs": [], "source": [ "probs <- purrr::map_dfc(seq(10), function(i) {\n", " mvtnorm::dmvnorm(X, post.mus[i,], diag(2))}) %>% \n", " set_names(paste0(\"Z\", seq(10)))" ] }, { "cell_type": "code", "execution_count": 22, "metadata": {}, "outputs": [], "source": [ "zs.stan <- apply(probs, 1, which.max)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "And the final plot:" ] }, { "cell_type": "code", "execution_count": 23, "metadata": {}, "outputs": [], "source": [ "options(repr.fig.width=4, repr.plot.height=3)" ] }, { "cell_type": "code", "execution_count": 24, "metadata": { "scrolled": true }, "outputs": [ { "data": { "image/png": "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\nAQAAaMT/AVxEsNs5IBVHAAAAAElFTkSuQmCC", "text/plain": [ "plot without title" ] }, "metadata": { "image/png": { "height": 180, "width": 420 }, "text/plain": { "height": 180, "width": 420 } }, "output_type": "display_data" } ], "source": [ "data.frame(X=X, Z=as.factor(zs.stan)) %>%\n", " ggplot() +\n", " geom_point(aes(X.1, X.2, col=Z)) +\n", " theme_minimal()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Our small hack using Stan and stick-breaking worked even better than our CRP implementation. Here, we managed to give every point its correct label." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Multivariate Bernoullis" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Next, we derive a Dirichlet process mixture for a multivariate Bernoulli distribution (or whatever name is more suitable here). We again use the CRP with a Gibbs sampler and the stick-breaking construction using Stan." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### CRP" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "We model every observation $\\mathbf{x} \\in \\{0, 1 \\}^p$ as:\n", "\n", "\\begin{align*}\n", "\\pi_{{z_i}_j} & \\sim \\text{Beta}(a, b)\\\\\n", "z_i \\mid z_{1:i-1} & \\sim \\text{CRP} \\\\\n", "x_{i, j} \\mid z_i & \\sim \\text{Bernoulli}(\\pi_{{z_i}_j}),\n", "\\end{align*}\n", "\n", "with hyperparameters $a$ and $b$. Thus the likelihood for one datum is the product over $p$ independent Bernoullis:\n", "\n", "$$P(\\mathbf{x} \\mid z, \\boldsymbol \\Pi) = \\prod_{j=1}^p \\pi_{{z_i}_j}^{x_j} \\cdot (1 - \\pi_{{z_i}_j})^{(1 - x_j)}$$" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "First we again generate some data. We sample $100$ points $\\mathbf{X}$ from a $p=5$ dimensional mixture of a $k=3$ multivariate Bernoullis and their latent class assignments $\\mathbf{z}$ (since we already saw how one can generate data using a CRP)." ] }, { "cell_type": "code", "execution_count": 25, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "Z\n", " 1 2 3 \n", "80 70 50 " ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "n <- 200\n", "p <- 3\n", "alpha <- 0.5\n", "k <- 3\n", "Z <- sample(1:k, n, replace = T)\n", "table(Z)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Then we generate the true success probabilities for every Bernoulli. These are $k \\cdot p$ many. We simulate an easy scenario where every dimension has the same probability for every class." ] }, { "cell_type": "code", "execution_count": 26, "metadata": {}, "outputs": [ { "data": { "text/html": [ "\n", "\n", "\n", "\t\n", "\t\n", "\t\n", "\n", "
 0.1 0.1 0.1 0.5 0.5 0.5 0.9 0.9 0.9
\n" ], "text/latex": [ "A matrix: 3 × 3 of type dbl\n", "\\begin{tabular}{lll}\n", "\t 0.1 & 0.1 & 0.1\\\\\n", "\t 0.5 & 0.5 & 0.5\\\\\n", "\t 0.9 & 0.9 & 0.9\\\\\n", "\\end{tabular}\n" ], "text/markdown": [ "\n", "A matrix: 3 × 3 of type dbl\n", "\n", "| 0.1 | 0.1 | 0.1 |\n", "| 0.5 | 0.5 | 0.5 |\n", "| 0.9 | 0.9 | 0.9 |\n", "\n" ], "text/plain": [ " [,1] [,2] [,3]\n", "[1,] 0.1 0.1 0.1 \n", "[2,] 0.5 0.5 0.5 \n", "[3,] 0.9 0.9 0.9 " ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "probs.true <- matrix(seq(0.1, 0.9, length.out=k), k, p)\n", "probs.true" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Then we generate the data using these probabilities randomly:" ] }, { "cell_type": "code", "execution_count": 27, "metadata": {}, "outputs": [ { "data": { "text/html": [ "\n", "\n", "\n", "\t\n", "\t\n", "\t\n", "\t\n", "\t\n", "\t\n", "\n", "
 0 0 0 1 1 1 1 1 1 0 0 0 0 0 0 1 0 1
\n" ], "text/latex": [ "A matrix: 6 × 3 of type int\n", "\\begin{tabular}{lll}\n", "\t 0 & 0 & 0\\\\\n", "\t 1 & 1 & 1\\\\\n", "\t 1 & 1 & 1\\\\\n", "\t 0 & 0 & 0\\\\\n", "\t 0 & 0 & 0\\\\\n", "\t 1 & 0 & 1\\\\\n", "\\end{tabular}\n" ], "text/markdown": [ "\n", "A matrix: 6 × 3 of type int\n", "\n", "| 0 | 0 | 0 |\n", "| 1 | 1 | 1 |\n", "| 1 | 1 | 1 |\n", "| 0 | 0 | 0 |\n", "| 0 | 0 | 0 |\n", "| 1 | 0 | 1 |\n", "\n" ], "text/plain": [ " [,1] [,2] [,3]\n", "[1,] 0 0 0 \n", "[2,] 1 1 1 \n", "[3,] 1 1 1 \n", "[4,] 0 0 0 \n", "[5,] 0 0 0 \n", "[6,] 1 0 1 " ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "probs.matrix <- probs.true[Z, ]\n", "X <- (probs.matrix > matrix(runif(n * p), n, p)) * 1L\n", "head(X)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Let's have a look at it using $t$-SNE. Note, that since the data are Bernoulli, axes are kinda hard to interpret and we shouldn't get a clear separation of the clusters as in the Gaussian case (the same is true for PCA, too)." ] }, { "cell_type": "code", "execution_count": 28, "metadata": {}, "outputs": [], "source": [ "log.pca <- logisticPCA(X, k = 2)" ] }, { "cell_type": "code", "execution_count": 29, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n9DtH8DwAAAAASUVORK5CYII=", "text/plain": [ "plot without title" ] }, "metadata": { "image/png": { "height": 180, "width": 420 }, "text/plain": { "height": 180, "width": 420 } }, "output_type": "display_data" } ], "source": [ "g1 <- data.frame(cbind(log.pca$PCs, Z=Z)) %>%\n", " ggplot() +\n", " geom_point(aes(V1, V2, col=as.factor(Z))) +\n", " theme_minimal()\n", "g1" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "We use a concentration of$\\alpha=1$for the CRP and$a=b=1$as hyperparameters for the Beta to get a somewhat uniform shape." ] }, { "cell_type": "code", "execution_count": 30, "metadata": {}, "outputs": [], "source": [ "alpha <- 1\n", "a <- b <- 1" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "As for the Gaussian case, we need to compute the likelihood of$\\mathbf{x}_i$evaluated at its cluster$k$. Since we factorize over$p$independent Bernoullis, we need to write down this likelihood manually:" ] }, { "cell_type": "code", "execution_count": 31, "metadata": {}, "outputs": [], "source": [ "# likelihood for existing cluster\n", "ppd <- function(x, ps)\n", "{\n", "\n", " exp(sum(x * log(ps) + (1 - x) * (1 - log(ps))))\n", "}\n", "\n", "# likelihood for random new cluster\n", "ppde <- function(x)\n", "{\n", " ps <- rbeta(p, a, b)\n", " ppd(x, ps)\n", "}" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "For the sample we start with the following initial parameter settings: one cluster$K=1$, i.e. all latent class assignments are$\\mathbf{z} = \\{1 \\}^n$, and$p$random samples from a Beta for the success probabilities of the Bernoullis determining the cluster." ] }, { "cell_type": "code", "execution_count": 32, "metadata": {}, "outputs": [ { "data": { "text/html": [ "\n", " 1. 0.813091309275478 2. 0.213314406806603 3. 0.275407212087885 \n" ], "text/latex": [ "\\begin{enumerate*}\n", "\\item 0.813091309275478\n", "\\item 0.213314406806603\n", "\\item 0.275407212087885\n", "\\end{enumerate*}\n" ], "text/markdown": [ "1. 0.813091309275478\n", "2. 0.213314406806603\n", "3. 0.275407212087885\n", "\n", "\n" ], "text/plain": [ ", , 1\n", "\n", " [,1] [,2] [,3]\n", "[1,] 0.8130913 0.2133144 0.2754072\n" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "K <- 1\n", "zs <- rep(K, n)\n", "tables <- n\n", "priors <- array(rbeta(p, a, b), dim = c(1, p, 1))\n", "priors" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Then we implement the Gibbs sampler (or rather the ECM):" ] }, { "cell_type": "code", "execution_count": 33, "metadata": {}, "outputs": [], "source": [ "for (it in seq(100))\n", "{\n", " for (i in seq(n))\n", " {\n", " # look at data x_i and romove its statistics from the clustering\n", " zi <- zs[i]\n", " tables[zi] <- tables[zi] - 1\n", " if (tables[zi] == 0) {\n", " K <- K - 1\n", " zs[zs > zi] <- zs[zs > zi] - 1\n", " tables <- tables[-zi]\n", " priors <- priors[,,-zi,drop=FALSE]\n", " }\n", "\n", " # compute posterior probabilitites P(z_i \\mid z_-i, ...)\n", " no_i <- seq(n)[-i]\n", " probs <- sapply(seq(K), function(k) {\n", " crp <- sum(zs[no_i] == k) / (n + alpha - 1)\n", " lik <- ppd(X[i, ], priors[,,k])\n", " crp * lik\n", " })\n", "\n", " # compute probability for opening up a new one\n", " crp <- alpha / (n + alpha - 1)\n", " lik <- ppde(X[i, ])\n", " probs <- c(probs, crp * lik)\n", " probs <- probs / sum(probs)\n", "\n", " # sample new z_i according to the conditional posterior above\n", " z_new <- which.max(probs)\n", " if (z_new > K) {\n", " K <- K + 1\n", " tables <- c(tables, 0)\n", " priors <- abind::abind(priors, array(rbeta(p, a, b), dim=c(1, p, 1)))\n", " }\n", " zs[i] <- z_new\n", " tables[z_new] <- tables[z_new] + 1\n", " # compute conditional posterior P(mu \\mid ...)\n", " for(k in seq(K))\n", " {\n", " Xk <- X[zs == k, ,drop=FALSE]\n", " priors[,,k] <- sapply(colSums(Xk), function(i) rbeta(1, i + 1, nrow(Xk) - i + 1))\n", " }\n", " }\n", "}" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Let's compare the inferred assignments with the true ones." ] }, { "cell_type": "code", "execution_count": 34, "metadata": {}, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAA0gAAAFoCAIAAADitkyTAAAACXBIWXMAABJ0AAASdAHeZh94\nAAAgAElEQVR4nO3deWATZf7H8Wea9Egv6IEcLZRbTkFQakVFVkQo1AsKiBdgF1EWUNeKKPxA\nXBBRYREXZdGCF4LoSnE5BAVXBAVBKDdKKUcrR0uhd3NM5vfHuNnapm1Krmb6fv2VPJk8801o\nPnwzVyRFUQQAAAB8n5+3CwAAAIBr0NgBAABoBI0dAACARtDYAQAAaASNHQAAgEbQ2AEAAGgE\njR0AAIBG0NgBAABohE82dvfdd5/kgIiICCGE2WwuKSlxRxkWi+Xy5culpaV2H120aJFaRvfu\n3es07dixY9UnPvDAA64os3IlatllZWUumbwSs9lc3RviJB8tG/CYSlk3bdo09YNvMBiuYrbS\n0tIpU6bExcX5+/uHh4fv3r3bTZ8RV0X0008/rb7epKQkdaRqaDgfyw8//LCtbGfekBoqIevg\nJL1X1vrNN9+sX78+JyenY8eOEyZMiImJcevq3PfrGrIs+9xPdyiKIsuy1Wp10+Tum9kXy0YD\n57tZ9/LLL7/55pvq7aKiIpPJ5KasUxTFfTP7Ymj4aNmoP7ywxe6bb75ZunRpYmLiiy++KIR4\n+eWX6/p3FhYWFl1Bxe+jFccjIyNdXDoAOMz5rPOiTZs2qTe6dOkya9asqKgo79YDwEGe3mKn\nKMpnn3326KOPDhgwQAjRokWL9957Ly8v75prrnF8kg8++KDi3WnTps2bN08IERQUlJub69qC\nAeAquCTrvOj8+fPqjaeeemrs2LFXrlzxbj0AHOTpLXbZ2dk5OTkJCQmKohQUFERHR0+dOrWG\npCtzgMVisbt8amqqJEkBAQFJSUmlpaVz585t06bNmDFjysrKRowYoR7fMHbs2IpPqW78yy+/\nTE5O7tSpk8FgiIuLGzNmzIEDB4xGoxDCYrHYrcpsNqslWa1W22B+fv5rr7120003tWjRwmAw\ntG3b9s4771y1alVJSYltGVmW1ScqirJv377Ro0e3a9cuPDy8b9++q1atqroiu7XVUIlattFo\nXLZsWb9+/WJjY0NCQjp16nTvvfdu2bLFkTe8BiaTSZZlJyexq+Z320kuKbvi3yHgjqyrmdFo\nrPhnXDUYFy1aFB8fHx8f/+STT+bl5T399NNxcXEGg6FLly5TpkzJzc1VF8vMzMzIyLDlRm5u\n7qFDh0pLS22fvlozR81eSZLuuOOOStlb9aGOHTs+8cQTtufWOrlq69atycnJsbGxcXFxI0aM\n+PHHH22v1/YmVA0N52NZlmU1ljt16tS8eXNXxbKquLh42bJld9xxR48ePZo0aeKqWK6IrGsI\nPL3F7tKlSzqd7ttvv129enVZWVlkZOT48eNvvvlmuwsriuLIQbW2T0il5SuOp6amLlmyRAhx\n0003lZSU2P4uLRZLxadUHVcU5YUXXnjvvfdsR4GcOXPm/fff/+STT5YuXTp06FCz2WxbUUUm\nk6lSVSUlJXfdddfx48dty2RlZWVlZX399dfjxo179dVXK5WdmZl5++23FxYWqnd37ty5c+fO\nKVOmTJ8+3TZzzbVVV4nZbB4+fPjOnTttlRw/fvz48ePp6ekTJkx4+eWXa37Da2X3DXGJ6t5t\nV03uzNNDQkL0eu8ctIp6yB1Z5wjbn3HVYMzKytq9e7c6MnDgwH379qkLHD169OjRo9u2bduy\nZYtOp5s8efKGDRtsE7744osvvvjiypUr77zzTpPJ5Ejm2FYty3Kl7LX7UEJCQklJiYOBJoT4\n4IMPnn/+edtUZ86c+fe//92rVy/bzJX+I7At6Xws//rrrz4ayxWRddrm6X+bwsJCWZaPHTu2\nePHi0NDQDRs2vP7664sWLWrZsmXVhSVJCgsLq3XOgIAAu8vbxjMzM7dv367e9vf3DwsL8/f3\nr3jX9pSq4x9++OG7774rhPDz87vvvvtatmy5devWAwcOmEymyZMnJyQkNG/ePDAwsGpVtkE/\nPz91qhkzZqjxodfr+/btGx4evnfv3t9++00IkZaW9vjjj/fo0aNiDXv27BFCNG7cuG3btocO\nHVKDYNGiRUlJSbfcckuttd15553R0dFVK5Flec6cOWp86PX6m266qV27docOHdq7d68Q4p13\n3rnzzjuHDBlS69tul8VisVgsQUFBV/f0GsiyXFpaGhAQYPfddpJLyibpUJE7sq5msiybzWbb\nn3HVYLSN/PTTT0KIiIiIFi1anDhxQt2ydfDgwXXr1j3yyCPV/SUHBAR8+umnjmSObUUnT56s\nlL12H1KjycFAO3ToUGpqqnq0or+/f7du3U6fPp2fn79jxw51Nr1er77eqqHhwlhu06bN4cOH\nXRXLQoh58+bZYvnGG29s3779kSNHXBLLFZF1DYLiWfv3709KSsrPz7eNPPbYY+np6c7M+fzz\nz6uvJSgoyO64ECIhIeG7777Lzc29dOmSoiijRo1Sx1NSUio+pdJ4WVlZixYt1JEVK1aoy8iy\nfNddd9kWKy4utlvV3//+d3WZbt26qSOtW7dWR95//311xGKxdOrUSR1ctmyZOjhmzBhb2fff\nf395ebmiKGfPnrUtOWDAAEdqmzRpkt1KTCZT37591ZHZs2fbCradxj9+/Pir/JdQFKPRWFRU\ndNVPr4HJZMrNza3u3XaS+8pGg+WOrKuZyWSq+GdcNRgrRuK0adPMZrOiKFlZWbbzzB5//HHb\n05s1a6YOfvTRR2azOTc3Ny8vz8HMqSF7qz6Uk5Nz5swZxwPN1t/ExcX98ssviqKYzeaKsTl0\n6FDbG1IpNFwYy0aj8dixY66KZUVRbr/9dnVk5syZtrJdEssVkXUNgaePsYuJiZEkqbi4WL0r\ny7LRaAwJCXHrSg0GwxdffHHrrbfW9VTZQ4cOqV/dIiIibB8wPz+/SZMmqbfXrVvn4FSyLM+a\nNWvFihUrVqwYNmyYOlhWVma7pNClS5cqPSU4OHjp0qXqF7vY2NiFCxeq419//fWFCxdqrW3N\nmjXVFaM+UQjx+eeff/nll+Xl5UKIOXPmbNq0adOmTSkpKQ6+KADV8UrWOSg2NnbOnDnqdpfW\nrVvfe++96vipU6dqeNaRI0fqmjk1ZG/FhyIiIhwMNKPRuHHjRnVk7ty5HTp0EELo9frFixer\nFy6tEydjOSYmxoWxnJ2drd744osvvvrqK2IZV83TG1Sjo6P79u27YMGCMWPGhISEpKen63S6\nPn36uHWl1157bdOmTa/iib/88ot64/LlyzqdruoCFy9eLC4udiSsdTpdxrXNfj5/uZ/eb8WK\nFQcOHDh06NDBgweLioqqe0rPnj3VjfaqO++8U6/Xq0cB/vrrr2fOnKm5tvPnzxcVFdndv3P9\n9ddnZWUJITIyMu6++26DwdC/f//BgwcnJia2bdu21tfijEOnds7dPf9GQ5enk+a6dUWAd3kl\n6xzUoUMHSZJsd5s0aaLesJ0iYNeJEyfUG7Vmzs+nfx/p3Llzddlb6aFaw1ad/MyZM7ZLxiQm\nJtoeDQ0NveWWW7788ssa6q9Kp9M9+uijQohjx445GMu9e/d2UyzfeOON6jt84MCBhx56yJOx\nDI3xwp7yp5566t133120aJHRaOzcufPcuXOdP7ikZo0bN766J9q+QtXg5MmTtXaNj3zz+bbS\n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\nSUlq6hkMBifXd/nyZb1eHxIS8vvq9frQ0ND8/Hy7CyuKUlJSUnX8H+nRFTeh6IXfhE+C3ri7\n8gFhFbnv6Baz2ezWyat7qMuup3MDft9+oEjWIv/fGn039Lfeqx2fudayRxZ3WR5+SKnwvbVD\nqeHtO960+4/iYNlO8vy7be5xk7znp4rbKa2SUhrQSFR5E0JCQgg7H1Vvsy7ssw/VTSZqRyMU\ns3jphZJnX6xhvVr69KmC3/ibzmrbK6oIIfxeer7o2RmOz1xr2TEB0TmmvIojkhCnen7aoLLu\ngXZJKzPX/WETnSIig4OqvglkXT1X07/NsWPH1q5du3bt2lWrVn3yySehoaFDhw5NTk4ePHjw\nVaeeoihVr/apfkGpSpKksLCwSoNPrPSvui9Qp0gnzkjXdw2tOoksy2azWf0i7lpWq7WkpCQg\nIKDSb0q6hMVisVgs1ZVdKEpsXZ2N2a/0uj3PZfV/u+aZZVkuLS11pOwlSYt7/bD0zYL0fH9z\nkCx1L2vyxT0fO1O2Mxwv+yrUUHZY0sgCKbDkwLZIk78kRKHOrIuOafrEc1WXJOl8V/3MOvF/\nqf9b4L83/BQ57MwZ0bVr1Uk0mXWisFBYq25GUsLeeFXMqnbjpcrx0Mi86bOxR+esyvtaEYpQ\nRIBOX9j3a6fKdoK3si4t7OlWZe1ezVmoSIoQkqQo14X32XX9/KpLknX1XE3/PNdee+3UqVOn\nTp167ty5devWrV279l//+teqVatCQkKGDBmSnJycmJgYHBxcp/VFRkaazeaysjI1LmVZLi4u\njo6Orm75qn/ZimL/IK+3D4W/38u/6rjZbLZarW76hAghdDqdOyaXJElRlOpmHvbdK3bH88W5\nWotRv6s5WPbE2ydPFJNrXcym5rKdUaey66rmsq8ZNlIMG6neDnf5ulEP1M+sM9ndNSaE7l+f\n6Hu9VnVck1ln/ijNau9NkBRTgEuzbmXP2SvFbAfq/W8BWsy6V7omv9I12eUrhYfVclasqnnz\n5o8//vjGjRtzc3NXrVqVlJS0adOm5OTkJk2ajBgxYs2aNY6vr1WrVoGBgQcPHlTvHjlyxM/P\nr02bNo7PUN0BrQ3qpGxFakivFvCUepV11YadxVKHSXyduSG9WMAVHGrsbMLDw0eOHPnJJ5/k\n5uZu3LixV69ea9asGTFihOMzBAcHDxgwYPny5ZmZmSdPnnz33Xf79etXp6u6Kzp7YSeJv45t\n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", "text/plain": [ "plot without title" ] }, "metadata": { "image/png": { "height": 180, "width": 420 }, "text/plain": { "height": 180, "width": 420 } }, "output_type": "display_data" } ], "source": [ "g2 <- data.frame(cbind(log.pca$PCs, Z=zs)) %>%\n", " ggplot() +\n", " geom_point(aes(V1, V2, col=as.factor(Z))) +\n", " theme_minimal()\n", "cowplot::plot_grid(g1, g2, ncol=2, labels = c(\"True labels\", \"Inferred labels\"))" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Stick-breaking construction" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "As above, we try to implement the mixture using Stan, too. We use a truncated DP again and set the maximum number of clusters $K =5$, because the model is quite hard to compute and we don't use a lot of data, and the concentration to $\\alpha=2$." ] }, { "cell_type": "code", "execution_count": 35, "metadata": {}, "outputs": [], "source": [ "K <- 5\n", "alpha <- 2" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "The respective Stan file is similar to the Gaussian case. There is one more tricky part, though. In the Gaussian case, we needed to order the mean vectors such that we can identifiable posteriors. For the binary case, we in addition need to make sure that the parameters are probabilities, i.e. have a domain from $0$ to $1$. We do that by first declaring a $K \\times p$-dimensional parameter rates which we order: ordered[p] rates[K]. Then, in order to make a probability out of it, we apply the inverse logit function for every element: prob = inv_logit(rates). That should do the trick. The complete Stan file is shown below." ] }, { "cell_type": "code", "execution_count": 36, "metadata": { "scrolled": true }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "data {\n", "\tint K;\n", "\tint n;\n", "\tint p;\n", "\tint x[n, p];\n", "\treal alpha;\n", "}\n", "\n", "parameters { \t\n", " \tordered[p] rates[K];\n", "\treal nu[K];\t\n", "}\n", "\n", "transformed parameters {\n", " simplex[K] pi;\n", " vector[p] prob[K];\n", "\n", " pi[1] = nu[1];\n", " for(j in 2:(K-1)) \n", " {\n", " pi[j] = nu[j] * (1 - nu[j - 1]) * pi[j - 1] / nu[j - 1]; \n", " }\n", "\n", " pi[K] = 1 - sum(pi[1:(K - 1)]);\n", " for (k in 1:K) \n", " {\n", " \tfor (ps in 1:p) \n", " \t{\n", " \t\tprob[k, ps] = inv_logit(rates[k, ps]); \n", " \t}\n", " } \n", "}\n", "\n", "model {\n", " \treal mix[K];\n", " \tnu ~ beta(1, alpha);\t\n", " \n", " \tfor(i in 1:n) \n", " \t{\n", "\t\tfor(k in 1:K) \n", "\t\t{\n", "\t\t\tmix[k] = log(pi[k]);\n", "\t\t\tfor (ps in 1:p)\n", "\t\t\t{\n", "\t\t\t\tmix[k] += bernoulli_lpmf(x[i, ps] | prob[k, ps]);\n", "\t\t\t}\n", "\t\t}\n", "\t\ttarget += log_sum_exp(mix);\n", " \t}\n", "}\n" ] } ], "source": [ "stan.file <- \"_models/binary_dirichlet_process_mixture.stan\"\n", "cat(readLines(stan.file), sep=\"\\n\")" ] }, { "cell_type": "code", "execution_count": 37, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "\n", "SAMPLING FOR MODEL 'binary_dirichlet_process_mixture' NOW (CHAIN 1).\n", "Chain 1: \n", "Chain 1: Gradient evaluation took 0.000188 seconds\n", "Chain 1: 1000 transitions using 10 leapfrog steps per transition would take 1.88 seconds.\n", "Chain 1: Adjust your expectations accordingly!\n", "Chain 1: \n", "Chain 1: \n", "Chain 1: Iteration: 1 / 12000 [ 0%] (Warmup)\n", "Chain 1: Iteration: 1200 / 12000 [ 10%] (Warmup)\n", "Chain 1: Iteration: 2001 / 12000 [ 16%] (Sampling)\n", "Chain 1: Iteration: 3200 / 12000 [ 26%] (Sampling)\n", "Chain 1: Iteration: 4400 / 12000 [ 36%] (Sampling)\n", "Chain 1: Iteration: 5600 / 12000 [ 46%] (Sampling)\n", "Chain 1: Iteration: 6800 / 12000 [ 56%] (Sampling)\n", "Chain 1: Iteration: 8000 / 12000 [ 66%] (Sampling)\n", "Chain 1: Iteration: 9200 / 12000 [ 76%] (Sampling)\n", "Chain 1: Iteration: 10400 / 12000 [ 86%] (Sampling)\n", "Chain 1: Iteration: 11600 / 12000 [ 96%] (Sampling)\n", "Chain 1: Iteration: 12000 / 12000 [100%] (Sampling)\n", "Chain 1: \n", "Chain 1: Elapsed Time: 66.2135 seconds (Warm-up)\n", "Chain 1: 122.78 seconds (Sampling)\n", "Chain 1: 188.994 seconds (Total)\n", "Chain 1: \n" ] }, { "name": "stderr", "output_type": "stream", "text": [ "Warning message:\n", "“There were 9983 divergent transitions after warmup. Increasing adapt_delta above 0.99 may help. See\n", "http://mc-stan.org/misc/warnings.html#divergent-transitions-after-warmup”\n", "Warning message:\n", "“Examine the pairs() plot to diagnose sampling problems\n", "”\n", "Warning message:\n", "“The largest R-hat is 1.65, indicating chains have not mixed.\n", "Running the chains for more iterations may help. See\n", "http://mc-stan.org/misc/warnings.html#r-hat”\n", "Warning message:\n", "“Bulk Effective Samples Size (ESS) is too low, indicating posterior means and medians may be unreliable.\n", "Running the chains for more iterations may help. See\n", "http://mc-stan.org/misc/warnings.html#bulk-ess”\n", "Warning message:\n", "“Tail Effective Samples Size (ESS) is too low, indicating posterior variances and tail quantiles may be unreliable.\n", "Running the chains for more iterations may help. See\n", "http://mc-stan.org/misc/warnings.html#tail-ess”\n" ] } ], "source": [ "fit <- stan(stan.file, data = list(K=K, n=n, x=matrix(as.integer(X), n, p), p=p, alpha=alpha),\n", " iter = 12000, warmup = 2000, chains = 1, control = list(adapt_delta = 0.99))" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "That is unpleasant! A lot of divergent transitions and almost all of the transitions exceeded the maximum tree depth (see the [Stan manual](https://mc-stan.org/docs/2_18/reference-manual/hmc-algorithm-parameters.html)). The divergent transitions are more severe a problem than the transitions so let's look at some diagnostic plots." ] }, { "cell_type": "code", "execution_count": 38, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "Inference for Stan model: binary_dirichlet_process_mixture.\n", "1 chains, each with iter=12000; warmup=2000; thin=1; \n", "post-warmup draws per chain=10000, total post-warmup draws=10000.\n", "\n", " mean se_mean sd 2.5% 25% 50% 75% 97.5% n_eff\n", "rates[1,1] -0.64 0.03 0.26 -1.16 -0.80 -0.65 -0.47 -0.14 87\n", "rates[1,2] -0.41 0.02 0.23 -0.83 -0.58 -0.42 -0.25 0.07 117\n", "rates[1,3] -0.23 0.02 0.23 -0.65 -0.40 -0.24 -0.09 0.24 152\n", "rates[2,1] 12.70 1.01 7.79 1.61 6.04 11.72 18.61 28.62 59\n", "rates[2,2] 20.75 0.85 8.14 5.36 14.31 21.67 27.35 34.32 93\n", "rates[2,3] 28.86 0.45 6.52 12.04 25.23 30.40 34.06 36.53 214\n", "rates[3,1] 3.78 3.48 7.93 -8.72 -2.28 1.90 9.41 20.44 5\n", "rates[3,2] 14.88 2.77 9.77 -3.56 7.66 15.15 22.24 31.82 12\n", "rates[3,3] 25.54 0.58 7.90 7.11 20.68 26.95 31.96 36.15 186\n", "rates[4,1] -222.62 47.84 89.42 -335.27 -276.21 -250.72 -176.69 -19.72 3\n", "rates[4,2] -167.47 34.49 93.12 -326.09 -237.05 -176.02 -79.22 5.20 7\n", "rates[4,3] -77.03 10.41 73.94 -242.33 -126.42 -62.17 -17.50 29.94 50\n", "rates[5,1] -160.76 26.06 49.66 -228.53 -196.26 -171.16 -132.23 -43.24 4\n", "rates[5,2] -107.96 16.04 49.07 -192.03 -145.18 -111.40 -70.67 -16.35 9\n", "rates[5,3] -51.93 5.19 41.28 -144.32 -79.75 -42.17 -18.95 -1.03 63\n", "nu[1] 0.65 0.01 0.06 0.53 0.61 0.65 0.68 0.76 104\n", "nu[2] 0.41 0.03 0.16 0.06 0.32 0.43 0.52 0.69 22\n", "nu[3] 0.20 0.03 0.17 0.00 0.06 0.15 0.29 0.60 25\n", "nu[4] 0.31 0.02 0.23 0.02 0.12 0.27 0.45 0.87 140\n", "nu[5] 0.32 0.03 0.24 0.01 0.12 0.28 0.49 0.85 83\n", "pi[1] 0.65 0.01 0.06 0.53 0.61 0.65 0.68 0.76 104\n", "pi[2] 0.14 0.01 0.05 0.02 0.11 0.15 0.18 0.24 19\n", "pi[3] 0.04 0.01 0.04 0.00 0.01 0.03 0.06 0.16 18\n", "pi[4] 0.05 0.00 0.04 0.00 0.02 0.04 0.07 0.17 173\n", "pi[5] 0.11 0.01 0.06 0.02 0.07 0.11 0.15 0.24 112\n", "prob[1,1] 0.35 0.01 0.06 0.24 0.31 0.34 0.38 0.47 87\n", "prob[1,2] 0.40 0.01 0.06 0.30 0.36 0.40 0.44 0.52 117\n", "prob[1,3] 0.44 0.00 0.06 0.34 0.40 0.44 0.48 0.56 151\n", "prob[2,1] 0.98 0.00 0.07 0.83 1.00 1.00 1.00 1.00 307\n", "prob[2,2] 1.00 0.00 0.03 1.00 1.00 1.00 1.00 1.00 846\n", "prob[2,3] 1.00 0.00 0.02 1.00 1.00 1.00 1.00 1.00 1034\n", "prob[3,1] 0.62 0.16 0.42 0.00 0.09 0.87 1.00 1.00 7\n", "prob[3,2] 0.92 0.04 0.23 0.03 1.00 1.00 1.00 1.00 41\n", "prob[3,3] 1.00 0.00 0.04 1.00 1.00 1.00 1.00 1.00 869\n", "prob[4,1] 0.00 0.00 0.01 0.00 0.00 0.00 0.00 0.00 1081\n", "prob[4,2] 0.03 0.02 0.16 0.00 0.00 0.00 0.00 0.99 42\n", "prob[4,3] 0.12 0.03 0.32 0.00 0.00 0.00 0.00 1.00 84\n", "prob[5,1] 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 658\n", "prob[5,2] 0.00 0.00 0.05 0.00 0.00 0.00 0.00 0.00 930\n", "prob[5,3] 0.03 0.01 0.15 0.00 0.00 0.00 0.00 0.26 355\n", "lp__ -375.30 1.02 4.09 -384.23 -377.75 -374.96 -372.47 -368.25 16\n", " Rhat\n", "rates[1,1] 1.02\n", "rates[1,2] 1.00\n", "rates[1,3] 1.00\n", "rates[2,1] 1.02\n", "rates[2,2] 1.00\n", "rates[2,3] 1.01\n", "rates[3,1] 1.21\n", "rates[3,2] 1.07\n", "rates[3,3] 1.01\n", "rates[4,1] 1.63\n", "rates[4,2] 1.28\n", "rates[4,3] 1.06\n", "rates[5,1] 1.42\n", "rates[5,2] 1.09\n", "rates[5,3] 1.04\n", "nu[1] 1.02\n", "nu[2] 1.01\n", "nu[3] 1.03\n", "nu[4] 1.00\n", "nu[5] 1.00\n", "pi[1] 1.02\n", "pi[2] 1.03\n", "pi[3] 1.02\n", "pi[4] 1.00\n", "pi[5] 1.00\n", "prob[1,1] 1.02\n", "prob[1,2] 1.00\n", "prob[1,3] 1.00\n", "prob[2,1] 1.01\n", "prob[2,2] 1.00\n", "prob[2,3] 1.00\n", "prob[3,1] 1.05\n", "prob[3,2] 1.01\n", "prob[3,3] 1.00\n", "prob[4,1] 1.00\n", "prob[4,2] 1.03\n", "prob[4,3] 1.02\n", "prob[5,1] 1.00\n", "prob[5,2] 1.00\n", "prob[5,3] 1.00\n", "lp__ 1.11\n", "\n", "Samples were drawn using NUTS(diag_e) at Thu May 14 15:12:05 2020.\n", "For each parameter, n_eff is a crude measure of effective sample size,\n", "and Rhat is the potential scale reduction factor on split chains (at \n", "convergence, Rhat=1)." ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "fit" ] }, { "cell_type": "code", "execution_count": 39, "metadata": {}, "outputs": [], "source": [ "posterior_cp_pi <- as.array(fit, pars = c(\"pi\"))\n", "posterior_cp_prob <- as.array(fit, pars = c(\"prob\"))\n", "np_cp <- nuts_params(fit)" ] }, { "cell_type": "code", "execution_count": 40, "metadata": {}, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAA0gAAAFoCAIAAADitkyTAAAACXBIWXMAABJ0AAASdAHeZh94\nAAAgAElEQVR4nOy9d2Bc1Znw/dwpmhkVq1iucpN7NwQMmA4JYExMCAE2gcCXOAubZPkgCWTZ\nTT7eJSS7hARCdknjDTgO2DFgDKYbA8YFF2wjN1mWZBWrd42mz51bzvfHmXvm3Dqj0cgaifP7\nw9bcueXcufec85yncgghYDAYDAaDwWCMfmwj3QAGg8FgMBgMRmZggh2DwWAwGAzGGIEJdgwG\ng8FgMBhjBCbYMRgMBoPBYIwRmGDHYDAYDAaDMUZggh2DwWAwGAzGGIEJdgwGg8FgMBhjBCbY\nMRgMBoPBYIwRmGDHYDAYDAaDMUZggh2DwWAwGAzGGIEJdgwGg8FgMBhjBCbYMRgMBoPBYIwR\nmGDHYDAYDAaDMUZggh2DwWAwGAzGGIEJdgwGg8FgMBhjBCbYMRgMBoPBYIwRmGDHYDAYDAaD\nMUZggh2DwWAwGAzGGIEJdgwGg8FgMBhjBCbYMRgMBoPBYIwR7I899thIt4GRATZs2HDTTTf5\n/f7a2tqCgoLS0lK8vbGx8Re/+EU4HF60aBHeUl1dvXXr1n/84x/r1q2bNGnS8uXLR67VDEZ2\noe9HCKH169c/9NBDv/71r/fu3btw4cJJkyYB60cMxuAxnKdeeumlBx544Iknnti1a9fSpUsn\nTpwIrH8NDcdIN4CRJgcOHLj//vtffPHFJUuW4C35+fm/+MUv6H3ef//9bdu2vfPOO5dddhnZ\nuHDhwoULF0qStHXr1nPaYgYj+0jajx5//PFwOPwv//IvNTU1f//732+//faPPvpo2rRprB8x\nGElJ2r/+8Ic/hMPhP//5zz09Pf/2b//2ne9859ChQxzHsf41FJhgN1opLCycPXt2fn4+2WKz\naQ3rN95446xZs9555x394Xa73W63D28TGYysx7oftbe3DwwMPPPMM/jjhRdeeN99973++usP\nPPAA3sL6EYNhgXX/CgaDLpfr/vvvxx8feuihH//4x729vRMmTMBbWP9KDybYjVYWL168ZcuW\npLvppT0Gg0Gw7kednZ2PPvoo+XjDDTfk5OR0d3efk6YxGKMe6/6Vn59/7733ko82m23BggVE\nqmOkDZv1s5empqbf/OY3t912W2Vl5Te+8Y1FixbdfffdXV1dADAwMPDSSy/dcsstx44dG+lm\nMhhZzVD60Ze+9KWSkhLyUZZlURTPP//8c9R0BiPrydQ8xfP8rl27XnzxxeFv8tiHCXbZS0tL\ny5tvvnny5Ml33333V7/61eOPP75v37577rkHIdTb21tTU3P48GGE0Eg3k8HIajLYjz755JN5\n8+Z99atfHe42MxijhaH3L0mSduzYcdNNN+3cuXPfvn3nrOVjGCbYZS+XX375smXLxo0b98gj\njyxatOj222//wQ9+UFlZefjw4blz51511VUj3UAGYxSQqX7E8/wf//jH5557zuVyDWuDGYxR\nxND7VzgclmX5zjvvPO+8837yk5989NFH56DZYxsm2GU1NpstJyeHfLzuuusAoL6+HpjzHIOR\nMhnpR48//vi99947b9684WghgzF6GWL/KigoWL169bp16zZt2rRo0aI333xz+Jr6BYEJB6OJ\n4uJiAKCdfhgMxmBJox+98cYbS5cuXbt27bA1isEYI6Q9T3Ecd8kllzidzmFo1BcLJtiNJlpa\nWlwuF/PdZjCGwmD70YcffhiJRL71rW/hj7Isnz59ethax2CMboYyT7W3t1955ZUZb9IXDSbY\nZTt9fX04vYIsy3/9618ffPBBnJjb5/MBQCAQsD48Go3iY4e/pQxG9pJ2P9q7d++GDRvcbvfr\nr7/++uuvv/rqq9///vdZbi0Ggya9/uXz+R577LHDhw/jj4cOHSooKLjlllvOVavHLCyPXbbj\n8XieeeYZWZYlSbruuuu+/e1vA8D+/fs3btwIAOvXry8tLV28eLHhsTt27Ni8eTMAvPHGGy6X\n66abbmJabsYXk/T60bFjx9atWxcOh3ft2kU2rlq1av78+eew7QxGtpP2PFVdXf3yyy9fddVV\n559//rx58/7nf/7nXDd9LMIEu2wnNzf3iSee0Gy89NJLX3/99aTHXn/99ddff/3wtIvBGE2k\n14/OO++8M2fODGe7GIyxQHr9q7Cw8OWXXx7Odn1BYabYsYMoioNKa8fsswyGHtaPGIzhg/Wv\ncwDT2GU1wWBwYGAAIcRxXNKdw+Hwz372szlz5lx11VUWSRlqamr27t3b3NwsCEJGG8tgZCms\nHzEYwwfrX9kGx0oXZC0vvvjif//3fwcCgfvuu++uu+6aO3fuSLeIwRh9sH7EYAwfrH9lIUyw\nYzAYDAaDwRgjMB87BoPBYDAYjDECE+wYDAaDwWAwxghMsGMwGAwGI87Ro0dHugkMxpBgUbEM\n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\nYII=", "text/plain": [ "plot without title" ] }, "metadata": { "image/png": { "height": 180, "width": 420 }, "text/plain": { "height": 180, "width": 420 } }, "output_type": "display_data" } ], "source": [ "mcmc_trace(posterior_cp_pi,np = np_cp)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Overall the transitions divergence at allmost all points, the traces are not consequently not very nice either. Let's also look at the effective sample size." ] }, { "cell_type": "code", "execution_count": 41, "metadata": {}, "outputs": [ { "data": { "image/png": "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\nTkSuQmCC", "text/plain": [ "plot without title" ] }, "metadata": { "image/png": { "height": 180, "width": 420 }, "text/plain": { "height": 180, "width": 420 } }, "output_type": "display_data" } ], "source": [ "ratios_cp <- neff_ratio(fit)\n", "mcmc_neff(ratios_cp)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Most of the effective sample sizes are extremely low. Before we go on, we should try to change our model, since often badly setup models cause unpleasant posterior analytics. In the case that Stan doesn't like non-parametrics (the truncated stick-breaking), we could test the same model and fix the number of clusters." ] }, { "cell_type": "code", "execution_count": 42, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "data {\n", "\tint K;\n", "\tint n;\n", "\tint p;\t\n", "\tint x[n, p];\n", "\tvector[K] alpha;\n", "}\n", "\n", "parameters { \t\n", " ordered[p] rates[K];\t\n", " simplex[K] pi;\n", "}\n", "\n", "transformed parameters { \n", " vector[p] prob[K];\n", "\n", " for (k in 1:K) \n", " {\n", " \tfor (ps in 1:p) \n", " \t{\n", " \t\tprob[k, ps] = inv_logit(rates[k, ps]); \n", " \t}\n", " } \n", "}\n", "\n", "model {\n", " \treal mix[K]; \t\n", " pi ~ dirichlet(alpha);\n", " \n", " \tfor(i in 1:n) \n", " \t{\n", "\t\tfor(k in 1:K) \n", "\t\t{\n", "\t\t\tmix[k] = log(pi[k]);\n", "\t\t\tfor (ps in 1:p)\n", "\t\t\t{\n", "\t\t\t\tmix[k] += bernoulli_lpmf(x[i, ps] | prob[k, ps]);\n", "\t\t\t}\n", "\t\t}\n", "\t\ttarget += log_sum_exp(mix);\n", " \t}\n", "}\n" ] } ], "source": [ "stan.file <- \"_models/binary_mixture.stan\"\n", "cat(readLines(stan.file), sep=\"\\n\")" ] }, { "cell_type": "code", "execution_count": 43, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "\n", "SAMPLING FOR MODEL 'binary_mixture' NOW (CHAIN 1).\n", "Chain 1: \n", "Chain 1: Gradient evaluation took 0.000173 seconds\n", "Chain 1: 1000 transitions using 10 leapfrog steps per transition would take 1.73 seconds.\n", "Chain 1: Adjust your expectations accordingly!\n", "Chain 1: \n", "Chain 1: \n", "Chain 1: Iteration: 1 / 10000 [ 0%] (Warmup)\n", "Chain 1: Iteration: 1000 / 10000 [ 10%] (Warmup)\n", "Chain 1: Iteration: 1001 / 10000 [ 10%] (Sampling)\n", "Chain 1: Iteration: 2000 / 10000 [ 20%] (Sampling)\n", "Chain 1: Iteration: 3000 / 10000 [ 30%] (Sampling)\n", "Chain 1: Iteration: 4000 / 10000 [ 40%] (Sampling)\n", "Chain 1: Iteration: 5000 / 10000 [ 50%] (Sampling)\n", "Chain 1: Iteration: 6000 / 10000 [ 60%] (Sampling)\n", "Chain 1: Iteration: 7000 / 10000 [ 70%] (Sampling)\n", "Chain 1: Iteration: 8000 / 10000 [ 80%] (Sampling)\n", "Chain 1: Iteration: 9000 / 10000 [ 90%] (Sampling)\n", "Chain 1: Iteration: 10000 / 10000 [100%] (Sampling)\n", "Chain 1: \n", "Chain 1: Elapsed Time: 41.0239 seconds (Warm-up)\n", "Chain 1: 631.988 seconds (Sampling)\n", "Chain 1: 673.012 seconds (Total)\n", "Chain 1: \n" ] }, { "name": "stderr", "output_type": "stream", "text": [ "Warning message:\n", "“There were 7984 divergent transitions after warmup. Increasing adapt_delta above 0.99 may help. See\n", "http://mc-stan.org/misc/warnings.html#divergent-transitions-after-warmup”\n", "Warning message:\n", "“There were 1016 transitions after warmup that exceeded the maximum treedepth. Increase max_treedepth above 10. See\n", "http://mc-stan.org/misc/warnings.html#maximum-treedepth-exceeded”\n", "Warning message:\n", "“Examine the pairs() plot to diagnose sampling problems\n", "”\n", "Warning message:\n", "“The largest R-hat is 1.86, indicating chains have not mixed.\n", "Running the chains for more iterations may help. See\n", "http://mc-stan.org/misc/warnings.html#r-hat”\n", "Warning message:\n", "“Bulk Effective Samples Size (ESS) is too low, indicating posterior means and medians may be unreliable.\n", "Running the chains for more iterations may help. See\n", "http://mc-stan.org/misc/warnings.html#bulk-ess”\n", "Warning message:\n", "“Tail Effective Samples Size (ESS) is too low, indicating posterior variances and tail quantiles may be unreliable.\n", "Running the chains for more iterations may help. See\n", "http://mc-stan.org/misc/warnings.html#tail-ess”\n" ] } ], "source": [ "fit_fixed_K <- stan(stan.file, data = list(K=K, n=n, x=X, p=p, alpha=rep(1.0, K)), \n", " iter = 10000, warmup = 1000, chains = 1, control = list(adapt_delta = 0.99))" ] }, { "cell_type": "code", "execution_count": 44, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "Inference for Stan model: binary_mixture.\n", "1 chains, each with iter=10000; warmup=1000; thin=1; \n", "post-warmup draws per chain=9000, total post-warmup draws=9000.\n", "\n", " mean se_mean sd 2.5% 25% 50% 75% 97.5% n_eff\n", "rates[1,1] -1.64 14.04 24.98 -53.99 -22.00 8.87 16.82 27.92 3\n", "rates[1,2] 7.66 10.86 21.37 -43.06 -6.90 15.06 23.98 31.93 4\n", "rates[1,3] 19.88 8.19 18.15 -26.22 10.65 28.15 33.24 36.41 5\n", "rates[2,1] 9.73 5.31 10.99 -6.02 0.81 6.57 17.38 30.25 4\n", "rates[2,2] 17.45 3.72 10.90 -3.18 9.22 17.81 27.20 33.57 9\n", "rates[2,3] 27.28 1.49 8.67 4.01 23.07 30.20 34.00 36.44 34\n", "rates[3,1] -41.63 12.55 22.63 -76.17 -63.75 -39.36 -20.52 -6.37 3\n", "rates[3,2] -22.90 6.88 20.17 -65.04 -35.33 -22.59 -9.05 16.20 9\n", "rates[3,3] -9.80 6.82 18.62 -44.46 -21.19 -10.60 -3.20 32.48 7\n", "rates[4,1] -0.60 0.05 0.28 -1.12 -0.79 -0.60 -0.40 -0.05 28\n", "rates[4,2] -0.38 0.06 0.28 -0.88 -0.57 -0.39 -0.21 0.28 25\n", "rates[4,3] -0.21 0.07 0.30 -0.76 -0.40 -0.24 -0.04 0.48 19\n", "rates[5,1] -34.58 3.56 6.33 -44.65 -39.78 -34.94 -30.23 -21.50 3\n", "rates[5,2] -17.13 3.75 15.92 -43.40 -28.38 -18.44 -7.23 17.00 18\n", "rates[5,3] 7.02 3.27 18.46 -27.96 -7.21 6.61 23.90 35.42 32\n", "pi[1] 0.11 0.03 0.06 0.02 0.04 0.12 0.16 0.21 4\n", "pi[2] 0.08 0.04 0.07 0.00 0.02 0.05 0.15 0.22 4\n", "pi[3] 0.13 0.03 0.08 0.00 0.06 0.14 0.20 0.29 11\n", "pi[4] 0.65 0.00 0.05 0.54 0.61 0.64 0.68 0.76 123\n", "pi[5] 0.03 0.03 0.06 0.00 0.00 0.00 0.01 0.18 5\n", "prob[1,1] 0.65 0.27 0.47 0.00 0.00 1.00 1.00 1.00 3\n", "prob[1,2] 0.70 0.23 0.45 0.00 0.00 1.00 1.00 1.00 4\n", "prob[1,3] 0.79 0.16 0.40 0.00 1.00 1.00 1.00 1.00 6\n", "prob[2,1] 0.80 0.07 0.32 0.00 0.69 1.00 1.00 1.00 19\n", "prob[2,2] 0.93 0.04 0.22 0.04 1.00 1.00 1.00 1.00 30\n", "prob[2,3] 1.00 0.00 0.04 0.98 1.00 1.00 1.00 1.00 401\n", "prob[3,1] 0.00 0.00 0.02 0.00 0.00 0.00 0.00 0.00 240\n", "prob[3,2] 0.13 0.11 0.33 0.00 0.00 0.00 0.00 1.00 8\n", "prob[3,3] 0.19 0.16 0.38 0.00 0.00 0.00 0.04 1.00 6\n", "prob[4,1] 0.36 0.01 0.06 0.25 0.31 0.35 0.40 0.49 28\n", "prob[4,2] 0.41 0.01 0.07 0.29 0.36 0.40 0.45 0.57 25\n", "prob[4,3] 0.45 0.02 0.07 0.32 0.40 0.44 0.49 0.62 19\n", "prob[5,1] 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 136\n", "prob[5,2] 0.14 0.07 0.34 0.00 0.00 0.00 0.00 1.00 25\n", "prob[5,3] 0.58 0.13 0.48 0.00 0.00 1.00 1.00 1.00 15\n", "lp__ -383.51 0.92 4.06 -392.96 -385.87 -383.01 -380.60 -377.05 20\n", " Rhat\n", "rates[1,1] 1.71\n", "rates[1,2] 1.56\n", "rates[1,3] 1.43\n", "rates[2,1] 1.30\n", "rates[2,2] 1.08\n", "rates[2,3] 1.04\n", "rates[3,1] 2.24\n", "rates[3,2] 1.44\n", "rates[3,3] 1.32\n", "rates[4,1] 1.00\n", "rates[4,2] 1.09\n", "rates[4,3] 1.12\n", "rates[5,1] 1.89\n", "rates[5,2] 1.06\n", "rates[5,3] 1.01\n", "pi[1] 1.70\n", "pi[2] 1.54\n", "pi[3] 1.10\n", "pi[4] 1.00\n", "pi[5] 1.31\n", "prob[1,1] 1.83\n", "prob[1,2] 1.59\n", "prob[1,3] 1.32\n", "prob[2,1] 1.01\n", "prob[2,2] 1.00\n", "prob[2,3] 1.00\n", "prob[3,1] 1.01\n", "prob[3,2] 1.15\n", "prob[3,3] 1.23\n", "prob[4,1] 1.00\n", "prob[4,2] 1.09\n", "prob[4,3] 1.12\n", "prob[5,1] 1.01\n", "prob[5,2] 1.00\n", "prob[5,3] 1.05\n", "lp__ 1.00\n", "\n", "Samples were drawn using NUTS(diag_e) at Thu May 14 15:23:21 2020.\n", "For each parameter, n_eff is a crude measure of effective sample size,\n", "and Rhat is the potential scale reduction factor on split chains (at \n", "convergence, Rhat=1)." ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "fit_fixed_K" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "That didn't seem to help at all. So the problem is apparently stemming from the multivariate Bernoulli, which makes somewhat sense, since binary data isn't very talkative in the first place, so making informed inferences on these data sets is difficult. For binary data, collapsing the parameters and only using latent class assignments seems to be preferrable. Thus, the next notebook will be on efficient inference of class assignments using [particle MCMC](particle_mcmc.ipynb)." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## License\n", "\n", "
\n", "\n", "The case study is licensed under a Creative Commons Attribution-NonCommercial 4.0 International License." ] } ], "metadata": { "kernelspec": { "display_name": "R", "language": "R", "name": "ir" }, "language_info": { "codemirror_mode": "r", "file_extension": ".r", "mimetype": "text/x-r-source", "name": "R", "pygments_lexer": "r", "version": "4.0.0" } }, "nbformat": 4, "nbformat_minor": 2 }