Edits for conciseness.
This commit is contained in:
1 parent
daf7ae26e6
commit
005fe0618c
1 file changed
+51
-59
+51
-59
@@ -28,7 +28,7 @@
|
||||
"@import url('http://fonts.googleapis.com/css?family=Source+Code+Pro');\n",
|
||||
"@import url('http://fonts.googleapis.com/css?family=Vollkorn');\n",
|
||||
"@import url('http://fonts.googleapis.com/css?family=Arimo');\n",
|
||||
"@import url('http://fonts.googleapis.com/css?family=Fira_sans');\n",
|
||||
"@import url('http://fonts.googleapis.com/css?family=Fira+sans');\n",
|
||||
"\n",
|
||||
".CodeMirror pre {\n",
|
||||
" font-family: 'Source Code Pro', Consolas, monocco, monospace;\n",
|
||||
@@ -42,7 +42,7 @@
|
||||
" background: transparent;\n",
|
||||
" color: #000000;\n",
|
||||
" font-weight: 600;\n",
|
||||
" font-size: 11pt;\n",
|
||||
" font-size: 12pt;\n",
|
||||
" font-style: bold;\n",
|
||||
" font-family: 'Source Code Pro', Consolas, monocco, monospace;\n",
|
||||
" }\n",
|
||||
@@ -123,11 +123,10 @@
|
||||
" white-space: nowrap;\n",
|
||||
" }\n",
|
||||
" div.text_cell_render{\n",
|
||||
" font-family: 'Fira sans', verdana,arial,sans-serif;\n",
|
||||
" /*font-family: 'Vollkorn', verdana,arial,sans-serif;*/\n",
|
||||
" line-height: 150%;\n",
|
||||
" font-size: 110%;\n",
|
||||
" font-weight: 400;\n",
|
||||
" text-align:justify;\n",
|
||||
" font-size: 130%;\n",
|
||||
" text-align: justify;\n",
|
||||
" text-justify:inter-word;\n",
|
||||
" }\n",
|
||||
" div.output_subarea.output_text.output_pyout {\n",
|
||||
@@ -288,7 +287,7 @@
|
||||
"source": [
|
||||
"The last chapter ended by discussing some of the drawbacks of the Discrete Bayesian filter. For many tracking and filtering problems our desire is to have a filter that is *unimodal* and *continuous*. That is, we want to model our system using floating point math (continuous) and to have only one belief represented (unimodal). For example, we want to say an aircraft is at (12.34, -95.54, 2389.5) where that is latitude, longitude, and altitude. We do not want our filter to tell us \"it might be at (1.65, -78.01, 2100.45) or it might be at (34.36, -98.23, 2543.79).\" That doesn't match our physical intuition of how the world works, and as we discussed, it can be prohibitively expensive to compute the multimodal case. And, of course, multiple position estimates makes navigating impossible.\n",
|
||||
"\n",
|
||||
"So we desire a unimodal, continuous way to represent probabilities that models how the real world works, and that is computationally efficient to calculate. As you might guess from the chapter name, Gaussian distributions provide all of these features."
|
||||
"We desire a unimodal, continuous way to represent probabilities that models how the real world works, and that is computationally efficient to calculate. As you might guess from the chapter name, Gaussian distributions provide all of these features."
|
||||
]
|
||||
},
|
||||
{
|
||||
@@ -407,7 +406,7 @@
|
||||
"cell_type": "markdown",
|
||||
"metadata": {},
|
||||
"source": [
|
||||
"The *mode* of a set of numbers is the number that occurs most often. If only one number occurs most often we say it is a *unimodal* set, and if two or more numbers occur the most with equal frequency than te set is *multimodal*. For example the set {1, 2, 2, 2, 3, 4, 4, 4} has modes 2 and 4, which is multimodal, and the set {5, 7, 7, 13} has the mode 7, and so is unimodal. We will not be computing the mode in this manner in this book, but we do use the concepts of unimodal and multimodal in a more general sense. For example, in the **Discrete Bayes** chapter we talked about our belief in the dog's position as a *multimodal distribution* because we assigned different probabilities to different positions.\n",
|
||||
"The *mode* of a set of numbers is the number that occurs most often. If only one number occurs most often we say it is a *unimodal* set, and if two or more numbers occur the most with equal frequency than te set is *multimodal*. For example the set {1, 2, 2, 2, 3, 4, 4, 4} has modes 2 and 4, which is multimodal, and the set {5, 7, 7, 13} has the mode 7, and so it is unimodal. We will not be computing the mode in this manner in this book, but we do use the concepts of unimodal and multimodal in a more general sense. For example, in the **Discrete Bayes** chapter we talked about our belief in the dog's position as a *multimodal distribution* because we assigned different probabilities to different positions.\n",
|
||||
"\n",
|
||||
"Finally, the *median* of a set of numbers is the middle point of the set so that half the values are below the median and half are above the median. Here, above and below is in relation to the set being sorted. If the set contains an even number of values then the two middle numbers are averaged together.\n",
|
||||
"\n",
|
||||
@@ -441,9 +440,9 @@
|
||||
"\n",
|
||||
"The *expected value* of a random variable is the average value it would have if we took an infinite number of samples of it and then averaged those samples together. Let's say we have $x=[1,3,5]$ and each value is equally probable. What would we *expect* $x$ to have, on average?\n",
|
||||
"\n",
|
||||
"It would be the average of 1, 3, and 5, of course, which is 3. That should make sense; we would expect equal numbers of 1, 3, and 5 to occur, so $(1+3+5)/3=3$ is clearly the average of that infinite series of samples. In other words, here the expected value is just the *mean* of the sample space.\n",
|
||||
"It would be the average of 1, 3, and 5, of course, which is 3. That should make sense; we would expect equal numbers of 1, 3, and 5 to occur, so $(1+3+5)/3=3$ is clearly the average of that infinite series of samples. In other words, here the expected value is the *mean* of the sample space.\n",
|
||||
"\n",
|
||||
"Now suppose that each value has a different probability of happening. Say 1 has an 80% chance of occurring, 3 has an 15% chance, and 5 has only a 5% chance. In this case we compute the expected value by multiplying each value of $x$ by the percent chance of it occurring, and summing the result. So for this case we could compute\n",
|
||||
"Now suppose that each value has a different probability of happening. Say 1 has an 80% chance of occurring, 3 has an 15% chance, and 5 has only a 5% chance. In this case we compute the expected value by multiplying each value of $x$ by the percent chance of it occurring, and summing the result. For this case we could compute\n",
|
||||
"\n",
|
||||
"$$\\mathbb E[X] = (1)(0.8) + (3)(0.15) + (5)(0.05) = 1.5$$\n",
|
||||
"\n",
|
||||
@@ -527,7 +526,7 @@
|
||||
"cell_type": "markdown",
|
||||
"metadata": {},
|
||||
"source": [
|
||||
"So the mean tells us something about the data, but it does not tell the whole story. We want to be able to specify how much *variation* there is between the heights of the students. You can imagine a number of reasons for this. Perhaps a school district needs to order 5,000 desks, and they want to be sure they buy sizes that accommodate the range of heights of the students. \n",
|
||||
"The mean tells us something about the data, but not the whole story. We want to be able to specify how much *variation* there is between the heights of the students. You can imagine a number of reasons for this. Perhaps a school district needs to order 5,000 desks, and they want to be sure they buy sizes that accommodate the range of heights of the students. \n",
|
||||
"\n",
|
||||
"Statistics has formalized this concept of measuring variation into the notion of *standard deviation* and *variance*. The equation for computing the *variance* is\n",
|
||||
"\n",
|
||||
@@ -640,7 +639,7 @@
|
||||
"data": {
|
||||
"image/png": "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 truncated
|
||||
"text/plain": [
|
||||
"<matplotlib.figure.Figure at 0x72c8940>"
|
||||
"<matplotlib.figure.Figure at 0x72d8860>"
|
||||
]
|
||||
},
|
||||
"metadata": {},
|
||||
@@ -674,9 +673,9 @@
|
||||
"outputs": [
|
||||
{
|
||||
"data": {
|
||||
"image/png": "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 truncated
|
||||
"image/png": "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 truncated
|
||||
"text/plain": [
|
||||
"<matplotlib.figure.Figure at 0x82f8668>"
|
||||
"<matplotlib.figure.Figure at 0x812e2e8>"
|
||||
]
|
||||
},
|
||||
"metadata": {},
|
||||
@@ -686,8 +685,8 @@
|
||||
"name": "stdout",
|
||||
"output_type": "stream",
|
||||
"text": [
|
||||
"mean = 1.809\n",
|
||||
"std = 0.137\n"
|
||||
"mean = 1.810\n",
|
||||
"std = 0.167\n"
|
||||
]
|
||||
}
|
||||
],
|
||||
@@ -802,7 +801,7 @@
|
||||
"data": {
|
||||
"image/png": "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\n",
|
||||
"text/plain": [
|
||||
"<matplotlib.figure.Figure at 0x7bd5c50>"
|
||||
"<matplotlib.figure.Figure at 0x7bdf2b0>"
|
||||
]
|
||||
},
|
||||
"metadata": {},
|
||||
@@ -896,7 +895,7 @@
|
||||
"data": {
|
||||
"image/png": "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 truncated
|
||||
"text/plain": [
|
||||
"<matplotlib.figure.Figure at 0x8953160>"
|
||||
"<matplotlib.figure.Figure at 0x814bcf8>"
|
||||
]
|
||||
},
|
||||
"metadata": {},
|
||||
@@ -913,10 +912,12 @@
|
||||
"cell_type": "markdown",
|
||||
"metadata": {},
|
||||
"source": [
|
||||
"This curves is a *probability density function* or *pdf* for short. It shows the relative likelihood for the random variable to take on a value. In the chart above, a student is somewhat more likely to have a height near 1.8 m than 1.7 m, and far more likely to have a height of 1.9 m vs 1.1 m.\n",
|
||||
"\n",
|
||||
"> I explain how to plot Gaussians, and much more, in the Notebook *Computing_and_Plotting_PDFs* in the \n",
|
||||
"Supporting_Notebooks folder. You can read it online [here](https://github.com/rlabbe/Kalman-and-Bayesian-Filters-in-Python/blob/master/Supporting_Notebooks/Computing_and_plotting_PDFs.ipynb) [1].\n",
|
||||
"\n",
|
||||
"This may be recognizable to you as a 'bell curve'. This curve is ubiquitous because under real world conditions many observations are distributed in such a manner. In fact, this is the curve for the student heights given earlier. I will not use the term 'bell curve' to refer to a Gaussian because many probability distributions have a similar bell curve shape. Non-mathematical sources might not be so precise, so be judicious in what you conclude when you see the term used without definition.\n",
|
||||
"This may be recognizable to you as a 'bell curve'. This curve is ubiquitous because under real world conditions many observations are distributed in such a manner. In fact, this is the curve for the student heights given earlier. I will not use the term 'bell curve' to refer to a Gaussian because many probability distributions have a similar bell curve shape. Non-mathematical sources might not be as precise, so be judicious in what you conclude when you see the term used without definition.\n",
|
||||
"\n",
|
||||
"This curve is not unique to heights — a vast amount of natural phenomena exhibits this sort of distribution, including the sensors that we use in filtering problems. As we will see, it also has all the attributes that we are looking for — it represents a unimodal belief or value as a probability, it is continuous, and it is computationally efficient. We will soon discover that it also has other desirable qualities which we may not realize we desire.\n",
|
||||
"\n",
|
||||
@@ -934,7 +935,7 @@
|
||||
"data": {
|
||||
"image/png": "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 truncated
|
||||
"text/plain": [
|
||||
"<matplotlib.figure.Figure at 0x89df780>"
|
||||
"<matplotlib.figure.Figure at 0x8a10e80>"
|
||||
]
|
||||
},
|
||||
"metadata": {},
|
||||
@@ -973,7 +974,7 @@
|
||||
"data": {
|
||||
"image/png": "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 truncated
|
||||
"text/plain": [
|
||||
"<matplotlib.figure.Figure at 0x89dfe80>"
|
||||
"<matplotlib.figure.Figure at 0x8ab1d68>"
|
||||
]
|
||||
},
|
||||
"metadata": {},
|
||||
@@ -1007,13 +1008,13 @@
|
||||
"cell_type": "markdown",
|
||||
"metadata": {},
|
||||
"source": [
|
||||
"So let us explore how Gaussians work. A Gaussian is a *continuous probability distribution* that is completely described with two parameters, the mean ($\\mu$) and the variance ($\\sigma^2$). It is defined as:\n",
|
||||
"Let's explore how Gaussians work. A Gaussian is a *continuous probability distribution* that is completely described with two parameters, the mean ($\\mu$) and the variance ($\\sigma^2$). It is defined as:\n",
|
||||
"\n",
|
||||
"$$ \n",
|
||||
"f(x, \\mu, \\sigma) = \\frac{1}{\\sigma\\sqrt{2\\pi}} \\exp\\big [{-\\frac{(x-\\mu)^2}{2\\sigma^2} }\\big ]\n",
|
||||
"$$\n",
|
||||
"\n",
|
||||
"$\\exp[x]$ is notation for $e^x$; I avoid using superscripts in print so that the fonts are larger and more readable."
|
||||
"$\\exp[x]$ is notation for $e^x$."
|
||||
]
|
||||
},
|
||||
{
|
||||
@@ -1056,7 +1057,7 @@
|
||||
"data": {
|
||||
"image/png": "iVBORw0KGgoAAAANSUhEUgAAAuIAAADxCAYAAACOPtIjAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAIABJREFUeJzs3XlcVXX+x/HX5bKvoiCrgqi44C6uaJZrLpVaWtOebbaY\nWtPitEzL2ExT0+5Sv5oaayozlxa1RMt9xy0FcQVFAUWQfb3c3x/YTUYUUvBw8f18PHgIn/M9975v\nJ+DDud/zPSar1WpFREREREQuKwejA4iIiIiIXInUiIuIiIiIGECNuIiIiIiIAdSIi4iIiIgYQI24\niIiIiIgB1IiLiIiIiBhAjbiIiIiIiAFq3IjPnDmTiIgI3NzciI6OZu3atecdu2rVKkaPHk1wcDAe\nHh507tyZTz75pMpx0dHRuLm50apVKz744IOLexUiIiIiInamRo343LlzmTJlCs899xw7duygb9++\nDB8+nJSUlCrHr1+/nk6dOjF//nz27NnDQw89xAMPPMBXX31lG5OUlMTIkSPp168fO3bs4JlnnmHS\npEksXLiwdl6ZiIiIiEg9ZqrJnTV79+5Nly5dmD17tq0WGRnJuHHjmD59eo2e6Oabb6a8vJx58+YB\n8PTTT7No0SISExNtY+6//37i4+NZt27dH30dIiIiIiJ2pdoz4qWlpcTFxTFkyJBK9aFDh7J+/foa\nP1FOTg6+vr62rzdu3MjQoUMrjRk2bBhbt27FYrHU+HFFREREROxRtY14RkYGFouFgICASvWAgADS\n0tJq9CQ//PADP//8Mw8++KCtlpaWVuVjlpWVkZGRUaPHFRERERGxV451/QTr1q3jtttu47333qN7\n9+4X9RjZ2dm1nEpERERE5PLx8fE5p1btGXE/Pz/MZjPp6emV6unp6QQGBl5w37Vr1zJixAj+9re/\n8cADD1TaFhgYWOVjOjo64ufnV10sERERERG7Vm0j7uTkRPfu3YmNja1Uj42NJSYm5rz7rV69mhEj\nRvDyyy8zadKkc7b36dPnnMdctmwZ0dHRmM3mmuYXEREREbFLNZqa8vjjj3PnnXfSo0cPYmJimDVr\nFqmpqUycOBGAadOmsWXLFpYvXw7AypUrGTVqFI888gi33HKL7cy32Wy2ne2eOHEiM2bMYOrUqTz4\n4IOsXbuWOXPmVFrisCpVndb/zdatWwGIjo6uycuSekbHz37p2NWdopJCdh/azLb960hI3obFUnbe\n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 truncated
|
||||
"text/plain": [
|
||||
"<matplotlib.figure.Figure at 0x89e2c88>"
|
||||
"<matplotlib.figure.Figure at 0x81281d0>"
|
||||
]
|
||||
},
|
||||
"metadata": {},
|
||||
@@ -1072,24 +1073,24 @@
|
||||
"cell_type": "markdown",
|
||||
"metadata": {},
|
||||
"source": [
|
||||
"So what does this curve *mean*? Assume we have a thermometer which reads 22°C. No thermometer is perfectly accurate, and so we normally expect that thermometer will read slightly plus or minus that temperature each time we read it. However, a theorem called *Central Limit Theorem* states that if we make many measurements that the measurements will be normally distributed. So, when we look at this chart we can \"sort of\" think of it as representing the probability of the thermometer reading a particular value given the actual temperature of 22°C. \n",
|
||||
"What does this curve *mean*? Assume we have a thermometer which reads 22°C. No thermometer is perfectly accurate, and so we expect that each reading will be slightly off the actual value. However, a theorem called *Central Limit Theorem* states that if we make many measurements that the measurements will be normally distributed. When we look at this chart we can \"sort of\" think of it as representing the probability of the thermometer reading a particular value given the actual temperature of 22°C. \n",
|
||||
"\n",
|
||||
"Recall that a Gaussian distribution is *continuous*. Think of an infinitely long straight line - what is the probability that a point you pick randomly is at 2. Clearly 0%, as there is an infinite number of choices to choose from. The same is true for normal distributions; in the graph above the probability of being *exactly* 2°C is 0% because there are an infinite number of values the reading can take.\n",
|
||||
"\n",
|
||||
"So what then is this curve? It is something we call the *probability density function.* The area under the curve at any region gives you the probability of those values. So, for example, if you compute the area under the curve between 20 and 22 the resulting area will be the probability of the temperature reading being between those two temperatures. \n",
|
||||
"What is this curve? It is something we call the *probability density function.* The area under the curve at any region gives you the probability of those values. So, for example, if you compute the area under the curve between 20 and 22 the resulting area will be the probability of the temperature reading being between those two temperatures. \n",
|
||||
"\n",
|
||||
"We can think of this in Bayesian terms or frequentist terms. As a Bayesian, if the thermometer reads exactly 22°C, then our belief is described by the curve - our belief that the actual (system) temperature is near 22 is very high, and our belief that the actual temperature is near 18 is very low. As a frequentist we would say that if we took 1 billion temperature measurements of a system at exactly 22°C, then a histogram of the measurements would look like this curve. \n"
|
||||
"We can think of this in Bayesian terms or frequentist terms. As a Bayesian, if the thermometer reads exactly 22°C, then our belief is described by the curve - our belief that the actual (system) temperature is near 22 is very high, and our belief that the actual temperature is near 18 is very low. As a frequentist we would say that if we took 1 billion temperature measurements of a system at exactly 22°C, then a histogram of the measurements would look like this curve. "
|
||||
]
|
||||
},
|
||||
{
|
||||
"cell_type": "markdown",
|
||||
"metadata": {},
|
||||
"source": [
|
||||
"So how do you compute the probability, or area under the curve? Well, you integrate the equation for the Gaussian \n",
|
||||
"How do you compute the probability, or area under the curve? You integrate the equation for the Gaussian \n",
|
||||
"\n",
|
||||
"$$ \\int^{x_1}_{x_0} \\frac{1}{\\sigma\\sqrt{2\\pi}} e^{-\\frac{1}{2}{(x-\\mu)^2}/\\sigma^2 } dx$$\n",
|
||||
"\n",
|
||||
"I wrote `filterpy.stats.norm_cdf` which computes the integral for you. So, for example, we can compute"
|
||||
"I wrote `filterpy.stats.norm_cdf` which computes the integral for you. For example, we can compute"
|
||||
]
|
||||
},
|
||||
{
|
||||
@@ -1119,7 +1120,7 @@
|
||||
"cell_type": "markdown",
|
||||
"metadata": {},
|
||||
"source": [
|
||||
"So the mean ($\\mu$) is what it sounds like — the average of all possible probabilities. Because of the symmetric shape of the curve it is also the tallest part of the curve. The thermometer reads 22°C, so that is what we used for the mean. \n",
|
||||
"The mean ($\\mu$) is what it sounds like — the average of all possible probabilities. Because of the symmetric shape of the curve it is also the tallest part of the curve. The thermometer reads 22°C, so that is what we used for the mean. \n",
|
||||
"\n",
|
||||
"The notation for a normal distribution for a random variable $X$ is $X \\sim\\ \\mathcal{N}(\\mu,\\sigma^2)$ where $\\sim$ means *distributed according to*. This means I can express the temperature reading of our thermometer as\n",
|
||||
"\n",
|
||||
@@ -1182,7 +1183,7 @@
|
||||
"data": {
|
||||
"image/png": "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 truncated
|
||||
"text/plain": [
|
||||
"<matplotlib.figure.Figure at 0x8a305c0>"
|
||||
"<matplotlib.figure.Figure at 0x8b12fd0>"
|
||||
]
|
||||
},
|
||||
"metadata": {},
|
||||
@@ -1204,7 +1205,7 @@
|
||||
"cell_type": "markdown",
|
||||
"metadata": {},
|
||||
"source": [
|
||||
"So what is this telling us? The Gaussian with $\\sigma^2=0.05$ is very narrow. It is saying that we believe $x=23$, and that we are very sure about that. In contrast, the Gaussian with $\\sigma^2=5$ also believes that $x=23$, but we are much less sure about that. Our believe that $x=23$ is lower, and so our belief about the likely possible values for $x$ is spread out — we think it is quite likely that $x=20$ or $x=26$, for example. $\\sigma^2=0.05$ has almost completely eliminated $22$ or $24$ as possible values, whereas $\\sigma^2=5$ considers them nearly as likely as $23$.\n",
|
||||
"What is this telling us? The Gaussian with $\\sigma^2=0.05$ is very narrow. It is saying that we believe $x=23$, and that we are very sure about that. In contrast, the Gaussian with $\\sigma^2=5$ also believes that $x=23$, but we are much less sure about that. Our believe that $x=23$ is lower, and so our belief about the likely possible values for $x$ is spread out — we think it is quite likely that $x=20$ or $x=26$, for example. $\\sigma^2=0.05$ has almost completely eliminated $22$ or $24$ as possible values, whereas $\\sigma^2=5$ considers them nearly as likely as $23$.\n",
|
||||
"\n",
|
||||
"If we think back to the thermometer, we can consider these three curves as representing the readings from three different thermometers. The curve for $\\sigma^2=0.05$ represents a very accurate thermometer, and curve for $\\sigma^2=5$ represents a fairly inaccurate one. Note the very powerful property the Gaussian distribution affords us — we can entirely represent both the reading and the error of a thermometer with only two numbers — the mean and the variance.\n",
|
||||
"\n",
|
||||
@@ -1214,9 +1215,9 @@
|
||||
"\n",
|
||||
"## The 68-95-99.7 Rule\n",
|
||||
"\n",
|
||||
"It is worth spending a few words on standard deviation now. The standard deviation is a measure of how much variation from the mean exists. For Gaussian distributions, 68% of all the data falls within one standard deviation ($\\pm1\\sigma$) of the mean, 95% falls within two standard deviations ($\\pm2\\sigma$), and 99.7% within three ($\\pm3\\sigma$). This is often called the 68-95-99.7 rule. So if you were told that the average test score in a class was 71 with a standard deviation of 9.4, you could conclude that 95% of the students received a score between 52.2 and 89.8 if the distribution is normal (that is calculated with $71 \\pm (2 * 9.4)$). \n",
|
||||
"It is worth spending a few words on standard deviation now. The standard deviation is a measure of how much variation from the mean exists. For Gaussian distributions, 68% of all the data falls within one standard deviation ($\\pm1\\sigma$) of the mean, 95% falls within two standard deviations ($\\pm2\\sigma$), and 99.7% within three ($\\pm3\\sigma$). This is often called the 68-95-99.7 rule. If you were told that the average test score in a class was 71 with a standard deviation of 9.4, you could conclude that 95% of the students received a score between 52.2 and 89.8 if the distribution is normal (that is calculated with $71 \\pm (2 * 9.4)$). \n",
|
||||
"\n",
|
||||
"Finally, these are not arbitrary numbers. If the Gaussian for our position is $\\mu=22$ meters, then the standard deviation also has units meters. Thus $\\sigma=0.2$ implies that 68% of the measurements range from 21.8 to 22.2 meters. Variance is the standard deviation squared, so $\\sigma^2 = .04$ meters$^2$."
|
||||
"Finally, these are not arbitrary numbers. If the Gaussian for our position is $\\mu=22$ meters, then the standard deviation also has units meters. Thus $\\sigma=0.2$ implies that 68% of the measurements range from 21.8 to 22.2 meters. Variance is the standard deviation squared, thus $\\sigma^2 = .04$ meters$^2$."
|
||||
]
|
||||
},
|
||||
{
|
||||
@@ -1237,7 +1238,7 @@
|
||||
"data": {
|
||||
"image/png": "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 truncated
|
||||
"text/plain": [
|
||||
"<matplotlib.figure.Figure at 0x9ca7470>"
|
||||
"<matplotlib.figure.Figure at 0x9cd9b38>"
|
||||
]
|
||||
},
|
||||
"metadata": {},
|
||||
@@ -1275,7 +1276,7 @@
|
||||
"data": {
|
||||
"image/png": "iVBORw0KGgoAAAANSUhEUgAAAt4AAADaCAYAAACRmkVgAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAIABJREFUeJzt3XlcVOe9P/DPzDDAsA0g+yICoiAoIqAs7gtqjIlJKpqk\nMWpujW3SxHivaf1Zm5tryNLm1tZUsdemmphYtySaxQ1RcUFkcwMRlEVRdtn3YWZ+fwxOnIBhQJnD\n8nm/ymuG55zDfKdHwmee85znEanVajWIiIiIiKhXiYUugIiIiIhoMGDwJiIiIiIyAAZvIiIiIiID\nYPAmIiIiIjIABm8iIiIiIgNg8CYiIiIiMgAGbyIiIiIiA9AreJ85cwZPP/003NzcIBaL8fnnn3d5\nTEZGBqZOnQozMzO4u7tjw4YNj1wsEREREVF/pVfwrq+vx+jRo7Fp0yaYmZl1uX9dXR1mzZoFZ2dn\npKWl4W9/+xv+/Oc/Y+PGjY9cMBERERFRfyTq7sqVlpaW2Lx5M5YsWfLQfWJjY7F27VqUlZXB2NgY\nABATE4OtW7eisLDw0SomIiIiIuqHemWMd1JSEiZNmqQN3QAwe/ZsFBUV4datW73xkkREREREfVqv\nBO+SkhI4OjrqtDk6OkKtVqOkpKQ3XpKIiIiIqE8zErqAmpoaoUsgIiIiIuoxuVyu13690uPt5OSE\n0tJSnbbS0lKIRCI4OTn1xksSEREREfVpvRK8w8PDcebMGbS2tmrbjh07BhcXF3h4ePTGSxIRERER\n9Wl6DTVpaGjAzZs3oVaroVKpcPv2bVy+fBm2trZwd3fH2rVrkZKSguPHjwMAXnjhBfzP//wPli5d\ninXr1iE7OxsfffQR3n333Z99HX276alvSk1NBQCEhIQIXAk9Kp7LgYPncuDguRw4eC4Hhp4Ml9ar\nxzs1NRVBQUEIDg5Gc3Mz3nnnHYwbNw7vvPMOAM3NlPn5+dr9raysEBcXh6KiIoSGhuK3v/0t1qxZ\ng1WrVnW7QCIiIiKigUCvHu8pU6ZApVI9dPv27ds7tPn7++PUqVM9LoyIiIiIaCDplTHeRERERESk\ni8GbiIiIiMgAGLyJiIiIiAyAwZuIiIiIyAAYvImIiIiIDIDBm4iIiIjIABi8iYiIiIgMgMGbiIiI\niMgAGLyJiIiIiAyAwZuIiIiIyAAYvImIiIiIDIDBm4iIiIjIABi8iYiIiIgMgMGbiIiIiMgAGLyJ\niIiIiAyAwZuIiIiIyAAYvImIiIiIDIDBm4iIiIjIABi8iYiIiIgMgMGbiIiIiMgAGLyJiIiIiAyA\nwZuIiIiIyAAYvImIiIiIDIDBm4iIiIjIABi8iYiIiIgMQO/gvWXLFnh5eUEmkyEkJARnz5792f2P\nHj2KiIgIWFlZwd7eHgsWLMCNGzceuWAiIiIiov5Ir+C9Z88erFq1Cn/4wx9w6dIlREREYO7cubhz\n506n+xcUFGDBggWYMmUKLl26hPj4eDQ3N2PevHmPtXgiIiIiov5Cr+C9ceNGLF++HMuXL8fIkSOx\nadMmODs7IzY2ttP909LS0NbWhvfffx9eXl4YM2YMfv/73yM3NxeVlZWP9Q0QEREREfUHXQZvhUKB\ntLQ0zJo1S6c9KioKiYmJnR4TGhoKqVSKf/7zn1CpVKirq8OOHTswfvx42NraPp7KiYiIiIj6EZFa\nrVb/3A7FxcVwdXXF6dOnMXHiRG37hg0bsGvXLmRlZXV63NmzZ7Fw4UJUVFRApVJh3LhxOHz4MOzs\n7HT2q6mp0T7nGHAiIiIi6g98fHy0z+VyuV7H9MqsJqWlpXjllVfw8ssvIzU1FQkJCbC0tMTChQt7\n4+WIiIiIiPo8o652sLOzg0QiQWlpqU57aWkpnJycOj1m8+bNsLCwwIcffqht27lzJ9zd3ZGYmIiI\niIhOjwsJCelO7dTHpKamAuB5HAh4LgcOnsuBg+dy4OC5HBgeHLWhry57vKVSKYKDgxEXF6fTHhcX\nh8jIyE6PaWxshEQi0X0hsealVCpVt4skIiIiIurv9Bpqsnr1auzYsQOffvoprl+/jjfffBPFxcVY\nuXIlAGDt2rWYOXOmdv958+YhPT0dGzZswM2bN5Geno5ly5Zh6NChCA4O7p13QkRERETUh3U51AQA\noqOjUVlZiZiYGBQXFyMgIACHDx+Gm5sbAKCkpAT5+fna/adNm4Zdu3bhT3/6E/785z/DzMwMYWFh\nOHLkCGQyWe+8EyIiIiKiPkyv4A0AK1eu1PZw/9T27ds7tEVHRyM6OrrnlRERERERDSC9MqsJERER\nERHpYvAmIiIiIjIABm8iIiIiIgNg8CYiIiIiMgAGbyIiIiIiA2DwJiIiIiIyAAZvIiIiIiIDYPAm\nIiIiIjIABm8iIiIiIgNg8CYiIiIiMgAGbyIiIiIiA2DwJiIiIiIyAAZvIiIiIiIDYPAmIiIiIjIA\n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 truncated
|
||||
"text/plain": [
|
||||
"<matplotlib.figure.Figure at 0x8b02e10>"
|
||||
"<matplotlib.figure.Figure at 0x9c6ceb8>"
|
||||
]
|
||||
},
|
||||
"metadata": {},
|
||||
@@ -1320,7 +1321,7 @@
|
||||
"\n",
|
||||
"A typical textbook would directly launch into a multi-page proof of the behavior of Gaussians under these operations, but I don't see the value in that right now. I think the math will be much more intuitive and clear if we just start developing a Kalman filter using Gaussians. I will provide the equations for multiplying and shifting Gaussians at the appropriate time. You will then be able to develop a physical intuition for what these operations do, rather than be forced to digest a lot of fairly abstract math.\n",
|
||||
"\n",
|
||||
"The key point, which I will only assert for now, is that all the operations are very simple, and that they preserve the properties of the Gaussian. This is somewhat remarkable, in that the Gaussian is a nonlinear function, and typically if you multiply a nonlinear equation with itself you end up with a different equation. For example, the shape of `sin(x)sin(x)` is very different from `sin(x)`. But the result of multiplying two Gaussians is yet another Gaussian. This is a fundamental property, and a key reason why Kalman filters are computationally feasible. Said another way, Kalman filters use Gaussians *because* they are so computationally nice. "
|
||||
"The key point, which I will only assert for now, is that all the operations are very simple, and that they preserve the properties of the Gaussian. This is somewhat remarkable, in that the Gaussian is a nonlinear function, and typically if you multiply a nonlinear equation with itself you end up with a different equation. For example, the shape of `sin(x)sin(x)` is very different from `sin(x)`. But the result of multiplying two Gaussians is yet another Gaussian. This is a fundamental property, and a key reason why Kalman filters are computationally feasible. Said another way, Kalman filters use Gaussians *because* they are computationally nice. "
|
||||
]
|
||||
},
|
||||
{
|
||||
@@ -1334,9 +1335,9 @@
|
||||
"cell_type": "markdown",
|
||||
"metadata": {},
|
||||
"source": [
|
||||
"In this chapter I have used custom code from FilterPy for computing Gaussians, plotting, and so on. I chose to do that to give you a chance to look at the code and see how these functions are implemented. However, Python comes with \"batteries included\" as the saying goes, and it comes with a wide range of statistics functions in the module `scipy.stats`. I find the performance of some of the functions rather slow (the `scipy.stats` documentation contains a warning to this effect), but this is offset by the fact that this is standard code available to everyone, and it is well tested. So let's walk through how to use scipy.stats to compute statistics and probabilities.\n",
|
||||
"In this chapter I used code from FilterPy to compute and plot Gaussians. I did that to give you a chance to look at the code and see how these functions are implemented. However, Python comes with \"batteries included\" as the saying goes, and it comes with a wide range of statistics functions in the module `scipy.stats`. So let's walk through how to use scipy.stats to compute statistics and probabilities.\n",
|
||||
"\n",
|
||||
"The `scipy.stats` module contains a number of objects which you can use to compute attributes of various probability distributions. The full documentation for this module is here: http://http://docs.scipy.org/doc/scipy/reference/stats.html. However, we will focus on the norm variable, which implements the normal distribution. Let's look at some code that uses `scipy.stats.norm` to compute a Gaussian, and compare its value to the value returned by the `gaussian()` function from FilterPy."
|
||||
"The `scipy.stats` module contains a number of objects which you can use to compute attributes of various probability distributions. The full documentation for this module is here: http://http://docs.scipy.org/doc/scipy/reference/stats.html. We will focus on the norm variable, which implements the normal distribution. Let's look at some code that uses `scipy.stats.norm` to compute a Gaussian, and compare its value to the value returned by the `gaussian()` function from FilterPy."
|
||||
]
|
||||
},
|
||||
{
|
||||
@@ -1398,9 +1399,7 @@
|
||||
"cell_type": "markdown",
|
||||
"metadata": {},
|
||||
"source": [
|
||||
"If we look at the documentation for `scipy.stats.norm` [here](http://docs.scipy.org/doc/scipy/reference/generated/scipy.stats.norm.html#scipy.stats.normfor) [2] we see that there are many other functions that norm provides.\n",
|
||||
"\n",
|
||||
"For example, we can generate $n$ samples from the distribution with the `rvs()` function."
|
||||
"The documentation for [scipy.stats.norm](http://docs.scipy.org/doc/scipy/reference/generated/scipy.stats.norm.html#scipy.stats.normfor) [2] lists many other functions. For example, we can generate $n$ samples from the distribution with the `rvs()` function."
|
||||
]
|
||||
},
|
||||
{
|
||||
@@ -1414,9 +1413,9 @@
|
||||
"name": "stdout",
|
||||
"output_type": "stream",
|
||||
"text": [
|
||||
"[ 0.409 2.668 6.657 2.062 4.686 4.65 -2.214\n",
|
||||
" -2.35 6.065 1.219 -0.904 5.647 8.615 -4.476\n",
|
||||
" 0.463]\n"
|
||||
"[ 3.527 2.952 3.709 1.501 -0.532 -0.173 2.264\n",
|
||||
" 4.293 5.036 6.365 2.79 4.76 -0.052 0.789\n",
|
||||
" 2.733]\n"
|
||||
]
|
||||
}
|
||||
],
|
||||
@@ -1482,13 +1481,6 @@
|
||||
"print('mean is', n23.mean())"
|
||||
]
|
||||
},
|
||||
{
|
||||
"cell_type": "markdown",
|
||||
"metadata": {},
|
||||
"source": [
|
||||
"There are many other functions available, and if you are interested I urge you to peruse the documentation. Sometimes the documentation is terse, but with a bit of searching you can find out what a function does and some examples of how to use it. Most of this functionality is not of immediate interest to the book, so I will leave the topic in your hands to explore. The <a href=\"http://docs.scipy.org/doc/scipy/reference/tutorial/stats.html\">SciPy tutorial</a> [3] is quite approachable, and I suggest starting there. "
|
||||
]
|
||||
},
|
||||
{
|
||||
"cell_type": "markdown",
|
||||
"metadata": {},
|
||||
@@ -1500,7 +1492,7 @@
|
||||
"cell_type": "markdown",
|
||||
"metadata": {},
|
||||
"source": [
|
||||
"Earlier I spoke very briefly about the *central limit theorem*, which states that under certain conditions the arithmetic sum of any independent random variable will be normally distributed, regardless of how the random variables are distributed. This is extremely important for (at least) two reasons. First, nature is full of distributions which are not normal, but when we apply the central limit theorem over large populations we end up with normal distributions. Second, Gaussians are mathematically *tractable*. We will see this more as we develop the Kalman filter theory, but there are very nice closed form solutions for operations on Gaussians that allow us to use them analytically.\n",
|
||||
"Earlier I mentioned the *central limit theorem*, which states that under certain conditions the arithmetic sum of any independent random variable will be normally distributed, regardless of how the random variables are distributed. This is important to us because nature is full of distributions which are not normal, but when we apply the central limit theorem over large populations we end up with normal distributions. \n",
|
||||
"\n",
|
||||
"However, a key part of the proof is “under certain conditions”. These conditions often do not hold for the physical world. The resulting distributions are called *fat tailed*. Tails is a colloquial term for the far left and right side parts of the curve where the probability density is close to zero.\n",
|
||||
"\n",
|
||||
@@ -1520,7 +1512,7 @@
|
||||
"data": {
|
||||
"image/png": "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 truncated
|
||||
"text/plain": [
|
||||
"<matplotlib.figure.Figure at 0x8b4c358>"
|
||||
"<matplotlib.figure.Figure at 0x8ad03c8>"
|
||||
]
|
||||
},
|
||||
"metadata": {},
|
||||
@@ -1543,7 +1535,7 @@
|
||||
"\n",
|
||||
"Kalman filters use sensors to measure the world. The errors in a sensor's measurements are rarely truly Gaussian. It is far too early to be talking about the difficulties that this presents to the Kalman filter designer. It is worth keeping in the back of your mind the fact that the Kalman filter math is based on an idealized model of the world. For now I will present a bit of code that I will be using later in the book to form fat tail distributions to simulate various processes and sensors. This distribution is called the *Student's $t$-distribution*. \n",
|
||||
"\n",
|
||||
"Let's say I want to model a sensor that has some white noise in the output. For simplicity, let's say the signal is a constant 10, and the standard deviation of the noise is 2. We can use the function `numpy.random.randn()` to get a random number with a mean of 0 and a standard deviation of 1. So I could simulate this sensor with"
|
||||
"Let's say I want to model a sensor that has some white noise in the output. For simplicity, let's say the signal is a constant 10, and the standard deviation of the noise is 2. We can use the function `numpy.random.randn()` to get a random number with a mean of 0 and a standard deviation of 1. I can simulate this with:"
|
||||
]
|
||||
},
|
||||
{
|
||||
@@ -1575,9 +1567,9 @@
|
||||
"outputs": [
|
||||
{
|
||||
"data": {
|
||||
"image/png": "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 truncated
|
||||
"image/png": "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 truncated
|
||||
"text/plain": [
|
||||
"<matplotlib.figure.Figure at 0x9be8908>"
|
||||
"<matplotlib.figure.Figure at 0x9b045c0>"
|
||||
]
|
||||
},
|
||||
"metadata": {},
|
||||
@@ -1628,9 +1620,9 @@
|
||||
"outputs": [
|
||||
{
|
||||
"data": {
|
||||
"image/png": "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 truncated
|
||||
"image/png": "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 truncated
|
||||
"text/plain": [
|
||||
"<matplotlib.figure.Figure at 0x9c5c668>"
|
||||
"<matplotlib.figure.Figure at 0x9c34b00>"
|
||||
]
|
||||
},
|
||||
"metadata": {},
|
||||
|
||||
Reference in new issue
Block a user