{ "metadata": { "name": "", "signature": "sha256:c5f1f900ba9fd440e5cf56e0eca6f9ad8823d4813f7e7db46daa5c316af1dfef" }, "nbformat": 3, "nbformat_minor": 0, "worksheets": [ { "cells": [ { "cell_type": "code", "collapsed": false, "input": [ "%matplotlib inline\n", "from collections import namedtuple\n", "import itertools\n", "import matplotlib.pyplot as plt\n", "import seaborn as sns\n", "import numpy as np\n", "import datetime as dt\n", "import scipy.stats as stats\n", "from scipy.interpolate import interp1d\n", "import scipy\n", "import statsmodels.api as sm\n", "\n", "\n", "from sumrv import SumRv\n", "\n", "\n", "bigfontsize=20\n", "labelfontsize=16\n", "tickfontsize=16\n", "sns.set_context('talk')\n", "plt.rcParams.update({'font.size': bigfontsize,\n", " 'axes.labelsize':labelfontsize,\n", " 'xtick.labelsize':tickfontsize,\n", " 'ytick.labelsize':tickfontsize,\n", " 'legend.fontsize':tickfontsize,\n", " })" ], "language": "python", "metadata": {}, "outputs": [], "prompt_number": 19 }, { "cell_type": "markdown", "metadata": {}, "source": [ "Computing the PDF of a summed 1D random variate in Python\n", "==========================================================\n", "Suppose we want to model a random variate $Y$, such that\n", "$$Y = X + E$$ \n", "where $X$ is some random variate of interest, and $E$ represents an additive error term.\n", "\n", "Of course, we can model this using basic Monte-Carlo methods - run many samplings over both $X$ and $E$, summing the results \n", "(this has the advantage of being trivially generalisable to N dimensions). \n", "But if we're interested in the precise shape of $Y's$ PDF, this can be terribly inefficient. For example, if $X$ is not a standard random variate but instead a computationally intensive transform of one, then we might want to minimise the number of samplings of $X$ \n", "(I'm assuming the transform has a well behaved parametric form). \n", "\n", "We can determine the PDF of $Y$ analytically via the convolution of the component variate PDFs:\n", "$$P(Y) = P(X)*P(E)$$\n", "\n", "It's worth noting that there are a bunch of standard [analytical solutions](http://en.wikipedia.org/wiki/List_of_convolutions_of_probability_distributions), \n", "but often these don't apply.\n", "\n", "Convolution using Scipy \n", "-----------------------\n", "\n", "We can approximately compute the general case using Scipy's convolution and interpolation routines. First, a basic implementation to give an idea of what's going on:" ] }, { "cell_type": "code", "collapsed": false, "input": [ "simple = stats.uniform(loc=2,scale=3)\n", "errscale = 0.25\n", "err = stats.norm(loc=0,scale=errscale)\n", "\n", "# NB Kernel support array **MUST** be symmetric about centre of the kernel (error PDF) for this to work right. \n", "# Support also needs to extend about any significant areas of the component PDFs.\n", "# Here, we just define one massive support for both input PDF, and error PDF (kernel)\n", "# But we can do much better (see later)\n", "\n", "#NB step-size determines precision of approximation\n", "delta = 1e-4\n", "big_grid = np.arange(-10,10,delta)\n", "\n", "# Cannot analytically convolve continuous PDFs, in general.\n", "# So we now make a probability mass function on a fine grid \n", "# - a discrete approximation to the PDF, amenable to FFT...\n", "pmf1 = simple.pdf(big_grid)*delta\n", "pmf2 = err.pdf(big_grid)*delta\n", "conv_pmf = scipy.signal.fftconvolve(pmf1,pmf2,'same') # Convolved probability mass function\n", "print \"Grid length, sum(gauss_pmf), sum(uni_pmf),sum(conv_pmf):\"\n", "print len(big_grid), sum(err.pdf(big_grid)*delta), sum(simple.pdf(big_grid)*delta), sum(conv_pmf)\n", "conv_pmf = conv_pmf/sum(conv_pmf)\n", "\n", "plt.plot(big_grid,pmf1, label='Tophat')\n", "plt.plot(big_grid,pmf2, label='Gaussian error')\n", "plt.plot(big_grid,conv_pmf, label='Sum')\n", "plt.xlim(-3,max(big_grid))\n", "plt.legend(loc='best'), plt.suptitle('PMFs')" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "Grid length, sum(gauss_pmf), sum(uni_pmf),sum(conv_pmf):\n", "200000 " ] }, { "output_type": "stream", "stream": "stdout", "text": [ "1.0 " ] }, { "output_type": "stream", "stream": "stdout", "text": [ "1.0 " ] }, { "output_type": "stream", "stream": "stdout", "text": [ "1.0\n" ] }, { "metadata": {}, "output_type": "pyout", "prompt_number": 20, "text": [ "(, )" ] }, { "metadata": {}, "output_type": "display_data", "png": "iVBORw0KGgoAAAANSUhEUgAAArAAAAHeCAYAAABjUjgBAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAIABJREFUeJzs3XecVNX9//HXzOwu24BllyZWiicKKjYUbLEDscceKyqx\nYdSvGhs2ikZjLBhBUCIqVhIb+VkSe8GSRFGUxCMQBEvoZdm+M/P74947OzvM7s6yd2ZZ5v18PHjs\nzJ1z7j17mIXPfuZzzwERERERERERERERERERERERERERERERERERERERERERERERERERERERERFJ\np0B7D0BEJJsYYyIJhyLAGuBL4BFr7dNNtI8CO1prFzVx3reBn7tPR1lrH4t7bQZwdjPDetdae0jK\n34SISDvLae8BiIhkoShwm/s4F9gZOA44xBizt7X2qoT29Tj/Xp8P3Jh4MmPMjjjBq9cu2sR1XwTm\nJjm+uJXjFxFpVwpgRUTagbV2XPxzY8yhwN+BK4wxk6y138W9vAz4CRhljLnZWhtOON0F7tfZwAnN\nXPZFa+3jbRy6iEi7UwArIrIZsNa+ZYz5BtgJGALEB7BR4GFgKnA08JL3gjEmFzgX+BCYT/MBbEqM\nMecAFwI7AsXACvfcf7LWPtfW84uItFWwvQcgIiIx3n0JiXWyAE8DFTRkWz3HAj1wAtw239dgjLkd\neBToCTwD/AF4A9gaOKmt5xcR8YMysCIimwFjzOHAz3CC138kvm6t3WCMeQY41xiztbX2B/el0cA6\n4DlgbAuXOcEY0y/J8XuttevcxxcC3wO7WGurE8ZYlvI3JCKSRgpgRUQyL2CMuQUnY5qLE7gej1Mq\ncJ+1dmkT/R7GuZHrPGC8MWZ74AhgirW22hjT0nWPc//EiwJ/wgmCved1JMkCW2tXtXQBEZFMUAAr\nItI+bnG/RnGW0XoXmG6tfaqpDtbaT40x84DzjDETcMoJAjiBbSrOTeEmrieBy4D5xpjn3HF9HJeh\nFRFpdwpgRUQyL2qtDW1i34eBScBIYBTwT2vtF76NDK4EFrnnvs79U2+MeQW4ylq70MdriYhsEt3E\nJSLSsTwBVOGsSNAHmObnya21EWvt/dba3YFewInACzg3i71mjMnz83oiIptCAayISAfifpT/Z5xV\nATbgrE6QrmutsNa+YK09FXgb6A8MStf1RERSpQBWRKTjGYtz09dwa22FXyc1xuQZY/ZPcjwXKMWp\n163063oiIptKNbAiIh2Mu0pBUysVtEUh8L4xZgHwGc5mCvk4Kx3sBLxkrf0mDdcVEWkVBbAiIluO\nqPsn1eOJNgDXAocAw3CW3FoPLAQuwlluS0RERERERERERERERERERERERERERERERERERERERERE\nRERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERE\nRERERERERERERERERETaJuD3CY0x2wL3Aoe7538DuMJauzSFvvnAeOBMoCswF7jWWvt+QrsAcB1w\nIdAL+AYYZ619Psk5RwNXATsAi4F7rbVTE9ocA5wO7A0MAN611h7SxBhDwGXABUB/oAL4HDjLWvu/\nlr5HEREREWmboJ8nM8YUAm8BBjgbOAvYEXjbfa0l03ECw7HAUcBPwOvGmMEJ7SYAtwCTgBHAx8As\nY8zIhPGMBh4CZgHD3a+TjTEXJZzvOGA3YA6wFIg2M8Yn3PFNB44ERuEE2vkpfH8iIiIisjkxxlxu\njKk3xvSLO7aDMabOGHNlC30HG2Mixphz4o6FjDH/Mca8FHespzGmxhhzS0L/N4wxX8Q9zzHGLDfG\nPJrQbroxZoUxJifuWCDu8QfGmLeaGONp7veyR/MzISIiIiLp4msGFjgW+Mhau8g7YK1dDHyIk+Vs\nqW8d8Gxc3zDwDDDcGJPrHh4O5AIzE/rPBHY1xmzvPh8GdE/S7gmgDDgg7jrNZVzjXQK8Y639PMX2\nIiIiIuIzvwPYQcBXSY7PBwam0HeRtbY6Sd88nNpUr12NtXZhknbEXWeQ+zVxPF67nVsYTyNuAL0P\nMN8Yc5cxZqUxptYY87ExJmm9rIiIiIj4z+8AthuwJsnx1e5rzSltpq/3emvbkaRtYrtUleEE0ufi\n3KB2Pk5WuRJ4zRizVyvPJyIiIiKbIKflJpsl31dPSIEX7OcAv/BWHDDGvAcsAq4BTmuHcYmIiIhk\nFb8D2DUkz7SW0pD5bK7vdk30Ja7/GqAkxXa441nWTLtUeeebH79clrW2whjzMbB7KieJRCLRQKA9\n4m/ZHL2/+FMe+MS5z/Dw/gfy671/1c4jEhERyYxAGwIivwPYr4FdkhwfSEPtaXN9jzfG5CfUwQ4E\naoEFce06GWP6J9TBerWv8+Pa4Y5nWTPtUmKtrTLGJNbdxkvpRrBVqyoI+l24kUbBYICSkiLWrq0g\n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\nNW6WsKP3dKSxJxtjqjL6YJfgXhy/mRZXaYxZnNEHu8T/vCItDj+fzTnGPZcKMsYsAmrS4lYB/X7c\n7WlxVbiVF4aOjeSECy7JJaxohMMejY11tLZ2ER/l7V8ZH53jwtM5nhwleZ7fFXQCY1OS57jE6BxP\nom9dPu6h+V6F4C7gEGPM7qkDfiF4mH/baGOjwGlpYyPA6cD91tqYf/he3PuLn8oYfybwqrU2tRDf\n07gGvmxxLbiVEbDWrgVeHiZuwH88rLUDwH3AacaY9GmjU3AXd432/YmIiIhIHuR7BvYm4HzgT8aY\n1FTj5bi1U4d2v/KXuloFfMdaezmAtfYlY8ztwI/8JauagfOAhbj1YfHjthpjrga+YYzpBF7EFblH\nAyekxQ0aYy7FbVywAXgYOAa38cD5aWvAAnwTuNsYcz1u2a6DgYuBa621W9Livo3bNOF3xpif4nb3\n+gFwh9aAFREREZkceZ2Btdb24IpEi1tH9VZcoXqMf1uK5z92ZjPa2cDPcTtt3Q3MB46z1r6UEXex\nH3MBblb0UNzmAvdk5HMDrgg+zY87HfiStfa6jLh7cTOph/hxF+A2QbgoI+5l4CPALn5+3wVuAT4z\n8pkRERERkXwp76sZitCWLR0l1VCjXqDC0zkuPJ3jyaHzXHg6x4Wnczx5Zs+ePu46NN89sCIiIiIi\nBaUCVkRERERKigpYERERESkpKmBFREREpKSogBURERGRkqICVkRERERKigpYERERESkpKmBFRERE\npKSogBURERGRkqICVkRERERKigpYERERESkpKmBFREREpKSogBURERGRkqICVkRERERKigpYERER\nESkpKmBFREREpKSogBURERGRkqICVkRERERKigpYERERESkpKmBFREREpKSogBURERGRkqICVkRE\nRERKigpYERERESkpKmBFREREpKSogBURERGRkqICVkRERERKigpYERERESkpKmBFREREpKSogBUR\nERGRkqICVkRERERKigpYERERESkpkXzfoTHGAy4CvgDMAd4ALrPW/iHH8ScD3wL2BjYDNwFXWWsT\nGXFHAD8ADgK2A78BLrbW9mXE7QtcAxwK9AN3AV+11rZlxO3qxx0LeMBDwFestevSYo4FPgscAswF\n3gYeAL5lrd2ay/cnIiIiIhNTiBnY7+IK0B8DxwHPAncYY44fbaAxZinwe+A5f+y1wCXAlRlxBwAP\n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\ndVEAAAAASUVORK5CYII=\n", "text": [ "" ] } ], "prompt_number": 20 }, { "cell_type": "markdown", "metadata": {}, "source": [ "All that remains is to convert back from the resulting PMF to a PDF: renormalise (divide by delta), and then interpolate to provide a continuous approximation.\n", "\n", "Incidentally, you *definitely* want to use fftconvolve, the regular version is $\\sim100$ times slower:" ] }, { "cell_type": "code", "collapsed": false, "input": [ "print \"FFT timings:\"\n", "%timeit conv_pmf = scipy.signal.fftconvolve(pmf1,pmf2,'same') # Convolved probability mass function\n", "#print \"Non-FFT timings:\" ## Will take a while...\n", "#%timeit slow_conv_pmf = scipy.signal.convolve(pmf1,pmf2,'same') # Convolved probability mass function" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "FFT timings:\n", "10 loops, best of 3: 37.3 ms per loop" ] }, { "output_type": "stream", "stream": "stdout", "text": [ "\n" ] } ], "prompt_number": 21 }, { "cell_type": "markdown", "metadata": {}, "source": [ "I've put together a slightly slicker version of the above code as a class inheriting from scipy.stats.rv_continuous, but the principle is the same. I've uploaded the [source along with this notebook](https://github.com/timstaley/ipython-notebooks/blob/master/probabilistic_programming/sumrv.py).\n", "Here it is in action:" ] }, { "cell_type": "code", "collapsed": false, "input": [ "sum_rv_delta_size = 1e-2\n", "sum_rv = SumRv(simple, err, delta=sum_rv_delta_size, dist_truncation=0.0)\n", "new_grid = np.linspace(-2,7,2**10) \n", "plt.plot(new_grid,simple.pdf(new_grid), label='Tophat')\n", "plt.plot(new_grid,err.pdf(new_grid), label='Gaussian error')\n", "plt.plot(new_grid,sum_rv.pdf(new_grid), label='Sum')\n", "#plt.xlim(-3,8)\n", "plt.legend(loc='best'), plt.suptitle('Discretization and convolution via scipy routines')" ], "language": "python", "metadata": {}, "outputs": [ { "metadata": {}, "output_type": "pyout", "prompt_number": 22, "text": [ "(, )" ] }, { "metadata": {}, "output_type": "display_data", "png": "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\nyTK1kPremakv1lyew1TuxFX1HQ7cZFynqh/j2mIta3dNZx9cYDfbWnt0/BvG9QLu1Mwf1to7gTu9\n9lXb4bKBRwFPGmM28trideW+mEpHn5vEcz8L10bseFxm06+i7UwnK1+ye3VXrgn/3tne9ZrO3zIb\nVgJYaztqqhRjrX0Vl00ux3Usm4Kr6brHGLPYptnjvRSozV2WeQ3N/+z9t8On3XjW2sXW2gestQfi\nem2NwVWNQWtj+D0yUEx/Wzu1u1Rb/hdn2pkA71zcg2uTdq619m8pFh3r/XzYrtkbb1ugMhPlwfWo\nA9eIP7GsA3DVGw1kqCo6wfq47MVTSQK7kd773fVfXPk3N8b0S/L+zuluyCvjB8BwY0y71T5eFfBn\nwEhjzNgki/izNLyV5L1Osda+jOtJurd3jKka+3+MOxfjTfIe0J0p03JgLWNMsi/MrVOsE6Vr1+YO\nKXqsZuwcpmKt/RqXedvWuLRfZzpSQOvn+F9J3uvy1FVe+6rHrbXH4YKoQbS2f/PvZbunqOrrjB1T\nbGNn7+fbCeVaiuvktq0xZjtcBvlzr81ot3Xxc7Xc+7lGLYC3jWT3ha7cS7viFWCQ10SnU6y1zdba\nV6y159Hadq/dYWZKjYK7LPKyM/fibmRf4Xoutrd8hTFm+ySvl+NuYFFa2ys8gmt8vrdx41IlrtOZ\nJ9fZuCfe84wxazS4NsYETdthKKC1g8ioTuznr7gP4Bxrbaou++DarkDrzcovxzDg+hTrdKU8d+Gq\niH5rjBmT8N4M3JhwdyXr9JAB/jHuaOKGgzBuiJdbyMCN1boxn+7C3cCnxb/nZUc7mx30ezPPTAwW\nvWskPqNwGy54vSzh+IYA5+Cu5dvIjNtx7elOwg358W5iu0Dvb+ifixnx73l/+9/hqhsT268l8xqu\nI07imHRH4DJKybIuS3HZ6rRYN8bh07iezlMT9rMtrqH+MlyThWya4/08GhesLMYNvZOOVJ/j9XE9\nl9Pm9axMxs+u1QNYN/bfy7gHszUy/MaYwcaNE5eODUjorW6M2Qf3EPyJtTZZmzy/Y8Xfcc1YknWK\n6I7Ofq7+i2vXvI9XE+Qv35u2oxPE68q9tCv8obNu8TK5bRhjqo0xE+P+v53XxCmRf9+pT/JeyVK1\nbGYEjBvqIIALmAfgMmw74L4EXgN+k6IqI/7JsAo3htKnuKevr3BZqsl44ztZa/8H7svKGLM/bpDN\ne4wbr+01b/mNgV28fXfIWrvMGLMf7oviVWPMs7jemlHcF9IkXEPY+J5Oz+DGIrrFGPMvXC/E5dba\n+OArdmzGmG1wX6CNwLcpOm48b619ATfg53zgV8aY+d7va+FS8B/j2qglPlG/jPtwTzVuyBi/vcw1\nKdrHYd0QBlNxAeNbXvutJbhgfCLuxpisCri7GQGstT94DcMPAt4xxjyNa1Mz2TuOd8hMw+g/4cbm\nmuoFdPNx1TcH4Ia4SPtp11p7q9fm5VDgE2PMw7gv+7VxX+CzAH+oj8txWeV9cEOBPI67fvbH9Ri/\n1Mu6dUaq836nt9/puHtaqszSmbgMz8neQ8xcrywH4L6IT7bpDYNyLS6wu9G4Ht9f4/5WE3GBz8+T\nrPMMcJB3zt7GPVS8kCJA8J2A+3tdZozZDXgT93ncH9eG6cjErG8WPIALDqbi7ifXpOjgkcwjuDHL\n/mCM2RR3Ta+Lqzp/lOTjfqYshzGmBjcs01e4a2FHXKb0Ddz59R2C+9teZIzZF9cBIoAL1ibjOtfE\nN49JdV09AVxhjNkD16FqLK53cgOuOngN1tpXjTHv4jpINZG5Bxhfpz5XXlvLq3GB39vGmAdxn5Gf\n4tolZuRe2hXW2ueMG4z8Ytz95DFcwqIPLrDcidYxGsGNmfgTY8yL3nK1uO/ZKbgHnZuRGGXuMiOK\naz9yLu4CPAiXIZgDTLHWTrLWfp5ivfin/FpcMPEpLqD6nbetFbgb/f7xK3uNiDfHDVQ6itZRy/vh\nPsyJ+0rJWvscbvaKG4D1cO1FjsT1VH2GhBuxV9VwKu5L6hTcl+upcYskHps/f2MvXMBxbsK/c/Cq\naryq2L2941ob16ZiO9xT8BRvn22Ox+vNty8uKD2C1i97vw1U0omurRvZfnfcl8a+uHM4BDf8xKQk\nPSvbmzC7s5NpH43L5vpZp8m4GTi2x7VH6WzX/mTHt9Tb3mzcA8IpuL/zCaw56HSHrLWH4748/4u7\nHn+P+5Kd55XdX64Zdzx+k4STcUHh/3DjMrYZjiQNKc+tdVNIPY8LPppJMcSL1+NuEu5vO9gr+764\nv/0Ua21ag8x6Qzv8FBd47YUbeqIBF9y9maKcp+A6FGyDOyfTSchoJdnPF7jg5SZcQHIq7lp9DNje\nJoz1RRYmc/d6fd6PO7dRUgfOa+zbuuGBdsE1xRiH+xz/GPfZPLSTRTkD99C3JW78ySNw2e0/Aj+J\nDzitG0d0S9zfuS9u3Mcjce3wLqdtp7b2ztmruCrYXt42dsfdC3ey1s5vp6z+wNkPJenN2y1d+Vx5\nVZdn4R6sj8XdQ/9Bhu+lHUh1/70UF8T9G3efOsXb9whcW8Wz4xa/HjfCwmjcPehkXMB9PbCFTT3s\njoiIiJQyY8zOxpgWY8y5XVz/Dm/9doN3kWxS5k5ERCQDjDHr4oZC+ciuOZC0SM6ozZ2IiEg3GGN+\njRuk+SDc92pisxiRnFJwJyIi0j3H4tqOLQB+b63Ndi9mERERERERERERERERERERERERERERERER\nEREREREREREREREREREREREREREREREREREREREREREREREREREREREREREREREREZFSEuhoAWPM\nSOAMYGtgPFAJrGetXZDODowxGwPnAzsD1cAC4AZr7TVdLLOIiIiIpBBMY5mxwP7AUmBeZzZujNka\neA0oB44G9gCuSHO/IiIiItJJoTSWecFaOxzAGHMMsFs6GzbGBIE7gKettfvGb6/TpRQRERGRtHQY\n3Flro13c9s7ARsCxXVxfRERERDopncxdV+3g/extjHkV2BJYDtwLnGGtbczivkVERERKUjbbvq3t\n/fw78ATwU+BS4BjgnizuV0RERKRkZTNz5weOd1prp3m/zzPGlAF/McZsZK39OIv7FxERESk52Qzu\nlno/n054/WngL7hhVToM7lpaWqKBQIcjtkiRqW9q4LznruCrld9QFizjtO2PZ6u1N813sURERPIi\n0IlgKJvB3QeZ2EggEGDFijpaWrrar6PnCgYDDBhQXZLHf9//HuKrld8AEGmJcONrd3L+9mdQGeqV\n55LlVilfA75SPwelfvygc1Dqxw86B8Fg55Jc2QzuHgdWA1OAf8e9PsX7+Xq6G2ppiRKJlN4f01dq\nx98QbuClr18DYNsRW/LGD++yqqmGV755k51GTspz6fKj1K6BZEr9HJT68YPOQakfP+gcpCut4M4Y\ns5/361bez58ZY5YAi6y184wxo4DPgOnW2hkA1tplxpiLgXOMMauA53GzXJwDzLHWfp7JA5Hi8c6i\nD2hqaSYUDLG/2ZtQeZD5C97gP9+/VbLBnYiISLrSzdzdF/d7FLjB+30usAtuGrMgCdOZWWvPN8bU\nACcBpwHf4nrMzuh6kaXYvb/kIwA2HrQBfSqq2WHUNsxf8AZfrlpATVMtfSv65LmEIiIihSut4M5a\n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\nKmfChG05+eSprLVW6zHvt99ejB+/OVtssTX33HMH3377Deef/xdqa2u4+OLzue66m7n//nt5443/\nMGLECGbPvoe6ulpmzryeF154npqaVQwfPoJf/GJfDjjg17HtvvXWG5xyyolccMGlvPrqfF58cS7h\ncIQnnni+w3J3l4I7yZtIS4Saplqgc2PcgZsIu29FH1asXqngTkTaFW4JszzPA54PrOxPKNi5r9xw\nOMw777zFLrvsmjSLlMrixYvYf/+DGT58BI2NDTzxxGOcfPKxzJp1J+uvP7bD9QOBQOz3p556nOuv\nv4ojjzyW8eO3YPXq1Xz6qaWmxj2Yf/PN15x55h/YZZefctRRxxEKhVi4cAHfffdtym0CfPfdd+y5\n596ss85IWloivPTSPP74x99z+eXXsO22k9ose9ddc9hss/FcfPHFfPXVN1x77ZWcf/45XHvtzHaP\n48EH/8EVV1zCnnvuzVFHHUddXR2zZ9/MyScfz+23/42qqqpY2d56600+/fQTjj76eAYOHMRaaw3n\n3XffBmD69LOZPHkKv/zlfkQiEaLRKKefPpVPPvkfxxxzAuuvP5aXX36Ja6+9kuXLl3P88f/XphxX\nXXUZEyduz7nnXkBT0+oOz38mdHi1GGNGAmcAWwPjgUpgPWvtgs7syBhzJnARMN9au2MXyipFJn52\nin6drJZ16/RlxeqV1Ci4E5EUwi1hzn/1MpY2Ls9rOQZXDuTciad3KsBbtWolzc1NbbJMvnA43Ob/\n8cHfmWeeE/s9EokwYcJEDjvsQB555CFOOeXUDvcbjbZW/X7wwXuMGbNBLAsHrjrYZ+3HhMNhTj31\nrFiwtOWWW7e7TYCTT54a+72lpYUtttiahQsX8OCD/1gjuBsxYm2mTbuAQYP6MG5cLcuWLeeGG65m\n6dIlKTuS1NfXc+ON17Lnnnu3OR+bbDKOX/96Xx599CEOOODgWNlqa2u47ba7GDiwtYmPH9z95Cc/\n5cQTfxt7ff78F3n//Xf505/Oi2VNJ0zYlsbGBv7+97s56KDf0L//gDb7POOMPyctZ7akc5WNBfYH\n3gDmAbt1difGmPWBs4FFQLSDxaVErFrdGpR1tloWoJ83v+wqL/snIlIKli5dwi9+sUeb11544TWC\nQTe62euvv8Ydd9zG559/yqpVrbP4rL32Op3e18Ybj+PBB//JVVddxvbb78Smm46nsrIy9r4xGxEK\nhTjvvLPYc8+9GT9+izYBUioff/xfbrttJh9//F9WrFgeC/5GjVpvjWUnTmzbGWP99ccA8MMP36cM\n7j788D3q6+uZPHlKm0B46NBhrLvuKN59961YcAewySabpiz3Tjv9pM3/3333LYLBIJMnT2nz+uTJ\nU3j00Yf48MMP2G67HVKunwvpBHcvWGuHAxhjjqELwR1wI3AnsFGa+5QS4A9gHAwE6VNe3en1/U4V\nytyJSCqhYIhzJ57eI6tl+/XrT0VFBT/88H2b1wcMGMitt94JwEMP/ZNHH30o9t7//vcxp59+ChMn\nbsdZZ53L4MFDCASCXHLJDJqamjpd7j32+DlNTU08+uhDPPDAPygrCzFp0nb89rd/YPjwEayzzkiu\nuOJa7r77DmbMOJfm5mY23ngcJ574WzbffMuk2/zhh++ZOvVERo8ew+9/fzprrTWcYLCMW2+9ka++\n+irJeWhbs1Ne7oa+au94li93mdqpU09K+n6/fv1jvwcCAYYMGZxyW0OGtA0gV61aRd++/daoKvcD\nzVWrViZ9PZc6vNKstd3KtBljfg1sDhwIPIgyd+LxO1P0q+jbqdkpfH5wpzZ3ItKeUDDE0KrUX96F\nKhQKMX78lrz22qs0NzfHXi8rK2PDDTcCXOAQX+U5d+6zlJeXc+GFl1FWVhZ73Q9IfH6PzXC4dbtu\nuTWD4H32+RX77PMramtree21V7j++qs499yzuPnmOYCrht1yy60Jh8O899473HrrTZx++lT++c9H\n2gRRvtdee4W6ujpmzPgLQ4YMjb3e2Lhmh5Gu8vf75z9PY/ToMWu871chtwqssUzqbfejpmYV4XC4\nTYC3dOmSNvuObTmQ/rYzJaszVBhjBgJXAn+01q7I5r6k54n1lO1CezuAvn5wt1rBnYgUp9/85jBW\nrlzB5Zdfntbyq1c3Ekh4WH7zzddZtOiHNq8NHz4CgM8++zT2Wjgc5j//eTVlMNKnTx923XUyP/nJ\nrnzxxWdrvB8Khdhyy6359a8PpbGxgW+//TbJVlqDuPjgc8GCr3j//XfTOML0bLbZeKqqqvj664Vs\nuOFGa/z70Y/W7fK2t9hiK1paWnjuubZD0Dz99BOUl1fw4x9v2t3id1u2q0gvAz621t6e5f1ID+Rn\n3Pr16tOl9f2BjFc1q82diBSnrbaawIkn/pYbb7yWDz74iN13/xkjRqxNU1MTCxd+xbPPPkXv3lWx\ngGzixO25//57ueiiaeyxx14sXLiA22+fxdChw9pk+DbeeBzrrDOSG264mmi0hVConAce+AfhcLjN\ncpdcciHV1dWMG/djBg4cxMKFC3jyycfZZpuJgOuR+u677zBp0vYMHTqMlStXcOedcxg6dFisbVyi\nCRO2paysjBkzzuOgg37D0qVLuO22m1lrreFrdLzoqqqqak466RT++tdLWLFiOdtuO4nq6j4sWbKY\nt99+iy233CrWZq6z+5w4cXs222xzLr/8YlasWM7o0aN55ZX5PProQxx66JFJs5W5lrXgzhizI3Ao\nsEV3txUM5j6lWQj84y7W468N1wEuSCsrS36M7Z2DAZUuuGuKNNEcbaIy1CtLJc2fYr8G0lHq56DU\njx90Dg477HB22GEis2bdxs0338CKFcupqKhg1Kj12G23Kfzyl/sSCrls3aRJk/j970/n3nvvZu7c\n5xgzZiznnXc+s2ffSiAQiN1ry8pCXHrpX7n88r9w0UXT6devPwce+Gs23XRTbrvtlthym2++Of/+\n98M8+eRj1NXVMmTIUPbY42ccc8wJlJUF2HDDjfjPf15h5szrWL58Of369WP8+C2YMeMievfu5e0r\n2GbfY8eOYdq0C7jllps488xTGTlyJCed9FteffVl3n77rbgytv7d46+BsrIAgUAg9nsqv/rVvowY\nMZy7776Dp59+gkgkwtChw9h88y3YaKONYusGAoE25fMFg8Reb/tegCuuuJqbbrqee+65nZUrVzJi\nxNqccsofOPDA1nHuWstJu+VMR2ev/U4t7XWouJk0hkIxxnwEzAXOitvPo7iq4D2ABmtth607o5kK\n46XgnPvs5Xy85DN+ufEUDt5sn06v/23ND0x9bBoA1+x5PsP7DG1/BRERkR4q0InGe9mslt3I+3dC\nkveWA1OBtCbDW7GijpaW0ovxgsEAAwZUF+3xL693be5CkQqWLUtetdreOYiG49prLPqeiqbe2Sts\nnhT7NZCOUj8HpX78oHNQ6scPOgedzdxlM7j7CW17xgaAq3CZu98Ca7bGTKGlJdpmPr1SU6zH749P\nVx2q7vD4kp2DciooD4ZobgmzoqGGSN/iO0e+Yr0GOqPUz0GpHz/oHJT68YPOQbrSCu6MMft5v27l\n/fyZMWYJsMhaO88YMwoXrE231s4AsNa+kGQ7K4Eya+287hdderJwS5iGcAMAfSu61qEiEAjQr6Iv\n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\n", "text": [ "" ] } ], "prompt_number": 22 }, { "cell_type": "markdown", "metadata": {}, "source": [ "The class also takes care of computing the CDF correctly:" ] }, { "cell_type": "code", "collapsed": false, "input": [ "plt.plot(new_grid, simple.cdf(new_grid), label='Tophat')\n", "plt.plot(new_grid, err.cdf(new_grid), label='Gaussian error')\n", "plt.plot(new_grid, sum_rv.cdf(new_grid), label='Sum')\n", "plt.xlim(min(new_grid),max(new_grid))\n", "plt.legend(loc='best'), plt.suptitle('CDFs')\n", "plt.ylim(-0.1,1.1)" ], "language": "python", "metadata": {}, "outputs": [ { "metadata": {}, "output_type": "pyout", "prompt_number": 23, "text": [ "(-0.1, 1.1)" ] }, { "metadata": {}, "output_type": "display_data", "png": "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\nufh/x2X2c8dY718AAAAASUVORK5CYII=\n", "text": [ "" ] } ], "prompt_number": 23 }, { "cell_type": "markdown", "metadata": {}, "source": [ "Convolution using Statsmodels KDEs\n", "----------------------------------\n", "\n", "If our error variate $E$ has a distribution in the list of statsmodels \n", "[Univariate KDE](http://statsmodels.sourceforge.net/devel/generated/statsmodels.nonparametric.kde.KDEUnivariate.html) \n", "[kernels](http://statsmodels.sourceforge.net/devel/generated/statsmodels.nonparametric.kde.KDEUnivariate.fit.html#statsmodels.nonparametric.kde.KDEUnivariate.fit),\n", "i.e.:\n", "\n", " - \"biw\" for biweight\n", " - \"cos\" for cosine\n", " - \"epa\" for Epanechnikov\n", " - \"gau\" for Gaussian.\n", " - \"tri\" for triangular\n", " - \"triw\" for triweight\n", " - \"uni\" for uniform\n", " \n", "Then we can use the ready-made KDE functionality from statsmodels, which is more robust, but slower, since it does not rely upon regularly spaced samples of $X$.\n", "First, a sanity check on the KDE parameters:" ] }, { "cell_type": "code", "collapsed": false, "input": [ "# Demonstrate use of KDEUnivariate to plot kernel shape, \n", "# by running on single sample point:\n", "sample=np.zeros(1)\n", "print \"A single sample for our KDE:\", sample\n", "kernel = sm.nonparametric.KDEUnivariate(sample)\n", "sigma=2.5\n", "kernel.fit(bw=sigma) # kernel='gau' by default\n", "grid = np.linspace(-5*sigma,5*sigma,2**10) \n", "plt.plot(grid, kernel.evaluate(grid), label='KDE')\n", "\n", "#Plot a scipy.stats Gaussian for comparison:\n", "norm = stats.norm(loc=0,scale=sigma)\n", "plt.plot(grid, norm.pdf(grid), label='Normal')\n", "plt.legend()\n", "plt.gcf().suptitle('Gaussian KDE profile of a single sample')\n", "print \"Max diff between KDE fit and Gaussian PDF:\",max(kernel.evaluate(grid) - norm.pdf(grid))\n", "#%timeit kernel.evaluate(grid)\n", "#%timeit norm.pdf(grid)" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "A single sample for our KDE: [ 0.]\n", "Max diff between KDE fit and Gaussian PDF: 2.77555756156e-17\n" ] }, { "metadata": {}, "output_type": "display_data", "png": "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\n4tpAfQGXOH4fmBPXizUaH5u19l/AybihdD6D6yhTh6uC+Uc7x5JsEO7O3HS+3eWttS/hEvPtwC3G\nDW7bev/H4DrjXI479qO84/gBMNFae30H+y2k/SFpLsclQql6DXe+cnCD7Z6IS8aPsdbG9yTt8Px4\nX2SH4Maem4Lr/HAibnDrI621T3YirvYkjMG6O9Ecg7vuR+Lahn0S1w7wDlz706S83smH4xKfMuBb\n3nZeA06y1t7eTkwp86qMT8ENNjwKd5/yI3Cl9SeRoINYB67FXa/9ce/tC3Hv/2uB2bbtnVw6+/pO\nuI7Xfm8OcDOuRPISXNXrtewtPWwzNFB7+7bW/hGXxP4Rl8h8HZfsTMDdESSVMVNX4joZbcG9lr/F\n3k48Z9lWA8l7Q8ocjXudHOXtrwL3HmyvpLCj89bVedW419ki3OfeOV68Z3fwY7ANr3R+Fm7Q8Bbc\nefsGLhGsxA2VtTCVbYmIyABmjDnWGBMxXbyDi0gixpgLvNfVBX7Hkq6889MTw1bJAKOSQhERSTsm\nwe0wjTFjcCXVTbiBp0WkB6lNoYiIpKNHjTFZuJ7Y23FtYT+O6zn9I2ttorEsRaQblBSKiEg6uh/X\nDu50XCeTXbhhUm6x1v7Nz8BERERERERERERERERERERERERERERERERERERERERERERERERERERE\nREREREREREREREREREREREREREREREREREREREREREREREREBohAsgWMMRXAjcDx3vLPApdYa9ek\nsO51wCHALKAEOM9ae187y44GrgE+4i27DviztfbHqR2KiIiIiHRVsKOZxphBwHOAAc4FzgEmA//1\n5iVzEZADPOn9H21nP+OAN4BJwDeAE4ArgaYU9iEiIiIi3ZSVZP4FwHjAWGtXABhjFgBLgQtxJYjt\nstYWeutMxCWV7bkdWAPMsda2eNNeTBq9iIiIiPSIDksKgVOAV2MJIYC1thJ4GTi1E/tpt5raSxg/\nDNzcKiEUERERkT6UrKRwf+CxBNPfA87ooRiO9B7rjTH/Bo4GanFVzt+y1lb30H5EREREpB3JSgpL\ngG0Jpld783rCKO/xbuB94CTgB8DHgH8ZY5J2hhERERGR7klWUtgXYonpf6213/CeP2+M2QH8GTgR\neNqXyEREREQGiGRJ4TYSlwiW4koLe8JW7/HfcdNj/x9ECklhJBKJBgIqVBSRvlHf1MRNz/6Nd7a+\n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\nX0wRERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERGbn+fxSP\nMCeSyQk7AAAAAElFTkSuQmCC\n", "text": [ "" ] } ], "prompt_number": 24 }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Importance sampling with a weighted KDE\n", "Now we've established that the statsmodels KDE kernel behaves as expected, we can employ the weighted-KDE technique to generate a smoothly convolved PDF using importance sampling.\n", "I've used roughly the same number of PDF evaluations as for the direct (SciPy) convolution approach,\n", "but the requirement that the KDE-fit be weighted means we're restricted to using the inefficient non-FFT implementation. \n", "**Note that the weighted-KDE fit is broken in statsmodels 0.5.0, but has been [fixed](https://github.com/statsmodels/statsmodels/commit/c0a62a0b09039de6f371144d1145d5f3c2ceaab5) in the current dev-version (0.6-dev).**" ] }, { "cell_type": "code", "collapsed": false, "input": [ "#Generate regular samples of input PDF, weighted by PDF value:\n", "x_dist = stats.uniform(loc=2,scale=3)\n", "w_kde_delta=sum_rv_delta_size*2\n", "sample_locs = np.arange(1,6,w_kde_delta) \n", "print \"Weighted KDE sample spacing:\", w_kde_delta, \", resulting in\", len(sample_locs), \"samples.\"\n", "sample_weights = x_dist.pdf(sample_locs)\n", "\n", "weighted_kde = sm.nonparametric.KDEUnivariate(sample_locs)\n", "weighted_kde.fit(weights=sample_weights, bw=errscale,fft=False, kernel='gau')\n", "plt.plot(grid,simple.pdf(grid), label='uniform')\n", "plt.plot(grid,err.pdf(grid), label='err')\n", "plt.plot(weighted_kde.support,weighted_kde.density, label='kde')\n", "# plt.plot(grid,weighted_kde.evaluate(grid), label='kde')\n", "plt.xlim(-2,8)\n", "plt.legend(loc='best'), plt.suptitle('Importance sampling and statsmodels weighted-KDE')" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "Weighted KDE sample spacing: 0.02 , resulting in 250 samples.\n" ] }, { "metadata": {}, "output_type": "pyout", "prompt_number": 25, "text": [ "(, )" ] }, { "metadata": {}, "output_type": "display_data", "png": "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\n", "text": [ "" ] } ], "prompt_number": 25 }, { "cell_type": "code", "collapsed": false, "input": [ "# weighted_kde.support" ], "language": "python", "metadata": {}, "outputs": [], "prompt_number": 26 }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Monte-Carlo sampling and an FFT-KDE\n", "\n", "At the risk of getting an unrepresentative sampling of $X$ (and hence a poor-quality approximate convolution), we can try utilising the FFT-KDE approach on a basic Monte-Carlo sample. If our error-variate PDF is narrow, this will be a poor approximation without a large number of samples, but if the error is large then the additional smoothing means we can (perhaps) get away with a relatively small sample size, which effectively means that we don't require detailed knowledge of the PDF of $X$. We can then efficiently sample from this smoothed PDF repeatedly, without requiring further direct samples from $X$.\n", "The technique also generalizes trivially to higher dimensions." ] }, { "cell_type": "code", "collapsed": false, "input": [ "x_sample = x_dist.rvs(size=len(sample_locs)*5)\n", "fft_kde = sm.nonparametric.KDEUnivariate(x_sample)\n", "fft_kde.fit(bw=errscale,fft=True)\n", "plt.plot(grid,simple.pdf(grid), label='uniform')\n", "plt.plot(grid,err.pdf(grid), label='err')\n", "plt.plot(grid,fft_kde.evaluate(grid), label='kde')\n", "plt.xlim(-2,8)\n", "plt.legend(loc='best'), plt.suptitle('Basic MC-sampling and statsmodels FFT-KDE')" ], "language": "python", "metadata": {}, "outputs": [ { "metadata": {}, "output_type": "pyout", "prompt_number": 27, "text": [ "(, )" ] }, { "metadata": {}, "output_type": "display_data", "png": "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\n/w+79yu6HqWnuQAAAABJRU5ErkJggg==\n", "text": [ "" ] } ], "prompt_number": 27 }, { "cell_type": "markdown", "metadata": {}, "source": [ "Performance\n", "------------\n", "Note there's a big performance difference between these approaches. I've demonstrated the trade-off between initialization and evaluation times below. This comparison is highly unscientific, applying an accuracy criteria of 'does the graph look about the right shape.' In the case of direct Monte-Carlo samples the graph looks wobbly even at 5 times the number of samples used for the weighted KDE, but this would improve somewhat for a wider error distribution.\n", "\n", "More to the point, synthetic benchmarks can be misleading - in a real application you will also need to consider the time it takes to sample $X$ or evaluate the PDF of $X$, plus your required level of accuracy. So take the numbers below with a generous pinch of salt - they perhaps give an idea of orders of magnitude, at best.\n", "\n", "### Initialization times ###\n", "\n", "Scipy convolution (note this *includes* the evaluation time for the PDF of $X$, but that's probably negligible in comparison to the convolution):" ] }, { "cell_type": "code", "collapsed": false, "input": [ "%%timeit \n", "SumRv(simple, err, delta=sum_rv_delta_size)" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "1000 loops, best of 3: 1.23 ms per loop\n" ] } ], "prompt_number": 28 }, { "cell_type": "markdown", "metadata": {}, "source": [ "Weighted KDE" ] }, { "cell_type": "code", "collapsed": false, "input": [ "%%timeit \n", "weighted_kde = sm.nonparametric.KDEUnivariate(sample_locs)\n", "weighted_kde.fit(weights=sample_weights, bw=errscale,fft=False)" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "1000 loops, best of 3: 1.6 ms per loop\n" ] } ], "prompt_number": 29 }, { "cell_type": "markdown", "metadata": {}, "source": [ "FFT KDE" ] }, { "cell_type": "code", "collapsed": false, "input": [ "%%timeit\n", "fft_kde = sm.nonparametric.KDEUnivariate(x_sample)\n", "fft_kde.fit(bw=errscale,fft=True)" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "1000 loops, best of 3: 345 \u00b5s per loop\n" ] } ], "prompt_number": 30 }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Evaluation times ###\n", "\n", "Scipy convolve:" ] }, { "cell_type": "code", "collapsed": false, "input": [ "%timeit sum_rv.pdf(grid)" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "1000 loops, best of 3: 333 \u00b5s per loop\n" ] } ], "prompt_number": 31 }, { "cell_type": "markdown", "metadata": {}, "source": [ "Weighted KDE" ] }, { "cell_type": "code", "collapsed": false, "input": [ "%timeit weighted_kde.evaluate(grid)" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "100 loops, best of 3: 5.99 ms per loop\n" ] } ], "prompt_number": 32 }, { "cell_type": "markdown", "metadata": {}, "source": [ "FFT KDE" ] }, { "cell_type": "code", "collapsed": false, "input": [ "%timeit fft_kde.evaluate(grid)" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "10 loops, best of 3: 32.4 ms per loop\n" ] } ], "prompt_number": 33 }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Combined init+eval times ###\n", "\n", "Scipy convolve:" ] }, { "cell_type": "code", "collapsed": false, "input": [ "%%timeit \n", "SumRv(simple, err, delta=sum_rv_delta_size)\n", "sum_rv.pdf(grid)" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "1000 loops, best of 3: 1.59 ms per loop\n" ] } ], "prompt_number": 34 }, { "cell_type": "markdown", "metadata": {}, "source": [ "Weighted KDE" ] }, { "cell_type": "code", "collapsed": false, "input": [ "%%timeit \n", "weighted_kde = sm.nonparametric.KDEUnivariate(sample_locs)\n", "weighted_kde.fit(weights=sample_weights, bw=errscale,fft=False)\n", "weighted_kde.evaluate(grid)" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "100 loops, best of 3: 7.74 ms per loop\n" ] } ], "prompt_number": 35 }, { "cell_type": "markdown", "metadata": {}, "source": [ "FFT KDE" ] }, { "cell_type": "code", "collapsed": false, "input": [ "%%timeit\n", "fft_kde = sm.nonparametric.KDEUnivariate(x_sample)\n", "fft_kde.fit(bw=errscale,fft=True)\n", "fft_kde.evaluate(grid)" ], "language": "python", "metadata": {}, "outputs": [ { "output_type": "stream", "stream": "stdout", "text": [ "10 loops, best of 3: 37.6 ms per loop\n" ] } ], "prompt_number": 36 }, { "cell_type": "markdown", "metadata": {}, "source": [ "The difference between *evaluation* time for weighted and FFT KDE approaches came as something of a surprise at first, but this is largely due to the increased number of sample points.\n", "\n", "See also\n", "---------\n", "[Jake VanderPlas's article on KDE performance](http://jakevdp.github.io/blog/2013/12/01/kernel-density-estimation/)" ] } ], "metadata": {} } ] }