From 2efd4e0690e8668db7e79fde4bfb118a3eba5b7c Mon Sep 17 00:00:00 2001 From: Roger Labbe Date: Wed, 25 Nov 2015 13:42:50 -0800 Subject: [PATCH] Added instructions for binder. --- 00-Preface.ipynb | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/00-Preface.ipynb b/00-Preface.ipynb index 809a183..35adc2f 100644 --- a/00-Preface.ipynb +++ b/00-Preface.ipynb @@ -293,7 +293,7 @@ "\n", "In simple cases the solution is obvious. If my scale gives slightly different readings I can just take a few readings and average them. Or I can replace it with a more accurate scale. But what do we do when the sensor is very noisy, or the environment makes data collection difficult? We may be trying to track the movement of a low flying aircraft. We may want to create an autopilot for a drone, or ensure that our farm tractor seeded the entire field. I do computer vision, and I need to track moving objects in images, and the computer vision algorithms create very noisy and unreliable results. \n", "\n", - "This book teaches you how to solve these sorts of filtering problems. I use many different algorithms, but they are all based on **Bayesian probability**. In simple terms Bayesian probability determines what is likely to be true based on past information. For example, suppose you drive home late and see a masked person breaking the window of your neighbor's house. You'd conclude that they are a burglar. But you know what your neighbor looks like, and despite the mask this person looks like him. You cannot be sure, but your certainty that this is a crime lessens. Now suppose that you remember that this is October 31 - Halloween in the US, when we dress up in costumes. This provides a reason for the mask, and you form the hypothesis that your neighbor locked himself out. Finally, your wife interjects \"didn't they sell that house last week? Why is he trying to get inside\". This new piece of information favors the crime hypothesis, and you call the police.\n", + "This book teaches you how to solve these sorts of filtering problems. I use many different algorithms, but they are all based on *Bayesian probability*. In simple terms Bayesian probability determines what is likely to be true based on past information. For example, suppose you drive home late and see a masked person breaking the window of your neighbor's house. You'd conclude that they are a burglar. But you know what your neighbor looks like, and despite the mask this person looks like him. You cannot be sure, but your certainty that this is a crime lessens. Now suppose that you remember that this is October 31 - Halloween in the US, when we dress up in costumes. This provides a reason for the mask, and you form the hypothesis that your neighbor locked himself out. Finally, your wife interjects \"didn't they sell that house last week? Why is he trying to get inside\". This new piece of information favors the crime hypothesis, and you call the police.\n", "\n", "There is more to Bayesian probability, but you have the main idea. Knowledge is uncertain, and we alter our beliefs based on the strength of the evidence. How does this apply to filtering? Say we are trying to track an aircraft that up to now has been flying straight and level. A sensor reports that it suddenly changed direction. Did it really turn, or is the data noisy? It depends. If this is a jet fighter we may be very inclined to believe the report of a sudden maneuver. If it is a large, cumbersome passenger jet we might be very skeptical. If the sensor is extremely accurate then we would tend to believe it. Our beliefs depend on the past and on our knowledge of the system we are tracking." ] @@ -343,12 +343,25 @@ "cell_type": "markdown", "metadata": {}, "source": [ + "GitHub\n", + "\n", "The book is hosted on GitHub, and you can read any chapter by clicking on its name. GitHub statically renders Jupyter Notebooks. You will not be able to run or alter the code, but you can read all of the content.\n", "\n", "The GitHub pages for this project are at\n", "\n", " https://github.com/rlabbe/Kalman-and-Bayesian-Filters-in-Python \n", "\n", + "\n", + "binder\n", + "\n", + "I am experimentally trying a new service, binder. binder serves interactive notebooks online, so you can run the code and change the code within your browser without downloading the book or installing Jupyter. I have not experimented with it much. Please raise an issue on my GitHub page if anything fails. I'm not officially supporting this as binder is in beta, but I'm quite excited about the possibilities.\n", + "\n", + "Use this link to access the book via binder:\n", + "\n", + " http://mybinder.org/repo/rlabbe/Kalman-and-Bayesian-Filters-in-Python\n", + "\n", + "nbviewer\n", + "\n", "The nbviewer website will render any Notebook in a static format. I find it does a slightly better job than the GitHub renderer, but it is slighty harder to use. It accesses GitHub directly; whatever I have checked into GitHub will be rendered by nbviewer.\n", "\n", "You may access this book via nbviewer here:\n",