Skip to content

Instantly share code, notes, and snippets.

@philsong
Forked from sebjai/STA2536-MixtureModel.ipynb
Created September 7, 2021 10:58
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save philsong/e72f69aaf0043584e01bfc241b201d90 to your computer and use it in GitHub Desktop.
Save philsong/e72f69aaf0043584e01bfc241b201d90 to your computer and use it in GitHub Desktop.
Display the source blob
Display the rendered blob
Raw
{
"cells": [
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# Gaussian Mixture Models and the EM Algorithm\n",
"\n",
"This notebook explores Gaussian mixture models, their esitmation, resulting classification, and the EM algorithm when labels are not provided."
]
},
{
"cell_type": "code",
"execution_count": 1,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"import numpy as np # for numerical python libraries\n",
"\n",
"import scipy.stats as st # for statistical libraries\n",
"\n",
"import matplotlib.pyplot as plt # for plotting\n",
"\n",
"import matplotlib.pylab as pylab\n",
"params = {'legend.fontsize': 'x-large',\n",
" 'figure.figsize': (15, 5),\n",
" 'axes.labelsize': 'x-large',\n",
" 'axes.titlesize':'x-large',\n",
" 'xtick.labelsize':'x-large',\n",
" 'ytick.labelsize':'x-large'}\n",
"pylab.rcParams.update(params)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# Generate some random Gaussian mixture model data\n",
"In the mixture model, a generative model, the probability that a point in feature space is generated is Gaussian with a class specific mean and covariance matrix"
]
},
{
"cell_type": "code",
"execution_count": 2,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"# some model parameters\n",
"pi=np.array([0.5,0.25,0.25])\n",
"mu=np.array([[1,1],[1.8,1.8],[1.5,0.5]])\n",
"Sigma=np.array([[[0.05,0.025],[0.025,0.05]],[[0.16,-0.1],[-0.1,0.4]],[[0.04,-0.01],[-0.01,0.2]]])\n"
]
},
{
"cell_type": "code",
"execution_count": 3,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"def GenerateData(pi,mu,Sigma,N):\n",
" # this function simply generates multivariate normal data \n",
" # pi represents the probability of each class (in this case, we have 3)\n",
" # mu, sigma are the vector of means and and covariance matrices. each mean is in R^2\n",
" # each covariance matrix is in R^{2x2}\n",
" \n",
" d = mu.shape[1] # data dimension\n",
" K = pi.size # number of classes\n",
" \n",
" X = np.zeros((N,d)) # store features\n",
" Y = np.zeros(N) # store labels\n",
" Y = Y.astype(int)\n",
" \n",
" # used generate random labels\n",
" cpi = np.cumsum(pi)\n",
" U = np.random.uniform(0,1,N)\n",
" \n",
" for i in range(0,N):\n",
" \n",
" # generate a label for point i\n",
" Y[i] = int(sum(U[i] > cpi))\n",
" \n",
" # generate random point in feature space conditional on being in class Y[i]\n",
" X[i,:] = np.random.multivariate_normal(mu[Y[i],:], Sigma[Y[i],:,:])\n",
" \n",
" return X,Y\n",
" "
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"the conditional density\n",
"$$\n",
"f_{X|Y=k}(x; \\mu_k, \\Sigma_k) = \\frac{1}{\\sqrt{(2\\pi)^d\\det(\\Sigma_k)}} \\exp\\{-\\tfrac{1}{2}(x-\\mu_k)^\\intercal(\\Sigma_k)^{-1}(x-\\mu_k)\\}\n",
"$$"
]
},
{
"cell_type": "code",
"execution_count": 4,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"# the conditional density f_{X|Y=y}(x)\n",
"def fxy(mu,Sigma,bins):\n",
" \n",
" K = mu.shape[0] #3 in this case \n",
" \n",
" f = np.zeros((K,bins.shape[1],bins.shape[1]))\n",
" \n",
" for k in range(0,K):\n",
" for i in range(0,bins.shape[1]):\n",
" for j in range(0,bins.shape[1]):\n",
" f[k,i,j] = st.multivariate_normal.pdf([bins[0,i],bins[1,j]],mu[k,:],Sigma[k,:,:])\n",
" \n",
" return f\n",
"\n",
" \n",
"bins=np.zeros((2,100))\n",
"bins[0,:] = np.linspace(0,4,100)\n",
"bins[1,:] = np.linspace(-1,4,100)\n",
"\n",
"f = fxy(mu,Sigma,bins)\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Plot a random sample"
]
},
{
"cell_type": "code",
"execution_count": 5,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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\nv/9gtCwSAAAAAElFTkSuQmCC\n",
"text/plain": [
"<matplotlib.figure.Figure at 0x9643c18>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"x,y = GenerateData(pi,mu,Sigma,500) #generate the mvn data\n",
"\n",
"for i in range(0,mu.shape[0]):\n",
" plt.contour(bins[0,:],bins[1,:],f[i,:,:].T, 3) # plotting the countours - differing levels of probability\n",
"\n",
"\n",
"for i in range(0,mu.shape[0]):\n",
" plt.scatter(x[y==i,0],x[y==i,1]) # plotting the points\n",
" \n",
"\n",
"plt.xlabel(r'$x_1$') \n",
"plt.ylabel(r'$x_2$')\n",
"plt.title('Random sample of labeled mixutre data')\n",
"\n",
"plt.show()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Estimate the model from the data using labels"
]
},
{
"cell_type": "code",
"execution_count": 6,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"def EstimateMixtureModel(x,y): #No EM here - this is straight up classification\n",
" \n",
" Y = np.unique(y) # get the unique list of labels\n",
" K = Y.size # number of unique labels\n",
" \n",
" pi = np.zeros(K) #zeros of length K\n",
" mu = np.zeros((K,x.shape[1])) # matrices of 0's\n",
" Sigma = np.zeros((K,x.shape[1],x.shape[1]))\n",
" \n",
" # estimate the parameters for every unique point with the MLE estimates \n",
" for k in range(K):\n",
" idx = (y==Y[k])\n",
" pi[k] = np.sum(idx)/y.size\n",
" mu[k,:] = np.mean(x[idx,:],axis=0)\n",
" Sigma[k,:,:] = np.cov(x[idx,:].T)\n",
" \n",
" return pi, mu, Sigma"
]
},
{
"cell_type": "code",
"execution_count": 7,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"pih,muh,Sigmah = EstimateMixtureModel(x,y)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# Bayes classifier\n",
"This provides the (posterior) probability that a point in feature space comes from a given class $\\gamma_{k}(x)=\\mathbb P(X=x|Y=k)$ and equals using Bayes rule\n",
"\n",
"$$\n",
"\\gamma_{k}(x) = \\frac{\\pi_k \\; f_{X|Y=k}(x; \\mu_k, \\Sigma_k)}{\\sum_{k\\in{\\mathcal K}} \\pi_k \\;f_{X|Y=k}(x; \\mu_k, \\Sigma_k)}\n",
"$$"
]
},
{
"cell_type": "code",
"execution_count": 8,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"# compute the posterior probability of a point in feature space being from a given class\n",
"def Posterior(pi,mu,Sigma,bins):\n",
" K = pi.size\n",
" \n",
" p = np.zeros((K,bins.shape[1],bins.shape[1]))\n",
" \n",
" for i in range(0,bins.shape[1]):\n",
" for j in range(0,bins.shape[1]):\n",
" \n",
" denom = 0\n",
" # for every quantile, calculate the probability of it being in a certain class\n",
" # divide by the sum of probabilities for that point, across that class\n",
" # what results is the probability of the point (i,j) being in class k\n",
" for k in range(0,K):\n",
" p[k,i,j] = st.multivariate_normal.pdf([bins[0,i],bins[1,j]],mu[k,:],Sigma[k,:,:])*pi[k]\n",
" denom += p[k,i,j]\n",
"\n",
" for k in range(0,K):\n",
" p[k,i,j] /= denom\n",
" \n",
" return p"
]
},
{
"cell_type": "code",
"execution_count": 9,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"# use the true and estimated model parameters to compute the posterior\n",
"p = Posterior(pi,mu,Sigma,bins)\n",
"ph = Posterior(pih,muh,Sigmah,bins)"
]
},
{
"cell_type": "code",
"execution_count": 10,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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\nstzpcSRaJBnJfCQiSk92ZaRrJ41CiDIA/wbgU1LK81beI6V8Av6DWbF01Sr51Au/jOMIiYjIDdYt\nqGpxegyJFmlGMh+JiNKTXRnp2kkjgBUAZgP4L83qaQYAIYQYAXCPlPInTg2OiIjIQcxIIiJKGDdP\nGv8AYKXusc8C2ArgNgBnEj4iIiIid2BGEhFRwrh20iil7AdwRPuYEKIDwLCU8ojxu4iIiFIfM5KI\niBIpGbqnEhERERERkUOSatIopfyKlJJnUBEREekwI4mIKF6SatJIREREREREicVJIxEREREREZni\npJGIiIiIiIhMcdJIREREREREpjhpJCIiIiIiIlOcNBIREREREZEpThqJiIiIiIjIFCeNRERERERE\nZIqTRiIiIiIiIjLFSSMRERERERGZ4qSRiIiIiIiITHHSSERERERERKY4aSQiIiIiIiJTnDQSjSvq\nqEfNS/ehqKPe6aEQERG5BvORiDhpJBpXWb8TJefeRGX9TqeHQkRE5BrMRyLipJFSWiSro22196N7\n9ga01d6fgJERERE5y2pGMh+JKMvpARDFk1odBYDGW38Y8rV9M2rDvoaIiChVWM1I5iMR8U4jOSre\n+yS4OkpERMkoEfsImZFEZBXvNJKjIrkTGA2ujhIRUTKKdz4CzEgiso6TRnKUWt3kKicREdEE5iMR\nuQknjeQornISERFNxnwkIjfhnkYiIiIiIiIyxUkjERERERERmeKkkYiIiIiIiExx0khERERERESm\nOGkkIiIiIiIiU5w0EhERERERkSlOGomIiIiIiMgUJ41ERERERERkipNGIiIiIiIiMsVJIxERERER\nEZnipJGIiIiIiIhMcdJIREREREREpjhpJCIiIiIiIlOcNBKlmKKOetS8dB+KOuqdHgoREZGrMCOJ\nosNJI1GKqazfiZJzb6KyfqfTQyEiInIVZiRRdLKcHgAR2aut9v6gn0REROTHjCSKDieNRCmmb0Yt\nGm/9odPDICIich1mJFF0WJ5KREREREREpjhpJCIiIiIiIlOcNBIREREREZEpThqJiIiIiIjIFCeN\nREREREREZMrVk0YhxCeEEAeEEJeEEF4hxFEhxBeEEMLpsRERETmF+UhERInk6kkjgA4AjwJYD2A5\ngH8A8DUA/8PJQVH6KuqoR81L96Goo97poRBRemM+kuswI4lSl6vPaZRSvqh7qFkIcQeAGwE8nvgR\n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\n",
"text/plain": [
"<matplotlib.figure.Figure at 0x9147b70>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"# plot the results\n",
"plt.subplot(1,2,1)\n",
"plt.contourf(bins[0,:],bins[1,:],np.argmax(p,axis=0).T,alpha=0.25)\n",
"\n",
"for i in range(0,mu.shape[0]):\n",
" plt.scatter(x[y==i,0],x[y==i,1],s=2)\n",
" \n",
"plt.xlabel(r'$x_1$') \n",
"plt.ylabel(r'$x_2$')\n",
"plt.title('True')\n",
"\n",
"plt.subplot(1,2,2)\n",
"plt.contourf(bins[0,:],bins[1,:],np.argmax(ph,axis=0).T, alpha=0.25)\n",
"\n",
"for i in range(0,mu.shape[0]):\n",
" plt.scatter(x[y==i,0],x[y==i,1],s=2)\n",
" \n",
"plt.xlabel(r'$x_1$') \n",
"plt.ylabel(r'$x_2$')\n",
"plt.title('Estimated')\n",
"plt.show()\n",
"\n",
"# the estimated comes very close to the true. We are able to identify the regions quite well"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# Estimating without the labels... EM Algorithm\n",
"Responsibilities at iteration m for data point n in class k is\n",
"$$\n",
"\\gamma_{n,k}^m = \\frac{\\pi_k^m \\; f_{X_n|Y_n=k}(x_n; \\mu_k^m, \\Sigma_k^m)}{\\sum_{k\\in{\\mathcal K}} \\pi_k^m \\;f_{X_n|Y_n=k}(x_n; \\mu_k^m, \\Sigma_k^m)}\n",
"$$\n",
"where the probability that data point n occurs given that it is in class k is\n",
"$$\n",
"f_{X_n|Y_n=k}(x_n; \\mu_k^m, \\Sigma_k^m) = \\frac{1}{\\sqrt{(2\\pi)^d\\det(\\Sigma_k^m)}} \\exp\\{-\\tfrac{1}{2}(x_n-\\mu_k^m)^\\intercal(\\Sigma_k^m)^{-1}(x_n-\\mu_k^m)\\}\n",
"$$"
]
},
{
"cell_type": "code",
"execution_count": 11,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"# now we actually use EM - we no longer have the labels\n",
"# this function represents the e-step\n",
"def Reponsibilities(x,pi,mu,Sigma):\n",
" \n",
" K = pi.size\n",
" \n",
" g = np.zeros((K, x.shape[0]))\n",
" \n",
" for n in range(0,x.shape[0]):\n",
" \n",
" denom = 0\n",
" \n",
" for k in range(0,K):\n",
" g[k,n] = st.multivariate_normal.pdf(x[n,:], mu[k,:].T, Sigma[k,:,:])*pi[k]\n",
" #posterior probability that point n is in state k\n",
" # similar to what was in the \"Bayes\" function, except here we are given \n",
" # a data point as opposed to calculating the probability for an arbitrary point\n",
" # in feature space\n",
" denom += g[k,n]\n",
" \n",
" for k in range(0,K):\n",
" g[k,n] /= denom\n",
" \n",
" return g"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"The m-step update rules are for class $l$\n",
"$$\n",
"\\pi_l^{m+1} = \\frac{\\sum_{n\\in\\mathcal{N}} \\gamma_{n,l}^m}{\\sum_{n\\in\\mathcal{N},k\\in\\mathcal{K}} \\gamma_{n,l}^m}\n",
"$$\n",
"\n",
"$$\n",
"\\mu_l^{m+1} = \\frac{\\sum_{n\\in\\mathcal{N}} x_n \\gamma_{n,l}^m}{\\sum_{n\\in\\mathcal{N}} \\gamma_{n,l}^m}\n",
"$$\n",
"\n",
"$$\n",
"\\Sigma_{l,ij}^{m+1} = \\frac{\\sum_{n\\in\\mathcal{N}} (x_{n,i}-\\mu_{l,i}^{m+1})(x_{n,j}-\\mu_{l,j}^{m+1}) \\gamma_{n,l}^m}{\\sum_{n\\in\\mathcal{N}} \\gamma_{n,l}^m}\n",
"$$\n",
"\n"
]
},
{
"cell_type": "code",
"execution_count": 12,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"def EM(x, pi, mu, Sigma, iter):\n",
" \n",
" K = pi.size\n",
" d = x.shape[1]\n",
" \n",
" for m in range(iter):\n",
" \n",
" # e-step\n",
" gamma = Reponsibilities(x,pi,mu,Sigma)\n",
" \n",
" #m-step\n",
" #\n",
" \n",
" # compute update to pi\n",
" numer = np.sum(gamma, axis=1) # sum_n gamma_{n,k} gives array shape (1,K)\n",
" denom = np.sum(numer) # sum_{n,k} gamma_{n,k}\n",
" pi = numer / denom\n",
" \n",
" # compute update to mu\n",
" numer = np.matmul(gamma, x) # sum_n x_{n,l} gamma_{n,k} gives array shape (K,d) \n",
" sum_gamma = np.sum(gamma, axis=1) # sum_n gamma_{n,k} gives array shape (1,K)\n",
" for k in range(0,K):\n",
" mu[k,:] = numer[k,:]/sum_gamma[k]\n",
" \n",
" # compute update to Sigma\n",
" for k in range(0,K):\n",
" for i in range(0,d):\n",
" for j in range(0,d):\n",
" Sigma[k,i,j] = np.sum( (x[:,i]-mu[k,i])*(x[:,j]-mu[k,j])*gamma[k,:] )/sum_gamma[k]\n",
"\n",
" print(' -- estimated parameters -----')\n",
" print(pi, '\\n\\n', mu, '\\n\\n', Sigma, '\\n\\n')\n",
" \n",
" return pi, mu, Sigma"
]
},
{
"cell_type": "code",
"execution_count": 13,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"def InitialGuess(x,K):\n",
" # generate an initial guess depending on the number of classes that are specified\n",
"\n",
" pi_h = np.ones(K)/K\n",
" mu_h = np.mean(x,axis=0)\n",
" Sigma_h = np.cov(x.T)\n",
"\n",
" pi0 = pi_h * np.random.uniform(0.99,1.01,K)\n",
" pi0 = pi0 / sum(pi0)\n",
"\n",
" mu0 = np.tile(mu_h,(K,1)) * np.random.uniform(0.99,1.01,(K,2))\n",
"\n",
" Sigma0 = np.tile(Sigma_h,(K,1,1))\n",
" \n",
" return pi0, mu0, Sigma0"
]
},
{
"cell_type": "code",
"execution_count": 14,
"metadata": {
"scrolled": true
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"-------- Kfit = 2 -------- \n",
" -- initial guess -- \n",
"[ 0.50174669 0.49825331] \n",
"\n",
" [[ 1.35053388 1.07633778]\n",
" [ 1.33587595 1.06618159]] \n",
"\n",
" [[[ 0.17927398 0.05468603]\n",
" [ 0.05468603 0.4289084 ]]\n",
"\n",
" [[ 0.17927398 0.05468603]\n",
" [ 0.05468603 0.4289084 ]]] \n",
"\n",
"\n",
" -- estimated parameters -----\n",
"[ 0.55240631 0.44759369] \n",
"\n",
" [[ 1.60819392 1.1368491 ]\n",
" [ 1.00736562 1.00252676]] \n",
"\n",
" [[[ 0.12577181 0.04848288]\n",
" [ 0.04848288 0.72511996]]\n",
"\n",
" [[ 0.04508793 0.01751565]\n",
" [ 0.01751565 0.05144996]]] \n",
"\n",
"\n",
"-------- Kfit = 3 -------- \n",
" -- initial guess -- \n",
"[ 0.33429526 0.33473193 0.33097281] \n",
"\n",
" [[ 1.33155817 1.08577518]\n",
" [ 1.32636978 1.07836863]\n",
" [ 1.33278288 1.08445339]] \n",
"\n",
" [[[ 0.17927398 0.05468603]\n",
" [ 0.05468603 0.4289084 ]]\n",
"\n",
" [[ 0.17927398 0.05468603]\n",
" [ 0.05468603 0.4289084 ]]\n",
"\n",
" [[ 0.17927398 0.05468603]\n",
" [ 0.05468603 0.4289084 ]]] \n",
"\n",
"\n",
" -- estimated parameters -----\n",
"[ 0.2448356 0.50041001 0.2547544 ] \n",
"\n",
" [[ 1.50066374 0.40282618]\n",
" [ 1.02750861 1.02249689]\n",
" [ 1.79653611 1.83091405]] \n",
"\n",
" [[[ 0.04259199 -0.00760499]\n",
" [-0.00760499 0.16096781]]\n",
"\n",
" [[ 0.04939658 0.02143892]\n",
" [ 0.02143892 0.05747219]]\n",
"\n",
" [[ 0.13929801 -0.09411612]\n",
" [-0.09411612 0.40162055]]] \n",
"\n",
"\n",
"-------- Kfit = 4 -------- \n",
" -- initial guess -- \n",
"[ 0.24883978 0.25043446 0.25200944 0.24871632] \n",
"\n",
" [[ 1.32987155 1.07477665]\n",
" [ 1.34067648 1.07795219]\n",
" [ 1.32668673 1.08258626]\n",
" [ 1.34429186 1.06798701]] \n",
"\n",
" [[[ 0.17927398 0.05468603]\n",
" [ 0.05468603 0.4289084 ]]\n",
"\n",
" [[ 0.17927398 0.05468603]\n",
" [ 0.05468603 0.4289084 ]]\n",
"\n",
" [[ 0.17927398 0.05468603]\n",
" [ 0.05468603 0.4289084 ]]\n",
"\n",
" [[ 0.17927398 0.05468603]\n",
" [ 0.05468603 0.4289084 ]]] \n",
"\n",
"\n",
" -- estimated parameters -----\n",
"[ 0.49998167 0.1287656 0.23851684 0.13273589] \n",
"\n",
" [[ 1.02742724 1.02058898]\n",
" [ 1.63853121 1.91172265]\n",
" [ 1.50230339 0.3911692 ]\n",
" [ 1.93060872 1.71006447]] \n",
"\n",
" [[[ 0.04939002 0.02101562]\n",
" [ 0.02101562 0.0569428 ]]\n",
"\n",
" [[ 0.1091183 -0.05760326]\n",
" [-0.05760326 0.51074075]]\n",
"\n",
" [[ 0.04240144 -0.00678357]\n",
" [-0.00678357 0.156133 ]]\n",
"\n",
" [[ 0.12919708 -0.08194868]\n",
" [-0.08194868 0.3004293 ]]] \n",
"\n",
"\n"
]
}
],
"source": [
"# generate an initial guess using a list of classes\n",
"\n",
"Kfitmax = 4 # largest number of possible classes\n",
"pe = np.empty((Kfitmax,Kfitmax,bins.shape[1],bins.shape[1]))\n",
"pie = np.empty((Kfitmax,Kfitmax))\n",
"mue = np.empty((Kfitmax,Kfitmax,2))\n",
"Sigmae = np.empty((Kfitmax,Kfitmax,2,2))\n",
"\n",
"# fitting the parameters using 2, 3, and 4 classes\n",
"for Kfit in range (2,Kfitmax+1):\n",
" \n",
" print('-------- Kfit = ', Kfit, '-------- ')\n",
" \n",
" pi0,mu0,Sigma0 = InitialGuess(x,Kfit)\n",
"\n",
" print(' -- initial guess -- ')\n",
" print(pi0, '\\n\\n', mu0, '\\n\\n', Sigma0, '\\n\\n')\n",
"\n",
" # use EM to update the estimate\n",
" pie[Kfit-1,0:Kfit], mue[Kfit-1,0:Kfit,:], Sigmae[Kfit-1,0:Kfit,:,:]= EM(x, pi0, mu0, Sigma0, 100)\n",
"\n",
" pe[Kfit-1,0:Kfit,:,:] = Posterior(pie[Kfit-1,0:Kfit],mue[Kfit-1,0:Kfit,:],Sigmae[Kfit-1,0:Kfit,:,:],bins)"
]
},
{
"cell_type": "code",
"execution_count": 15,
"metadata": {
"scrolled": true
},
"outputs": [
{
"data": {
"image/png": "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\n2F5LLWKrAAAAAElFTkSuQmCC\n",
"text/plain": [
"<matplotlib.figure.Figure at 0x9890a20>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"# plot the results\n",
"plt.subplot(1,Kfitmax,1)\n",
"plt.contourf(bins[0,:],bins[1,:],np.argmax(p,axis=0).T,alpha=0.25)\n",
"\n",
"for i in range(0,mu.shape[0]):\n",
" plt.scatter(x[y==i,0],x[y==i,1],s=2)\n",
" \n",
"plt.xlabel(r'$x_1$') \n",
"plt.ylabel(r'$x_2$')\n",
"plt.title('True')\n",
"\n",
"for Kfit in range(2,Kfitmax+1):\n",
" plt.subplot(1,Kfitmax,Kfit)\n",
" plt.contourf(bins[0,:],bins[1,:],np.argmax(pe[Kfit-1,:,:,:],axis=0).T, alpha=0.25)\n",
" plt.scatter(x[:,0],x[:,1],s=2)\n",
"\n",
" plt.xlabel(r'$x_1$') \n",
" plt.ylabel(r'$x_2$')\n",
" plt.title(r'Estimated with K=' + str(Kfit))\n",
" \n",
"plt.show()"
]
}
],
"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.6.3"
}
},
"nbformat": 4,
"nbformat_minor": 2
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment