{ "cells": [ { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "slide" } }, "source": [ "Working with Gaussians\n", "=======" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "slide" } }, "source": [ "### Preliminaries\n", "\n", "- Goal \n", " - Review of processing of Gaussian distributions in linear systems\n", "- Materials \n", " - Mandatory\n", " - These lecture notes\n", " - Optional\n", " - Bishop pp. 85-93 \n", " - [MacKay - 2006 - The Humble Gaussian Distribution](./files/Mackay-2006-The-humble-Gaussian-distribution.pdf) (highly recommended!)\n" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "slide" } }, "source": [ "### Sums and Transformations of Gaussian Variables\n", "\n", "- The Gaussian distribution\n", "$$\n", "\\mathcal{N}(x|\\mu,\\Sigma) = |2 \\pi \\Sigma |^{-\\frac{1}{2}} \\,\\mathrm{exp}\\left\\{-\\frac{1}{2}(x-\\mu)^T \\Sigma^{-1} (x-\\mu) \\right\\}\n", "$$\n", "for variable $x$ is completely specified by its mean $\\mu$ and variance $\\Sigma$. \n", " - $\\Lambda = \\Sigma^{-1}$ is called the **precision matrix**." ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "fragment" } }, "source": [ "- A **linear transformation** $z=Ax+b$ of a Gaussian variable $\\mathcal{N}(x|\\mu,\\Sigma)$ is Gaussian distributed as\n", "\n", "$$\n", "p(z) = \\mathcal{N} \\left(z \\,|\\, A\\mu+b, A\\Sigma A^T \\right) \\tag{SRG-4a}\n", "$$" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "fragment" } }, "source": [ "- The **sum of two independent Gaussian variables** is also Gaussian distributed. Specifically, if $x \\sim \\mathcal{N} \\left(x|\\mu_x, \\Sigma_x \\right)$ and $y \\sim \\mathcal{N} \\left(y|\\mu_y, \\Sigma_y \\right)$, then the PDF for $z=x+y$ is given by\n", "$$\\begin{align}\n", "p(z) &= \\mathcal{N}(x\\,|\\,\\mu_x,\\Sigma_x) \\ast \\mathcal{N}(y\\,|\\,\\mu_y,\\Sigma_y) \\notag\\\\\n", " &= \\mathcal{N} \\left(z\\,|\\,\\mu_x+\\mu_y, \\Sigma_x +\\Sigma_y \\right) \\tag{SRG-8}\n", "\\end{align}$$\n", " - [Exercise]: Show that Eq.SRG-8 is really a special case of Eq.SRG-4a. \n", " - The sum of two Gaussian _distributions_ is NOT a Gaussian distribution. Why not?" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "slide" } }, "source": [ "### Example: Gaussian Signals in a Linear System\n", "\n", "\n", "\n", "- [Q.]: Given independent variables\n", "$x \\sim \\mathcal{N}(\\mu_x,\\sigma_y)$ and $y \\sim \\mathcal{N}(\\mu_y,\\sigma_y)$, what is the PDF for $z = A\\cdot(x -y) + b$ ?" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "fragment" } }, "source": [ "- [A.]: $z$ is also Gaussian with \n", "$$\n", "p_z(z) = \\mathcal{N}(z|A(\\mu_x-\\mu_y)+b, \\, A(\\sigma_x \\mathbf{+} \\sigma_y)A^T)\n", "$$" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "fragment" } }, "source": [ "- Think about the role of the Gaussian distribution for stochastic linear systems in relation to what sinusoidals mean for deterministic linear system analysis." ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "slide" } }, "source": [ "### Example: Bayesian Estimation of a Constant\n", "\n", "\n", "- [Question] Estimate a constant $\\theta$ from one 'noisy' measurement $x$ about that constant. Assume the following model specification (the tilde $\\sim$ means: 'is distributed as'):\n", " \n", "$$\\begin{align*}\n", "x &= \\theta + \\epsilon \\\\\n", "\\theta &\\sim \\mathcal{N}(\\mu_\\theta,\\sigma_\\theta^2) \\\\\n", "\\epsilon &\\sim \\mathcal{N}(0,\\sigma^2_{\\epsilon})\n", "\\end{align*}$$" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "subslide" } }, "source": [ "[Answer]\n", "\n", "- **1. Model specification**\n", "Note that you can rewrite these specifications in probabilistic notation as follows:\n", "$$\\begin{align}\n", " p(x|\\theta) &=\\mathcal{N}(x|\\theta,\\sigma^2_{\\epsilon}) \\tag{likelihood}\\\\\n", " p(\\theta) &=\\mathcal{N}(\\theta|\\mu_\\theta,\\sigma_\\theta^2) \\tag{prior}\n", "\\end{align}$$" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "fragment" } }, "source": [ "- **2. Inference** for the posterior PDF $p(\\theta|x)$\n", "$$\\begin{align*}\n", "p(\\theta|x) &= \\frac{p(x|\\theta)p(\\theta)}{p(x)} = \\frac{p(x|\\theta)p(\\theta)} { \\int p(x|\\theta)p(\\theta) \\, \\mathrm{d}\\theta } \\notag \\\\\n", " &= \\frac{1}{C} \\,\\mathcal{N}(x|\\theta,\\sigma^2_{\\epsilon})\\, \\mathcal{N}(\\theta|\\mu_\\theta,\\sigma_\\theta^2) \\notag \\\\\n", " &= \\frac{1}{C_1} \\mathrm{exp} \\left\\{ -\\frac{(x-\\theta)^2}{2\\sigma^2_{\\epsilon}} - \\frac{(\\theta-\\mu_\\theta)^2}{2\\sigma_\\theta^2} \\right\\} \\notag \\\\\n", " &= \\frac{1}{C_1} \\mathrm{exp} \\left\\{ \\theta^2\\left( -\\frac{1}{2\\sigma^2_{\\epsilon}} - \\frac{1}{2\\sigma_\\theta^2} \\right) + \\theta \\left( \\frac{x}{\\sigma^2_{\\epsilon}} + \\frac{\\mu_\\theta}{\\sigma_\\theta^2} \\right) + C_2 \\right\\} \\notag \\\\\n", " &= \\frac{1}{C_1} \\mathrm{exp} \\left\\{ -\\frac{\\sigma_\\theta^2 + \\sigma^2_{\\epsilon}}{2\\sigma_\\theta^2 \\sigma^2_{\\epsilon}} \\left( \\theta - \\frac{x\\sigma_\\theta^2 + \\mu_s\\sigma^2_{\\epsilon}}{\\sigma_\\theta^2 + \\sigma^2_{\\epsilon}} \\right)^2 + C_3 \\right\\}\n", "\\end{align*}$$\n", "which we recognize as a Gaussian distribution." ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "subslide" } }, "source": [ " - This computational 'trick' for multiplying two Gaussians is called **completing the square**. The procedure makes use of the equality $$ax^2+bx+c_1 = a\\left(x+\\frac{b}{2a}\\right)^2+c_2$$\n", " " ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "fragment" } }, "source": [ " \n", "- Hence, it follows that the posterior for $\\theta$ is\n", "\n", "$$\\begin{equation*}\n", " p(\\theta|x) = \\mathcal{N} (\\theta |\\, \\mu_{\\theta|x}, \\sigma_{\\theta|x}^2)\n", "\\end{equation*}$$\n", "\n", "where\n", "\n", "$$\\begin{align*}\n", " \\frac{1}{\\sigma_{\\theta|x}^2} &= \\frac{\\sigma^2_{\\epsilon} + \\sigma_\\theta^2}{\\sigma^2_{\\epsilon}\\sigma_\\theta^2} = \\frac{1}{\\sigma_\\theta^2} + \\frac{1}{\\sigma^2_{\\epsilon}}\\\\\n", " \\mu_{\\theta|x} &= \\sigma_{\\theta|x}^2 \\, \\left( \\frac{1}{\\sigma^2_{\\epsilon}}x + \\frac{1}{\\sigma_\\theta^2} \\mu_\\theta \\right) \n", "\\end{align*}$$" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "fragment" } }, "source": [ "- So, multiplication of two Gaussian distributions yields another (unnormalized) Gaussian with\n", " - posterior precision equals **sum of prior precsions**\n", " - posterior precision-weighted mean equals **sum of prior precision-weighted means**\n", "- (This is worth remembering)" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "slide" } }, "source": [ "### CODE EXAMPLE\n", "\n", "Let's plot the exact product of two Gaussian PDFs as well as the normalized product according to the above derivation." ] }, { "cell_type": "code", "execution_count": 1, "metadata": { "slideshow": { "slide_type": "subslide" } }, "outputs": [ { "data": { "image/png": "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", "text/plain": [ "Figure(PyObject
)" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "using PyPlot, Distributions\n", "d1 = Normal(0, 1) # μ=0, σ^2=1\n", "d2 = Normal(3, 2) # μ=3, σ^2=4\n", "\n", "# Calculate the parameters of the product d1*d2\n", "s2_prod = (d1.σ^-2 + d2.σ^-2)^-1\n", "m_prod = s2_prod * ((d1.σ^-2)*d1.μ + (d2.σ^-2)*d2.μ)\n", "d_prod = Normal(m_prod, sqrt(s2_prod)) # Note that we neglect the normalization constant.\n", "\n", "# Plot stuff\n", "x = range(-4, stop=8, length=100)\n", "plot(x, pdf.(d1,x), \"k\")\n", "plot(x, pdf.(d2,x), \"b\")\n", "plot(x, pdf.(d1,x) .* pdf.(d2,x), \"r-\") # Plot the exact product\n", "plot(x, pdf.(d_prod,x), \"r:\") # Plot the normalized Gaussian product\n", "legend([L\"\\mathcal{N}(0,1)\", \n", " L\"\\mathcal{N}(3,4)\", \n", " L\"\\mathcal{N}(0,1) \\mathcal{N}(3,4)\", \n", " L\"Z^{-1} \\mathcal{N}(0,1) \\mathcal{N}(3,4)\"]);" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "fragment" } }, "source": [ "The solid and dotted red curves are identical up to a scaling factor $Z$.\n" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "slide" } }, "source": [ "### Multivariate Gaussian Multiplication\n", "\n", "- In general, the multiplication of two multi-variate Gaussians yields an (unnormalized) Gaussian, see [SRG-6]:\n", "$$\\begin{equation*}\n", "\\mathcal{N}(x|\\mu_a,\\Sigma_a) \\cdot \\mathcal{N}(x|\\mu_b,\\Sigma_b) = \\alpha \\cdot \\mathcal{N}(x|\\mu_c,\\Sigma_c)\n", "\\end{equation*}$$\n", "where\n", "$$\\begin{align*}\n", "\\Sigma_c^{-1} &= \\Sigma_a^{-1} + \\Sigma_b^{-1} \\\\\n", "\\Sigma_c^{-1} \\mu_c &= \\Sigma_a^{-1}\\mu_a + \\Sigma_b^{-1}\\mu_b\n", "\\end{align*}$$\n", "and normalization constant $\\alpha = \\mathcal{N}(\\mu_a|\\, \\mu_b, \\Sigma_a + \\Sigma_b)$." ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "fragment" } }, "source": [ "- If we define the **precision** as $\\Lambda \\equiv \\Sigma^{-1}$, then we see that **precisions add** and **precision-weighted means add** too." ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "fragment" } }, "source": [ "- As we just saw, great application to Bayesian inference!\n", "\n", "$$\\begin{equation*}\n", "\\underbrace{\\text{Gaussian}}_{\\text{posterior}}\n", " \\propto \\underbrace{\\text{Gaussian}}_{\\text{likelihood}} \\times \\underbrace{\\text{Gaussian}}_{\\text{prior}}\n", "\\end{equation*}$$" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "slide" } }, "source": [ "### Conditioning and Marginalization of a Gaussian\n", "\n", "- Let $z = \\begin{bmatrix} x \\\\ y \\end{bmatrix}$ be jointly normal distributed as\n", "\n", "$$\\begin{align*}\n", "p(z) &= \\mathcal{N}(z | \\mu, \\Sigma) \n", " =\\mathcal{N} \\left( \\begin{bmatrix} x \\\\ y \\end{bmatrix} \\left| \\begin{bmatrix} \\mu_x \\\\ \\mu_y \\end{bmatrix}, \n", " \\begin{bmatrix} \\Sigma_x & \\Sigma_{xy} \\\\ \\Sigma_{yx} & \\Sigma_y \\end{bmatrix} \\right. \\right)\n", "\\end{align*}$$" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "fragment" } }, "source": [ "- Since covariance matrices are by definition symmetric, it follows that $\\Sigma_x$ and $\\Sigma_y$ are symmetric and $\\Sigma_{xy} = \\Sigma_{yx}^T$." ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "fragment" } }, "source": [ "- Let's factorize $p(x,y)$ into $p(y|x)\\, p(x)$ through conditioning and marginalization (proof in Bishop pp.87-89)" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "fragment" } }, "source": [ " - **Conditioning**\n", "\n", "$$\\begin{align*}\n", "p(y|x) &= p(x,y)/p(x) \\\\\n", " &= \\mathcal{N}\\left(y|\\mu_y + \\Sigma_{yx}\\Sigma_x^{-1}(x-\\mu_x),\\, \\Sigma_y - \\Sigma_{yx}\\Sigma_x^{-1}\\Sigma_{xy} \\right)\n", "\\end{align*}$$" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "fragment" } }, "source": [ " - **Marginalization**\n", "\n", "$$\n", "p(x) = \\int p(x,y)\\,\\mathrm{d}y = \\mathcal{N}\\left( x|\\mu_x, \\Sigma_x \\right)\n", "$$" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "fragment" } }, "source": [ "- Useful for applications to Bayesian inference in jointly Gaussian systems." ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "slide" } }, "source": [ "#### CODE EXAMPLE\n", "\n", "Interactive plot of the joint, marginal, and conditional distributions." ] }, { "cell_type": "code", "execution_count": 2, "metadata": { "scrolled": false, "slideshow": { "slide_type": "subslide" } }, "outputs": [ { "data": { "text/html": [ " \n" ], "text/plain": [ "HTML{String}(\" \\n\")" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "" ], "text/plain": [ "HTML{String}(\"\")" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "" ], "text/plain": [ "HTML{String}(\"\")" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ " \n" ], "text/plain": [ "HTML{String}(\" \\n\")" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "image/png": "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tBSjRo2q9vyujcmTJ0MURXz44YeYN28etm/fjqFDh6KwsNA35osvvoAkSbjmmmt8fYIg4IMPPkBUVBTuvPNO33fS1KlTcezYMXz00Ud+q0OtWrVC165dI/+7ghEEY+yFF15gANj06dP9+pctW8YAsKVLlzLGGOvWrRu78cYba9zHypUrGQA2b9489vzzzzNRFNm6desueuwjR44wURTZm2++6esrLy9niYmJ7L777qs2/plnnmGiKLKSkpJATpEgwpIlS5YwAGzHjh1s/fr1DADbt28fY4yxK664gk2cOJExxliPHj3YtddeW+t+vF4vU1WVzZo1iyUmJjJd133vZWRkMEmS2IEDB/zmfPnllwwAW7BggV//7NmzGQD2wgsvVJPz2LFjvr5rr72WAWA//vij3/zu3buzG264oVZZNU1jqqqyyZMns379+vm9l5GRwe69995a5zLG2P/93/8xAOytt97y6//73/9+Ubl/+uknBoB9/vnnFzxGdHR0jXKY+7vnnntqfa+ma7R69Wq/sX/5y1+YKIrs+PHjjDHm++zXr1/vN+7YsWMMAFuyZImvb9q0aay2r/eq1++pp56q8TOaMmUKEwTBd0+Yx+nVqxfTNM03bvv27QwAW758eY3Hq3ruY8aM8evfvHkzA8BeeeUVX9/IkSNZ165da9zPDz/8wGRZZo8++ihbvHgxA8DefffdGseOGzeOpaSkXFCucIcscYQf48aN83t95513QpZlrF+/HgCQm5uL5OTkGufeeeedmDJlCp544gm88sorePrppzF8+PCLHrNDhw646aabMH/+fN8yz4cffoj8/PwafwkmJydD13Xk5eUFenoEEdZce+216NixIxYvXoy9e/dix44dtS6lAsB3332HYcOGIS4uDpIkQVEUPP/888jPz8eZM2f8xvbu3RudO3f26/v+++8B8P/typhLu3WhVatWuPLKK6sd6/jx4359H3/8MQYPHoyYmBjIsgxFUbBo0SL89ttvdT6Wifm8qvo8u/vuuy86t1OnTkhISMCTTz6Jf/3rX9i/f3/AxweA2267rc5jHQ4H/vSnP/n13X333dB1HRs3bqzX8evKd999h+7du1f7jCZOnAjGGL777ju//tGjR/utrPTu3RsAqn2etVH1Mxk0aBAyMjJ8nxlw4e+ZwYMH4+9//zvmzZuHKVOmYPz48Zg8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", "text/plain": [ "Figure(PyObject
)" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
\n", "
\n", "WebIO.mount(this.previousSibling,{"props":{},"nodeType":"DOM","type":"node","instanceArgs":{"namespace":"html","tag":"div"},"children":[{"props":{"className":"field"},"nodeType":"DOM","type":"node","instanceArgs":{"namespace":"html","tag":"div"},"children":[{"props":{},"nodeType":"Scope","type":"node","instanceArgs":{"imports":{"data":[{"name":"knockout","type":"js","url":"/assetserver/88bf0b823d344fcff0b77616d12840286b6c8fa3-knockout.js"},{"name":"knockout_punches","type":"js","url":"/assetserver/2bd5b097e96d6b4fb8b3b86c01ec3eb6f00ba8bc-knockout_punches.js"},{"name":null,"type":"js","url":"/assetserver/33fc17ead5d6c83c74b2449f7c19558c51387837-all.js"},{"name":null,"type":"css","url":"/assetserver/f0f1a82ab037979b58e3919f91c0a1436c2b13ea-style.css"},{"name":null,"type":"css","url":"/assetserver/84fa6bb423ab1a438691a358fbcb123d0820e96c-main.css"}],"type":"async_block"},"id":"knockout-component-30d8008c-bf56-4816-9cfe-cf113579ac33","handlers":{"formatted_vals":[(function (val){return (val!=this.model["formatted_vals"]()) ? (this.valueFromJulia["formatted_vals"]=true, this.model["formatted_vals"](val)) : undefined})],"_promises":{"importsLoaded":[function (ko, koPunches) {\n", " ko.punches.enableAll();\n", " ko.bindingHandlers.numericValue = {\n", " init : function(element, valueAccessor, allBindings, data, context) {\n", " var stringified = ko.observable(ko.unwrap(valueAccessor()));\n", " stringified.subscribe(function(value) {\n", " var val = parseFloat(value);\n", " if (!isNaN(val)) {\n", " valueAccessor()(val);\n", " }\n", " })\n", " valueAccessor().subscribe(function(value) {\n", " var str = JSON.stringify(value);\n", " if ((str == "0") && (["-0", "-0."].indexOf(stringified()) >= 0))\n", " return;\n", " if (["null", ""].indexOf(str) >= 0)\n", " return;\n", " stringified(str);\n", " })\n", " ko.applyBindingsToNode(element, { value: stringified, valueUpdate: allBindings.get('valueUpdate')}, context);\n", " }\n", " };\n", " var json_data = JSON.parse("{\\"formatted_vals\\":[\\"-2.0\\",\\"-1.9\\",\\"-1.8\\",\\"-1.7\\",\\"-1.6\\",\\"-1.5\\",\\"-1.4\\",\\"-1.3\\",\\"-1.2\\",\\"-1.1\\",\\"-1.0\\",\\"-0.9\\",\\"-0.8\\",\\"-0.7\\",\\"-0.6\\",\\"-0.5\\",\\"-0.4\\",\\"-0.3\\",\\"-0.2\\",\\"-0.1\\",\\"0.0\\",\\"0.1\\",\\"0.2\\",\\"0.3\\",\\"0.4\\",\\"0.5\\",\\"0.6\\",\\"0.7\\",\\"0.8\\",\\"0.9\\",\\"1.0\\",\\"1.1\\",\\"1.2\\",\\"1.3\\",\\"1.4\\",\\"1.5\\",\\"1.6\\",\\"1.7\\",\\"1.8\\",\\"1.9\\",\\"2.0\\",\\"2.1\\",\\"2.2\\",\\"2.3\\",\\"2.4\\",\\"2.5\\",\\"2.6\\",\\"2.7\\",\\"2.8\\",\\"2.9\\",\\"3.0\\"],\\"changes\\":0,\\"formatted_value\\":\\"0.5\\",\\"index\\":26}");\n", " var self = this;\n", " function AppViewModel() {\n", " for (var key in json_data) {\n", " var el = json_data[key];\n", " this[key] = Array.isArray(el) ? ko.observableArray(el) : ko.observable(el);\n", " }\n", " \n", " \n", " [this["formatted_vals"].subscribe((function (val){!(this.valueFromJulia["formatted_vals"]) ? (WebIO.setval({"name":"formatted_vals","scope":"knockout-component-30d8008c-bf56-4816-9cfe-cf113579ac33","id":"ob_03","type":"observable"},val)) : undefined; return this.valueFromJulia["formatted_vals"]=false}),self),this["changes"].subscribe((function (val){!(this.valueFromJulia["changes"]) ? (WebIO.setval({"name":"changes","scope":"knockout-component-30d8008c-bf56-4816-9cfe-cf113579ac33","id":"ob_05","type":"observable"},val)) : undefined; return this.valueFromJulia["changes"]=false}),self),this["formatted_value"].subscribe((function (val){!(this.valueFromJulia["formatted_value"]) ? (WebIO.setval({"name":"formatted_value","scope":"knockout-component-30d8008c-bf56-4816-9cfe-cf113579ac33","id":"ob_04","type":"observable"},val)) : undefined; return this.valueFromJulia["formatted_value"]=false}),self),this["index"].subscribe((function (val){!(this.valueFromJulia["index"]) ? (WebIO.setval({"name":"index","scope":"knockout-component-30d8008c-bf56-4816-9cfe-cf113579ac33","id":"ob_02","type":"observable"},val)) : undefined; return this.valueFromJulia["index"]=false}),self)]\n", " \n", " }\n", " self.model = new AppViewModel();\n", " self.valueFromJulia = {};\n", " for (var key in json_data) {\n", " self.valueFromJulia[key] = false;\n", " }\n", " ko.applyBindings(self.model, self.dom);\n", "}\n", "]},"changes":[(function (val){return (val!=this.model["changes"]()) ? (this.valueFromJulia["changes"]=true, this.model["changes"](val)) : undefined})],"formatted_value":[(function (val){return (val!=this.model["formatted_value"]()) ? (this.valueFromJulia["formatted_value"]=true, this.model["formatted_value"](val)) : undefined})],"index":[(function (val){return (val!=this.model["index"]()) ? (this.valueFromJulia["index"]=true, this.model["index"](val)) : undefined}),(function (val){return WebIO.setval({"name":"formatted_value","scope":"knockout-component-30d8008c-bf56-4816-9cfe-cf113579ac33","id":"ob_04","type":"observable"},WebIO.getval({"name":"formatted_vals","scope":"knockout-component-30d8008c-bf56-4816-9cfe-cf113579ac33","id":"ob_03","type":"observable"})[(WebIO.getval({"name":"index","scope":"knockout-component-30d8008c-bf56-4816-9cfe-cf113579ac33","id":"ob_02","type":"observable"})-1)])})]},"systemjs_options":null,"observables":{"formatted_vals":{"sync":false,"id":"ob_03","value":["-2.0","-1.9","-1.8","-1.7","-1.6","-1.5","-1.4","-1.3","-1.2","-1.1","-1.0","-0.9","-0.8","-0.7","-0.6","-0.5","-0.4","-0.3","-0.2","-0.1","0.0","0.1","0.2","0.3","0.4","0.5","0.6","0.7","0.8","0.9","1.0","1.1","1.2","1.3","1.4","1.5","1.6","1.7","1.8","1.9","2.0","2.1","2.2","2.3","2.4","2.5","2.6","2.7","2.8","2.9","3.0"]},"changes":{"sync":false,"id":"ob_05","value":0},"formatted_value":{"sync":false,"id":"ob_04","value":"0.5"},"index":{"sync":true,"id":"ob_02","value":26}}},"children":[{"props":{"attributes":{"class":"interact-flex-row"}},"nodeType":"DOM","type":"node","instanceArgs":{"namespace":"html","tag":"div"},"children":[{"props":{"attributes":{"class":"interact-flex-row-left"}},"nodeType":"DOM","type":"node","instanceArgs":{"namespace":"html","tag":"div"},"children":[{"props":{"className":"interact ","style":{"padding":"5px 10px 0px 10px"}},"nodeType":"DOM","type":"node","instanceArgs":{"namespace":"html","tag":"label"},"children":["x"]}]},{"props":{"attributes":{"class":"interact-flex-row-center"}},"nodeType":"DOM","type":"node","instanceArgs":{"namespace":"html","tag":"div"},"children":[{"props":{"max":51,"min":1,"attributes":{"type":"range","data-bind":"numericValue: index, valueUpdate: 'input', event: {change : function () {this.changes(this.changes()+1)}}","orient":"horizontal"},"step":1,"className":"slider slider is-fullwidth","style":{}},"nodeType":"DOM","type":"node","instanceArgs":{"namespace":"html","tag":"input"},"children":[]}]},{"props":{"attributes":{"class":"interact-flex-row-right"}},"nodeType":"DOM","type":"node","instanceArgs":{"namespace":"html","tag":"div"},"children":[{"props":{"attributes":{"data-bind":"text: formatted_value"}},"nodeType":"DOM","type":"node","instanceArgs":{"namespace":"html","tag":"p"},"children":[]}]}]}]}]},{"props":{},"nodeType":"Scope","type":"node","instanceArgs":{"imports":{"data":[],"type":"async_block"},"id":"scope-d3f67043-9dd8-45a9-baa9-1c47877330d6","handlers":{"obs-output":[function (updated_htmlstr) {\n", " var el = this.dom.querySelector("#out");\n", " WebIO.propUtils.setInnerHtml(el, updated_htmlstr);\n", "}]},"systemjs_options":null,"observables":{"obs-output":{"sync":false,"id":"ob_08","value":"<div class='display:none'></div><unsafe-script style='display:none'>\\nWebIO.mount(this.previousSibling,{&quot;props&quot;:{&quot;attributes&quot;:{&quot;class&quot;:&quot;interact-flex-row&quot;}},&quot;nodeType&quot;:&quot;DOM&quot;,&quot;type&quot;:&quot;node&quot;,&quot;instanceArgs&quot;:{&quot;namespace&quot;:&quot;html&quot;,&quot;tag&quot;:&quot;div&quot;},&quot;children&quot;:[{&quot;props&quot;:{&quot;setInnerHtml&quot;:&quot;&lt;img src=&#39;data:image/png;base64,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&#39;&gt;&lt;/img&gt;&quot;},&quot;nodeType&quot;:&quot;DOM&quot;,&quot;type&quot;:&quot;node&quot;,&quot;instanceArgs&quot;:{&quot;namespace&quot;:&quot;html&quot;,&quot;tag&quot;:&quot;div&quot;},&quot;children&quot;:[]}]})</unsafe-script>"}}},"children":[{"props":{"id":"out","setInnerHtml":"<div class='display:none'></div><unsafe-script style='display:none'>\\nWebIO.mount(this.previousSibling,{&quot;props&quot;:{&quot;attributes&quot;:{&quot;class&quot;:&quot;interact-flex-row&quot;}},&quot;nodeType&quot;:&quot;DOM&quot;,&quot;type&quot;:&quot;node&quot;,&quot;instanceArgs&quot;:{&quot;namespace&quot;:&quot;html&quot;,&quot;tag&quot;:&quot;div&quot;},&quot;children&quot;:[{&quot;props&quot;:{&quot;setInnerHtml&quot;:&quot;&lt;img src=&#39;data:image/png;base64,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&#39;&gt;&lt;/img&gt;&quot;},&quot;nodeType&quot;:&quot;DOM&quot;,&quot;type&quot;:&quot;node&quot;,&quot;instanceArgs&quot;:{&quot;namespace&quot;:&quot;html&quot;,&quot;tag&quot;:&quot;div&quot;},&quot;children&quot;:[]}]})</unsafe-script>"},"nodeType":"DOM","type":"node","instanceArgs":{"namespace":"html","tag":"div"},"children":[]}]}]})\n", "
" ], "text/plain": [ "Widget{:manipulate,Any}(OrderedDict{Symbol,Any}(:x=>Widget{:slider,Float64}(OrderedDict{Symbol,Any}(:changes=>Observable{Int64} with 1 listeners. Value:\n", "0,:index=>Observable{Any} with 2 listeners. Value:\n", "26,:formatted_vals=>Observable{Any} with 1 listeners. Value:\n", "[\"-2.0\", \"-1.9\", \"-1.8\", \"-1.7\", \"-1.6\", \"-1.5\", \"-1.4\", \"-1.3\", \"-1.2\", \"-1.1\" … \"2.1\", \"2.2\", \"2.3\", \"2.4\", \"2.5\", \"2.6\", \"2.7\", \"2.8\", \"2.9\", \"3.0\"],:formatted_value=>Observable{String} with 1 listeners. Value:\n", "\"0.5\",:value=>Observable{Float64} with 2 listeners. Value:\n", "0.5), Observable{Float64} with 2 listeners. Value:\n", "0.5, Scope(\"knockout-component-30d8008c-bf56-4816-9cfe-cf113579ac33\", Node{DOM}(DOM(:html, :div), Any[Node{DOM}(DOM(:html, :div), Any[Node{DOM}(DOM(:html, :label), Any[\"x\"], Dict{Symbol,Any}(:className=>\"interact \",:style=>Dict{Any,Any}(:padding=>\"5px 10px 0px 10px\")), 1)], Dict{Symbol,Any}(:attributes=>Dict(\"class\"=>\"interact-flex-row-left\")), 2), Node{DOM}(DOM(:html, :div), Any[Node{DOM}(DOM(:html, :input), Any[], Dict{Symbol,Any}(:max=>51,:min=>1,:attributes=>Dict{Any,Any}(:type=>\"range\",Symbol(\"data-bind\")=>\"numericValue: index, valueUpdate: 'input', event: {change : function () {this.changes(this.changes()+1)}}\",\"orient\"=>\"horizontal\"),:step=>1,:className=>\"slider slider is-fullwidth\",:style=>Dict{Any,Any}()), 0)], Dict{Symbol,Any}(:attributes=>Dict(\"class\"=>\"interact-flex-row-center\")), 1), Node{DOM}(DOM(:html, :div), Any[Node{DOM}(DOM(:html, :p), Any[], Dict{Symbol,Any}(:attributes=>Dict(\"data-bind\"=>\"text: formatted_value\")), 0)], Dict{Symbol,Any}(:attributes=>Dict(\"class\"=>\"interact-flex-row-right\")), 1)], Dict{Symbol,Any}(:attributes=>Dict(\"class\"=>\"interact-flex-row\")), 7), Dict{String,Tuple{Observables.AbstractObservable,Union{Nothing, Bool}}}(\"formatted_vals\"=>(Observable{Any} with 1 listeners. Value:\n", "[\"-2.0\", \"-1.9\", \"-1.8\", \"-1.7\", \"-1.6\", \"-1.5\", \"-1.4\", \"-1.3\", \"-1.2\", \"-1.1\" … \"2.1\", \"2.2\", \"2.3\", \"2.4\", \"2.5\", \"2.6\", \"2.7\", \"2.8\", \"2.9\", \"3.0\"], nothing),\"changes\"=>(Observable{Int64} with 1 listeners. Value:\n", "0, nothing),\"formatted_value\"=>(Observable{String} with 1 listeners. Value:\n", "\"0.5\", nothing),\"index\"=>(Observable{Any} with 2 listeners. Value:\n", "26, nothing)), Set(String[]), nothing, Any[\"knockout\"=>\"/Users/bert/.julia/packages/Knockout/JIqpG/src/../assets/knockout.js\", \"knockout_punches\"=>\"/Users/bert/.julia/packages/Knockout/JIqpG/src/../assets/knockout_punches.js\", \"/Users/bert/.julia/packages/InteractBase/3SqBl/src/../assets/all.js\", \"/Users/bert/.julia/packages/InteractBase/3SqBl/src/../assets/style.css\", \"/Users/bert/.julia/packages/InteractBulma/Ohu5Y/src/../assets/main.css\"], Dict{Any,Any}(\"formatted_vals\"=>Any[JSString(\"(function (val){return (val!=this.model[\\\"formatted_vals\\\"]()) ? (this.valueFromJulia[\\\"formatted_vals\\\"]=true, this.model[\\\"formatted_vals\\\"](val)) : undefined})\")],\"_promises\"=>Dict{Any,Any}(\"importsLoaded\"=>Any[JSString(\"function (ko, koPunches) {\\n ko.punches.enableAll();\\n ko.bindingHandlers.numericValue = {\\n init : function(element, valueAccessor, allBindings, data, context) {\\n var stringified = ko.observable(ko.unwrap(valueAccessor()));\\n stringified.subscribe(function(value) {\\n var val = parseFloat(value);\\n if (!isNaN(val)) {\\n valueAccessor()(val);\\n }\\n })\\n valueAccessor().subscribe(function(value) {\\n var str = JSON.stringify(value);\\n if ((str == \\\"0\\\") && ([\\\"-0\\\", \\\"-0.\\\"].indexOf(stringified()) >= 0))\\n return;\\n if ([\\\"null\\\", \\\"\\\"].indexOf(str) >= 0)\\n return;\\n stringified(str);\\n })\\n ko.applyBindingsToNode(element, { value: stringified, valueUpdate: allBindings.get('valueUpdate')}, context);\\n }\\n };\\n var json_data = JSON.parse(\\\"{\\\\\\\"formatted_vals\\\\\\\":[\\\\\\\"-2.0\\\\\\\",\\\\\\\"-1.9\\\\\\\",\\\\\\\"-1.8\\\\\\\",\\\\\\\"-1.7\\\\\\\",\\\\\\\"-1.6\\\\\\\",\\\\\\\"-1.5\\\\\\\",\\\\\\\"-1.4\\\\\\\",\\\\\\\"-1.3\\\\\\\",\\\\\\\"-1.2\\\\\\\",\\\\\\\"-1.1\\\\\\\",\\\\\\\"-1.0\\\\\\\",\\\\\\\"-0.9\\\\\\\",\\\\\\\"-0.8\\\\\\\",\\\\\\\"-0.7\\\\\\\",\\\\\\\"-0.6\\\\\\\",\\\\\\\"-0.5\\\\\\\",\\\\\\\"-0.4\\\\\\\",\\\\\\\"-0.3\\\\\\\",\\\\\\\"-0.2\\\\\\\",\\\\\\\"-0.1\\\\\\\",\\\\\\\"0.0\\\\\\\",\\\\\\\"0.1\\\\\\\",\\\\\\\"0.2\\\\\\\",\\\\\\\"0.3\\\\\\\",\\\\\\\"0.4\\\\\\\",\\\\\\\"0.5\\\\\\\",\\\\\\\"0.6\\\\\\\",\\\\\\\"0.7\\\\\\\",\\\\\\\"0.8\\\\\\\",\\\\\\\"0.9\\\\\\\",\\\\\\\"1.0\\\\\\\",\\\\\\\"1.1\\\\\\\",\\\\\\\"1.2\\\\\\\",\\\\\\\"1.3\\\\\\\",\\\\\\\"1.4\\\\\\\",\\\\\\\"1.5\\\\\\\",\\\\\\\"1.6\\\\\\\",\\\\\\\"1.7\\\\\\\",\\\\\\\"1.8\\\\\\\",\\\\\\\"1.9\\\\\\\",\\\\\\\"2.0\\\\\\\",\\\\\\\"2.1\\\\\\\",\\\\\\\"2.2\\\\\\\",\\\\\\\"2.3\\\\\\\",\\\\\\\"2.4\\\\\\\",\\\\\\\"2.5\\\\\\\",\\\\\\\"2.6\\\\\\\",\\\\\\\"2.7\\\\\\\",\\\\\\\"2.8\\\\\\\",\\\\\\\"2.9\\\\\\\",\\\\\\\"3.0\\\\\\\"],\\\\\\\"changes\\\\\\\":0,\\\\\\\"formatted_value\\\\\\\":\\\\\\\"0.5\\\\\\\",\\\\\\\"index\\\\\\\":26}\\\");\\n var self = this;\\n function AppViewModel() {\\n for (var key in json_data) {\\n var el = json_data[key];\\n this[key] = Array.isArray(el) ? ko.observableArray(el) : ko.observable(el);\\n }\\n \\n \\n [this[\\\"formatted_vals\\\"].subscribe((function (val){!(this.valueFromJulia[\\\"formatted_vals\\\"]) ? (WebIO.setval({\\\"name\\\":\\\"formatted_vals\\\",\\\"scope\\\":\\\"knockout-component-30d8008c-bf56-4816-9cfe-cf113579ac33\\\",\\\"id\\\":\\\"ob_03\\\",\\\"type\\\":\\\"observable\\\"},val)) : undefined; return this.valueFromJulia[\\\"formatted_vals\\\"]=false}),self),this[\\\"changes\\\"].subscribe((function (val){!(this.valueFromJulia[\\\"changes\\\"]) ? (WebIO.setval({\\\"name\\\":\\\"changes\\\",\\\"scope\\\":\\\"knockout-component-30d8008c-bf56-4816-9cfe-cf113579ac33\\\",\\\"id\\\":\\\"ob_05\\\",\\\"type\\\":\\\"observable\\\"},val)) : undefined; return this.valueFromJulia[\\\"changes\\\"]=false}),self),this[\\\"formatted_value\\\"].subscribe((function (val){!(this.valueFromJulia[\\\"formatted_value\\\"]) ? (WebIO.setval({\\\"name\\\":\\\"formatted_value\\\",\\\"scope\\\":\\\"knockout-component-30d8008c-bf56-4816-9cfe-cf113579ac33\\\",\\\"id\\\":\\\"ob_04\\\",\\\"type\\\":\\\"observable\\\"},val)) : undefined; return this.valueFromJulia[\\\"formatted_value\\\"]=false}),self),this[\\\"index\\\"].subscribe((function (val){!(this.valueFromJulia[\\\"index\\\"]) ? (WebIO.setval({\\\"name\\\":\\\"index\\\",\\\"scope\\\":\\\"knockout-component-30d8008c-bf56-4816-9cfe-cf113579ac33\\\",\\\"id\\\":\\\"ob_02\\\",\\\"type\\\":\\\"observable\\\"},val)) : undefined; return this.valueFromJulia[\\\"index\\\"]=false}),self)]\\n \\n }\\n self.model = new AppViewModel();\\n self.valueFromJulia = {};\\n for (var key in json_data) {\\n self.valueFromJulia[key] = false;\\n }\\n ko.applyBindings(self.model, self.dom);\\n}\\n\")]),\"changes\"=>Any[JSString(\"(function (val){return (val!=this.model[\\\"changes\\\"]()) ? (this.valueFromJulia[\\\"changes\\\"]=true, this.model[\\\"changes\\\"](val)) : undefined})\")],\"formatted_value\"=>Any[JSString(\"(function (val){return (val!=this.model[\\\"formatted_value\\\"]()) ? (this.valueFromJulia[\\\"formatted_value\\\"]=true, this.model[\\\"formatted_value\\\"](val)) : undefined})\")],\"index\"=>Any[JSString(\"(function (val){return (val!=this.model[\\\"index\\\"]()) ? (this.valueFromJulia[\\\"index\\\"]=true, this.model[\\\"index\\\"](val)) : undefined})\"), JSString(\"(function (val){return WebIO.setval({\\\"name\\\":\\\"formatted_value\\\",\\\"scope\\\":\\\"knockout-component-30d8008c-bf56-4816-9cfe-cf113579ac33\\\",\\\"id\\\":\\\"ob_04\\\",\\\"type\\\":\\\"observable\\\"},WebIO.getval({\\\"name\\\":\\\"formatted_vals\\\",\\\"scope\\\":\\\"knockout-component-30d8008c-bf56-4816-9cfe-cf113579ac33\\\",\\\"id\\\":\\\"ob_03\\\",\\\"type\\\":\\\"observable\\\"})[(WebIO.getval({\\\"name\\\":\\\"index\\\",\\\"scope\\\":\\\"knockout-component-30d8008c-bf56-4816-9cfe-cf113579ac33\\\",\\\"id\\\":\\\"ob_02\\\",\\\"type\\\":\\\"observable\\\"})-1)])})\")]), ConnectionPool(Channel{Any}(sz_max:9223372036854775807,sz_curr:4), Set(AbstractConnection[]), Channel{AbstractConnection}(sz_max:32,sz_curr:0))), ##52#53{#dom#15{##dom#13#14{Dict{Any,Any},DOM}},typeof(scope)}(#dom#15{##dom#13#14{Dict{Any,Any},DOM}}(##dom#13#14{Dict{Any,Any},DOM}(Dict{Any,Any}(:className=>\"field\"), DOM(:html, :div))), scope))), Observable{Any} with 0 listeners. Value:\n", "Figure(PyObject
), nothing, getfield(Main, Symbol(\"##5#8\")){Observable{Any}}(Observable{Any} with 0 listeners. Value:\n", "Figure(PyObject
)))" ] }, "execution_count": 2, "metadata": {}, "output_type": "execute_result" } ], "source": [ "using Reactive, Interact, PyPlot, Distributions\n", "\n", "# z = [x; y]\n", "μ = [1.; 2.]\n", "Σ = [0.3 0.7;\n", " 0.7 2.0]\n", "joint = MvNormal(μ,Σ)\n", "marginal_x = Normal(μ[1], sqrt(Σ[1,1]))\n", "\n", "#Plot p(x,y)\n", "subplot(221)\n", "joint_pdf = Matrix{Float64}(undef, 100,100)\n", "x_range = range(-2,stop=5,length=100); y_range = range(-2,stop=5,length=100)\n", "for i=1:length(x_range)\n", " for j=1:length(y_range)\n", " joint_pdf[j,i] = pdf(joint, [x_range[i];y_range[j]])\n", " end\n", "end\n", "\n", "imshow(joint_pdf, origin=\"lower\", extent=[x_range[1], x_range[end], y_range[1], y_range[end]])\n", "grid(); xlabel(\"x\"); ylabel(\"y\"); title(\"p(x,y)\"); tight_layout()\n", "\n", "# Plot p(x)\n", "subplot(222)\n", "plot(range(-2,stop=5,length=100), pdf.(marginal_x, range(-2,stop=5,length=100)))\n", "grid(); xlabel(\"x\"); ylabel(\"p(x)\"); title(\"Marginal distribution p(x)\"); tight_layout()\n", "\n", "f = figure()\n", "@manipulate for x=-2:0.1:3; withfig(f) do\n", " conditional_y_m = μ[2]+Σ[2,1]*inv(Σ[1,1])*(x-μ[1])\n", " conditional_y_s2 = Σ[2,2] - Σ[2,1]*inv(Σ[1,1])*Σ[1,2]\n", " conditional_y = Normal(conditional_y_m, sqrt.(conditional_y_s2))\n", "\n", " # Plot p(y|x)\n", "# subplot(223)\n", " plot(range(-2,stop=5,length=100), pdf.(conditional_y, range(-2,stop=5,length=100)))\n", " grid(); xlabel(\"y\"); ylabel(\"p(y|x)\"); title(\"Conditional distribution p(y|x)\"); tight_layout()\n", " end\n", "end" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "fragment" } }, "source": [ "As is clear from the plots, the conditional distribution is a renormalized slice from the joint distribution.\n" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "slide" } }, "source": [ "### Example: Conditioning of Gaussian\n", "\n", "- Consider (again) the system \n", "\n", "$$\\begin{align*}\n", "x &= \\theta + \\epsilon \\\\\n", "\\theta &\\sim \\mathcal{N}(\\theta|\\mu_\\theta,\\sigma_\\theta^2) \\\\\n", "\\epsilon &\\sim \\mathcal{N}(\\epsilon|0,\\sigma^2_{\\epsilon})\n", "\\end{align*}$$" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "fragment" } }, "source": [ "- This system is equivalent to (derive this!)\n", "\n", "$$\n", "p(x,\\theta|\\,\\mu,\\sigma) = \\mathcal{N} \\left( \\begin{bmatrix} x\\\\ \n", " \\theta \\end{bmatrix} \n", " \\left| \\begin{bmatrix} \\mu_\\theta\\\\ \n", " \\mu_\\theta\\end{bmatrix}, \n", " \\begin{bmatrix} \\sigma_\\theta^2+\\sigma_{\\epsilon}^2 & \\sigma_\\theta^2\\\\ \n", " \\sigma_\\theta^2 &\\sigma_\\theta^2 \n", " \\end{bmatrix} \n", " \\right. \\right)\n", "$$" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "fragment" } }, "source": [ "- Direct substitution of the rule for Gaussian conditioning leads to (derive this yourself!)\n", "$$\\begin{align*}\n", "p(\\theta|x) &= \\mathcal{N} \\left( \\theta\\,|\\,\\mu_{\\theta|x}, \\sigma_{\\theta|x}^2 \\right)\\,, \\quad\n", "\\text{with} \\\\\n", "K &= \\frac{\\sigma_\\theta^2}{\\sigma_\\theta^2+\\sigma_{\\epsilon}^2} \\qquad \\text{($K$ is called: Kalman gain)}\\\\\n", "\\mu_{\\theta|x} &= \\mu_\\theta + K \\cdot (x-\\mu_\\theta)\\\\\n", "\\sigma_{\\theta|x}^2 &= \\left( 1-K \\right) \\sigma_\\theta^2 \n", "\\end{align*}$$\n", " " ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "fragment" } }, "source": [ "\n", "$\\longrightarrow$ Moral: For jointly Gaussian systems, we can do inference simply in one step by using the formulas for conditioning and marginalization." ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "slide" } }, "source": [ "### Application: Recursive Bayesian Estimation\n", "\n", "Now consider the signal $x_t=\\theta+\\epsilon_t$, where $D_t= \\left\\{x_1,\\ldots,x_t\\right\\}$ is observed _sequentially_ (over time).\n", "\n", "[Question]\n", "- Derive a recursive algorithm for $p(\\theta|D_t)$, i.e., an update rule for (posterior) $p(\\theta|D_t)$ based on (prior) $p(\\theta|D_{t-1})$ and (new observation) $x_t$.\n", " " ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "fragment" } }, "source": [ "[Answer] \n", "\n", "- Let's define the estimate after $t$ observations (i.e., our solution) as $p(\\theta|D_t) = \\mathcal{N}(\\theta\\,|\\,\\mu_t,\\sigma_t^2)$." ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "fragment" } }, "source": [ "- **Model specification**. We define the joint distribution for $\\theta$ and $x_t$, given background $D_{t-1}$, by\n", "$$\\begin{align*} p(x_t,\\theta \\,|\\, D_{t-1}) &= p(x_t|\\theta) \\, p(\\theta|D_{t-1}) \\\\\n", " &= \\underbrace{\\mathcal{N}(x_t\\,|\\, \\theta,\\sigma^2_{\\epsilon})}_{\\text{likelihood}} \\, \\underbrace{\\mathcal{N}(\\theta\\,|\\,\\mu_{t-1},\\sigma_{t-1}^2)}_{\\text{prior}}\n", "\\end{align*}$$\n", " " ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "subslide" } }, "source": [ " \n", "- **Inference**. Use Bayes rule,\n", "$$\\begin{align*}\n", "p(\\theta|D_t) &\\propto p(x_t|\\theta) \\, p(\\theta|D_{t-1}) \\\\\n", " &= \\mathcal{N}(x_t|\\theta,\\sigma^2_{\\epsilon}) \\, \\mathcal{N}(\\theta\\,|\\,\\mu_{t-1},\\sigma_{t-1}^2) \\\\\n", " &= \\mathcal{N}(\\theta|x_t,\\sigma^2_{\\epsilon}) \\, \\mathcal{N}(\\theta\\,|\\,\\mu_{t-1},\\sigma_{t-1}^2) \\\\\n", " &= \\mathcal{N}(\\theta|\\mu_t,\\sigma_t^2)\n", "\\end{align*}$$\n", "with\n", "$$\\begin{align*}\n", "K_t &= \\frac{\\sigma_{t-1}^2}{\\sigma_{t-1}^2+\\sigma_{\\epsilon}^2} \\qquad \\text{(Kalman gain)}\\\\\n", "\\mu_t &= \\mu_{t-1} + K_t \\cdot (x_t-\\mu_{t-1})\\\\\n", "\\sigma_t^2 &= \\left( 1-K_t \\right) \\sigma_{t-1}^2 \n", "\\end{align*}$$\n", "(as before, we used the formulas for conditioning in a multivariate Gaussian system). " ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "fragment" } }, "source": [ "- This linear _sequential_ estimator of mean and variance in Gaussian observations is called a **Kalman Filter**.\n", "\n", " " ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "fragment" } }, "source": [ "- Note that the uncertainty about $\\theta$ decreases over time (since $0<(1-K_t)<1$). This makes sense: since we assume that the statistics of the system do not change (stationarity), each new sample provides new information. " ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "fragment" } }, "source": [ "- Recursive Bayesian estimation is the basis for **adaptive signal processing** algorithms such as Least Mean Squares (LMS) and Recursive Least Squares (RLS). " ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "slide" } }, "source": [ "#### CODE EXAMPLE\n", "\n", "Let's implement the Kalman filter described above. We'll use it to recursively estimate the value of $\\theta$ based on noisy observations. Use the 'Step' button to see the recursive updates to the posterior $p(\\theta|D)$." ] }, { "cell_type": "code", "execution_count": 3, "metadata": { "slideshow": { "slide_type": "subslide" } }, "outputs": [ { "data": { "image/png": "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", "text/plain": [ "Figure(PyObject
)" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "using PyPlot, Reactive, Interact\n", "\n", "interactive_plot = false # Set to true to generate an interactive plot with 'step' button\n", "N = 50 # Number of observations\n", "θ = 2.0 # True value of the variable we want to estimate\n", "σ_ϵ2 = 0.25 # Observation noise variance\n", "x = sqrt(σ_ϵ2) * randn(N) .+ θ # Generate N noisy observations of θ\n", "\n", "f = figure()\n", "global t = 0\n", "global μ = fill!(Vector{Float64}(undef,N), NaN) # Means of p(θ|D) over time\n", "global σ_μ2 = fill!(Vector{Float64}(undef,N), NaN) # Variances of p(θ|D) over time\n", "\n", "function performKalmanStep()\n", " # Perform a Kalman filter step, update t, μ, σ_μ2\n", " global t += 1\n", " if t>1 # Use posterior from prev. step as prior\n", " K = σ_μ2[t-1] / (σ_ϵ2 + σ_μ2[t-1]) # Kalman gain\n", " μ[t] = μ[t-1] + K*(x[t] - μ[t-1]) # Update mean using (1)\n", " σ_μ2[t] = σ_μ2[t-1] * (1.0-K) # Update variance using (2)\n", " elseif t==1 # Use prior\n", " # Prior p(θ) = N(0,1000)\n", " K = 1000.0 / (σ_ϵ2 + 1000.0) # Kalman gain\n", " μ[t] = 0 + K*(x[t] - 0) # Update mean using (1)\n", " σ_μ2[t] = 1000 * (1.0-K) # Update variance using (2)\n", " end\n", "end\n", "\n", "function plotStatus()\n", " # Plot the 'true' value of θ, noisy observations x, and the recursively updated posterior p(θ|D)\n", " t = collect(1:N)\n", " plot(t, θ*ones(N), \"k--\")\n", " plot(t, x, \"rx\")\n", " plot(t, μ, \"b-\")\n", " fill_between(t, μ-sqrt.(σ_μ2), μ+sqrt.(σ_μ2), color=\"b\", alpha=0.3)\n", " legend([L\"\\theta\", L\"x[t]\", L\"\\mu[t]\"])\n", " xlim((1, N)); xlabel(L\"t\"); grid()\n", "end\n", "\n", "if interactive_plot\n", " @manipulate for \n", " perform_step = button(\"Step\");\n", " withfig(f) do\n", " if t<=N\n", " performKalmanStep()\n", " plotStatus()\n", " end\n", " end\n", " end \n", "else\n", " while t)" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "using PyPlot, Distributions, SpecialFunctions\n", "X = Normal(0,1)\n", "pdf_product_std_normals(z::Vector) = (besselk.(0, abs.(z))./π)\n", "range1 = collect(range(-4,stop=4,length=100))\n", "plot(range1, pdf.(X, range1))\n", "plot(range1, pdf_product_std_normals(range1))\n", "legend([L\"p(X)=p(Y)=\\mathcal{N}(0,1)\", L\"p(Z)\"]);" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "slide" } }, "source": [ "### Review Gaussians\n", "\n", "The success of Gaussian distributions in probabilistic modeling is large due to the following properties:" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "fragment" } }, "source": [ "- A linear transformation of a Gaussian distributed variable is also Gaussian distributed" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "fragment" } }, "source": [ "- The convolution of two Gaussian functions is another Gaussian function (use in sum of 2 variables)" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "fragment" } }, "source": [ "- The product of two Gaussian functions is another Gaussian function (use in Bayes rule). " ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "fragment" } }, "source": [ "- Conditioning and marginalization of multivariate Gaussian distributions produce Gaussians again (use in working with observations and when doing Bayesian predictions)" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "fragment" } }, "source": [ "- The Gaussian PDF has higher entropy than any other with the same variance. (Not discussed in this course).\n", "\n", "- Any smooth function with single rounded maximum, if raised to higher and higher powers, goes into a Gaussian function. (Not discussed)." ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "slide" } }, "source": [ "### Some Useful Matrix Calculus\n", "\n", "Aside from working with Gaussians, it will be helpful for the next lessons to be familiar with some matrix calculus. We shortly recapitulate used formulas here. " ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "fragment" } }, "source": [ "- We define the **gradient** of a scalar function $f(A)$ w.r.t. an $n \\times k$ matrix $A$ as\n", "$$\n", "\\nabla_A f \\triangleq\n", " \\begin{bmatrix}\n", "\\frac{\\partial{f}}{\\partial a_{11}} & \\frac{\\partial{f}}{\\partial a_{12}} & \\cdots & \\frac{\\partial{f}}{\\partial a_{1k}}\\\\\n", "\\frac{\\partial{f}}{\\partial a_{21}} & \\frac{\\partial{f}}{\\partial a_{22}} & \\cdots & \\frac{\\partial{f}}{\\partial a_{2k}}\\\\\n", "\\vdots & \\vdots & \\cdots & \\vdots\\\\\n", "\\frac{\\partial{f}}{\\partial a_{n1}} & \\frac{\\partial{f}}{\\partial a_{n2}} & \\cdots & \\frac{\\partial{f}}{\\partial a_{nk}}\n", " \\end{bmatrix}\n", "$$\n", " " ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "fragment" } }, "source": [ " \n", "- The following formulas are useful (see Bishop App.-C)\n", "$$\\begin{align*}\n", "|A^{-1}|&=|A|^{-1} \\tag{B-C.4} \\\\\n", "\\nabla_A \\log |A| &= (A^{T})^{-1} = (A^{-1})^T \\tag{B-C.28} \\\\\n", "\\mathrm{Tr}[ABC]&= \\mathrm{Tr}[CAB] = \\mathrm{Tr}[BCA] \\tag{B-C.9} \\\\\n", "\\nabla_A \\mathrm{Tr}[AB] &=\\nabla_A \\mathrm{Tr}[BA]= B^T \\tag{B-C.25} \\\\\n", "\\nabla_A \\mathrm{Tr}[ABA^T] &= A(B+B^T) \\tag{B-C.27}\\\\\n", " \\nabla_x x^TAx &= (A+A^T)x \\tag{from B-C.27}\\\\\n", "\\nabla_X a^TXb &= \\nabla_X \\mathrm{Tr}[ba^TX] = ab^T \\notag\n", "\\end{align*}$$" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "slide" } }, "source": [ "### What's Next?\n", "\n", "- We discussed how Bayesian probability theory provides an integrated framework for making predictions based on observed data." ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "fragment" } }, "source": [ "- The process involves model specification (your main task!), inference and actual model-based prediction." ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "fragment" } }, "source": [ "- The latter two tasks are only difficult because of computational issues." ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "fragment" } }, "source": [ "- Maximum likelihood was introduced as a computationally simpler approximation to the Bayesian approach." ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "fragment" } }, "source": [ "- In particular under some linear Gaussian assumptions, a few interesting models can be designed." ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "fragment" } }, "source": [ "- The rest of this course (part-1) concerns introduction to these Linear Gaussian models." ] }, { "cell_type": "code", "execution_count": 5, "metadata": { "slideshow": { "slide_type": "skip" } }, "outputs": [ { "data": { "text/html": [ "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "open(\"../../styles/aipstyle.html\") do f\n", " display(\"text/html\", read(f, String))\n", "end" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [] } ], "metadata": { "@webio": { "lastCommId": "28b2cce9fe2c4608810427288c6c6e0a", "lastKernelId": "11552e6c-9ed2-4354-8bae-4918120a66e2" }, "anaconda-cloud": {}, "celltoolbar": "Slideshow", "kernelspec": { "display_name": "Julia 1.1.0", "language": "julia", "name": "julia-1.1" }, "language_info": { "file_extension": ".jl", "mimetype": "application/julia", "name": "julia", "version": "1.1.0" }, "widgets": { "state": { "3e8b6f2f-6500-4ec7-963f-2db519e88817": { "views": [ { "cell_index": 11 } ] } }, "version": "1.2.0" } }, "nbformat": 4, "nbformat_minor": 1 }