Skip to content

Instantly share code, notes, and snippets.

@vitillo
Created May 16, 2014 15:02
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save vitillo/b7ff051a1a122330288d to your computer and use it in GitHub Desktop.
Save vitillo/b7ff051a1a122330288d to your computer and use it in GitHub Desktop.
Use Bayesian inference to reconstruct a corrupted signal
{
"metadata": {
"name": ""
},
"nbformat": 3,
"nbformat_minor": 0,
"worksheets": [
{
"cells": [
{
"cell_type": "code",
"collapsed": false,
"input": [
"import pymc as pm\n",
"import numpy as np\n",
"import math\n",
"from matplotlib import pyplot as plt\n",
"from IPython.core.pylabtools import figsize\n",
"\n",
"figsize(11, 9)\n",
"%matplotlib inline\n",
"\n",
"time = 10\n",
"sampling_freq = 30\n",
"pi2 = math.pi*2\n",
"x = np.linspace(0, time, time*sampling_freq)"
],
"language": "python",
"metadata": {},
"outputs": [],
"prompt_number": 47
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"# Simulate some data\n",
"signal = 5*np.sin(x*pi2*2 + pi2/4)\n",
"\n",
"plt.title(\"Original signal\")\n",
"plt.plot(x, signal)"
],
"language": "python",
"metadata": {},
"outputs": [
{
"metadata": {},
"output_type": "pyout",
"prompt_number": 48,
"text": [
"[<matplotlib.lines.Line2D at 0x10fce9750>]"
]
},
{
"metadata": {},
"output_type": "display_data",
"png": "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\nAABJRU5ErkJggg==\n",
"text": [
"<matplotlib.figure.Figure at 0x10fcc3250>"
]
}
],
"prompt_number": 48
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"# Corrupt the signal\n",
"y = signal + np.random.randn(len(x))\n",
"\n",
"plt.title(\"Corrupted signal\")\n",
"plt.plot(x, y)"
],
"language": "python",
"metadata": {},
"outputs": [
{
"metadata": {},
"output_type": "pyout",
"prompt_number": 49,
"text": [
"[<matplotlib.lines.Line2D at 0x10fd77fd0>]"
]
},
{
"metadata": {},
"output_type": "display_data",
"png": "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\n",
"text": [
"<matplotlib.figure.Figure at 0x10fcf6510>"
]
}
],
"prompt_number": 49
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"# Probabilistic Model\n",
"A = pm.Uniform(\"A\", 0, 100)\n",
"f = pm.Uniform(\"f\", 0, sampling_freq/2) # Nyquist\n",
"p = pm.Uniform(\"p\", 0, pi2)\n",
"var = pm.Uniform(\"tau\", 0, 2)\n",
"\n",
"@pm.deterministic\n",
"def mu_(x=x, A=A, f=f, p=p):\n",
" return A*np.sin(x*f*pi2 + p)\n",
"\n",
"observation = pm.Normal(\"observation\", mu=mu_, tau=1/(var*var), value=y, observed=True)\n",
"\n",
"model = pm.Model([A, f, p, var, observation])\n",
"mcmc = pm.MCMC(model)\n",
"mcmc.sample(40000, 10000, 1)"
],
"language": "python",
"metadata": {},
"outputs": [
{
"output_type": "stream",
"stream": "stdout",
"text": [
"\r",
" [- 5% ] 2029 of 40000 complete in 0.5 sec"
]
},
{
"output_type": "stream",
"stream": "stdout",
"text": [
"\r",
" [--- 9% ] 3910 of 40000 complete in 1.0 sec"
]
},
{
"output_type": "stream",
"stream": "stdout",
"text": [
"\r",
" [----- 13% ] 5596 of 40000 complete in 1.5 sec"
]
},
{
"output_type": "stream",
"stream": "stdout",
"text": [
"\r",
" [------- 18% ] 7376 of 40000 complete in 2.0 sec"
]
},
{
"output_type": "stream",
"stream": "stdout",
"text": [
"\r",
" [-------- 22% ] 9082 of 40000 complete in 2.5 sec"
]
},
{
"output_type": "stream",
"stream": "stdout",
"text": [
"\r",
" [---------- 26% ] 10749 of 40000 complete in 3.0 sec"
]
},
{
"output_type": "stream",
"stream": "stdout",
"text": [
"\r",
" [----------- 30% ] 12285 of 40000 complete in 3.5 sec"
]
},
{
"output_type": "stream",
"stream": "stdout",
"text": [
"\r",
" [------------- 34% ] 13857 of 40000 complete in 4.0 sec"
]
},
{
"output_type": "stream",
"stream": "stdout",
"text": [
"\r",
" [-------------- 38% ] 15365 of 40000 complete in 4.5 sec"
]
},
{
"output_type": "stream",
"stream": "stdout",
"text": [
"\r",
" [---------------- 42% ] 16936 of 40000 complete in 5.0 sec"
]
},
{
"output_type": "stream",
"stream": "stdout",
"text": [
"\r",
" [-----------------46% ] 18477 of 40000 complete in 5.5 sec"
]
},
{
"output_type": "stream",
"stream": "stdout",
"text": [
"\r",
" [-----------------50% ] 20054 of 40000 complete in 6.0 sec"
]
},
{
"output_type": "stream",
"stream": "stdout",
"text": [
"\r",
" [-----------------53% ] 21569 of 40000 complete in 6.5 sec"
]
},
{
"output_type": "stream",
"stream": "stdout",
"text": [
"\r",
" [-----------------57%- ] 23128 of 40000 complete in 7.0 sec"
]
},
{
"output_type": "stream",
"stream": "stdout",
"text": [
"\r",
" [-----------------61%--- ] 24663 of 40000 complete in 7.5 sec"
]
},
{
"output_type": "stream",
"stream": "stdout",
"text": [
"\r",
" [-----------------65%---- ] 26249 of 40000 complete in 8.0 sec"
]
},
{
"output_type": "stream",
"stream": "stdout",
"text": [
"\r",
" [-----------------69%------ ] 27763 of 40000 complete in 8.5 sec"
]
},
{
"output_type": "stream",
"stream": "stdout",
"text": [
"\r",
" [-----------------73%------- ] 29251 of 40000 complete in 9.0 sec"
]
},
{
"output_type": "stream",
"stream": "stdout",
"text": [
"\r",
" [-----------------76%--------- ] 30534 of 40000 complete in 9.5 sec"
]
},
{
"output_type": "stream",
"stream": "stdout",
"text": [
"\r",
" [-----------------79%---------- ] 31748 of 40000 complete in 10.0 sec"
]
},
{
"output_type": "stream",
"stream": "stdout",
"text": [
"\r",
" [-----------------82%----------- ] 33049 of 40000 complete in 10.5 sec"
]
},
{
"output_type": "stream",
"stream": "stdout",
"text": [
"\r",
" [-----------------85%------------ ] 34394 of 40000 complete in 11.0 sec"
]
},
{
"output_type": "stream",
"stream": "stdout",
"text": [
"\r",
" [-----------------89%-------------- ] 35867 of 40000 complete in 11.5 sec"
]
},
{
"output_type": "stream",
"stream": "stdout",
"text": [
"\r",
" [-----------------93%--------------- ] 37444 of 40000 complete in 12.0 sec"
]
},
{
"output_type": "stream",
"stream": "stdout",
"text": [
"\r",
" [-----------------97%----------------- ] 38982 of 40000 complete in 12.5 sec"
]
},
{
"output_type": "stream",
"stream": "stdout",
"text": [
"\r",
" [-----------------100%-----------------] 40000 of 40000 complete in 12.8 sec"
]
}
],
"prompt_number": 50
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"# Reconstructed signal\n",
"A_m = mcmc.trace('A')[:].mean()\n",
"f_m = mcmc.trace('f')[:].mean()\n",
"p_m = mcmc.trace('p')[:].mean()\n",
"\n",
"print \"A ~ \" + str(A_m) + \", f ~ \" + str(f_m) + \", p ~ \" + str(p_m)\n",
"\n",
"r = A_m*np.sin(x*f_m*pi2 + p_m)\n",
"plt.title(\"Reconstructed signal\")\n",
"plt.plot(x, r)"
],
"language": "python",
"metadata": {},
"outputs": [
{
"output_type": "stream",
"stream": "stdout",
"text": [
"A ~ 5.04821860477, f ~ 2.00034658029, p ~ 1.59025614708\n"
]
},
{
"metadata": {},
"output_type": "pyout",
"prompt_number": 51,
"text": [
"[<matplotlib.lines.Line2D at 0x110ac6c50>]"
]
},
{
"metadata": {},
"output_type": "display_data",
"png": "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\nga8wVMkcAE4/HVi7Vp3M58zhBPjJJ+rKfPJk4JVX+DzIPnxNoLAQ+PBDdVUtYuzcqUeZU8h8/37e\nYaR6Xgje01n8BCJgs7z0kroCEzGeeQb4ylfUthetQhkZ/OJTQWkp98Auukhte4BfrHV1NDIfO5YX\nDlWVubipZOZM+WfUCEycyHuBKWT+T//EY1DOixNP5DFUyby0lBO5aoIH+PnU0kIj8zPO4GpSlcyz\ns4GKCk5Aqsp80SJg+3Z1iwUA/vmfgb/+VV2ZA3y1+MIL6mQuWm937aKp+7ff5v+qXiOC96ZMUds+\nEUIl84kTgenTgfvvV49RUsJPFFU1mpnJD+yyZeoHR1wkqgkF4KopI4MrMVWMGcPtAVXFEItxdT5r\nlvoYhKKXfdORE0KRqypzgHv+I0ao95nHYjypqVosAE9oQ4bQyRxQJ3MAOP98fm6pkuDQocCll9LI\n/OKLORlTyPz//l9+PFV69gG+7R/+AJx1lvoxmTMHuOAC4Ikn1LYH9PCeF5ReTqELN9wAfOtb6iQK\nAD/5ifryUeD664H/8T/Utx87FigvB848Uz3GuHFcyakWQMU4JN/e1w9lZTQyLyriNw9RlbkohKri\nxBNp2wM8MVK6DTIzgdmzaWQ+ezYnobIy9RiLFgGPPKJWhBX47ne5laiKWAxYvVq9jgLw63z7drVH\nIwgsXsy/VDF2LPCrX6lvDwDf/CbnPgrveSHGZF/eKfsHYjHp94Mej4jH+XKa4inW1vIbElT9bgB4\n7TWuaikJcvVq4BvfkH82vEBnJ/Doo8CNN6qPobaW++6XXaYe46OP+HGZM0c9xubNfIVB6Sfeu5d2\nTIHeV8dZDBzIcqclcwsLC4sIQpY7Q/XMLSwsLCz0wJK5hYWFRRrAkrmFhYVFGsCSuYWFhUUawJK5\nhYWFRRrAkrmFhYVFGsCSuYWFhUUawJK5hYWFRRrAkrmFhYVFGsCSuYWFhUUawJK5hYWFRRqAROaP\nPPIIysvLMXPmTNx+++26xmRhYWFhIQllMn/llVewbt06fPjhh/j444/xr//6rzrHlZaorKwMewiR\ngZ2LXti56IWdC3Uok/nPf/5z/PCHP0TWPx5QXEJ56vxxAnui9sLORS/sXPTCzoU6lMl8x44deO21\n1zB//nxUVFTg3Xff1TkuCwsLCwsJJH3T0MKFC3HgwIF+P7/zzjvR1dWFo0ePYuPGjXjnnXfwta99\nDbt37w5soBYWFhYWScAUccEFF7DKysqe7ydNmsQOHz7c73OTJk1iAOyX/bJf9st+SXxNmjRJipOV\n3wG6ZMkSvPzyyzj77LOxfft2dHR0oNjjldc7d+5U/RMWFhYWFj6h/Nq4zs5OLFu2DB988AGys7Px\nwAMPoKKiQvPwLCwsLCz8IPB3gFpYWFhYBI9A7wBdv349pk2bhilTpuCee+4J8k9FGtXV1TjnnHMw\nY8YMzJw5Ew8//HDYQwoV8Xgcc+fOxeLFi8MeSuior6/H5ZdfjvLyckyfPh0bN24Me0ih4a677sKM\nGTMwa9YsfOMb30B7e3vYQzKGZcuWobS0FLNmzer52ZEjR7Bw4UJMnToV5513Hurr65PGCIzM4/E4\nbrzxRqxfvx6ffPIJfv/732Pbtm1B/blIIysrCw8++CC2bt2KjRs34mc/+9lxOxcA8NBDD2H69OmI\nxWJhDyV03HzzzVi0aBG2bduGDz/8EOXl5WEPKRRUVVXhV7/6FTZv3oyPPvoI8XgcTz31VNjDMoZr\nr70W69ev7/Ozu+++GwsXLsT27dtx7rnn4u67704aIzAy37RpEyZPnoyJEyciKysLS5cuxdq1a4P6\nc5HGqFGjMGfOHADAsGHDUF5ejv3794c8qnCwb98+PPvss7j++utxvDt8DQ0NeP3117Fs2TIAQGZm\nJgoKCkIeVTjIz89HVlYWWlpa0NXVhZaWFowdOzbsYRnDWWedhcLCwj4/W7duHa655hoAwDXXXIM/\n//nPSWMERuY1NTUYN25cz/dlZWWoqakJ6s8NGFRVVeH999/HqaeeGvZQQsGtt96K++67DxkZ9hlv\ne/bsQUlJCa699lp84QtfwDe/+U20tLSEPaxQUFRUhNtuuw3jx4/HmDFjMHz4cHz5y18Oe1ih4uDB\ngygtLQUAlJaW4uDBg0k/H9gVZZfQ/dHU1ITLL78cDz30EIYNGxb2cIzjmWeewciRIzF37tzjXpUD\nQFdXFzZv3ozly5dj8+bNyM3NTbmUTlfs2rULP/3pT1FVVYX9+/ejqakJv/3tb8MeVmQQi8VScmpg\nZD527FhUV1f3fF9dXY2ysrKg/lzk0dnZicsuuwxXXnkllixZEvZwQsGbb76JdevW4YQTTsAVV1yB\nl19+GVdffXXYwwoNZWVlKCsrwxe/+EUAwOWXX47NmzeHPKpw8O677+L0009HcXExMjMzcemll+LN\nN98Me1ihorS0tOcO/NraWowcOTLp5wMj83nz5mHHjh2oqqpCR0cH/vCHP+Diiy8O6s9FGowxXHfd\ndZg+fTpuueWWsIcTGlatWoXq6mrs2bMHTz31FL70pS/hiSeeCHtYoWHUqFEYN24ctm/fDgB48cUX\nMWPGjJBHFQ6mTZuGjRs3orW1FYwxvPjii5g+fXrYwwoVF198MdasWQMAWLNmTWoRqHo7vx88++yz\nbOrUqWzSpEls1apVQf6pSOP1119nsViMzZ49m82ZM4fNmTOHPffcc2EPK1RUVlayxYsXhz2M0PHB\nBx+wefPmsZNOOoldcsklrL6+PuwhhYZ77rmHTZ8+nc2cOZNdffXVrKOjI+whGcPSpUvZ6NGjWVZW\nFisrK2OrV69mdXV17Nxzz2VTpkxhCxcuZEePHk0aw940ZGFhYZEGsC0FFhYWFmkAS+YWFhYWaQBL\n5hYWFhZpAEvmFhYWFmkAS+YWFhYWaQBL5hYWFhZpAEvmFhYWFmkAS+YWFhYWaYD/D9fbQ9UIKnRg\nAAAAAElFTkSuQmCC\n",
"text": [
"<matplotlib.figure.Figure at 0x10fd65710>"
]
}
],
"prompt_number": 51
},
{
"cell_type": "code",
"collapsed": false,
"input": [],
"language": "python",
"metadata": {},
"outputs": []
}
],
"metadata": {}
}
]
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment