Created
September 16, 2019 18:42
-
-
Save steven-tey/ea3e1120c6a8ee66ad92c0e504c86eba to your computer and use it in GitHub Desktop.
CS146 Session 2.1 Pre-Class Work
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
{ | |
"cells": [ | |
{ | |
"cell_type": "code", | |
"execution_count": 6, | |
"metadata": {}, | |
"outputs": [], | |
"source": [ | |
"import numpy as np\n", | |
"import scipy as sp\n", | |
"import scipy.stats as sts\n", | |
"import matplotlib.pyplot as plt\n", | |
"\n", | |
"%matplotlib inline" | |
] | |
}, | |
{ | |
"cell_type": "markdown", | |
"metadata": {}, | |
"source": [ | |
"# How tall do oak trees grow?\n", | |
"\n", | |
"Let's say we're about to get some data on oak tree heights and we want to infer the average height, $\\mu,$ of oak trees. We're not really sure what the average height of oak trees is, but let's guess the average height is at least 10 meters, maybe more, but certainly not more than 50 meters. So, taller than a 3-story building but shorter than a 15-story building.\n", | |
"\n", | |
"## Prior distribution\n", | |
"\n", | |
"To represent this guess, I'm going to make up a prior distribution that looks like this:" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": 7, | |
"metadata": {}, | |
"outputs": [ | |
{ | |
"data": { | |
"image/png": "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\n", | |
"text/plain": [ | |
"<Figure size 576x432 with 1 Axes>" | |
] | |
}, | |
"metadata": { | |
"needs_background": "light" | |
}, | |
"output_type": "display_data" | |
} | |
], | |
"source": [ | |
"# mu is the average height, which we don't know and want to infer from data.\n", | |
"# We create an array of possible values between 0 and 60.\n", | |
"mu = np.linspace(0, 60, 201)\n", | |
"\n", | |
"# The prior is greater than 0 in the range (0, 50) based on our guess.\n", | |
"prior = np.where(\n", | |
" mu > 10,\n", | |
" np.where(\n", | |
" mu < 30, mu - 10,\n", | |
" np.where(\n", | |
" mu < 50, 50 - mu, 0)),\n", | |
" 0)\n", | |
"\n", | |
"plt.figure(figsize=(8, 6))\n", | |
"plt.plot(mu, prior, color='black')\n", | |
"plt.xlabel('μ')\n", | |
"plt.ylabel('prior probability density')\n", | |
"plt.show()" | |
] | |
}, | |
{ | |
"cell_type": "markdown", | |
"metadata": {}, | |
"source": [ | |
"This is a pretty unusual prior distribution, but we're working with unusual distributions in this example to make the point that you can, in principle, use anything and not just the standard distributions that get used all the time.\n", | |
"\n", | |
"There is a problem with this prior, though – it doesn't integrate to 1 and is therefore not normalized. This means it's not a valid probability distribution.\n", | |
"\n", | |
"Let's compute the area under the curve numerically using the trapezoidal rule and divide by the result to normalize the distribution. (If you've forgotten what the trapezoid rule is, [here is a refresher video](https://www.khanacademy.org/math/ap-calculus-ab/ab-integration-new/ab-6-2/v/trapezoidal-approximation-of-area-under-curve).)\n", | |
"\n", | |
"Note that the resulting distribution has the same shape as before. All that changed is the scale on the vertical axis." | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": 26, | |
"metadata": {}, | |
"outputs": [ | |
{ | |
"name": "stdout", | |
"output_type": "stream", | |
"text": [ | |
"Area under the unnormalized prior curve: 400.02000000000004\n" | |
] | |
}, | |
{ | |
"data": { | |
"image/png": "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tGvXjosvvth3HJGYVaNGDTp37szkyZMpKNDcXslKxV3iwpAhQzh69ChZWVm+o4jEvL59+2JmDBw40HcU8UTFXWLewYMHGTZsGI888ggtWrTwHUck5jVs2JAnnniCl19+mT179viOIx6ouEvMGzt2LLt379YEMSLnIBgMcvDgQUaMGOE7inigJjYS044fP06LFi245JJLmD17tu84InHlN7/5DXl5eWzYsIEKFSr4jiMRoCY2EpemTp3K+vXrNUGMyHkIBoNs27aNV1991XcUiTKN3CVmOee47bbb2Lt3LytWrCAlJcV3JJG44pzjxhtv5OjRoyxbtoxy5TSeSzQauUvc+eyzz1iwYAFZWVkq7CLn4URL2hUrVvDBBx/4jiNRpJG7xKyHHnqIefPmUVBQQMWKFX3HEYlLx44d4/LLL6dp06bMnDnTdxwpYxq5S1z55ptveP/99+nZs6cKu8gFSE1NpW/fvnz22WfMnz/fdxyJEhV3iUk5OTlUrFiR7t27+44iEvc6depE9erVNaFMEolocTez+81slZnlm9nzp7i/gplNDt0/18wah9bXNrMZZnbAzIZEMqPEni1btjBx4kSeffZZ6tSp4zuOSNyrWrUqXbt25a233mLdunW+40gURKy4m1kKMBR4ALgKaGNmV520WUdgj3OuGTAAeCG0/gjwb4C6liShwYMHU1RUREZGhu8oIgmjd+/epKSk0L9/f99RJAoiOXK/Dch3zq1zzh0FXgceOWmbR4Dxod/fBO41M3POHXTOfUlJkZcksn//fl566SUeffRRLr/8ct9xRBJG/fr1efrppxkzZgzffvut7zgSYZEs7g2AwlLLm0LrTrmNc+44sBeoHcFMEuNGjRrF3r171bRGJAICgQCHDx9m2LBhvqNIhEWyuNsp1p183V0425z+Bcw6m9kCM1uwc+fOcwonsefYsWMMGDCAO++8k9tuu813HJGEc/XVV/Pggw/y4osvcvjwYd9xJIIiWdw3AQ1LLV8KbDndNmZWHqgO7A73BZxzI51ztzjnbqlbt+4FxhXfpkyZQmFhoUbtIhEUCATYuXMnEyZM8B1FIiiSxX0+0NzMmphZGvAkkHvSNrlAu9DvjwPTXaJ01ZFz4pwjOzubK664ggcffNB3HJGE9ctf/pKbb76Zfv36UVRU5DuOREjEinvoGHpPYBqwApjinFtuZn8xs1ahzUYDtc0sH8gE/udyOTPbAPQH2pvZplOcaS8J5NNPP2XJkiUEAgH1vxaJIDMjGAyyZs0a3n33Xd9xJELUflZiwn333cfSpUs1NaVIFBw/fpzmzZtTv359Zs2a5TuOXAC1n5WYtWTJEj7++GN69+6twi4SBeXLlyczM5PZs2cze/Zs33EkAlTcxbucnBwqV65M165dfUcRSRodOnSgZs2aakmboFTcxavCwkJef/11nnvuOWrWrOk7jkjSqFKlCt27d+edd95h9erVvuNIGVNxF68GDRqEc06tZkU86NWrF2lpaWpJm4BU3MWbvXv3MnLkSP7whz/QqFEj33FEks7FF1/MM888w7hx49ixY4fvOFKGVNzFmxEjRrB//341rRHxKCsri++//54hQzQBZyJRcRcvjh49yqBBg7j33nu58cYbfccRSVotW7akVatWDB06lIMHD/qOI2VExV28eO2119iyZQuBgGb1FfEtGAyye/duxo0b5zuKlBE1sZGoc85x3XXXYWYsWbIEs1PNHyQi0eKc4/bbb2fHjh2sXr2alJQU35EkTGpiIzHjo48+YtmyZQQCARV2kRhwoiXtunXrmDp1qu84UgY0cpeou+eee1i9ejXr1q0jLS3NdxwRAYqKirjiiiuoWbMmc+fO1QfvOKGRu8SEhQsXMmPGDPr27avCLhJDUlJSyMzMZP78+Xz++ee+48gFUnGXqMrJyaFq1ap06tTJdxQROUn79u2pU6cOOTk5vqPIBVJxl6jZsGEDb7zxBl26dKF69eq+44jISSpWrEjPnj157733+Oabb3zHkQug4i5RM2DAAMyMPn36+I4iIqfRo0cPKlasSL9+/XxHkQug4i5RsXv3bkaNGsVTTz3FpZde6juOiJxGnTp16NChAxMnTmTr1q2+48h5UnGXqBg+fDiHDh0iKyvLdxQROYuMjAyOHTvG4MGDfUeR86TiLhF35MgRXnzxRe677z6uu+4633FE5CyaNWvGo48+yksvvcT+/ft9x5HzoOIuETdx4kS2b9+uCWJE4kgwGOS7775j9OjRvqPIeVATG4mo4uJirrrqKipVqsTChQvVGEMkjtx5550UFBSQn59Pamqq7zhyCmpiI1689957rFq1imAwqMIuEmeCwSAbN27kjTfe8B1FzpFG7hJRd9xxBxs3btQnf5E4VFxczNVX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\n", | |
"text/plain": [ | |
"<Figure size 576x432 with 1 Axes>" | |
] | |
}, | |
"metadata": { | |
"needs_background": "light" | |
}, | |
"output_type": "display_data" | |
} | |
], | |
"source": [ | |
"# Remember the unnormalized values\n", | |
"unnormalized_prior = prior\n", | |
"\n", | |
"# Use the trapezoid rule to compute the integral of the unnormalized prior\n", | |
"area = sp.integrate.trapz(unnormalized_prior, mu)\n", | |
"print('Area under the unnormalized prior curve:', area)\n", | |
"\n", | |
"# Normalize the prior\n", | |
"prior = unnormalized_prior / area\n", | |
"\n", | |
"plt.figure(figsize=(8, 6))\n", | |
"plt.plot(mu, prior, color='black')\n", | |
"plt.xlabel('μ')\n", | |
"plt.ylabel('prior probability density')\n", | |
"plt.show()" | |
] | |
}, | |
{ | |
"cell_type": "markdown", | |
"metadata": {}, | |
"source": [ | |
"## Likelihood function\n", | |
"\n", | |
"For the likelihood, we need something with positive support. Let's pick a truncated normal distribution. It's truncated on the left since we can't have tree heights less than 0.\n", | |
"\n", | |
"In SciPy, the truncated normal distribution is available using the `truncnorm()` function.\n", | |
"\n", | |
"For this example, we'll assume the standard deviation of the truncated normal is known and equals 2 meters. (In practice, we'll usually not know this standard deviation and we'll want to infer both $\\mu$ and $\\sigma$ from data. You will see this in a future lesson.)\n", | |
"\n", | |
"Let's say we measure 1 tree and its height is 20 meters. What does this tell us about $\\mu$? Qualitatively, we can see that this tree is much taller than the 10 m lower limit of the prior range.\n", | |
"\n", | |
"What is the likelihood function for this datum? Remember that the likelihood is a function of the variable $\\mu.$ Let's plot it." | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": 4, | |
"metadata": {}, | |
"outputs": [ | |
{ | |
"data": { | |
"image/png": "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vp1Zs2bx61//+sz0nv369fM7lvQwl112GWVlZUyaNIlvfvOb/OAHP+DkyZN+xxJJOir3JFdfX89DDz3ElClT2LVrF6+++iqPPPIIvXr18jua9FCjRo3i3Xff5d577+Xxxx8/M24jKHfDFOkJVO5JqrGxkccff5zx48fzz//8z9x6661UVVVx8803+x1NAiAjI4PHHnuMd955h7S0NG688Ua+9rWvsXbtWr+jiSQFlXuS2bVrF3//939PVlYWd999N7m5uaxZs4bnn3+eSy65xO94EjCzZ8+mvLycX//612zdupVZs2Yxc+ZMfv/739PQ0OB3PJHA0sQxAdfc3ExZWRkrVqxg2bJllJaWYmaUlJRwzz33MHfuXF2/LnFx8uRJnnnmGR599FH27NnDwIEDuemmmygpKWH+/PkMHjzY74giPc65Jo7xtNzN7Hrgl0Aq8JRz7v+Nej0DWAxMAz4DbnXOfRh+7UHgdqAFuMc5t/x8n6VyD821vnv3bsrLyykvL6esrIzVq1dz7NgxIDTYaeHChSxatIisrCyf00qyam1tZfXq1SxevJilS5dy5MgRACZNmsRVV13FVVddRVFRETk5OZpWWKQDcS93M0sFaoBrgFpgPbDIObe9zTr/FzDZOfc3ZrYQ+IZz7lYzmwT8AZgOjAD+D5DrnGs51+cFqdxbW1s5deoUp06doqmpifr6ej7//POzvj799FNqa2vPfH344Yc0NjaeeZ8JEyYwf/58rr76aubNm0dmZqaP/1UiZ2tubmbdunWsWbOGdevWsW7dOj7//PMzr1966aXk5OQwevRoLr30UoYNG8all17KkCFD6NevH/379z/z1a9fP/r06UNKis42SvI4V7mnefiZ04Gdzrnd4QAvACVA27tblAD/GH78MvCvFjpGXAK84JxrAvaY2c7w+73nYd4zamtrWbBgAc65uHw1NzfT1NREU1MTp06d4vTp053KmZKSwvDhwxk1ahQFBQV8/etfp7CwkMLCQvLz83UpmyS8tLQ05syZw5w5c4DQL7bV1dVs376dHTt2UFNTw44dO1i7di2ffPJJp87Tp6Sk0KtXL9LT0+nVq9eZr/T0dFJTUzGzmH2JXKjFixeTk5Pj+ed4We4jgf1tntcCM861jnOu2cyOAheHl5dGfe/I6A8wszuAOwBGjx4ds+CpqakMHDgwpv8InO8r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\n", | |
"text/plain": [ | |
"<Figure size 576x432 with 1 Axes>" | |
] | |
}, | |
"metadata": { | |
"needs_background": "light" | |
}, | |
"output_type": "display_data" | |
} | |
], | |
"source": [ | |
"# We measured a tree of height 20 m\n", | |
"datum = 20\n", | |
"\n", | |
"# Parameters of the truncated normal pdf\n", | |
"sigma = 4\n", | |
"lower_limit = 0\n", | |
"upper_limit = np.inf\n", | |
"likelihood = sts.truncnorm.pdf(\n", | |
" datum,\n", | |
" (lower_limit-mu)/sigma, # See the SciPy documentation. The lower and upper\n", | |
" (upper_limit-mu)/sigma, # limits are defined in terms of the standard normal.\n", | |
" loc=mu,\n", | |
" scale=sigma)\n", | |
" \n", | |
"plt.figure(figsize=(8, 6))\n", | |
"plt.plot(mu, likelihood, color='black')\n", | |
"plt.xlabel('μ')\n", | |
"plt.ylabel('likelihood')\n", | |
"plt.show()" | |
] | |
}, | |
{ | |
"cell_type": "markdown", | |
"metadata": {}, | |
"source": [ | |
"Note that the likelihood function favors our measured value of 20 m but allows some uncertainty around it.\n", | |
"\n", | |
"We don't normalize the likelihood function since it is not a probability distribution over $\\mu.$\n", | |
"\n", | |
"## Posterior\n", | |
"\n", | |
"Compute the posterior as the normalized product of the likelihood and the prior." | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": 5, | |
"metadata": {}, | |
"outputs": [ | |
{ | |
"name": "stdout", | |
"output_type": "stream", | |
"text": [ | |
"Normalization constant of posterior: 0.02497933098148362\n" | |
] | |
}, | |
{ | |
"data": { | |
"image/png": "iVBORw0KGgoAAAANSUhEUgAAAfcAAAFzCAYAAAAjVEDpAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADh0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uMy4xLjAsIGh0dHA6Ly9tYXRwbG90bGliLm9yZy+17YcXAAAgAElEQVR4nOzdeVzVZd7/8dfFJiLuqeWSgHJEMFzbTMsy02ZKs7S0fWxua6aaaaymuivrNn9TU1PNXZZ3+15mVmaZOmZWlmZhJq7IQUVJTcUUFUGW6/cHHCJkOSyH7zmc9/Px4CHnnO/yzooP1/W9FmOtRURERJqOEKcDiIiISMNScRcREWliVNxFRESaGBV3ERGRJkbFXUREpIlRcRcREWliwpwO0FBOOOEEGxMT43QMERGRRrNq1ap91toOFd9vMsU9JiaGlJQUp2OIiIg0GmNMZmXvq1teRESkiVFxFxERaWJU3EVERJqYJvPMXURE/FdBQQFZWVnk5eU5HSUgRUZG0rVrV8LDw706XsVdRER8Lisri5YtWxITE4Mxxuk4AcVaS3Z2NllZWcTGxnp1jrrlRUTE5/Ly8mjfvr0Kex0YY2jfvn2tej1U3EVEpFGosNddbf/uVNxFRETKmTp1Kp999pnTMepFz9xFRERKFRUVMW3atFqfExoa6qNEdaOWu4iIBIVt27aRkJDAddddR3JyMuPGjSM3N5eYmBimTZvGkCFDeO+997j++uuZM2cOAEuWLKF///6ccsopTJo0ifz8fIDjzvE3Ku4iItLohg0bxquvvgqUTJMbNmwYb775JgC5ubkMGzaMd999F4CDBw8ybNgwPvjgAwD27dvHsGHD+PjjjwHYvXu31/dNS0tj8uTJpKam0qpVK5599lmgZKrZ119/zYQJE8qOzcvL4/rrr+fdd99l7dq1FBYWMnPmzLLPKzvHX6i4i/jAmjVrSE1NJTc31+koIlJOt27dOOusswC4+uqr+frrrwG44oorjjs2LS2N2NhYXC4XANdddx1fffVV2eeVneMv9MxdpAEdO3aMO+64g6effhqAkJAQpk2bxr333utwMhH/8sUXX5R9Hx4e/pvXUVFRv3ndunXr37w+4YQTfvP6xBNP9Pq+FUede163aNHiuGOttdVeq7Jz/IVa7iINJC8vj+HDh/P000/z17/+lVmzZjF27Fjuu+8+nnjiCafjiQiwfft2VqxYAcA777zDkCFDqjw2ISGBbdu24Xa7AXjjjTc455xzGiVnfam4izSQxx57jK+//prXX3+df//731xxxRW8++67jBs3jttvv90vB92IBJvevXvz2muvkZyczP79+/nTn/5U5bGRkZG88sorjB8/nlNOOYWQkBBuuummRkxbd6ambodAMWjQIKv93MUpmZmZJCQkcPHFFzN79uzffHbs2DHOOOMMDhw4QFpamtdrQ4s0JRs3bqR3796OZti2bRsXXXQR69atczRHXVX2d2iMWWWtHVTxWLXcRRrA7bffjjGGf/3rX8d9FhERwfTp09m6dSuvvPKKA+lEJNiouIvU048//sj777/PPffcw8knn1zpMRdeeCFnnHEGDz30kHbFEnFITExMwLbaa0vFXaSeXnzxRZo1a8Ytt9xS5THGGB566CGysrJ4+eWXGzGdiAQjFXeRejh69ChvvfUWl112GW3btq322OHDh9O/f391zYuIz6m4i9TDBx98wIEDB7jhhhtqPNYYw9VXX01KSgppaWmNkE5EgpWKu0g9vPTSS8TFxTFs2DCvjp8wYQLGGN566y3fBhORoKbiLlJHmZmZLF26lEmTJhES4t3/Sp07d2b48OG89dZbNa5+JSL+Z+7cuWzYsKHW582bN49HHnnEB4kqp+IuUkeffPIJAJdffnmtzrvqqqvYsmUL3377rS9iiYgP1aW4FxYWMnr0aO6+++5anVMfKu4idTR//nx69uxJfHx8rc679NJLiYyMLNvxSkQaR1Vbvla1revdd99NYmIiycnJ3HHHHSxfvpx58+Zx55130q9fPzIyMsjIyGDUqFEMHDiQoUOHsmnTJgCuv/56pkyZwrnnnstdd93Fq6++WjajJjMzk+HDh5OcnMzw4cPZvn17pefUhzaOEamD3Nxcli5dyo033ljrc1u1asWwYcNYuHChD5KJ+L/bbruNH3/8sUGv2a9fP/7973/XeFxaWhovvfQSZ511FpMmTeKJJ57gueeeY8mSJbhcLq699lpmzpzJtddey4cffsimTZswxnDgwAHatGnD6NGjueiiixg3bhxQMgvm//7v/4iPj2flypX8+c9/5vPPPwdg8+bNfPbZZ4SGhpZtbwtwyy23cO2113Ldddfx8ssv85e//IW5c+ced059qOUu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fpo9e/YQEhLC2LFjffY8PDo6mh49egRdyx3g97//PSEhIezdu5d//etflOwwLdL0qLhLQFu3bh0Q+MV969at3HXXXWXrxftacnJyUBZ3j9dee42pU6eyefNmp6OI+ISKuwS09evX06VLF9q0aeN0lHqJi4sjJSWFe++9t1Hu17dvX9LT0zl8+HCj3M/f3H777axevbpJTp8UARV3CXCBPlL+ySef5KOPPgJK9lsPCWmc/yX79++PtTZoW+/GmLLCPm/ePKZPn+5wIpGGpeIuAauoqIiNGzcGbHE/duwY7777Lu+9916j33vAgAEA/PDDD41+b38zf/58Pv74Y/Ly8pyOItJgNFpeAtaWLVvIy8sLyOft1loiIiJYvHhx2X7kjalz58507NhRxR149tlnOXr0KJGRkUGxsI8EB7XcJWB5BtMFWsv9pZde4uqrr6awsJCWLVs6sge9MYb+/fuzevXqRr+3vwkNDSU6OprCwkKuvvpqnnrqKacjidSbirsELM80uN69ezucpHays7PZv3+/4yulDRgwgHXr1pGfn+9oDn9hrSUvL4+jR486HUWk3tQtLwFr7dq1xMbGEh0d7XQUr+Tl5REZGcnf//53br/99npt3doQBgwYQGFhIevWrWPgwIGOZvEH4eHhvPfee2WDGo8cOUKLFi0cTiVSN2q5S8Bas2ZN2VKq/m7u3Ln06tULt9sN4HhhBw2qq4ynsG/dupWEhAQtVSsBS8VdAlJubi7p6ekkJyc7HcUrPXv2ZODAgZx44olORykTGxtL69atVdwrceKJJzJ06NCA+e9LpCIVdwlI69evp7i42O9b7jt27ABKBv198MEHfvUIQYPqqta8eXPefvvtssGaW7dudTiRSO2ouEtAWrNmDYBfF/eUlBRcLhdvvfWW01GqNGDAANasWUNhYaHTUfzW7Nmz6dWrF998843TUUS8puIuAWnNmjVER0cTGxvrdJQqJScn89e//tWvdyEbNGgQeXl5ZTMP5HijRo3irrvu4tRTT3U6iojXVNwlIK1Zs4bk5ORGW661Nn744QcOHz5MREQEjzzyCO3atXM6UpVOO+00AL777juHk/ivVq1a8dBDDxEREcGRI0f49ttvnY4kUiP/+8koUgPPmuj+2CV/4MABhg8fzq233up0FK/ExcXRrl07FXcvTZkyhREjRrBv3z6no4hU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\n", | |
"text/plain": [ | |
"<Figure size 576x432 with 1 Axes>" | |
] | |
}, | |
"metadata": { | |
"needs_background": "light" | |
}, | |
"output_type": "display_data" | |
} | |
], | |
"source": [ | |
"unnormalized_posterior = prior * likelihood\n", | |
"\n", | |
"area = sp.integrate.trapz(unnormalized_posterior, mu)\n", | |
"print('Normalization constant of posterior:', area)\n", | |
"\n", | |
"posterior = unnormalized_posterior / area\n", | |
"\n", | |
"plt.figure(figsize=(8, 6))\n", | |
"plt.plot(mu, prior, color='black', linestyle=':', label='prior')\n", | |
"plt.plot(mu, posterior, color='black', label='posterior')\n", | |
"plt.xlabel('μ')\n", | |
"plt.ylabel('probability density')\n", | |
"plt.legend()\n", | |
"plt.show()" | |
] | |
}, | |
{ | |
"cell_type": "markdown", | |
"metadata": {}, | |
"source": [ | |
"The posterior is clearly very different from the prior, so even this one measurement has had a large impact on our belief about the average height of oak trees.\n", | |
"\n", | |
"It's actually a bit difficult to see that the posterior is different from the likelihood. Let's add the likelihood to the plot." | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": 6, | |
"metadata": {}, | |
"outputs": [ | |
{ | |
"data": { | |
"image/png": "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\n", | |
"text/plain": [ | |
"<Figure size 576x432 with 1 Axes>" | |
] | |
}, | |
"metadata": { | |
"needs_background": "light" | |
}, | |
"output_type": "display_data" | |
} | |
], | |
"source": [ | |
"plt.figure(figsize=(8, 6))\n", | |
"plt.plot(mu, likelihood, color='red', label='likelihood')\n", | |
"plt.plot(mu, prior, color='black', linestyle=':', label='prior')\n", | |
"plt.plot(mu, posterior, color='black', label='posterior')\n", | |
"plt.xlabel('μ')\n", | |
"plt.ylabel('probability density')\n", | |
"plt.legend()\n", | |
"plt.show()" | |
] | |
}, | |
{ | |
"cell_type": "markdown", | |
"metadata": {}, | |
"source": [ | |
"Here, we can see the posterior is between the prior and the likelihood but definitely closer to the likelihood.\n", | |
"\n", | |
"## Tasks\n", | |
"\n", | |
"Now, repeat the process above but after having measured 5 trees.\n", | |
"\n", | |
"**Hint:** The posterior is the product of the prior (once) and the likelihood function of _each_ of the 5 data. This means you need to multiply 6 arrays to get the posterior.\n", | |
"\n", | |
"The measured tree heights are (20, 27, 23.5, 28.2, 21).\n", | |
"\n", | |
"Plot the prior, the likelihood, and the posterior. Remember that all 3 of these functions are all defined over the parameter of interest, namely $\\mu,$ the average tree height." | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": 1, | |
"metadata": {}, | |
"outputs": [], | |
"source": [ | |
"data = [20, 27, 23.5, 28.2, 21]" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": 2, | |
"metadata": {}, | |
"outputs": [ | |
{ | |
"data": { | |
"image/png": "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\n", | |
"text/plain": [ | |
"<Figure size 576x432 with 1 Axes>" | |
] | |
}, | |
"metadata": { | |
"needs_background": "light" | |
}, | |
"output_type": "display_data" | |
} | |
], | |
"source": [ | |
"# NEW PRIOR #\n", | |
"\n", | |
"import numpy as np\n", | |
"import scipy as sp\n", | |
"import scipy.stats as sts\n", | |
"import matplotlib.pyplot as plt\n", | |
"\n", | |
"%matplotlib inline\n", | |
"\n", | |
"# mu is the average height, which we don't know and want to infer from data.\n", | |
"# We create an array of possible values between 0 and 60.\n", | |
"mu2 = np.linspace(0, 60, 201)\n", | |
"\n", | |
"# The prior is greater than 0 in the range (0, 50) based on our guess.\n", | |
"prior2 = np.where(\n", | |
" mu2 > 10,\n", | |
" np.where(\n", | |
" mu2 < 30, mu2 - 10,\n", | |
" np.where(\n", | |
" mu2 < 50, 50 - mu2, 0)),\n", | |
" 0)\n", | |
"\n", | |
"plt.figure(figsize=(8, 6))\n", | |
"plt.plot(mu2, prior2, color='black')\n", | |
"plt.xlabel('μ')\n", | |
"plt.ylabel('prior probability density')\n", | |
"plt.show()" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": 12, | |
"metadata": {}, | |
"outputs": [ | |
{ | |
"data": { | |
"image/png": "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tGvXjosvvth3HJGYVaNGDTp37szkyZMpKNDcXslKxV3iwpAhQzh69ChZWVm+o4jEvL59+2JmDBw40HcU8UTFXWLewYMHGTZsGI888ggtWrTwHUck5jVs2JAnnniCl19+mT179viOIx6ouEvMGzt2LLt379YEMSLnIBgMcvDgQUaMGOE7inigJjYS044fP06LFi245JJLmD17tu84InHlN7/5DXl5eWzYsIEKFSr4jiMRoCY2EpemTp3K+vXrNUGMyHkIBoNs27aNV1991XcUiTKN3CVmOee47bbb2Lt3LytWrCAlJcV3JJG44pzjxhtv5OjRoyxbtoxy5TSeSzQauUvc+eyzz1iwYAFZWVkq7CLn4URL2hUrVvDBBx/4jiNRpJG7xKyHHnqIefPmUVBQQMWKFX3HEYlLx44d4/LLL6dp06bMnDnTdxwpYxq5S1z55ptveP/99+nZs6cKu8gFSE1NpW/fvnz22WfMnz/fdxyJEhV3iUk5OTlUrFiR7t27+44iEvc6depE9erVNaFMEolocTez+81slZnlm9nzp7i/gplNDt0/18wah9bXNrMZZnbAzIZEMqPEni1btjBx4kSeffZZ6tSp4zuOSNyrWrUqXbt25a233mLdunW+40gURKy4m1kKMBR4ALgKaGNmV520WUdgj3OuGTAAeCG0/gjwb4C6liShwYMHU1RUREZGhu8oIgmjd+/epKSk0L9/f99RJAoiOXK/Dch3zq1zzh0FXgceOWmbR4Dxod/fBO41M3POHXTOfUlJkZcksn//fl566SUeffRRLr/8ct9xRBJG/fr1efrppxkzZgzffvut7zgSYZEs7g2AwlLLm0LrTrmNc+44sBeoHcFMEuNGjRrF3r171bRGJAICgQCHDx9m2LBhvqNIhEWyuNsp1p183V0425z+Bcw6m9kCM1uwc+fOcwonsefYsWMMGDCAO++8k9tuu813HJGEc/XVV/Pggw/y4osvcvjwYd9xJIIiWdw3AQ1LLV8KbDndNmZWHqgO7A73BZxzI51ztzjnbqlbt+4FxhXfpkyZQmFhoUbtIhEUCATYuXMnEyZM8B1FIiiSxX0+0NzMmphZGvAkkHvSNrlAu9DvjwPTXaJ01ZFz4pwjOzubK664ggcffNB3HJGE9ctf/pKbb76Zfv36UVRU5DuOREjEinvoGHpPYBqwApjinFtuZn8xs1ahzUYDtc0sH8gE/udyOTPbAPQH2pvZplOcaS8J5NNPP2XJkiUEAgH1vxaJIDMjGAyyZs0a3n33Xd9xJELUflZiwn333cfSpUs1NaVIFBw/fpzmzZtTv359Zs2a5TuOXAC1n5WYtWTJEj7++GN69+6twi4SBeXLlyczM5PZs2cze/Zs33EkAlTcxbucnBwqV65M165dfUcRSRodOnSgZs2aakmboFTcxavCwkJef/11nnvuOWrWrOk7jkjSqFKlCt27d+edd95h9erVvuNIGVNxF68GDRqEc06tZkU86NWrF2lpaWpJm4BU3MWbvXv3MnLkSP7whz/QqFEj33FEks7FF1/MM888w7hx49ixY4fvOFKGVNzFmxEjRrB//341rRHxKCsri++//54hQzQBZyJRcRcvjh49yqBBg7j33nu58cYbfccRSVotW7akVatWDB06lIMHD/qOI2VExV28eO2119iyZQuBgGb1FfEtGAyye/duxo0b5zuKlBE1sZGoc85x3XXXYWYsWbIEs1PNHyQi0eKc4/bbb2fHjh2sXr2alJQU35EkTGpiIzHjo48+YtmyZQQCARV2kRhwoiXtunXrmDp1qu84UgY0cpeou+eee1i9ejXr1q0jLS3NdxwRAYqKirjiiiuoWbMmc+fO1QfvOKGRu8SEhQsXMmPGDPr27avCLhJDUlJSyMzMZP78+Xz++ee+48gFUnGXqMrJyaFq1ap06tTJdxQROUn79u2pU6cOOTk5vqPIBVJxl6jZsGEDb7zxBl26dKF69eq+44jISSpWrEjPnj157733+Oabb3zHkQug4i5RM2DAAMyMPn36+I4iIqfRo0cPKlasSL9+/XxHkQug4i5RsXv3bkaNGsVTTz3FpZde6juOiJxGnTp16NChAxMnTmTr1q2+48h5UnGXqBg+fDiHDh0iKyvLdxQROYuMjAyOHTvG4MGDfUeR86TiLhF35MgRXnzxRe677z6uu+4633FE5CyaNWvGo48+yksvvcT+/ft9x5HzoOIuETdx4kS2b9+uCWJE4kgwGOS7775j9OjRvqPIeVATG4mo4uJirrrqKipVqsTChQvVGEMkjtx5550UFBSQn59Pamqq7zhyCmpiI1689957rFq1imAwqMIuEmeCwSAbN27kjTfe8B1FzpFG7hJRd9xxBxs3btQnf5E4VFxczNVXX016ejqLFi3SB/QYpJG7RN1XX33Fl19+SUZGhgq7SBwqV64cWVlZLF68mOnTp/uOI+dAxV0iJicnhxo1avDcc8/5jiIi56lt27ZcfPHFZGdn+44i50DFXSIiPz+fqVOn0q1bN6pUqeI7joicp/T0dHr37s20adNYunSp7zgSJhV3iYj+/fuTmppKr169fEcRkQvUtWtXKleurAll4oiKu5S5nTt3MnbsWNq2bUu9evV8xxGRC1SrVi06duzIa6+9xqZNm3zHkTCouEuZGzZsGEeOHCEQCPiOIiJlJCMjA+ccgwYN8h1FwqDiLmXq0KFDDBkyhIceeogrr7zSdxwRKSONGzemdevWjBgxgr179/qOI2eh4i5lavz48ezatUutZkUSUCAQYP/+/YwcOdJ3FDkLNbGRMlNUVETLli2pXbs2X331lRpeiCSge+65h9WrV7Nu3TrS0tJ8x0l6amIjEffOO++wdu1aAoGACrtIggoGg2zevJnXX3/ddxQ5A43cpUw457j99tvZsWMHq1evJiUlxXckEYkA5xzXXXcdZsaSJUv0Qd4zjdwlombNmsVXX31FZmamCrtIAjMzAoEAeXl5TJs2zXccOQ0VdykT2dnZ1K5dmw4dOviOIiIR1qZNG+rXr6+WtDFMxV0u2MqVK8nNzaV79+5UqlTJdxwRibC0tDT69OnD9OnTWbRoke84cgoq7nLB+vfvT3p6Oj179vQdRUSipEuXLlStWlUtaWOUirtckO3btzNhwgTatWvHRRdd5DuOiERJ9erV6dy5M1OmTKGgoMB3HDmJirtckBdffJGjR4+SlZXlO4qIRFmfPn0wMwYMGOA7ipxExV3O24EDBxg2bBi/+93vaN68ue84IhJlDRs2pE2bNowaNYo9e/b4jiOlqLjLeRszZgx79uzRBDEiSSwrK4uDBw8yfPhw31GkFDWxkfNy/PhxmjdvTv369Zk1a5bvOCLi0X333ceSJUsoKCigQoUKvuMkFTWxkTL11ltvsWHDBk0QIyIEg0G2b9/OxIkTfUeREI3c5Zw557j11lvZv38/K1asoFw5fUYUSWbOOW666SaOHDnC8uXL9f+EKNLIXcrMzJkzWbhwIVlZWXoTiwhmRjAYZOXKlbz//vu+4wgauct5ePDBB1mwYAEFBQVUrFjRdxwRiQHHjh3j8ssvp3Hjxnz++ee+4yQNjdylTCxbtowPP/yQXr16qbCLyP9ITU0lIyODL774grlz5/qOk/RU3OWc9OvXj0qVKtG9e3ffUUQkxjz33HNUr15dLWljgIq7hG3z5s28+uqrPPvss9SuXdt3HBGJMVWrVqVbt25MnTqVtWvX+o6T1FTcJWyDBw+mqKiIjIwM31FEJEb17t2blJQU+vfv7ztKUlNxl7Ds2bOHESNG8Nhjj9G0aVPfcUQkRtWrV4+2bdsyduxYtm3b5jtO0opocTez+81slZnlm9nzp7i/gplNDt0/18wal7rvT6H1q8zsvkjmlLPr2bMnBw8e5F/+5V98RxGRGPf8889TXFxMly5dSJQrsuJNxIq7maUAQ4EHgKuANmZ21UmbdQT2OOeaAQOAF0KPvQp4ErgauB8YFno+8eDNN99k0qRJ/Nu//RvXX3+97zgiEuNatGjBf//3f5Obm8v48eN9x0lKEbvO3cx+BvyHc+6+0PKfAJxz/7fUNtNC28wxs/LANqAu8HzpbUtvd7rXK8vr3Ddv3szjjz9eJs+VCJYvX07Lli2ZPXs2qampvuOISBwoKirinnvuYcGCBVx33XW+48SMCRMmlOksmqe7zr18mb3CjzUACkstbwJ+crptnHPHzWwvUDu0/quTHtvg5Bcws85AZ4DLLruszIKXK1eOatWqldnzxbtf//rX/L//9/9U2EUkbCkpKUyYMIFgMMjevXt9x4kZKSnR+RI6ksXdTrHu5K8JTrdNOI/FOTcSGAklI/dzDXg69erVY9q0aWX1dCIiSalRo0ZMmTLFd4ykFMkT6jYBDUstXwpsOd02oa/lqwO7w3ysiIiInEIki/t8oLmZNTGzNEpOkMs9aZtcoF3o98eB6a7kJIBc4MnQ2fRNgObAvAhmFRERSRgR+1o+dAy9JzANSAHGOOeWm9lfgAXOuVxgNPCKmeVTMmJ/MvTY5WY2BfgGOA70cM4VRSqriIhIItGscCIiInFKs8KJiIgkCRV3ERGRBKPiLiIikmBU3EVERBKMiruIiEiCUXEXERFJMCruIiIiCUbFXUREJMGouIuIiCSYhOlQZ2Y7gYIyfto6wK4yfs54pX3xQ9ofP6T98U/aFz+k/fFPkdgXjZxzdU9emTDFPRLMbMGp2volI+2LH9L++CHtj3/Svvgh7Y9/iua+0NfyIiIiCUbFXUREJMGouJ/ZSN8BYoj2xQ9pf/yQ9sc/aV/8kPbHP0VtX+iYu4iISILRyF1ERCTBqLifgpndb2arzCzfzJ73nSfazGyMme0ws2Wl1tUys0/MbE3oZ02fGaPFzBqa2QwzW2Fmy82sT2h9su6PdDObZ2ZLQvvjz6H1Tcxsbmh/TDazNN9Zo8XMUszsazN7L7SczPtig5nlmdliM1sQWpeU7xUAM6thZm+a2crQ/0N+Fq39oeJ+EjNLAYYCDwBXAW3M7Cq/qaJuHHD/SeueBz51zjUHPg0tJ4PjQJZz7krgp0CP0L+HZN0f3wP3OOeuB24A7jeznwIvAANC+2MP0NFjxmjrA6wotZzM+wLgbufcDaUu+UrW9wrAIOAj59wVwPWU/DuJyv5Qcf+x24B859w659xR4HXgEc+Zoso59zmw+6TVjwDjQ7+PB34X1VCeOOe2OucWhX7fT8mbswHJuz+cc+5AaDE1dHPAPcCbofVJsz/M7FLgt8Co0LKRpPviDJLyvWJm1YA7gdEAzrmjzrnviNL+UHH/sQZAYanlTaF1ye5i59xWKCl4wEWe80SdmTUGbgTmksT7I/Q19GJgB/AJsBb4zjl3PLRJMr1nBgL/CygOLdcmefcFlHzQ+9jMFppZ59C6ZH2vNAV2AmNDh21GmVllorQ/VNx/zE6xTpcUJDkzqwK8BfR1zu3znccn51yRc+4G4FJKvum68lSbRTdV9JnZQ8AO59zC0qtPsWnC74tSfu6cu4mSw5o9zOxO34E8Kg/cBAx3zt0IHCSKhyRU3H9sE9Cw1PKlwBZPWWLJdjOrBxD6ucNznqgxs1RKCvurzrmpodVJuz9OCH3FOJOScxFqmFn50F3J8p75OdDKzDZQcvjuHkpG8sm4LwBwzm0J/dwBvE3Jh79kfa9sAjY55+aGlt+kpNhHZX+ouP/YfKB56IzXNOBJINdzpliQC7QL/d4OeMdjlqgJHUMdDaxwzvUvdVey7o+6ZlYj9HtF4FeUnIcwA3g8tFlS7A/n3J+cc5c65xpT8v+J6c65p0nCfQFgZpXNrOqJ34HfAMtI0veKc24bUGhmLUOr7gW+IUr7Q01sTsHMHqTkE3gKMMY599+eI0WVmb0G/JKSGYy2A/8O/B2YAlwGbARaO+dOPuku4ZjZL4AvgDz+eVz1f1Ny3D0Z98d1lJwElELJ4GCKc+4vZtaUktFrLeBroK1z7nt/SaPLzH4JBJxzDyXrvgj93W+HFssDk5xz/21mtUnC9wqAmd1AycmWacA6oAOh9w0R3h8q7iIiIglGX8uLiIgkGBV3ERGRBKPiLiIikmBU3EVERBKMiruIiEiCUXEXERFJMCruIiIiCUbFXUTOi5k1NrNlpZYDZvYfHiOJSIiKu4iISIJRcRcREUkwKu4iciFKT3Ga6i2FiPyAiruIXIhGoZniygF3UjKhjIh4puIuIhfiW2ACsJCS6T2fMbPL/UYSEc0KJyLnxcwaA+85567xHEVETqKRu4iISILRyF1ERCTBaOQuIiKSYFTcRUREEoyKu4iISIJRcRcREUkwKu4iIiIJRsVdREQkwfz/J/I5uKGUs3UAAAAASUVORK5CYII=\n", | |
"text/plain": [ | |
"<Figure size 576x432 with 1 Axes>" | |
] | |
}, | |
"metadata": { | |
"needs_background": "light" | |
}, | |
"output_type": "display_data" | |
}, | |
{ | |
"name": "stdout", | |
"output_type": "stream", | |
"text": [ | |
"Area under the normalized prior curve: 1.0\n" | |
] | |
} | |
], | |
"source": [ | |
"### NEW STANDARDIZED PRIOR ###\n", | |
"\n", | |
"# Remember the Normalized values\n", | |
"unnormalized_prior2 = prior2\n", | |
"\n", | |
"# Use the trapezoid rule to compute the integral of the normalized prior\n", | |
"normalized_area = sp.integrate.trapz(prior2, mu2)\n", | |
"\n", | |
"# Normalize the prior\n", | |
"prior2 = unnormalized_prior2 / normalized_area\n", | |
"\n", | |
"normalized_area2 = sp.integrate.trapz(prior2, mu2)\n", | |
"\n", | |
"plt.figure(figsize=(8, 6))\n", | |
"plt.plot(mu2, prior2, color='black')\n", | |
"plt.xlabel('μ')\n", | |
"plt.ylabel('prior probability density')\n", | |
"plt.show()\n", | |
"print('Area under the normalized prior curve:', normalized_area2)" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": 4, | |
"metadata": {}, | |
"outputs": [ | |
{ | |
"data": { | |
"image/png": "iVBORw0KGgoAAAANSUhEUgAAAh0AAAFzCAYAAACadrtQAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADh0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uMy4xLjAsIGh0dHA6Ly9tYXRwbG90bGliLm9yZy+17YcXAAAgAElEQVR4nO3de5RV5Znv++9DXZBrFVUUglwCBNBgDKAcYvpiG91RtE0go80+2Glb93C36T5qkpFknGhOx9OxY3ezE0M6J+rZGk2Me8fS7U5a3KFbE8Vk54ztpRQ0gkFKkFDcCuqCIFBYxXP+WO/CVYt1q2LNNWut9fuMUYO13jnn877OkYJf3ndezN0RERERidqouAcgIiIi1UGhQ0REREpCoUNERERKQqFDRERESkKhQ0REREpCoUNERERKojbuAVS6yZMn++zZs+MehoiISEm8/PLLB9y9JdM2hY6IzZ49m7a2triHISIiUhJmtiPbNi2viIiISElEGjrMbLmZbTGzdjO7NcP20Wb2aNj+gpnNTtl2W2jfYmaX56tpZnNCja2hZn2uPszsE2b2spn9Nvx5SUqtC0J7u5l9z8wstDeZ2S9CH78ws0nFP2siIiKVKbLQYWY1wN3AFcBC4BozW5i22w1Aj7vPA9YAq8OxC4FVwLnAcuAeM6vJU3M1sMbd5wM9oXbWPoADwCfd/TzgOuDhlHHdC9wIzA8/y0P7rcAzoY9nwncREREpQJQzHcuAdnff5u7HgVZgRdo+K4CHwufHgUvDrMIKoNXd+9x9O9Ae6mWsGY65JNQg1FyZqw933+Duu0P7JuCMMCsyDZjo7v/LEy+m+XGWWql9iIiISB5Rho7pwM6U7x2hLeM+7t4PHASacxybrb0Z6A010vvK1keqPwM2uHtf2L8jy7jPdPc9odYeYErW/3oREREZJMq7VyxDW/orbbPtk609U0jKtX/ecZjZuSSWXC4rZP9CmNmNJJZnmDVr1lAOFRERqVhRznR0ADNTvs8Admfbx8xqgQagO8ex2doPAI2hRnpf2frAzGYAPwP+0t3fStl/RpZx7wvLL4Q/OzP9h7v7fe6+1N2XtrRkvFVZRESk6kQZOl4C5oe7SupJXBi6Nm2ftSQu4gS4Gng2XEexFlgVrrGYQ+Jizhez1QzHrA81CDWfyNWHmTUCPwduc/f/LzmgsGxyyMwuDNeK/GWWWql9iIiISB6RhY5w/cTNwFPAG8Bj7r7JzO4ws0+F3R4Ams2sHfgS4W4Qd98EPAZsBv4NuMndB7LVDLW+Cnwp1GoOtbP2EerMA75uZhvDT/Iajb8BfkDiAta3gH8N7f8EfMLMtgKfCN9FRESkAJaYJJCoLF261PVEUhERqRZm9rK7L820TU8kFRERkZJQ6BCRIXvrrbcYGBiIexgiUmYUOkRkSP7lX/6FefPm8Y//+I9xD0VEyoxCh4gU7PXXX+faa68F4Mc//jG6JkxEhkKhQ0QKcvz4cVauXMmECRP4xje+wdatW3n55ZfjHpaIlBGFDhEpyMaNG3nrrbe46667uOWWW6irq+ORRx6Je1giUkYUOkSkIBs2bADgwgsvZNKkSVx55ZW0trbqglIRKZhCh4gUZMOGDTQ2NjJ79mwA/vzP/5zdu3fzq1/9Kt6BiUjZUOgQkYJs2LCBxYsXk3g7AFx11VXU1NTwzDPPxDwyESkXCh0ikld/fz+vvfYa559//sm2sWPHMnfuXN58880YRyYi5UShQ0Ty2rJlC8eOHWPJkiWD2s8++2yFDhEpmEKHiOSVvIg0PXQsWLCArVu3cuLEiTiGJSJlRqFDRPJ65ZVXOOOMMzj77LMHtS9YsICjR4/S0dER08hEpJwodIhIXhs2bGDRokXU1tYOal+wYAGAllhEpCAKHSKSk7uzcePGU5ZWgJMzHwodIlIIhQ4Ryamjo4Pe3l4WLVp0yrZp06Yxbtw4hQ4RKYhCh4jktGPHDgDmzp17yjYzY8GCBWzZsqXUwxKRMqTQISI57dy5E4CZM2dm3K7bZkWkUAodIpLT73//eyB76FiwYAFvv/02fX19pRyWiJQhhQ4RyWnnzp00NjYyfvz4jNsXLFjAiRMn2LZtW4lHJiLlRqFDRHLauXMns2bNyro9edusrusQkXwUOkQkp507d2ZdWgE9q0NECqfQISI5/f73v88ZOhoaGmhoaDh5wamISDYKHSKS1ZEjR+jq6soZOgDOOuss9uzZU6JRiUi5UugQkayS71TJdU0HJELH7t27SzEkESljCh0iklW+22WTpk2bppkOEclLoUNEssr3YLCk5EyHu5diWCJSphQ6RCSrZOiYPn16zv3OOussjh8/Tnd3dymGJSJlSqFDRLLauXMnU6dOZfTo0Tn3mzZtGoCWWEQkp0hDh5ktN7MtZtZuZrdm2D7azB4N218ws9kp224L7VvM7PJ8Nc1sTqixNdSsz9WHmTWb2XozO2xm30+pM8HMNqb8HDCz74Zt15vZ/pRt/7H4Z01k5Mh3u2zSWWedBaCLSUUkp8hCh5nVAHcDVwALgWvMbGHabjcAPe4+D1gDrA7HLgRWAecCy4F7zKwmT83VwBp3nw/0hNpZ+wCOAV8HvpI6IHc/5O6Lkz/ADuCnKbs8mrL9B8M9PyLlIN+DwZIUOkSkEFHOdCwD2t19m7sfB1qBFWn7rAAeCp8fBy41Mwvtre7e5+7bgfZQL2PNcMwloQah5spcfbj7u+7+GxLhIyMzmw9MAf7n8E6BSPly94JDh5ZXRKQQUYaO6UDqIwo7QlvGfdy9HzgINOc4Nlt7M9AbaqT3la2PQlxDYmYj9ZL8PzOz18zscTPL/7exSJnq7e3l8OHDBYWOMWPG0NjYqJkOEckpytBhGdrS76fLtk+x2gsdRzargEdSvj8JzHb3jwC/5P0ZlEHM7EYzazOztv379xfYlcjIkgwQM2bMKGh/PatDRPKJMnR0AKn/F2kGkP5/g07uY2a1QAPQnePYbO0HgMZQI72vbH3kZGaLgFp3fznZ5u5d7t4Xvt4PXJDpWHe/z92XuvvSlpaWfF2JjEidnZ0AnHnmmQXtr6eSikg+UYaOl4D54a6SehKzBmvT9lkLXBc+Xw08G5Yy1gKrwp0nc4D5wIvZaoZj1ocahJpP5Okjn2sYPMuBmU1L+fop4I0C6oiUpWTomDJlSkH7K3SISD61+XcZHnfvN7ObgaeAGuBBd99kZncAbe6+FngAeNjM2knMPqwKx24ys8eAzUA/cJO7DwBkqhm6/CrQambfBDaE2mTrI9R6G5gI1JvZSuAyd98cNv974Mq0/6zPm9mnwpi6getP8zSJjFhDDR3J5RV3J3Ftt4jIYJGFDgB3XwesS2u7PeXzMeAzWY69E7izkJqhfRuJu1vS23P1MTvH2OdmaLsNuC3bMSKVZN++fYwaNYqmpqaC9k99Kmlzc6HXaotINdETSUUko87OTlpaWhg1qrC/JvSsDhHJR6FDRDLq7OwseGkF9KwOEclPoUNEMhpq6NBMh4jko9AhIhlppkNEik2hQ0QyGmroGDNmDBMnTmTv3r0RjkpEyplCh4ic4ujRoxw6dGhIoQOgpaWFAwcORDQqESl3Ch0icork4/uHGjomT56MHv0vItkodIjIKYb6CPQkzXSISC4KHSJyiqE+jTRp8uTJCh0ikpVCh4icYriho6Wlhf3791PY641EpNoodIjIKU5npuPYsWMcOXIkimGJSJlT6BCRU3R2djJ27FjGjRs3pONaWloAdDGpiGSk0CEipxjqMzqSJk+eDKDrOkQkI4UOETnF6YYOzXSISCYKHSJyiuGGjuTyimY6RCQThQ4ROcW+ffs00yEiRafQISKDuPuwZzoaGhqora3VTIeIZKTQISKD9Pb20t/fP6zQYWZ6FLqIZKXQISKDJJ/Rkbw+Y6j0KHQRyUahQ0QGSQaG4YYOzXSISDYKHSIySFdXFwDNzc3DOl4zHSKSjUKHiAzS3d0NQFNT07CO10yHiGSj0CEig5zuTMfkyZPp6emhv7+/mMMSkQqg0CEig3R1dVFbW8vEiROHdXxLSwvufnLGREQkSaFDRAbp6uqiqakJMxvW8Xr/iohko9AhIoN0dXUNe2kF9KZZEclOoUNEBunu7j6t0KGZDhHJRqFDRAZJLq8Ml176JiLZKHSIyCCnu7ySPFbLKyKSLtLQYWbLzWyLmbWb2a0Zto82s0fD9hfMbHbKtttC+xYzuzxfTTObE2psDTXrc/VhZs1mtt7MDpvZ99PG9VzoY2P4mZJvvCKV4nRDx+jRo5kwYYJCh4icIrLQYWY1wN3AFcBC4BozW5i22w1Aj7vPA9YAq8OxC4FVwLnAcuAeM6vJU3M1sMbd5wM9oXbWPoBjwNeBr2T5T/isuy8OP515aolUhCNHjnDs2LHTCh2QeLBYT09PkUYlIpUiypmOZUC7u29z9+NAK7AibZ8VwEPh8+PApZa4T28F0Orufe6+HWgP9TLWDMdcEmoQaq7M1Ye7v+vuvyERPgqVbbwiFeF0HwyWpNAhIplEGTqmAztTvneEtoz7uHs/cBBoznFstvZmoDfUSO8rWx/5/DAsrXw9JVgMt5ZIWTjdR6AnNTU16eFgInKKKENHphkAL3CfYrUXOo50n3X384A/Dj/XDqWWmd1oZm1m1qZ1bSknxZzpUOgQkXRRho4OYGbK9xnA7mz7mFkt0AB05zg2W/sBoDHUSO8rWx9Zufuu8Och4CcklnUKruXu97n7UndfOtzXg4vEoVihY9KkSQodInKKKEPHS8D8cFdJPYkLQ9em7bMWuC58vhp41t09tK8Kd4vMAeYDL2arGY5ZH2oQaj6Rp4+MzKzWzCaHz3XAVcDrw6klUm6KfU2Hfj1EJFVt/l2Gx937zexm4CmgBnjQ3TeZ2R1Am7uvBR4AHjazdhIzBqvCsZvM7DFgM9AP3OTuAwCZaoYuvwq0mtk3gQ2hNtn6CLXeBiYC9Wa2ErgM2AE8FQJHDfBL4P58tUQqQTFDx3vvvce7777L+PHjizE0EakAkYUOAHdfB6xLa7s95fMx4DNZjr0TuLOQmqF9G+8vg6S25+pjdpahX5Bl/6y1RCpBd3c348aNY/To0adVZ9KkSSfrKXSISJKeSCoiJ53uI9CTkjV026yIpFLoEJGTTvdppEnJ0KGLSUUklUKHiJxUrNCRurwiIpKk0CEiJxV7pkPLKyKSSqFDRE7q7u7W8oqIREahQ0QAOHHiBN3d3UW5kHTs2LHU19crdIjIIAodIgLAwYMHOXHiRFFmOsxMTyUVkVModIgIULwHgyXpTbMikk6hQ0SA4r1hNkkvfRORdAodIgK8HzqKNdOh5RURSafQISLA+7e3Jp+xcbq0vCIi6RQ6RATQ8oqIRE+hQ0SA4s90TJo0iUOHDvHee+8VpZ6IlD+FDhEB3n8jbF1dXVHqJWdMent7i1JPRMqfQoeIAImZjmLNcoCeSioip1LoEBGAoj2NNEmhQ0TSKXSICFD8mY5kLd3BIiJJCh0iAmimQ0Sip9AhIoCu6RCR6Cl0iAhQ/JmOxsbGk3VFREChQ0SAo0ePcuzYsaLOdNTU1NDQ0KBrOkTkJIUOETkZDIo505Gsp5kOEUlS6BCRoj+NNEkvfRORVAodIlL0964k6aVvIpJKoUNEIpvp0PKKiKRS6BCRSGc6FDpEJEmhQ0Qivaajp6cHdy9qXREpTwodIkJ3dzejRo1i4sSJRa3b1NREf38/hw8fLmpdESlPCh0iQk9PD42NjYwaVdy/EvRUUhFJFWnoMLPlZrbFzNrN7NYM20eb2aNh+wtmNjtl222hfYuZXZ6vppnNCTW2hpr1ufows2YzW29mh83s+yl1xprZz83sd2a2ycz+KWXb9Wa238w2hp//WNwzJhKPYj+NNCm5XKPQISIQYegwsxrgbuAKYCFwjZktTNvtBqDH3ecBa4DV4diFwCrgXGA5cI+Z1eSpuRpY4+7zgZ5QO2sfwDHg68BXMgz/2+5+DrAE+EMzuyJl26Puvjj8/GDIJ0ZkBCr2e1eSkkFGt82KCEQ707EMaHf3be5+HGgFVqTtswJ4KHx+HLjUzCy0t7p7n7tvB9pDvYw1wzGXhBqEmitz9eHu77r7b0iEj5Pc/Yi7rw+fjwOvADNO92SIjGRRzXRoeUVEUkUZOqYDO1O+d4S2jPu4ez9wEGjOcWy29magN9RI7ytbH3mZWSPwSeCZlOY/M7PXzOxxM5tZSB2RkS6qmQ4tr4hIqihDh2VoS79vLts+xWovdBynMLNa4BHge+6+LTQ/Ccx2948Av+T9GZT0Y280szYza9u/f3++rkRiF/VMh5ZXRASiDR0dQOpMwAxgd7Z9wj/yDUB3jmOztR8AGkON9L6y9ZHPfcBWd/9ussHdu9y9L3y9H7gg04Hufp+7L3X3pS0tLQV0JRKfEydORDbTMWbMGEaPHq2ZDhEBog0dLwHzw10l9SQuDF2bts9a4Lrw+WrgWU88RWgtsCrceTIHmA+8mK1mOGZ9qEGo+USePrIys2+SCCdfTGuflvL1U8Abec6ByIh36NAhTpw4EclMh5npqaQiclJt/l2Gx937zexm4CmgBnjQ3TeZ2R1Am7uvBR4AHjazdhKzD6vCsZvM7DFgM9AP3OTuAwCZaoYuvwq0hsCwIdQmWx+h1tvARKDezFYClwHvAP8X8DvglcQ1qnw/3KnyeTP7VBhTN3B9EU+ZSCyiehppUvKppCIikYUOAHdfB6xLa7s95fMx4DNZjr0TuLOQmqF9G4m7W9Lbc/UxO8vQM10HgrvfBtyW5RiRshTVe1eSNNMhIkl6IqlIlYt6pkOhQ0SSFDpEqlzUMx1aXhGRJIUOkSqn5RURKRWFDpEqV4rllcOHD3P8+PFI6otI+VDoEKly3d3dnHHGGYwZMyaS+skwoyUWEVHoEKlyUT2NNElPJRWRJIUOkSoX1dNIk/TSNxFJUugQqXKlmulQ6BARhQ6RKhd16NA1HSKSpNAhUuW0vCIipaLQIVLlop7paGhowMwUOkREoUOkmvX19fHuu+9GGjpqampoaGjQ8oqIKHSIVLOoHwyW1NTURFdXV6R9iMjIp9AhUsWSoSPKmQ7Q+1dEJEGhQ6SKRf3elaSmpiaFDhGhNtdGMzs/13Z3f6W4wxGRUkqGjqiXVyZNmsSOHTsi7UNERr6coQO4K/x5BrAUeBUw4CPAC8AfRTc0EYlaqZZXNNMhIpBnecXdP+7uHwd2AOe7+1J3vwBYArSXYoAiEp1SLa9MmjSJ7u5u3D3SfkRkZCv0mo5z3P23yS/u/jqwOJohiUipdHd3Y2Y0NDRE2k9TUxMDAwMcPnw40n5EZGTLt7yS9IaZ/QD4L4ADfwG8EdmoRKQkenp6aGxsZNSoaK8pT14z0t3dzYQJEyLtS0RGrkL/pvkPwCbgC8AXgc2hTUTKWNRPI03S6+1FBAqc6XD3Y2Z2N/BLEjMdW9z9vUhHJiKRK1XoSJ3pEJHqVVDoMLOLgYeAt0ncvTLTzK5z919HNzQRiVrUL3tL0kyHiEDh13TcBVzm7lsAzGwB8AhwQVQDE5HodXd3M2fOnMj70UyHiEDh13TUJQMHgLu/CdRFMyQRKRVd0yEipVToTEebmT0APBy+fxZ4OZohiUgpnDhxomTLK2PHjqWurk4zHSJVrtDQ8TfATcDnSVzT8WvgnqgGJSLRO3ToECdOnCjJTIeZ6amkIlLw3St9ZvZ94Bfo7hWRilCqp5EmJZ9KKiLVS3eviFSp5KxDKZZXQO9fEZHCLyRN3r3yJ+5+EXA5sCbfQWa23My2mFm7md2aYftoM3s0bH/BzGanbLsttG8xs8vz1TSzOaHG1lCzPlcfZtZsZuvN7HCYxUkd1wVm9ttwzPfMzEJ7k5n9IvTxCzMrzd/WIhGIY6ZDoUOkukV294qZ1QB3A1cAC4FrzGxh2m43AD3uPo9EiFkdjl0IrALOBZYD95hZTZ6aq4E17j4f6Am1s/YBHAO+Dnwlw/DvBW4E5oef5aH9VuCZ0Mcz4btIWSp16GhqatLyikiVKzR0tJnZA2Z2cfi5n/x3rywD2t19m7sfB1qBFWn7rCCxbAPwOHBpmFVYAbS6e5+7byfxRttl2WqGYy4JNQg1V+bqw93fdfffkAgfJ5nZNGCiu/8vT7wS88dZaqX2IVJ2kgGgVMsrmukQkUJDx9+QePfK50m8f2Uz8Nd5jpkO7Ez53hHaMu7j7v3AQaA5x7HZ2puB3lAjva9sfeQad0eWcZ/p7ntCrT3AlBx1REa0OK7pOHjwIAMDAyXpT0RGnoLvXgG+E34KZZlKFbhPtvZMISnX/oWOo5AxFczMbiSxPMOsWbOGcqhIyXR3dzNmzBjGjBlTkv6S4aa3t5fm5ly5X0QqVUEzHWb2h+HCyTfNbFvyJ89hHcDMlO8zgN3Z9jGzWqAB6M5xbLb2A0BjqJHeV7Y+co17RpZx7wvLL8llmM5MBdz9Pndf6u5LW1pacnQlEp/u7u6SzXLA+9eO6LoOkepV6PLKAyRmOf4I+N9SfnJ5CZgf7iqpJ3Fh6Nq0fdYC14XPVwPPhuso1gKrwp0nc0hczPlitprhmPWhBqHmE3n6yCgsmxwyswvDtSJ/maVWah8iZaenp6dkF5HC+zMduq5DpHoV+kTSg+7+r0Mp7O79ZnYz8BRQAzzo7pvM7A6gzd3XkggzD5tZO4nZh1Xh2E1m9hiJa0f6gZvcfQAgU83Q5VeBVjP7JrAh1CZbH6HW28BEoN7MVpK4LXgziWtYfgSMAf41/AD8E/CYmd0A/B74zFDOichIUqr3riRppkNEcoYOMzs/fFxvZt8Cfgr0Jbe7+yu5jnf3dcC6tLbbUz4fI8s/3O5+J3BnITVD+zYSd7ekt+fqY3aW9jbgwxnau4BLMx0jUm66u7uZO3duyfrTTIeI5JvpuCvt+9KUz07iNlURKUOlXl7RTIeI5Awd7v7xUg1EREqr1MsrmukQkXzLK3/h7v/FzL6Uabu7D+UWWhEZIfr6+jhy5EhJ716pq6tj/PjxmukQqWL5llfGhT8nRD0QESmd5GxDKWc6QG+aFal2+ZZX/nP48xulGY6IlEKp37uSpPeviFS3fMsr38u13d0/X9zhiEgpxBU6mpubFTpEqli+5ZV8L3UTkTJU6veuJDU1NfH666+XtE8RGTnyLa88lPrdzMa5+7vRDklEohbnTEdXV1dJ+xSRkaPQd698zMw2A2+E74vM7J5IRyYikYl7eSXHmwhEpIIV+u6V7wKXA10A7v4qcFFUgxKRaPX09GBmTJw4saT9NjU1MTAwwDvvvFPSfkVkZCg0dODuO9OaBoo8FhEpkeQbZkeNKvivgKJIvtJeF5OKVKdC/8bZaWZ/ALiZ1ZvZVwhLLSJSfkr9NNKkZOjQdR0i1anQ0PHXwE3AdKADWBy+i0gZSs50lFoy6Ch0iFSnQl9tf8LdP5vaYGZzCNd4iEh5KfXL3pK0vCJS3Qqd6XjSzE5ecWZmHwKejGZIIhI1La+ISBwKDR3/QCJ4jDezC4DHgb+IblgiEqW4lleSfSp0iFSngpZX3P3nZlYHPE3i5W8r3X1rpCMTkUicOHGC3t7eWGY6amtraWho0PKKSJXK9+6V/wdIfYrPRGAbcIuZ6d0rImXonXfe4cSJE7GEDtBTSUWqWb6Zjra073oXi0iZS84yxLG8AnrTrEg1G9K7V0Sk/CVf9qaZDhEptXzLK4+5+783s98yeJkFAHf/SGQjE5FIxD3T0dzcTHt7eyx9i0i88i2vfCH8eVXUAxGR0kjOMkyePDmW/rW8IlK98i2v7Al/7ijNcEQkagcOHADef2ZGqTU3N9Pb28vAwAA1NTWxjEFE4pFveeUQGZZVAAPc3Uv7ikoROW3J0BHnNR3uTk9PT2yzLSISj3wzHRNKNRARKY2uri4mTZpEbW2hb0EormTY6e7uVugQqTKlfa+1iMTuwIEDsf5jr0ehi1QvhQ6RKnPgwIHYrucAvfRNpJopdIhUmbhnOvR6e5HqpdAhUmW6urq0vCIisYg0dJjZcjPbYmbtZnZrhu2jzezRsP0FM5udsu220L7FzC7PV9PM5oQaW0PN+uH0YWZnm9nGlJ93zOyLYdvfmdmulG1XFv+siUQr7pmOhoYGampqtLwiUoUiCx1mVgPcDVwBLASuMbOFabvdAPS4+zxgDbA6HLsQWAWcCywH7jGzmjw1VwNr3H0+0BNqD7kPd9/i7ovdfTFwAXAE+FnKmNckt7v7utM/UyKlc+TIEY4ePRpr6DAzJk2apJkOkSoU5UzHMqDd3be5+3GgFViRts8KIPl+l8eBS83MQnuru/e5+3agPdTLWDMcc0moQai5cph9pLoUeEsPR5NKEfeDwZL0/hWR6hRl6JgO7Ez53hHaMu7j7v3AQaA5x7HZ2puB3lAjva+h9pFqFfBIWtvNZvaamT1oZvG8vEJkmJKhI+7nY0yePPnkWESkekQZOixDW/rTTbPtU6z24fSROChxTcingP+Wsv1e4IPAYmAPcFeGGpjZjWbWZmZt+/fvz7SLSCzifu9KUktLC/rdEKk+UYaODmBmyvcZwO5s+5hZLdAAdOc4Nlv7AaAx1Ejva6h9JF0BvOLu+5IN7r7P3Qfc/QRwP6cuxyT3u8/dl7r70paWlky7iMRiJM10KHSIVJ8oQ8dLwPxwV0k9iaWKtWn7rAWuC5+vBp51dw/tq8KdJ3OA+cCL2WqGY9aHGoSaTwyzj6RrSFtaMbNpKV8/Dbw+pDMiErORck1HS0sLBw4cIPGrKCLVIrKXL7h7v5ndDDwF1AAPuvsmM7sDaHP3tcADwMNm1k5i9mFVOHaTmT0GbAb6gZvcfQAgU83Q5VeBVjP7JrAh1GaYfYwFPgF8Lu0/6z+Z2WISyzBvZ9guMqIdOHDg5N0jcWppaaG/v5+DBw/S2NgY61hEpHQifeNTuKV0XVrb7SmfjwGfyXLsncCdhdQM7dvIsNwxzD6OkLjYNL392kx1RMpF3C97S0ouO+7fv1+hQ6SK6ImkIlUk7geDJSXHoOs6RKqLQodIFYn7ZW9JqTMdIlI9FDpEqshImelIhg49q0Okuih0iFSRkRI6tLwiUp0UOmIMnVEAABeZSURBVESqhLvH/obZpLFjxzJ27FiFDpEqo9AhUiWOHDnCsWPHRsQ1HaCnkopUI4UOkSoxUp5GmqTQIVJ9FDpEqsRIDB26kFSkuih0iFSJkfKytyS9f0Wk+ih0iFSJzs5OYOSEDi2viFQfhQ6RKpEMHWeeeWbMI0loaWnhyJEjHDlyJO6hiEiJKHSIVIl9+/ZRX19PQ0ND3EMB9FRSkWqk0CFSJTo7O5kyZQpmFvdQgPeXeXQxqUj1UOgQqRL79u0bMUsroJkOkWqk0CFSJfbt28eUKVPiHsZJCh0i1UehQ6RKdHZ2aqZDRGKl0CFSBdx9xIWOhoYGamtrFTpEqohCh0gVOHjwIMePHx9RyytmxuTJk3UhqUgVUegQqQL79u0DRs4zOpJaWlpOPj9ERCqfQodIFUiGjpE00wGJEKTQIVI9FDpEqsBIexpp0tSpU9mzZ0/cwxCRElHoEKkCI3V5ZerUqezduxd3j3soIlICCh0iVaCzsxMzo7m5Oe6hDDJ16lT6+vo4ePBg3EMRkRJQ6BCpAvv27WPy5MnU1tbGPZRBpk2bBsDevXtjHomIlIJCh0gVGGmPQE+aOnUqoNAhUi0UOkSqQPJlbyONQodIdVHoEKkCmukQkZFAoUOkCozUmY5JkyZRV1en0CFSJRQ6RCrc0aNHOXTo0Iic6TCzk7fNikjlU+gQqXAj9RkdSQodItUj0tBhZsvNbIuZtZvZrRm2jzazR8P2F8xsdsq220L7FjO7PF9NM5sTamwNNetPo4+3zey3ZrbRzNpS2pvM7Behj1+Y2aTinS2RaCSfRjoSl1dATyUVqSaRhQ4zqwHuBq4AFgLXmNnCtN1uAHrcfR6wBlgdjl0IrALOBZYD95hZTZ6aq4E17j4f6Am1h9xHytg+7u6L3X1pStutwDOhj2fCd5ERbaTPdEybNk0zHSJVIsqZjmVAu7tvc/fjQCuwIm2fFcBD4fPjwKVmZqG91d373H070B7qZawZjrkk1CDUXDnMPnJJrZXah8iIlfwHPXmnyEgzdepU9u/fT39/f9xDEZGIRRk6pgM7U753hLaM+7h7P3AQaM5xbLb2ZqA31Ejva6h9ADjwtJm9bGY3puxzprvvCbX2ABnnq83sRjNrM7O2/fv3Z9pFpGR27dp18oLNkWjq1Km4O/pdEal8UYYOy9CW/lanbPsUq304fQD8obufT2IZ5yYzuyjDvlm5+33uvtTdl7a0tAzlUJGi27VrF1OmTKGuri7uoWSkZ3WIVI8oQ0cHMDPl+wxgd7Z9zKwWaAC6cxybrf0A0BhqpPc11D5w9+SfncDPeH/ZZZ+ZTQu1pgGdec+CSMx27drF9Onpk4wjh0KHSPWIMnS8BMwPd5XUk7hoc23aPmuB68Lnq4FnPfGO67XAqnDnyRxgPvBitprhmPWhBqHmE8Ppw8zGmdkEADMbB1wGvJ6hVmofIiOWQoeIjBSRvXLS3fvN7GbgKaAGeNDdN5nZHUCbu68FHgAeNrN2ErMPq8Kxm8zsMWAz0A/c5O4DAJlqhi6/CrSa2TeBDaE2Q+3DzM4Efpa41pRa4Cfu/m+h1j8Bj5nZDcDvgc8U+bSJFN2uXbv4gz/4g7iHkVXyrhqFDpHKF+l7rt19HbAure32lM/HyPIPt7vfCdxZSM3Qvo0Md58MtY9QZ1GW/buASzNtExmJjh07RldX14ie6Rg7diwTJ05U6BCpAnoiqUgF2707cWnTSA4dkHhWhx4QJlL5FDpEKlg5hY7kWEWkcil0iFSwXbt2ASM/dMyYMYOdO3fm31FEyppCh0gFS4aOs846K+aR5DZz5kx27drFwMBA3EMRkQgpdIhUsF27djFmzBgaGxvjHkpOM2fOZGBgQBeTilQ4hQ6RCpZ8Rke4BXzEmjkz8Zw+LbGIVDaFDpEKNtIfDJY0a9YsQKFDpNIpdIhUsHIJHZrpEKkOCh0iFcrd2b17d1mEjsbGRsaNG6fQIVLhFDpEKlR3dzd9fX1lETrMjJkzZyp0iFQ4hQ6RClUuz+hIUugQqXwKHSIVqlye0ZGk0CFS+RQ6RCpUR0cHkHjaZzmYOXMme/fu5fjx43EPRUQiotAhUqG2b99ObW1tWS2vuPvJGRoRqTwKHSIVavv27cyaNYuampq4h1IQ3TYrUvkUOkQq1Pbt25k7d27cwyiYQodI5VPoEKlQ27ZtY86cOXEPo2AKHSKVT6FDpAIdPnyY/fv3l1XoGD9+PJMmTVLoEKlgCh0iFejtt98GKKvQAbptVqTSKXSIVKDt27cD5Rc6PvCBD5wcu4hUHoUOkQpUrqFj/vz5vPXWW5w4cSLuoYhIBBQ6RCrQ9u3bGTt2LC0tLXEPZUjmzZvH0aNH2bNnT9xDEZEIKHSIVKBt27Yxd+5czCzuoQzJvHnzANi6dWvMIxGRKCh0iFSg7du3l93SCiSWVwDa29tjHomIREGhQ6TCuHvZho6ZM2dSX1+v0CFSoRQ6RCpMV1cXhw8fLsvQUVNTw9y5c7W8IlKhFDpEKky53rmSNG/ePM10iFQohQ6RClMpocPd4x6KiBSZQodIhXnzzTcByuplb6nmz5/PkSNHdNusSAWKNHSY2XIz22Jm7WZ2a4bto83s0bD9BTObnbLtttC+xcwuz1fTzOaEGltDzfrh9GFmM81svZm9YWabzOwLKfv/nZntMrON4efK4p4xkdO3adMmZs+ezfjx4+MeyrAkb5vVEotI5YksdJhZDXA3cAWwELjGzBam7XYD0OPu84A1wOpw7EJgFXAusBy4x8xq8tRcDaxx9/lAT6g95D6AfuDL7v4h4ELgprRxr3H3xeFn3WmfKJEi27x5MwsXpv+qlY/kbbO6mFSk8kQ507EMaHf3be5+HGgFVqTtswJ4KHx+HLjUEk8zWgG0unufu28H2kO9jDXDMZeEGoSaK4fTh7vvcfdXANz9EPAGML1I50QkUv39/WzZsoVzzz037qEM28yZM6mrq9NMh0gFijJ0TAdSXxfZwan/eJ/cx937gYNAc45js7U3A72hRnpfQ+3jpLAUswR4IaX5ZjN7zcweNLNJmf7DzexGM2szs7b9+/dn2kUkEtu2baOvr6+sZzpqa2uZM2eOZjpEKlCUoSPT85fTL0fPtk+x2ofTR+Igs/HAfwe+6O7vhOZ7gQ8Ci4E9wF0ZauDu97n7UndfWm7vvpDytnnzZoCynukAWLBgAb/73e/iHoaIFFmUoaMDmJnyfQawO9s+ZlYLNADdOY7N1n4AaAw10vsaah+YWR2JwPFf3f2nyR3cfZ+7D7j7CeB+Ess9IiPGpk2bADjnnHNiHsnp+chHPsKWLVvo6+uLeygiUkRRho6XgPnhrpJ6Ehdtrk3bZy1wXfh8NfCsJ27OXwusCneezAHmAy9mqxmOWR9qEGo+MZw+wvUeDwBvuPt3UgdrZtNSvn4aeH1YZ0YkIps3b2bWrFlMmDAh7qGclkWLFtHf339y5kZEKkNt/l2Gx937zexm4CmgBnjQ3TeZ2R1Am7uvJfGP+8Nm1k5i9mFVOHaTmT0GbCZxN8lN7j4AkKlm6PKrQKuZfRPYEGoz1D7M7I+Aa4HfmtnGUONr4U6V/2Rmi0ksw7wNfK7Ip03ktGzevLnsl1YAFi9eDMDGjRtZsmRJzKMRkWIxPfUvWkuXLvW2tra4hyFVYGBggPHjx3PTTTfx7W9/O+7hnJaBgQEmTpzIX/3VX/Hd73437uGIyBCY2cvuvjTTNj2RVKRCbN++nWPHjlXETEdNTQ3nnXcer776atxDEZEiUugQqRDJi0jL+XbZVIsXL2bjxo16B4tIBVHoEKkQr776KmZWMaFj0aJF9Pb2snPnzvw7i0hZUOgQqRAvvPACCxcuLPs7V5IWLVoEoCUWkQqi0CFSAdyd559/ngsvvDDuoRTNeeedh5kpdIhUEIUOkQqwdetWuru7Kyp0TJgwgQ9+8INs3Lgx/84iUhYUOkQqwPPPPw/Axz72sZhHUlxLlixBt5yLVA6FDpEK8PzzzzNx4kQ+9KEPxT2UovrjP/5jduzYwY4dO+IeiogUgUKHSAV4/vnnWbZsGaNGVdav9J/8yZ8A8Ktf/SrmkYhIMVTW31AiVejdd9/ltddeq6jrOZI+/OEP09TUxHPPPRf3UESkCBQ6RMpcW1sbAwMDFRk6Ro0axUUXXaSZDpEKodAhUuZ+85vfAPDRj3405pFE4+KLL2bbtm16SJhIBVDoEClzP//5z7nggguYPHly3EOJhK7rEKkcCh0iZayzs5Pnn3+eT37yk3EPJTLnnXcejY2Nuq5DpAIodIiUsXXr1uHuFR06ampquOiii/jlL3+pl7+JlDmFDpEy9uSTTzJ9+nSWLFkS91Ai9elPf5odO3bw4osvxj0UETkNCh0iZaqvr4+nn36aq666CjOLeziR+vSnP019fT2tra1xD0VEToNCh0iZeu655zh8+HBFL60kNTQ0cOWVV/Loo48yMDAQ93BEZJgUOkTK1E9+8hPGjx/PJZdcEvdQSmLVqlXs2bPn5C3CIlJ+FDpEylBnZyetra1cd911jBkzJu7hlMRVV13F2LFjtcQiUsYUOkTK0P3338/x48e5+eab4x5KyYwbN44VK1bQ2trKO++8E/dwRGQYFDpEysx7773Hvffeyyc+8QnOOeecuIdTUl/+8pfp7e3l+9//ftxDEZFhUOgQKTM/+9nP2LVrF7fcckvcQym5Cy64gD/90z/lrrvu4tChQ3EPR0SGSKFDpIwcOXKEW2+9lXPOOYcrr7wy7uHE4vbbb6e7u5t77rkn7qGIyBApdIiUkb//+79n+/bt3HvvvdTU1MQ9nFgsW7aM5cuXs3r1ajo6OuIejogMgUKHSJl4/fXX+fa3v83111/PxRdfHPdwYvW9732P9957j89+9rN6bodIGVHoECkDe/bsYeXKlTQ2NvKtb30r7uHEbv78+dxzzz38+te/5o477oh7OCJSoNq4ByAiuXV3d3PZZZexd+9ennnmmYp9hf1QXXvttTzzzDPccccd1NbW8rd/+7cV/zh4kXKn0CEygj333HNcf/317N27l3Xr1vHRj3407iGNKPfffz/uzu23387bb7/Nd77zHRoaGuIelohkEenyipktN7MtZtZuZrdm2D7azB4N218ws9kp224L7VvM7PJ8Nc1sTqixNdSsL1UfIsX20ksvce211/Lxj3+curo61q9fXzWPOx+Kuro6fvSjH/G1r32NH/7wh8ybN49//ud/pqurK+6hiUgG5u7RFDarAd4EPgF0AC8B17j75pR9/g/gI+7+12a2Cvi0u//vZrYQeARYBpwF/BJYEA7LWNPMHgN+6u6tZvb/Aq+6+72l6CPXeVi6dKm3tbUN+zxK5XJ3Dh8+TE9PDx0dHbz55pu8+OKLPPvss2zZsoXx48fzuc99jm984xuMGzcu7uGOeK+88gpf+tKX+NWvfkVtbS2XXnopH/vYx1iyZAlnnXUWU6dOZcqUKdTX6/8riETJzF5296WZtkW5vLIMaHf3bWEQrcAKYHPKPiuAvwufHwe+b4lF2RVAq7v3AdvNrD3UI1NNM3sDuAT487DPQ6HuvSXqoySefPJJ/uEf/uHk90yBMb1tqN+LUWOkjmuk1HB3jh49Sm9vL/39/YO2jR8/nosuuohbbrmFa6+9lokTJ57Sv2R2/vnns379ejZs2MAjjzzCunXrePrpp085/w0NDZxxxhnU19dTV1dHfX39yc/ZrgmJul0kThMmTODpp58uSV9Rho7pwM6U7x1A+oL0yX3cvd/MDgLNof35tGOnh8+ZajYDve7en2H/UvQxiJndCNwIMGvWrEy7DEtdXd0p/whl+kssvW2o34tRY6SOa6TUOOOMM5g0adLJn2nTpnH22Wcze/Zsamt1qdVwmRnnn38+559/Pt/61rc4dOgQb7zxBnv37j35c+DAAY4fPz7o57333uP48eMZa2abDS5Wu0jcxo8fX7K+ovzbLVOkT/+ty7ZPtvZM16Dk2r9UfQxudL8PuA8SyyuZ9hmO5cuXs3z58mKVE6l4EyZMYNmyZfl3FJGSiPJC0g5gZsr3GcDubPuYWS3QAHTnODZb+wGgMdRI76sUfYiIiEgeUYaOl4D54Y6PemAVsDZtn7XAdeHz1cCznpiDXAusCneezAHmAy9mqxmOWR9qEGo+UcI+REREJI/IllfC9RM3A08BNcCD7r7JzO4A2tx9LfAA8HC4iLObxD/whP0eI3HRaT9wk7sPAGSqGbr8KtBqZt8ENoTalKgPERERySOyW2YlQbfMiohINcl1y6zevSIiIiIlodAhIiIiJaHQISIiIiWh0CEiIiIlodAhIiIiJaHQISIiIiWh0CEiIiIlodAhIiIiJaHQISIiIiWhJ5JGzMz2AzuKWHIyiZfPSYLOx2A6H+/TuRhM52MwnY/3FftcfMDdWzJtUOgoM2bWlu3xstVI52MwnY/36VwMpvMxmM7H+0p5LrS8IiIiIiWh0CEiIiIlodBRfu6LewAjjM7HYDof79O5GEznYzCdj/eV7Fzomg4REREpCc10iIiISEkodJQRM1tuZlvMrN3Mbo17PKVmZg+aWaeZvZ7S1mRmvzCzreHPSXGOsVTMbKaZrTezN8xsk5l9IbRX6/k4w8xeNLNXw/n4RmifY2YvhPPxqJnVxz3WUjGzGjPbYGb/I3yv5nPxtpn91sw2mllbaKvK3xUAM2s0s8fN7Hfh75CPlep8KHSUCTOrAe4GrgAWAteY2cJ4R1VyPwKWp7XdCjzj7vOBZ8L3atAPfNndPwRcCNwU/vdQreejD7jE3RcBi4HlZnYhsBpYE85HD3BDjGMstS8Ab6R8r+ZzAfBxd1+ccmtotf6uAPwz8G/ufg6wiMT/TkpyPhQ6yscyoN3dt7n7caAVWBHzmErK3X8NdKc1rwAeCp8fAlaWdFAxcfc97v5K+HyIxF8a06ne8+Hufjh8rQs/DlwCPB7aq+Z8mNkM4E+BH4TvRpWeixyq8nfFzCYCFwEPALj7cXfvpUTnQ6GjfEwHdqZ87wht1e5Md98DiX+IgSkxj6fkzGw2sAR4gSo+H2E5YSPQCfwCeAvodff+sEs1/c58F/g/gRPhezPVey4gEUCfNrOXzezG0Fatvytzgf3AD8Py2w/MbBwlOh8KHeXDMrTp1qMqZ2bjgf8OfNHd34l7PHFy9wF3XwzMIDEz+KFMu5V2VKVnZlcBne7+cmpzhl0r/lyk+EN3P5/E8vRNZnZR3AOKUS1wPnCvuy8B3qWES0sKHeWjA5iZ8n0GsDumsYwk+8xsGkD4szPm8ZSMmdWRCBz/1d1/Gpqr9nwkhani50hc69JoZrVhU7X8zvwh8Ckze5vEMuwlJGY+qvFcAODuu8OfncDPSITSav1d6QA63P2F8P1xEiGkJOdDoaN8vATMD1eg1wOrgLUxj2kkWAtcFz5fBzwR41hKJqzRPwC84e7fSdlUreejxcwaw+cxwL8jcZ3LeuDqsFtVnA93v83dZ7j7bBJ/Tzzr7p+lCs8FgJmNM7MJyc/AZcDrVOnvirvvBXaa2dmh6VJgMyU6H3o4WBkxsytJ/D+WGuBBd78z5iGVlJk9AlxM4o2I+4D/G/gX4DFgFvB74DPunn6xacUxsz8C/ifwW95ft/8aies6qvF8fITExW81JP7P1GPufoeZzSXx//abgA3AX7h7X3wjLS0zuxj4irtfVa3nIvx3/yx8rQV+4u53mlkzVfi7AmBmi0lcZFwPbAP+A+H3hojPh0KHiIiIlISWV0RERKQkFDpERESkJBQ6REREpCQUOkRERKQkFDpERESkJBQ6REREpCQUOkRERKQkFDpEpKKY2Wwzez3l+1fM7O9iHJKIBAodIiIiUhIKHSIiIlISCh0iUolSX+VeF9soRGQQhQ4RqUQfCG+eHQVcROJFcCISM4UOEalEXcCPgZdJvMb8L83sg/EOSUT0llkRqShmNhv4H+7+4ZiHIiJpNNMhIiIiJaGZDhERESkJzXSIiIhISSh0iIiISEkodIiIiEhJKHSIiIhISSh0iIiISEkodIiIiEhJ/P+HfBHUUjcQTQAAAABJRU5ErkJggg==\n", | |
"text/plain": [ | |
"<Figure size 576x432 with 1 Axes>" | |
] | |
}, | |
"metadata": { | |
"needs_background": "light" | |
}, | |
"output_type": "display_data" | |
} | |
], | |
"source": [ | |
"### LIKELIHOOD ###\n", | |
"\n", | |
"# We measured trees of heights 20m, 27m, 23.5m, 28.2m, 21m\n", | |
"datum_tree_1 = 20\n", | |
"datum_tree_2 = 27\n", | |
"datum_tree_3 = 23.5\n", | |
"datum_tree_4 = 28.2\n", | |
"datum_tree_5 = 21\n", | |
"\n", | |
"# Parameters of the truncated normal pdf\n", | |
"sigma = 4\n", | |
"lower_limit = 0\n", | |
"upper_limit = np.inf\n", | |
"likelihood_tree_1 = sts.truncnorm.pdf(\n", | |
" datum_tree_1,\n", | |
" (lower_limit-mu2)/sigma, # See the SciPy documentation. The lower and upper\n", | |
" (upper_limit-mu2)/sigma, # limits are defined in terms of the standard normal.\n", | |
" loc=mu2,\n", | |
" scale=sigma)\n", | |
"\n", | |
"sigma = 4\n", | |
"lower_limit = 0\n", | |
"upper_limit = np.inf\n", | |
"likelihood_tree_2 = sts.truncnorm.pdf(\n", | |
" datum_tree_2,\n", | |
" (lower_limit-mu2)/sigma, # See the SciPy documentation. The lower and upper\n", | |
" (upper_limit-mu2)/sigma, # limits are defined in terms of the standard normal.\n", | |
" loc=mu2,\n", | |
" scale=sigma)\n", | |
"\n", | |
"sigma = 4\n", | |
"lower_limit = 0\n", | |
"upper_limit = np.inf\n", | |
"likelihood_tree_3 = sts.truncnorm.pdf(\n", | |
" datum_tree_3,\n", | |
" (lower_limit-mu2)/sigma, # See the SciPy documentation. The lower and upper\n", | |
" (upper_limit-mu2)/sigma, # limits are defined in terms of the standard normal.\n", | |
" loc=mu2,\n", | |
" scale=sigma)\n", | |
"\n", | |
"sigma = 4\n", | |
"lower_limit = 0\n", | |
"upper_limit = np.inf\n", | |
"likelihood_tree_4 = sts.truncnorm.pdf(\n", | |
" datum_tree_4,\n", | |
" (lower_limit-mu2)/sigma, # See the SciPy documentation. The lower and upper\n", | |
" (upper_limit-mu2)/sigma, # limits are defined in terms of the standard normal.\n", | |
" loc=mu2,\n", | |
" scale=sigma)\n", | |
"\n", | |
"sigma = 4\n", | |
"lower_limit = 0\n", | |
"upper_limit = np.inf\n", | |
"likelihood_tree_5 = sts.truncnorm.pdf(\n", | |
" datum_tree_5,\n", | |
" (lower_limit-mu2)/sigma, # See the SciPy documentation. The lower and upper\n", | |
" (upper_limit-mu2)/sigma, # limits are defined in terms of the standard normal.\n", | |
" loc=mu2,\n", | |
" scale=sigma)\n", | |
"\n", | |
"combined_likelihood = likelihood_tree_1*likelihood_tree_2*likelihood_tree_3*likelihood_tree_4*likelihood_tree_5\n", | |
"\n", | |
"plt.figure(figsize=(8, 6))\n", | |
"plt.plot(mu2, combined_likelihood, color='black')\n", | |
"plt.xlabel('μ')\n", | |
"plt.ylabel('likelihood')\n", | |
"plt.show()" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": 10, | |
"metadata": {}, | |
"outputs": [ | |
{ | |
"name": "stdout", | |
"output_type": "stream", | |
"text": [ | |
"Normalization constant of posterior: 0.00012194863593140638\n" | |
] | |
}, | |
{ | |
"data": { | |
"image/png": "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\n", | |
"text/plain": [ | |
"<Figure size 576x432 with 1 Axes>" | |
] | |
}, | |
"metadata": { | |
"needs_background": "light" | |
}, | |
"output_type": "display_data" | |
} | |
], | |
"source": [ | |
"### NEW POSTERIOR ###\n", | |
"\n", | |
"unnormalized_posterior2 = unnormalized_prior2 * combined_likelihood\n", | |
"\n", | |
"area = sp.integrate.trapz(unnormalized_posterior2, mu2)\n", | |
"print('Normalization constant of posterior:', area)\n", | |
"\n", | |
"posterior2 = unnormalized_posterior2 / area\n", | |
"\n", | |
"plt.figure(figsize=(8, 6))\n", | |
"plt.plot(mu2, prior2, color='black', linestyle=':', label='prior')\n", | |
"plt.plot(mu2, posterior2, color='black', label='posterior')\n", | |
"plt.xlabel('μ')\n", | |
"plt.ylabel('probability density')\n", | |
"plt.legend()\n", | |
"plt.show()" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": 11, | |
"metadata": {}, | |
"outputs": [ | |
{ | |
"data": { | |
"image/png": "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xxzDqlWrIvfnf/Ob33D88ceze/dunysT6ZgU8CIxsnbt2oRrvZeWljJy5Eh+97vfAVBSUsI999xD9+7dI7Vu2LChrUvEVWZmZuTrYcOGMXr06MhkOh9//DENDQ1+lSbS4SjgRWJk7dq1CTHAbv78+TzwwAMA9OrVixdeeIHbbrttn+OaPgufiCZMmBD5d2zbto1Ro0Zx66237ucsEQlTwIvEgHOOdevWJUTAz5w5k3vvvZddu3YBcO6557Z42yDcgl+/fn1c6zsYhYWF/PnPf+bKK68Egr9MTZ06VdPgirRBAS8SAxUVFVRXV/vSRf/5558zevToyLSyd9xxB59//jmdO3du87x+/fphZgnbgm8qLS2N8847LzIgb8aMGVx//fVa0EakDQp4kRgIj6CPVwveORd5vK1nz56Ul5dHBtLl5+fvN9whOJ1s3759O0TAN/fzn/+cTz75JDKn/g033MDUqVN9rkoksWiiG5EYiPckN2effTZ1dXXMnj2b/Px8lixZclATxQwcOLBDBryZMXToUADq6+tZunTpXkv01tTURFazE0lVasGLxIDXz8A3NDTw6quvRp4Lv/DCC7nooosi2wc7C1xHDfimMjMzmTt3buR5/g8++IB+/foxf/58nysT8ZcCXiQG1q5dS9euXenevbsn1585cybf/OY3mTt3LgCTJ0/msssua/f0rgMHDmTDhg00NjbGokxfZWQEOyS7dOnCGWecwTHHHAPAihUrKC8v97M0EV8o4EViIPyIXKzmU29oaGDatGm88sorAJx//vm8+OKLjB07NibXDxs4cCD19fVs3rw5ptf101FHHcUzzzxDly5dgOD69KNHj9aseJJyFPAiMbBu3bqYds+bGffffz8zZswAggPivv3tb5Oenh6z9wAYNGgQAKtXr47pdRPJlClTuP/++zEzGhsb+fWvf51Uv9CItEYBL9JOzrmYTHLz4osvcvLJJ1NXV0daWhpz5syJBLxXhgwZAsDy5cs9fR8/HX300Zx++ukAfPTRR/zyl7/kzTff9LkqEe8p4EXaqaysjKqqqkhr+EBUV1dH5lrv1KkTmZmZlJaWAsE1271eQrV///7k5uayYsUKT98nUYwcOZKVK1cyceJEAJ566imuvPJKzXcvSUkBL9JOy5YtA+DII488oPNKS0spLi7m4YcfBuCMM87g7bffpl+/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\n", | |
"text/plain": [ | |
"<Figure size 576x432 with 1 Axes>" | |
] | |
}, | |
"metadata": { | |
"needs_background": "light" | |
}, | |
"output_type": "display_data" | |
} | |
], | |
"source": [ | |
"plt.figure(figsize=(8, 6))\n", | |
"plt.plot(mu2, combined_likelihood, color='red', label='likelihood')\n", | |
"plt.plot(mu2, prior2, color='black', linestyle=':', label='prior')\n", | |
"plt.plot(mu2, posterior2, color='black', label='posterior')\n", | |
"plt.xlabel('μ')\n", | |
"plt.ylabel('probability density')\n", | |
"plt.legend()\n", | |
"plt.show()" | |
] | |
}, | |
{ | |
"cell_type": "markdown", | |
"metadata": {}, | |
"source": [ | |
"As seen in the graph above, the posterior peak is much narrower in the new example that had 5 data points. This is due to the following:\n", | |
"\n", | |
"- As the amount of data, x, increases, the likelihood decreases in value, and the likelihood peak becomes narrower. \n", | |
"- Since we did not include the \"data (marginal probabilities)\" part of the Bayes Theorem within our code, our likelihood is rather small because we multiplied the previous likelihoods - all of which were smaller than 1 - together. That being said, this is acceptable because we're just focusing on the \"posterior ∝ likelihood x prior\" part of the Bayes equation, where the proportionality of the peak has is more relevant than its absolute size. Therefore, we are only looking at the relative size of the peak, which in this case, is narrower.\n", | |
"- As a result, the shape of the posterior peak will be determined a lot more by the peak of the likelihood (because values that are further away from the maximum likelihood indicator has very low likelihoods).\n", | |
"- Therefore, the posterior peak becomes narrower because both the likelihood and prior peaks are becoming narrower." | |
] | |
} | |
], | |
"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.7.3" | |
} | |
}, | |
"nbformat": 4, | |
"nbformat_minor": 2 | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment