{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "Parametric non Parametric inference\n", "===================\n", "\n", "Suppose you have a physical model of an output variable, which takes the form of a parametric model. You now want to model the random effects of the data by a non-parametric (better: infinite parametric) model, such as a Gaussian Process as described in [BayesianLinearRegression](../background/BayesianLinearRegression.ipynb). We can do inference in both worlds, the parameteric and infinite parametric one, by extending the features to a mix between \n", "\n", "\\begin{align}\n", "p(\\mathbf{y}|\\boldsymbol{\\Phi}, \\alpha, \\sigma) &= \\int p(\\mathbf{y}|\\boldsymbol{\\Phi}, \\mathbf{w}, \\sigma)p(\\mathbf{w}|\\alpha) \\,\\mathrm{d}\\mathbf{w}\\\\\n", "&= \\langle\\mathcal{N}(\\mathbf{y}|\\boldsymbol{\\Phi}\\mathbf{w}, \\sigma^2\\mathbf{I})\\rangle_{\\mathcal{N}(\\mathbf{0}, \\alpha\\mathbf{I})}\\\\\n", "&= \\mathcal{N}(\\mathbf{y}|\\mathbf{0}, \\alpha\\boldsymbol{\\Phi}\\boldsymbol{\\Phi}^\\top + \\sigma^2\\mathbf{I})\n", "\\end{align}\n", "\n", "Thus, we can maximize this marginal likelihood w.r.t. the hyperparameters $\\alpha, \\sigma$ by log transforming and maximizing:\n", "\n", "\\begin{align}\n", "\\hat\\alpha, \\hat\\sigma = \\mathop{\\arg\\max}_{\\alpha, \\sigma}\\log p(\\mathbf{y}|\\boldsymbol{\\Phi}, \\alpha, \\sigma)\n", "\\end{align}\n", "\n", "So we will define a mixed inference model mixing parametric and non-parametric models together. One part is described by a paramtric feature space mapping $\\boldsymbol{\\Phi}\\mathbf{w}$ and the other part is a non-parametric function $\\mathbf{f}_\\text{n}$. For this we define the underlying function $\\mathbf{f}$ as \n", "\n", "$$\n", "\\begin{align}\n", "p(\\mathbf{f}) &= p\\left(\n", " \\underbrace{\n", " \\begin{bmatrix} \n", " \\delta(t-T)\\\\\n", " \\boldsymbol{\\Phi}\n", " \\end{bmatrix}\n", " }_{=:\\mathbf{A}}\n", " \\left.\n", " \\begin{bmatrix}\n", " \\mathbf{f}_{\\text{n}}\\\\\n", " \\mathbf{w}\n", " \\end{bmatrix}\n", " \\right|\n", " \\mathbf{0}, \n", " \\mathbf{A}\n", " \\underbrace{\n", " \\begin{bmatrix}\n", " \\mathbf{K}_{\\mathbf{f}} & \\\\\n", " & \\mathbf{K}_{\\mathbf{w}}\n", " \\end{bmatrix}\n", " }_{=:\\boldsymbol{\\Sigma}}\n", " \\mathbf{A}^\\top\n", " \\right)\\enspace,\n", "\\end{align}\n", "$$\n", "\n", "where $\\mathbf{K}_{\\mathbf{f}}$ is the covariance describing the non-parametric part $\\mathbf{f}_\\text{n}\\sim\\mathcal{N}(\\mathbf{0}, \\mathbf{K}_\\mathbf{f})$ and $\\mathbf{K}_{\\mathbf{w}}$ is the covariance of the prior over $\\mathbf{w}\\sim\\mathcal{N}(\\mathbf{w}|\\mathbf{0}, \\mathbf{K}_{\\mathbf{w}})$.\n", "\n", "Thus we can now predict the different parts and even the paramters $\\mathbf{w}$ themselves using (Note: If someone is willing to write down the proper path to this, here a welcome and thank you very much. Thanks to Philipp Hennig for his ideas in this.)\n", "\n", "$$\n", "\\begin{align}\n", "p(\\mathbf{f}|\\mathbf{y}) &= \n", " \\mathcal{N}(\\mathbf{f} | \n", " \\boldsymbol{\\Sigma}\\mathbf{A}^\\top \n", " \\underbrace{\n", " (\\mathbf{A}\\boldsymbol{\\Sigma}\\mathbf{A}^\\top + \\sigma^2\\mathbf{I})^{-1}}_{=:\\mathbf{K}^{-1}}\\mathbf{y}, \\boldsymbol{\\Sigma}-\\boldsymbol{\\Sigma}\\mathbf{A}^\\top\\mathbf{K}^{-1}\\mathbf{A}\\boldsymbol{\\Sigma})\n", " \\\\\n", "p(\\mathbf{w}|\\mathbf{y}) &= \\mathcal{N}(\\mathbf{w} | \\mathbf{K}_\\mathbf{w}\\boldsymbol{\\Phi}^\\top\\mathbf{K}^{-1}\\mathbf{y},\n", "\\mathbf{K}_{\\mathbf{w}}-\\mathbf{K}_{\\mathbf{w}}\\boldsymbol{\\Phi}^\\top\\mathbf{K}^{-1}\\boldsymbol{\\Phi}\\mathbf{K}_{\\mathbf{w}}))\n", " \\\\\n", "p(\\mathbf{f}_\\text{n}|\\mathbf{y}) &= \\mathcal{N}(\\mathbf{f}_\\text{n}| \\mathbf{K}_\\mathbf{f}\\mathbf{K}^{-1}\\mathbf{y},\n", "\\mathbf{K}_{\\mathbf{f}}-\\mathbf{K}_{\\mathbf{f}}\\mathbf{K}^{-1}\\mathbf{K}_{\\mathbf{f}}))\n", "\\end{align}\n", "$$" ] }, { "cell_type": "code", "execution_count": 1, "metadata": { "collapsed": false }, "outputs": [], "source": [ "import GPy, numpy as np, pandas as pd\n", "from GPy.kern import LinearSlopeBasisFuncKernel, DomainKernel, ChangePointBasisFuncKernel\n", "%matplotlib inline\n", "from matplotlib import pyplot as plt" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "We will create some data with a non-linear function, strongly driven by piecewise linear trends:" ] }, { "cell_type": "code", "execution_count": 2, "metadata": { "collapsed": true }, "outputs": [], "source": [ "np.random.seed(12345)" ] }, { "cell_type": "code", "execution_count": 3, "metadata": { "collapsed": false }, "outputs": [ { "data": { "image/png": "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\nZY/VJPsAAAAASUVORK5CYII=\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "x = np.random.uniform(0, 10, 40)[:,None]\n", "x.sort(0)\n", "starts, stops = np.arange(0, 10, 3), np.arange(1, 11, 3)\n", "\n", "k_lin = LinearSlopeBasisFuncKernel(1, starts, stops, variance=1., ARD=1)\n", "Phi = k_lin.phi(x)\n", "_ = plt.plot(x, Phi)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "We will assume the prior over $w_i\\sim\\mathcal{N}(0, 3)$ and a Matern32 structure in the non-parametric part. Additionally, we add a half parametric part, which is a periodic effect only active between $x\\in[3,8]$:" ] }, { "cell_type": "code", "execution_count": 4, "metadata": { "collapsed": false }, "outputs": [], "source": [ "k = GPy.kern.Matern32(1, .3)\n", "Kf = k.K(x)\n", "\n", "k_per = GPy.kern.PeriodicMatern32(1, variance=100, period=1)\n", "k_per.period.fix()\n", "k_dom = DomainKernel(1, 1., 5.)\n", "k_perdom = k_per * k_dom\n", "Kpd = k_perdom.K(x)" ] }, { "cell_type": "code", "execution_count": 5, "metadata": { "collapsed": false }, "outputs": [], "source": [ "np.random.seed(1234)\n", "alpha = np.random.gamma(3, 1, Phi.shape[1])\n", "w = np.random.normal(0, alpha)[:,None]\n", "\n", "f_SE = np.random.multivariate_normal(np.zeros(x.shape[0]), Kf)[:, None]\n", "f_perdom = np.random.multivariate_normal(np.zeros(x.shape[0]), Kpd)[:, None]\n", "f_w = Phi.dot(w)\n", "\n", "f = f_SE + f_w + f_perdom\n", "\n", "y = f + np.random.normal(0, .1, f.shape)" ] }, { "cell_type": "code", "execution_count": 6, "metadata": { "collapsed": false }, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "plt.plot(x, f_w)\n", "_ = plt.plot(x, y)\n", "# Make sure the function is driven by the linear trend, as there can be a difficulty in identifiability." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "With this data, we can fit a model using the basis functions as paramtric part. If you want to implement your own basis function kernel, see GPy.kern._src.basis_funcs.BasisFuncKernel and implement the necessary parts. Usually it is enough to implement the phi(X) method, returning the higher dimensional mapping of inputs X." ] }, { "cell_type": "code", "execution_count": 7, "metadata": { "collapsed": false }, "outputs": [], "source": [ "k = (GPy.kern.Bias(1) \n", " + GPy.kern.Matern52(1) \n", " + LinearSlopeBasisFuncKernel(1, ARD=1, start=starts, stop=stops, variance=.1, name='linear_slopes')\n", " + k_perdom.copy()\n", " )\n", "\n", "k.randomize()\n", "m = GPy.models.GPRegression(x, y, k)" ] }, { "cell_type": "code", "execution_count": 8, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/plain": [ "True" ] }, "execution_count": 8, "metadata": {}, "output_type": "execute_result" } ], "source": [ "m.checkgrad()" ] }, { "cell_type": "code", "execution_count": 9, "metadata": { "collapsed": false }, "outputs": [], "source": [ "m.optimize()" ] }, { "cell_type": "code", "execution_count": 10, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/plain": [ "" ] }, "execution_count": 10, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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\nzMMN8BkrAAAAAElFTkSuQmCC\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "m.plot()" ] }, { "cell_type": "code", "execution_count": 11, "metadata": { "collapsed": false }, "outputs": [], "source": [ "x_pred = np.linspace(0, 10, 500)[:,None]\n", "pred_SE, var_SE = m._raw_predict(x_pred, kern=m.kern.Mat52)\n", "pred_per, var_per = m._raw_predict(x_pred, kern=m.kern.mul)\n", "pred_bias, var_bias = m._raw_predict(x_pred, kern=m.kern.bias)\n", "pred_lin, var_lin = m._raw_predict(x_pred, kern=m.kern.linear_slopes)" ] }, { "cell_type": "code", "execution_count": 12, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/plain": [ "[]" ] }, "execution_count": 12, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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\nAABJRU5ErkJggg==\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "m.plot_f(resolution=500, predict_kw=dict(kern=m.kern.Mat52), plot_data=False)\n", "plt.plot(x, f_SE)" ] }, { "cell_type": "code", "execution_count": 13, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/plain": [ "[]" ] }, "execution_count": 13, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAXoAAAD/CAYAAAD/qh1PAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAIABJREFUeJztvXuMZNd93/k95z7q1V39mgdfEsXh0CIpe2VSI0cJZGGM\nIRXLi/XaICnDihc2sKHI7GaBYCErClawSHuhiBY2TjYLrzwyvN54F7Ao0jCQIAmkGe5EjpLYVkjZ\nEUeUSA4pSuS8+t1dVfd5zv5x7rmPet5bt2e6+vbvAxBTVbfq1Gn27e/93e/5nd+PSSlBEARBVBe+\n3xMgCIIgbiwk9ARBEBWHhJ4gCKLikNATBEFUnD0ResbYM2OOPcIYO8MYe3wvvosgCIIoRmmhZ4x9\nEsAjI449CABSyvPR8wfKfh9BEARRjNJCL6U8C+DSiMMfB7ARPb4E4KGy30cQBEEU40Z79IsA1lPP\nV27w9xEEQRB93IzFWHYTvoMgCIIYwY0W+k0Ay9HjJQBrN/j7CIIgiD7MGzEoY2xRSrkJ4CsATgE4\nD+AuAF8f8l6qwUAQBFEQKWVut2Qvsm4eBXCKMfZ3Uy+fiybyUvSeMwA2pZTfHjaGlHKm/vvc5z63\n73OgOVVnTrM6L5rTwZ1TUUpH9FLK5wA81/faqdTjL0cPz5f9LoIgCKI4tDOWIAii4pDQD+H06dP7\nPYUBaE75mMU5AbM5L5pTPmZxTkVh0/g9ezoBxuR+z4EgCOIgwRiDLLAYe0OybgiCICbBGG2xycNe\nBMIk9ARB7Bt0Nz+evboYkkdPEARRcUjoCYIgKg4JPUEQRMUhoScIguhjc3MTnHM8+eSTA8cee+wx\ncH6wpJPSKwmC2BeiFMH9nsZQNjc3sby8jKWlJaytZWsxLi0tYXt7G2EY3vB5jPp/VDS98mBdlgiC\nIG4ip06dwksvvRQ/P3fuHB5++OGM+J47dw533303OOf46Ec/iq2trfjY2bNnsby8DM45Tp06hTfe\neAMAcOnSJXzgAx/AF7/4RSwvL+PkyZOZ79lrKKInCGJfmBTRf/CT/++efddfnv07hd6vI/qzZ8/i\nW9/6Fr70pS8BAJ588kk8/PDDeOyxxyCEwObmJk6cOIHnn38eH/jAB/DpT38a6+vrePbZZ+MxXnrp\nJbznPe/B448/jhMnTuALX/gCLl26hJMnT+K3f/u38alPfQpPPvkkLl26hK997WuZeVBETxAEcYN5\n7LHH8Oyzz8bPn332WTzyyCOZ5w899BB+5md+Bu12G1/60pdw7tw5AMDi4iI2Njbw/ve/HwsLC1ha\nWsLm5mb82cXFRXzqU58CADzxxBNYX08349tbaMMUQRAzSdEo/EawsLAQ2zdra2v44Ac/mDn++uuv\n47nnnsPy8nL8WnqT0+c//3mcP38+Pn7ixIn4WPozN9rVIKEnCIIYw2OPPYY//uM/xtbWFp544onM\nsZMnT+LRRx/NRP3aa3/uuedw/vx5vPDCC2i32zh79ixefPHFmzp3DVk3h4wwFPjRta3Jb8zBm+9s\nouf4pcdx/QCvv72xBzMC3rm+jY3t3p6MRRCAEvqzZ8/i3LlzeOihhwaOnTt3DufPn8fm5iaeeOIJ\nfOYznwEAbGxsYHl5Ge12G5ubmzh79uwNtWfGQUJ/yJAArq51yo8jJTpugLXtbumxdrseOj0fflA+\nXa3jhljfcUqP03N8dB2v9DjEwUVbMIuLi7j77rtx9913o91uDxz76le/iieeeALLy8t488038dWv\nfhUA8PjjjwNQFs3DDz+MZ555BufOncMLL7yQGaP/+27Iz7LfGS+UdXNzCUKBb3//Kn7i5FHUrOmd\nO9cP8OaVHRgMOHnHUqk5vXVlC55gWJ6zsNxulBrruz9YAwNw750rpcZZ2+rCMjnarXqpcYjRzHIe\n/axAWTfE1BimgV6vnOXiuAG4wREKUXo+gRCo2SZ2u+Ui6CCM5sIYXD8oNVbP9UESRFQFEvpDSM0y\nsFvSlug5PkzDQCgZwrCc2IdCSWpYMroLghCMcRimAdcrJ/SOF4KUnqgKJPSHDCklOGcIwnIq5oUC\npsFhGAxOSVEVkdAHJS8Yrh/CMDhMw0DPKTcnz7/x29sJ4mZBQn9I0VH0tMjo86ZhlBf6aCphyYuP\n6wcwDQ7T4HBLCnXZ/z8EMUuQ0B9CJMoLmY69TcMoJarK9mHRvMrZQF4U0QPlbSAhk4sZQRx0SOgP\nGVIqWRVlhT76POcMQTC9OAdCgHMl9IyzUvaNEEmKWtl1A8oGIaoE7Yw9pEimRNU0prvWi5QQlome\nw1DogB6cM/hBiJo93WkppdRDoaQLRAuxNwlqEH5zIKE/pDCmbJKphT51R1DGBvJDAc7UHAyuvPW5\nKccSSG5Ry9guYSjAOEP5xFFiHHTXdPMg6+aQISHBGIsyb6aXsvTfaBmhD0MZWzdl/f70xUdgensq\nEIIiTaJSkNAfUjibPjNFSom0hpaJnoMwBI9Etazfn44QDc7hT9kBSISShJ6oFCT0hxTD4PCnFHoh\nskIoMf1teBDKTP9NUeJ2PnO9YdMvyIZCWTcEURVI6A8hElC55lMWEQuFRDrgZWx6GygIk6wboJzQ\nZyN6A5433c/nBWrdgDxkoiqQ0B829sBykVIirfSM8enTGfvmUCbtM/1RgzP400b0oYBBET1RIUjo\nDzHTuuGhENmInk9fvqBf1qdNi5RSZhaIOefwprxjEUJm7jII4qBDQn+ImTZ6Vp9LhJAzDm/KRdT+\nT017lxEKmfHVOWdTl1TwwxCMsdKbyghiViChP2SoTUVKEKf1w4NAwEgtoJZd2M3MD9Mt7Aoh0R+D\nT+uxCwmK6IlKQUJ/iJk2YvX7FlBNY3qbZJgYT2MDCSHAWPZ0nnrHLkXyRMUgoT+EaHGdWgfFYJ75\ntJZLv6Qzzqe6AAkpAda3sDut3w9lTEmqg0BUBBL6Q8arP9rEn198R216wnRRvR+GMDjDX712Da+/\nvQlg+oVdKQE/EPjBlW2VajllqqZeN/jr167hndXd1GvFodIHRNWgWjeHjE/97jewvuNAMo6/cd9x\nBKGAzY1CYwgJfPu1a/itP/wPaDdt/P4/+tj0OedS4jf/r2/i5TdW8d98+CR++cy9U+2ODYXElbUO\nnvqDbwIA/o//+WEsNov9XMmU1D4ByqMnqgJF9IeM9R0HAPD8//c9cMYhpun5KiTOfetNAMB218P3\nfrA+dfTccwO8/MYqAOAvL16GMaXfH4QiHgcA/tPLb09v3UjgC//Pn+Mzv/dNEnuiEpDQH1KurHem\nzn+XQGyPAMDLb65OLao/vJaMc2W9g64TTLXRKRQC3/vhRvz8B5e3ITGdfdN1fbz4/av4zhtrpTtV\nEcQsQEJ/yLh1pRU/DkM5lU0SCInLa534+dX1ztQpkW9d28m89qNrO9N59KHEtY1kTm9e2Zra77++\n0UueUEBPVAAS+kNGemv/tc3uVNHz2nYv0zz76npnqoheSBlbSZrVre5UGTx+KLC+nYx1eW0XEmwq\na+r6ViL0ZWrvEMSsQEJ/yEhH3tc3etMJ/ZYS1PmmDQC4utGdyiYRQmK74wEA6lFXqetbvamyXoJQ\nYnPXjcYyEIQSu443XUS/mRb6KSZDEDMGCf0hIx2gbnXcqYRwu6vE+cRti+CcYX27ByEkwoLRs5QS\n2x0lzifvWAQArG52p/LVt3cdCCHRbtk4vqzsqc0dbyprKn1nQIuxRBUgoT9kpK2IjR1nqpBVC/3S\nfA3tlg0pgZ1uULiCZShEHNGfvH0JgIqmpxHXtR11wVhuN7DcbgAAtnYdeFM0H9nt+fFjsm6IKkBC\nf8hI69bGjoNpckp2InFu2HVYwQIAYLvrFm4pKITEVhTRn7hNRfSbO85UdslmNM7iXA3L7ToAYGPH\nRVCwsJkQErtOIvRlumcRxKxAG6YOGUJKhL4JZoTY3HGnip53ooj+tZeO49/87gdRa+/gn62F2Pk7\nwM/9LNBs5hsnTHn07zreBqDspGnm1Imi8FbdwvK8EvrN3eLWlJAyHks9LzwVgpg5KKI/ZEgp8YN/\n/1NYf+0ubEwZPWuhD90aHjz9Nu4+8+/RbHv4nX9i4Phx4G//beB3fge4eHF8PR3XD+H6IThnuGVZ\nXR22O95UHr22W1oNC+1WLZnnFHcZXYesG6JalBZ6xtgjjLEzjLHHRxx/Jvp36HHi5iIk0FtbgrfT\nwnbHnUrIdrpKCEPPRnsBaK5s4MP/9Tt4/k+7ePtt4O/9PeB73wM+9jHgzjuBT34S+JM/Aba2suN0\nI3GuWwZqthllywj0vLBwVN+JxLlZt9BuqWyg7Y5bOINHShmPpZ8TxEGnlNAzxh4EACnl+ej5A0Pe\n9jhj7FUAr5f5LmJvCAPA2ZqH321gt+dP5UHr6Nl3LCypNVRsd1z4oUC7DfzCLwBf+hLw5pvA174G\n3H8/cPYscMcdwEc+Anz+88CLLybj2LaqSaMj8e2uV9jv7zoBAGXdzDeTiL7ohUwI2bcYW+jjBDGT\nlPXoPw7ga9HjSwAeAvBS33sel1I+X/J7iD2is9GEFAb8Xh1d159qAdXxlKg6XQN33MHwwx0l2v2a\nyhhw773qv3/wD4BuF/jGN4B/+2+BT3wCuL66DLb0N/Hu+9cghBL6axtddHo+QiFgGvnjEB2FK6GP\nIvquV7gUsxeE6LlB/JwWY4kqUNa6WQSwnnq+MuQ9y5G18+slv4vYA3bX2jAbPXidJqQEur1g8odS\nCJkS+p6B5UW107bT8yfaHM0m8LM/C/zTfwq88grwu//iKlrHV/HqN+/Dn3zVSCyXrgdRMFtG++rK\no0+sm6LWi84C0pBHT1SBvViMHdtzTUr55cjaWWGMndmD7yNK0Flvo33bVQQ9lWu+4/qFFj+FkOh5\nKimz2+FYXlGnUMfxC/vhy0c8HLv/VXzoF/4L/rcvWGiYynLpukHhzVedyLpp1i20o4h+ZwoLKJ1x\nA5DQE9WgrHWzCWA5erwEYC19MFqAXY+smzUAJwCc7x/kqaeeih+fPn0ap0+fLjktYhS7a23M33YZ\nG2+8G1Iw9BwlqjxnTXqZiug7OxxHVtTndnte4ejZ9dU4d5zcBn9H4OVvvgtYfCua05QRfd1CzTZh\nm6phuZ5rXtILscD0XbgIYi+5cOECLly4MPXnywr9VwCcghLvuwB8HQAYY4tSyk0o3/5b0XtX9PF+\n0kJP3Fi6620cuf8i7LqPwKmhUzCi9/wQfiDAGbC7w3A0HdEXFEVdArhum/iHn/Xx8z97O+75RRtd\nNyic/6599UbNAgC0Gja8HQedgtZUv9BTRE/MAv0B8NNPP13o86WsGynlSwAQWTKbUspvR4fORcfP\nA3iIMfYIgNXUcWIfCEOgtzmP+uI2Wm0Pfq+BrlPMJtFCWLdN7OwwHD+mYoU8Hn0/2gKyLQP3/JjE\n+z+0jcvffh96blCoRo0QMnXRUHcYzXo0L7fYvHpO9sJAi7FEFSi9M1ZK+eXo4fnUa6dSjynjZkZ4\n4w3AajgwrADtJR9eRwl9keh5p6c2S9VsEzvbwNEVE4ypiLpoJUw3slVqlhLnR351DZ/+7+/Glct/\nhaDAxUfIROhrURXMVl1F9j03hBAShjF2KSlmMKLPPQ2CmFloZ+wh4uJFoLG4DQBYXAngdxvKcimQ\n4dKJNkvZvAa7BtRqDM3ILun2LWROwklZNwBwx+0MS3e9he/8xVIhj14ICTe6O2jEEX00p4IppF03\nG9GTdUNUARL6Q8TFi0B9SW1PXT4i4Hcb6Dp+oUhcF/wyZAPtthLBuYYVHSvmh2tx1hF9q27BbnWx\nvcULhdJBGMIPBRhTNpAeC9ARff6fz+kTetoZS1QBEvpDhIroNwEAx46LKKIvVl64E1k3PKxjbl4i\nCAWakdAX9em13WJbBlzPR6thway72N02CqVq6r0ANctAGAqEQmQi+iJRec+jiJ6oHiT0h4iLF4Ha\noorob7kFcURfxA+PrY2ghrk5AcdxMVe342NFbBIt9KbB0Os5aNgWzJqH3q5ZqFVr11V3GTXLhOt6\ncHouWo0koi+yBqEXiDVymnZXBDFjkNAfEoQAXnlFohFZN7fcJlVE3/NRZG+StjZkYGNxUfWg1aLa\ndYqlauocd9NguHVlDqYBmHUXvY5VaJwkE8iAaXDYlhFH9D0nKFSTvt+6oYieqAIk9IeEt94ClpYA\nww7AGHDLcRkVNvMK7QrqRVG471pYWmSwTJ4IfUE/XDcYt02OpfkGbIvBqLnwelahlE+9WapeUxul\nbJOhVVMLvD3PL2RN9W+wIo+eqAIk9IeEixeB++5TjzljuO02Br9Xx063WOkCLc6ha2FpicFgLF6M\n7TrFMlxcX31z3TZhGBwW52jNhfCdGroFdrTq8ge2ZcA2OZp1O16U7RZcg9CZQBpKrySqAAn9IeHi\nReDe+5RqMcawNG+AWwE2N1ghe8LzdERvYnmZwTQ5GlH03HH8QpG4zrpp1pQoc86wsCQQOrU4jTMP\nsUdvGqhHde31xqmuGxRag/C8fqEnpScOPiT0h4SLF4F771WixRnQrBuwmj3sbBbzw/UCqu9YWF7i\nqNsmGrZe+Mzvh0sp4QY6911dKAzO0J7nkJJhfSN/N9teHNFz2LYBw+BoRTtj1bpB7qHg9u3IpZ2x\nRBUgoT8kpIWeMQbTMFBrOfA6jUKFv7QQ+q6JhQW1ANqoqdOo6/gIwnwCHQoZ20D16I6Ac2UDmXUX\nV1fzC30nzroxYJkGLMOIc/O7TrGUT2/AuiGhJw4+JPSHACmV0N/z3iSiNzhDs+3EufR50WULfMdU\nWTcGjwuJdd0g9y7bdH2a+YYdzUtl8Jg1D9euI/edhqNr5phK6DlnmIuybjqOXyhV04vuMqyo6Qnp\nPFEFSOgPAW+/DbRawNJiEtFzzlRhs24j9rjz4EULqG7PwsICYHIe++FF6t1ImUT0ejHXMjmaNRNG\n3cXaqswdTcfZO1ZyOjfTKZ9TRPS16GeiiJ6oAiT0h4CXX1Z9W7VoMcbAAcwv+vC6DfSc/DaJriHv\n9gwsLEQRfeSx99wgdwQsUtaNbv1nGRyNugWz5mJjg+de2PVSO2w1rboJzlS07xeohKkvZNr6KbJ+\nQRCzCgn9IeDiRS306jnnAOMMC8t+tDu2uEfvdA0sLqrXWnWd4ZLfD09XnNR1aSyDo2EbMOuuygbK\naQO5feIMRNZUPYnq8yCljK0bnUlEAT1RBUjoDwFa6GUqorcNjoUlVcGy5we5I1c3biOoInoAaOkS\nCE6QOyc/CMNY6Bta6C2VHmnWPGxt8vzWTZAtjgZEfn807m7OqppCSHjRhUwLPVk3RBUgoT8EXLwI\nvO99iWhxxmBZBpaPKKF3vTC3TeJHotpLCX2zoa0bP/fOWNcLIaWKvLVAmwZHzTZg1lzsbPPcNWrc\nPl8dUCd2o54sEuchnQmURPQk9MTBh4S+4uiMm/vvTwp0caZEdeWIiLtM5Y1cXT+EFAyuyzA/r16z\nDI6aZUDKJANmElp8a1HeO6DSK7V1s7tt5hb6eAHVTISecYZmTefS5xN6IUTs5+sa+RTRE1WAhL7i\nXLkCWBZw5Eh2MdYyOebnGbgRYH1D5vbDPV8g9C00mhI8Ons4Y2jUk92xedC+eVqczWhh16h56Owa\nhRdj0xG9ZfA4P7+XM6LXBc0sk8OMLj5FNlsRxKxCQl9xdDQPpKwbzmBwtavVajq4fi2fqCoPO0To\nWZifTy4MHECrpv3wfKKqxTedKcMYQ6NmqgqWu2buXbZJzZyU0Ed+P6BKD+epd9NL5eMbXLUeJOuG\nqAIk9BUnLfTpxVhlk5iwmj2srxq5mnELqRYrQ8/CwmLyOuMs9sN7OXPy4/o0KXEGVFNvs+bC6ViF\nPXpdigHQdwdqbMfLZ011XdVUxTI5eCT0ZN0QVYCEvuJkI3r1r/boa7YRC32YQ9CEkPD9EKFnY3Eh\ned1KiWpeP1zn7qczZYBI6Osu3K6FvFta9QJxvZaK6E2eiujzZRXpOdmWAc50RJ9vDgQxy5DQV5xM\nRC+SiJ4xtVhpNXvYWrdyRfQyyn0PPSvOoQfUpqnYD/eCXHaH3njVL/StuiqB4LsWwgLrBgDiUgwA\nImsqiujdIJc1lXSqooieqBYk9BVnqEcfRauNSOi3Ny34OYqReX6IUEiEno3lJRa/bhkcTV3vxskX\nPeu67zrq1rTqJhiX4GaAza3JPx+Q5NHrLBsgyuCpJR59rjnpdQPTQKTzVL2SqAQk9BXm+nUgDIHj\nx9Xz9M5YQNkkdrOHnU07V4ON2H8PalhcTAm9ldR/d7x8fWN1GmZ/RG9bJkyDw2p28fLFyXMKQxFv\nckoLvV5sBpSA57lj6Xop64YieqJCkNBXGB3NMx2dphZjAaAVRfSdbTtXK6V441FoZ4Te4CwRVU/k\n2jSVCH32FORQgn3sfd/H//nPGxPHEVImHr3dF9HrYmtevmJrjqcuZJbB4/9HFNATVYCEvsKkbRtg\niHVTt2A1u3B2arlKF2ihl34t49FzztGo6QqW+apFJrtZs9YNYyqD58h7X8frrxr4j/9x/DjpmjmN\nWnYs/dxx89lJrqf+Lzz3xZ+Gs6usKEqvJKoACX2FefllVfpAo/1m3hfRu7v1fNZNlFEjfDsufwBk\n/fCuG+RKi9TNTvrTKzlXET03BH7pVzfwuc+NH0cKCV/n0fcJfbOu7zLCnGsQAaRg2F5v4oevtQGQ\ndUNUAxL6CjMY0at/tZXTqJkw7RDgEuvrOTYURR596FkZoTeinHxAiWqejU66OFq9z6O3DCMW7A8/\nvIHXXgP+7M9Gj+MHIrZl+hd24+qVbr52go4vIAI1n7e+r4Re0s5YogKQ0FeYfqGXqZ2xAGAwhkbN\ngt3s4q0f5kk/VFF46NkZ60bvaAWiVMYcEf0ou4WnLhpeGOKzn8XYqL6X8tUtM3s664he1cnPl/IZ\nBuozb71KET1RHUjoK8raGtDrAbfdlrwm+hZjEQm01ezhR+9MHlNH4YGbjeiBJOOl55UTesvgGRvo\nV35F4q23gAsXho/jOEkphfjnimiliprlkWvPFxC+hfaSi+vvNBB6Jgk9UQlI6CvKd7+bzbgB0jtj\n1YucJ7n077ydf5OTP0zoU00+8mS4jBJ60+SZVE1uSPzGb6iofpjmduLc98FTWW+gcrx86wauH0IE\nJlrzIW6/q4Pdq0dpMZaoBCT0FaXftgFSi7HRb90yjFjor1xhmIQuHua7Zsa6ARBXr8zbTlDfHTTs\nIdZNLfH7QyHwiU+oKpwvvDA4ji6OZvV5/QBgpjdN5ahg6fohQt9ErS5w17072LlyjNIriUpAQl9R\nhgl9v3Wjo2er2cO1a5NPBb2b1euZAxF9K9XkY1IUHIYiLi2sfXRNeqNTzw0ghYRpqoj+N35jMKrv\neaMj+vTaQZ52gp4fQvgmGg2BE/ftYvfyMdoZS1QCEvqKMjSi78ujN1IVLFevGxNzzT0/gAg5RMjQ\n6NvL1Erl0U8qkCakhBv3ZrUyx5Q4D+6y/aVfAjY2gK99LTvWsHLHyWCISzN0chRb8yLrptEE7vqx\nDrprS3CciR8jiJmHhL6iDI/o1b9a6M2oGJnV7GFjdXJNetdTJYrrzRB9654wTVUGQcrJNomQMlWI\nrD+iZ5mIXnvrhgE89dRgVO/GNeQHT2UztbCbx7rxAoHQN9FsSdQaAo3lLbz63frEzxHErENCX0G2\ntoDNTeBd78q+Lvo8eoOrjk52s4fN9ckZJo4fIPQsNJqDm484kuh8UqliESa7WfUirsYwUjVq+urm\nPPoo0O0C//pfJ+/XFtCwiN5g2Y1ck4gXY5vqYjh3yzV896+bEz9HELMOCX0F+e53gfvuSwRd01/r\nhkfRs9XsYWvDQhiMF3rXU7XoG61Boddlj4HJ7QRVRD98MRZI0iJ7boggtaOVcxXVpzNwnGB4cTQg\nm8Ez8eITdc8Svom5OfXzzN9yDa/8l8n1dghi1iGhryAXL2ZLH2gG0ysZ6jUDhq1EcHNrvHWj2wi2\n5oa8jyHuMtWZED2HYvRiLJDN4OnfZfuLvwgEAfAv/2U0J29SRB91vprQfERIVUohDEzVS5cBc7dc\nx+uvNODna5pFEDMLCX0FGebPA4M7YzlLdqHOLbh4Z8KmKdcXCD0brflBoTcNnmya6o1XxiBl3QyL\n6BNf3R/If+ccePpp5dULkSqONiKir2XKJ4++kKUj+nZbtUc0ax6O3uLjxRfH/jgEMfOQ0FeQUUKf\npFeq58q6UULYmPfwowmbpnR3qfm5wfcZjMU1aib54UEQJkI/JKJvpSL6YYnsP//zanH2T/8UcS36\nYYuxRZqPCCHg6p2xczy+6/mx93XwjW+M/XEIYuYhoa8gL788Quj7qlcyxmI/vD7n4PKYiF5Gvnrg\n2WgvDAqmafI4Op+US69r0VsGh2kMRuKthp2MM+TzjAG/+ZvKq9fe+7CIXi82A5PbCep1gzAwsbjA\n4g5T9/z4Lgk9ceAhoa8YOzvA6ipw552Dx2SfRw8kEbXdcnD5yuhxlbWh0ivbC4PH0xkuk/zwjuMB\nGCxRrKlHPVs9P4Q3onTBz/0c0GwCL/4HNZn+ypVAlJMfNx8Jx9bgEULGG6YWFpLGI3ff38U3v4lc\n1S8JYlYhoa8Yr7wCvPe9ytroJ7ZueEroo8VKs9HF5cujyyDEEa9nY7E9eDyd4dJzx7cT7Lo69324\n0HOe+P2jdrTqqP78n9wBKdjwxVie2EmOF4xtNh4KGadXLi8a8cWwveDj6FHgO98Z+VGCmHlI6CvG\nKH8eGNwZCyRZL0a9i2tX8wi9haXlwff116gZ104w3uRkDT/9sjn5oxd2P/pRwG74WL/07vgi0z+n\nuECaO76doB+EKqvIN7G0aMQXQyElPvIRkH1DHGhI6CvGOKFP0iuT1+INS/Yurl4dfTqIMBH6lSFC\nb3AeR889Nxi7+SruLjWsbAEAhuQCNC5VkzHgQx97A++8+F/BNodbN3nLJ/c8VYxNhiYW2jz+fyRJ\n6IkKQEJfMcZG9KKvHj2AZhTxSmt3ckQfCISujZXlEQXEUs24x5UFHtUvNibdmrA3WuillDh21yqs\nhoP//GdkjPGSAAAgAElEQVTLQ9/TTF18xkX0SZtEC3NzyV2PkIiFnioWEwcVEvqKMT6iH7RuarYJ\ny+TgjS6uXRst9HqTU+hbOLoyeNqoAmnR5iRncKNTGifOfR9h3bCUdTMmohdCwg8EbvvAX+H5P1pB\nMOStehPXpPLJ2iIS0YYpxhLr5s47gVoNePXV0Z8niFmmtNAzxh5hjJ1hjD0+zXFi7+h2gcuXgRMn\nhh9PFmOT15QfbsKwfAQBw+7uiM9Gm5xCz8bRleF+eLrqZDCmGbfjautmeERvGUacFtkbU7ogjDY5\ntW+7huO3CvzRHw2+R1tAXccfm/LZi9YNQt9Eq5XYW/ouiOwb4iBTSugZYw8CgJTyfPT8gSLHib3l\ne98D7rkHGGJXAxieXsmgSvkyBqwcCXH58vDPBkKoxUrXwpEjg0Kf8cOHlC5IE0f0I9IrsxudRnvr\nUiY7bD/5P+7gt34LA+UK0nMaVz7ZjTz60DfQaiWZSfozJPTEQaZsRP9xABvR40sAHip4nNhDxtk2\nwJCesYDyw6Ood2nFH1kGwfUDCAGEvo0jQ6wbAH1CPy7rZvxirGWkUjW90amaOvcdAD70twROngT+\n8A+z76lZBiyTq+jfH32XoVIrDRimgGEkF0MZ/Rgk9MRBZkTsl5tFAOup5ysFj990pJRj86kPMt/5\nDsO998qhXjWAWHx5Vudjm2RhKRgZ0fecACI0wLhAvTZc6BuNVErkmDz6cfVpAIAb6fx3nao5+F4h\n0+WOTTz9NPDLvwz86q8CttpcG3eZ8gNvbAaPE+XQm3YIIGk0HoQCQSBw4gTQ6zG8/rocuhmNOMQw\nVetplikr9IC6+y9z/Kby/R9u4Ff+13+z39OYiit/fS8Ctzby+OYP7sDtH/hr/Kv/4Ydjx0lH9JZh\nxKI6v+TjnXckhv3KOq6P0LVh2j44H96Mo5WyW4JxQh/54cNy34GoYUiOzVehEJm69u/9m6o88x/8\nAfDkk+o9Oid/u+OhM6bYmuOFEL4Fq6bGM6Kr4VcvfB9fvfB9AIDf+ml88GGJ2sLOyHGI6Vm44zLm\nb72239MozH13LuNf/C8f2+9pjKWs0G8C0HltSwDWCh4HADz11FPx49OnT+P06dMlpzUeg8/UtSc3\npiUAMdp+OHrPm1i84+rYn88yOT70vlvj55xnK1i+/fZwoe+5KofeqgdZ6yeFEVkujhfGvVyHMSmi\nz+Tkj0nV1Ln9ANCIFnaffhp45BHg134NqNf1GsTkvrGup+rc2JHQ/+TJo1icq2Gn68Xvuf2Bl7H5\nw9tGjkGUwzDkgfzb5CP+HvaSCxcu4MKFC1N/vqzQfwXAKQDnAdwF4OsAwBhblFJujjreT1robzTv\nffcy/tOXPnHTvu/m85OF3m2l2u015j28M8K68TyVWmnXRwu4Tot0vHBso49JQp/OyXe8cKS3HqQi\ner3O8FM/BfzkTwK///vA3//7yOTkj2sn6EZ1bmp1dVF577uX8fV/8ujI9xPEzaQ/AH766acLfb6U\nsSSlfAkAGGNnAGxKKb8dHTo34TgxI6Rr1DTmnZEevRZCyx59R8EYi9MZdxxv5PsS62Z4nNHfN3ZU\n1o0TZcqYBoeVqpvz9NPAP/7HQK+nLz56l+3oUsWuH0AEidATRJUo7dFLKb8cPTyfeu3UuOPE7JBO\nZay13JGlivVipV0bLYQcKlUTAHojdrQKIeEGk9Mr66nywqN2tOoce9vimWblDz6oIvvf+z3gl/87\nI9585UbNRzgf/F7XU3Vu6g0SeqJ6zPZSMXHDMXjSjNtuObhyZbjf6Hgq4rXr4yP6xoQaNao4mhLT\nUYux6Tr5XdePNy3103GV514zjQGf9KmngGeeATwvnao5LqJXF7J6vZoZWcThhoT+kJOu8AjTgeuq\nHbb9uL5A6Juwa2OEkKUi+hGWSzr3Xb93GOm+saMuLbqBiW0bcXtEzfvfD3z4w8D//QdWfMfieuHI\nhV1tTTWaFNET1YOE/pDDWcom8QMcPSaH+vR6Q1F9jIdtphZ2R6VFpnez6pIJw2jEpQtGNzHRQl8z\njaGZQJ/7HPDP/3cTTFjR+wP4IxZ29YWs0aSInqgeJPSHHCOds+4EOH5cjBB6Zd3UG6OFMNtlanhH\nJyFkvBjbGBPRN1MNQ0ZG4Z726IdfMH78x4GPfETiL87fEo2V9Krtx4usm1Zr5JQI4sBCQk8keeau\nj6PHxNAyCK4nJgp9OoPH8UL4QwqbCSnh+Eqg41r4w8biyd3BqPz3STVzAOCznxX4d//qOELPhOMF\n8ILBOem7DOGbaDVHDkUQBxYSeiJOiey5AY4eGxPR+yYa44TeSBZ2XT+II/c0oRDx63NjhJ5l0iKH\nL+zG1s2IiB4A7n8fw098YBdXX34vuu5wG0ivG4SBhdbcyKEI4sBCQk/EkXXX9XHk2PAKlm4Oa8NI\ntxN0Q7j+oECLMGXd1Edn96pqmHphd7gNFFs35ujT2OAcH/+1dVz7zr3Y2gSGmUC6qYrwDcyT0BMV\nhISeSCJ6J8CRo3KodeO4qkTAeKHP1qgRQ4rHBULE1k1rTETPkVwIHH94towbp2mOvmBwznD33RIL\n73ob3/53dwxdINb9cEVgYaF98LbgE8QkSOgJNGwTjKmo/cgxERU2y+L4AURgYG6M0HMj1QLQ9REM\nqf+uOz1ZJodtjrZc0hG96w2/O4jLHY/x6AG1BnHrg9/Bq39+J9bXB49Lbd34qrsUQVQNEnoi2h2r\nRHVhORiI6KVUdovwTczPjRbCdKpmb4Qfrmvg1CwD42pBpT161xdD/f6en6RXjqNZN1Fv72Lx9lW8\n8PXB6F8tEKufb2mR/iSI6kFnNZHpDtVe8nH5Sva4EFKV8Q3GR7xql60S3a7jD7VJutFu1rptxl2c\nho6Vysl3/QDOkGqYWvwnRfT6ImbN7WBt1YDfl3mjfj6VPrq8uBeVuwlitiChJ+K+sQDQmAvR7QCO\nkxwXOqIPTLTnR58y6bo5XTeAkBjo06prwtfswbIFaUwjKZ/sjChG5uVIrwTUxizGANg9rK2xAaEP\no9z+0DdxZHn8WARxECGhJ+IuTADgByGOHs3ujtW572FgYnFhvIcdtxN0fHDOB/LWe27SdGRUXXsA\nMA0juTtw/aGNTHSUXx+TXgnoRWITVsPB9etswAbyAhFnFZF1Q1QROqsJMJZOsQxwtG93rIytGwNL\ni5MXPgHVMEQyDJQccLwoorfGR/QGT9oJdt3hHaucOE1zdPaO/vkadQtm3cHqdT7QFKXbUyWVRWBi\ncYEieqJ6kNATUTPuJBLv3zSlrBvlYa9M8LANU40lJRAEcqDZR7LJyRy7GKvaCSZz6rdupJRxRN+Y\nYN3waA3CajhYW2MI+i4+HceHlJi42EwQBxUSeiKz8Nl1Axw9mi2DEC/G+pMXKzmSvHw/lIPRs7Zb\nJlg36eYjXVe1L0x763pOANAck0cPqHaCjUjoN9bYQNpnxw0gQw7GZdxUnCCqBAk9Efd6BVSjj/5c\nej8QcFwBKRkW2xNENV3YbEgk7riJ0I+Dcx5Xt+y5gfL7U5G4kInQa4tn3JyakXWzuW7A9/uEvutB\nBCYMKxybCUQQBxUSegKmkY6efRy7ReJHbydi2HPVZinDDMeWGwBU5o3e6DRsEbWXMyWScxa/p+v4\nMAyeSbHUdhKQZAyNHku9h5sCVk1gayt7vOeqfrhWLbwpjZ4J4mZDQk9EdeR1hkuAY8eRieh3HQ9h\nFPFyY7wQMqQWdp3B5iNxFG5N8Pp5kl7ZcwNYpoGem1SxlELGF43mBKE3OUctGmt+IVA+fWpejudD\nBAYsOxxrJxHEQYWEnoh2tEYFxBwft9/OMouxHceH8E2YdgCDT4jogUzzkf5c+jglMofdklx8fDDG\nEKZq56Qj+rnGeGPdSC3szrUDrK+b8FIlFbpRRG/XBUX0RCUhoSfAOUfdVqdC1w1w663AlcuJ4HV6\nKuPGtMXYTBk1GIsXY7vuYC593kwZAGiliq0ByNhAYSjihd5JEb2Vaq7SmPewsW7EdxaASgUVgYla\nTQy0JCSIKkBCT2QyXHpugOUVYHeXwXXV8U5PLVZa9mQPm6dq1HQdH4wzeClv3XG1Rz+51EA9LlPs\nQ0qZEfqeG8bF0axJG6aMxO9vzHnY3DDQdbzUWKrWfr1B/WKJakJCT2RLFzg+OAdWjghciWre9Fy1\na9SuiYlZKZZhoGEnHr1lGJkUy7hfbI6I3jI5bMuAkFE9/JR1sxttcqrbJgxj/GmcTh+1my7W17I2\nkFpsJqEnqgsJPQHGGFp9bfvSTcJ7XoDQV0I/KaJPtxPsuT5MM2uT5PXogWijU6pJOOMsTrHcjWrm\nNGxz4kmsiq2pcayGi7XrLHN34EQ/HzUGJ6oKCT0BINnk1ImFXuDtKMVSedgGajkWKw2WLV0AIK5i\nKVO575NSIgFlAzVT9g3nPN40pedZs42JmUDqjkVdfMx6D6urLFNZsxcVbCOhJ6oKCT0BAGg2ErsF\nAI4el/jRj5SVoa2NWl1OXKxMR/T67kCLaihkbN1MKkQGZDdfdd0ApmnEY6bLHU/MBErVyWd2D6vX\nWWYjl+OqiH5c9yyCOMiQ0BMAVOYKZ5GNEQocP55smnIioW805MQ8c10pEkBc50bn0uu67wDi94yD\nIxXROz7M1KYpbd3UJ5Q7BiKPPrqwMLuLtVUGpEoq6Fr7c9QvlqgoJPQEALWpKN0k/NbbgLffVgLt\nFLA2Mu0Eo+hb59JLmRQ5a+Wwbhhjcd9YXe9G3x3olMuabeRKidTjCLOL1VUGxtNCr7JuxrVJJIiD\nDAk9ASBbqrjT83HLLcA7US59LxLCZmOy0Buco26p00qLOovq1IRCJDtjJ5QWjucUb75SF40gypZJ\niqOZuXaz6nEC1kFnFxChEbc71AXb5ucnDkMQBxISegJAlHmjhd4JcPwWiWtXI6F3A4SBgWaOiJen\nFmP1gqnBleXScXwEoYDBGWrW5FPPMniysOvohd1o3cBJiqPliej1RaznBVhaltjdNtFz/ejiEyAM\nLGoMTlQWEnoCgDoRWnGNGh/HjktcvapOD91PNU+tdlXULOvRW5aBnuNja1ftwGrUTJgTGnoD2dIF\nsd8vldevn09qSaixdU6+kFhekVhbZfADqSL6qDH4Ypv+HIhqQmc2ASAq5dvQ1o2HlSPA9haD60rV\n/zUwMZezKUda6IWQMDiH64fY3FWNaBs1E0YOcU43ROnGdwcGPD+IrZuGZeaK6BljmIt+vsWlEKvX\nGUIhVETvRm0S2xTRE9WEhJ4AoEr5NlOWi2EAyysSl37gqubcvol2TmuDpwRaZ8n4oUTXSXLozQnl\njgFVuiDdN1a9xtFzg6SufS1f6z/OE2uqvRRidZUhCCWCUMQePfWLJaoKndkEAFW6IF1eGACOHRd4\n7fUgLvq1kNPaUAu72Ug8CAV2eqnc9xwRvWHwWMi1J29bBnZ6XrLxKkeaJhBZU1FEP9f24xTL6xtd\nBKEo9PMRxEGDzmwCgNro1OhbRL3lVuC1N7woj97I7WGrHq1Js3EAkIxhu6M8+nrNnLibFciWLtAR\nPWMM27suHD9fAxONsm5UOePmvIfVVQbLMvGj67tqfoFFefREZSGhJwBkm3F3osj72HGJrc1alHVj\nYnEhp03Ckrx1nRbZatQQSiXujRy7WYGodIGdtBPU2DU73mHbypGmCai7DB3R11oe1q4z2JYJvUFW\nBCbmKOuGqCj57nuJymMaPFXvRlWGPHYc2Fiz4jz65cV8tWBYOqKPLBfGWFyXPs9uViAb0eu7DABo\n1O14XD3nSZgGjy8KdsNV1g0AZqjPh76Bds7FZoI4aFBETwDItu7TInr8FoHLlwEpARnmS68Esl2m\nuimB1uM2clo3agE1e5eh6UXjturju0tpDCNJ+zQbDq5fj8ZxfQjBICVDs0l/DkQ1oTObAKC6TPVX\nsDx2HHGpYlUCId9Y6c1X3ZTlou2Xum3mbtnXbioh3+l6mdc7kSWUP6I30IjuMnitG0f03ahNomWH\nMKm7FFFRSOgJANkuU4nQJ7tjQ9/MvXOU83Tf2CQS148bBYS+XjNhcAbXD+Na9EByd9DKLfRJbXtY\nPaytMkipLkTCN2HVRK6UT4I4iNCZTQDI7mjVNsnxWyRWr3MIwQAJNGr5xNkyjNRGp3QT7mJlCwB1\nAZqPonrdVSoIBTw/jBZr83v0Wujd0IFpAru7Km0zDCzU6iH1iyUqCwk9AUDZLfNNZW1oQT1yRGJr\ng0N4FkxbwDTzCWGmJn0mok88+jyFyACVqqnTIne6US366I6jmXOHLaAWdrWdtNvzsXJUYu06Q9dV\n1o1dE7kygQjiIEJnNhHTqiubpOcG8IMQpgnML4Rwd+YiDzvf6WKmerSmF2PTQp8XxpBE9JFPHwt9\n3VK5nDlI37F0HR9HjkisrjLl0UclmCmiJ6oKCT0RwznHfEuJ6nZHierCUgB3ex5WTeTKlAGyNslu\nd4hHn7NsAaAiei30O9GdRkenVkb+fR4Mnlx8dns+Vo5IrF5n6Ebdpep1mXvdgCAOGiT0RAxnQLtZ\nAwBsR9Hz/KIHZ2setbqAaeQ7XQzOMB/ZLVvRblggieibOTc5AeoEnYsspZ2+iL5Rt3LfZXDOMBen\nano4chRYXVV3L8I30WgKGDl/PoI4aNCZTcQwxpJ0xkigWwse3O052LXJjcE1nPPY798uKfQYshir\n7wyaOYujaeq2AdNg8AKBpeUQa6uIrRvqF0tUGRJ6IoZzllg3UfTcmHfhbs+j3sgf8Ro8WUDVFhCQ\nROJ52gjGc2JILcZmrZu6bea+ywBUpyt9kZlrB2ox1vER+tQvlqg2JPREDEfKutEFyOYcONvzqDdk\n7qwUzlXOOucMHceHH4hsv9gCEb1lGEm2TL91Uysm9GlrqhEVNutFtfZbJPREhSkt9IyxRxhjZxhj\nj484/kz079DjxOzAGEO7bzHWbvUQ9BpoNJA7K4UxBjPl0+90XdWuT0jUbQO1AnaLaSYLuwMefYHF\nWEAt7Oqfr9b0sLbKog1TFhapoBlRYUoJPWPsQQCQUp6Pnj8w5G2PM8ZeBfB6me8ibjyMAe2Wini1\nqBr1LgCglbP8QXYsvSDrxTnwrYadOyUSyBYj2402cnVTHj0rMBZjwMKc+vmMeg/XtXUTGGhTdymi\nwpSN6D8OYCN6fAnAQ0Pe87iU8h4p5Qslv4u4wVgGj0v5autGWqpe+/x8sbEYY7GobndcdKKF1Fbd\nKmS3pIU+ieijfHzbzJ11o+ekL2S63k3P9VVEv0AuJlFdyp7diwDWU89XhrxnObJ2fr3kdxE3GG4w\nzDeyourzHQAyd+XKeKzU3cF2x42j8bmGBTNnPr4ah6HVyFo3HSfJxy+SEskBLERzCnkPO9uA76vK\nnHnbJBLEQWQv6tGP/QuRUn4ZABhjDzPGzmibJ81TTz0VPz59+jROnz69B9MiimKmFj51/nvHdWHW\n3dzdpTSMsVhUtzteHMU36xZMo8CGKSNJ+dzuuBBCptI0i52+6TWInZ6L9oJE4NTAhU2LscRMc+HC\nBVy4cGHqz0/8SxmxiLoupXwewCaA5ei1JQBrQz6r37sG4ASAsUJP7B+mkdqF2vUQComO48NqdrG4\nUCs0Vsaj33VhW0rcW3UTdoHFWINzGAbHXMPCbs/HdtfL2EBF56QvPlu7LhaWQvi9OiCswncsBHEz\n6Q+An3766UKfnyj0OiIfwVcAnIIS77sAfB0AGGOLUspNKN/+W9F7V/RxYjYxuBJUQEXhXceDlEB9\nzsX8XL3QWDwV0W913Dj6btYtWGb+iN7gDJASS/N17PZ8bOw42NpVdxuL88XmZBk8XjdY3+5hfiGA\n49QhA4usG6LSlPLopZQvAQBj7AyATSnlt6ND56Lj5wE8xBh7BMBq6jgxgxicwTINNOsWglDgnVW1\nEHv7vVdx/4+LQmMxZD16vQGrVTcL+eq6yuVyuwEA2NjuYTMS+uX5YncZhsGxFF0c1rYdNOd9+L06\nRGBicZEWY4nqUtqjT0X851OvnUo9fr7sdxA3B845AIkjCw285fi49M4WAOB9f+tt/I2fOlloLMYY\nliIhXt9xUIvqxi/O1QrlvgNqYVeP9c7qLlw/hG0ZhXbYAkroF6OLz8aOg0bLhb9WR+ibWKD0SqLC\nUBhDxHDOIKTEkUUVPX//LZVQtThXg2Xlt1vUWMDRRZV8f32ji/WtHgBgpV3PXYs+jY7oX39nEwCw\nNFeLLkz5MQ2mFndbNoSQEEYHQa+OwDPQLrjYTBAHib3IuiEqgvbDjy4ogb74plpbP7LQQK2g0Juc\noz1Xg2kwbO66sV2z3C7mqwMA4wzHl1XVsVd+oC4+C3O1wq3/TINDSoGVhQa2Ox52gk0EvTl4roGF\ngvsECOIgQWEMEaMjbR3RX99Uu2JXFuqFNjkByiZhSKL6tSiiP7LQKDwvDuDWFSX0V9c7AJTQWwXn\nxBkDJMOtKyqXcjfYhNdrIAwY5uboT4GoLnR2Exk4A951LBveriw0CtdqNwwOISSOLSX1f+u2mbuZ\ndxrGEnHW3LYyF6ds5oVzFdHrn8+sO/B25lCvS1DPEaLKkNATA5y4bTHz/NhCo/ACqmkov//u25Ox\nTty2MFVfVsaApfl6pgXhu47PwSpo3XDOIAHccVQJvdVw4e20qBY9UXlI6IkMjDOs9Nkr7z4+X3gB\n1eAckBL3vyepinHvnStTtevjjIFzhvefPJbM6Vi7+F0GZ5BS4r3vVnv8zEYPIlT9YgmiypDQExk4\nlFXyPz36IDgDfvEj9xSO5gEtqsD7ThzF/e9ZwcpCAz/9/jswRUAf19g4c+pOAMDDH3wPblluFSpo\nBqifiwE4stjEzzz4blh2iFpdUERPVB4m5f5GM4wxud9zIBJef3sDdk2XKnbRqtvwPBf33LE84ZNZ\nXD/Am1d20Gwkm5qCIESrxnBsqVhhmbeubIGZasduz/XRqFnY7fRw353DauiN55UfrKHVasAPBLZ2\nHfy3Z5Zx7JjAt/6SEtCIgwNjDFLK3BEYnd1EhrSzMh91Y5rGbjE4h+i7gIdCwjamWYxNHjdqVjSn\nwsNkxrJMjiOLTawckWi1KNAgqg1ZN0SGYV583s5Smc+oiCPzmpCicO47oGrUhKKvBMOUaTL9P9/K\nEYkmWTdExaGInsgwTIaniQY4Z2B9gbIU+fvOZsYyGGQgMxMpG9FrllckZDjdWARxUKCInsgwLKKf\npmSB+tzga7xA0xGNaRgIRfaqMY2dNOxzKysCc1SimKg4FNETGfr1U0o5VabMsLGEnC6i12mR48ae\ndk4/8UAA6VK8Q1QbEnoig2Fw+ELGvnwoJGoF6sen6b8TUNbNNBE9HxD6aSP6/jmd+aiHdx0p1sCE\nIA4aFMoQGUyDQaQWPlVEvzfWDWPT2UDDFnanPXH7PyclprrLIIiDBJ3hRIb+tEghZOHiYZr+qHva\nBVRuqM1XezHYwF1GiQsZQRwUSOiJDGZUjEwTiulSIoEhPnqpBdTsxadoNc2RU5DT20AEcVAgoScy\nGJxBIh0+l7Fu9iaiH7zLEDCnyN4BkqqaMVIWrplDEAcNOsOJDAbnkCkhLONh939q6pTIvpz8abN3\ngME1CArmicMACT2RYcAPL7UYy/qeTz+v9GfLWDf9dwck9MRhgISeyDDgh5eInjGQdTO9qqY/KuX0\nQt+/BlFmTgRxUCChJzIMRLxyulo3wKColjrZUoIspZzaBjKiBuhDhiWIykJCT2To98PLCOGgHz79\nYP3XmmlKKQBJQ5RkXFJ6ovqQ0BMDpLWvnNBna9SUGSstyEKI6ReIDZbJKSKdJw4DJPTEAFmhn14J\nDSOxSUIhpt541T8niekj8f6Injx64jBAQk8MkBa/MptGzZSoClEuXz0t7AzTrxv0e/T0B0AcBug8\nJwbgexXR8yRVs7TQpx6XicF139j0c4KoOiT0xACZiL5ESM85h5RqMVZIOfVuVjVYKqIvqc16qDIl\nmAniIEGnOTFAWtzLnCDpiF5KMXXuO5BN1SxbhExfyEIhYRnTlWAmiIMECT0xQMYmKbUYm3j0smTx\nsHSqZtmUSH2dECUKthHEQYLOcmIAljHpy40VWyMli4elUzXLWjf64lWmlAJBHCSowxQxgBl1mQJQ\nKiUSQKzKZcoWqDkxhHsV0fO9mRNBHBToLCcG0DZJ2dx3ANDrrwzlbCDbNOKqmqWFPvpXVeakrBui\n+pDQEwPYkU0ShAI1u9xipY6ey9otyvbZI+smmpOQApzSbohDAJ3lxACmySGkgBCidFaKjuLLZsro\nBuF7cZdhG1zZQFLCosVY4hBAZzkxgGUaKpVxD7ov6ctEWbtFb3QKQwHLKnfxsW0TQSDAp2xWThAH\nDRJ6YgAl9CLa5FTuFFGNTPamATfjDGEoULfL5RDULANCChJ54tBAQk8MwDkDhzo5ygp0o2bB80Ps\nxbYkjr3Jfdebr2ghljgskNATQ+EG25OIt1Ez4fkBaiWjcCDx6W2z3GXDNFRf3L24yyCIgwAJPTEU\nDrYnC5W2ZcL1fDTq5YXetpTQl70AqR27giJ64tBAQk8MZb5pwTbLC6FpcBgMqNtW6bHmGjbsPcqS\nMQ2G5fn6noxFELMOk1JOfteNnABjcr/nQAwiRJTKWNIm2Uv0ebIXlpLr7Y2dRBD7AWMMUsrcfwgk\n9ARBEAeMokJP1g1BEETFIaEnCIKoOHsi9IyxZ8Yce4QxdoYx9vhefBdBEARRjNJCzxj7JIBHRhx7\nEACklOej5w+U/T6CIAiiGKWFXkp5FsClEYc/DmAjenwJwENlv+9mcOHChf2ewgA0p3zM4pyA2ZwX\nzSkfszinotxoj34RwHrq+coN/r49YRZ/sTSnfMzinIDZnBfNKR+zOKei3IzFWNp+SBAEsY9M3DEy\nYhF1XUr5fI7xNwEsR4+XAKwVmBtBEASxB+zJhinG2NeklB9NPV+UUm5Gi6+npJRfZoz9OoCvSym/\n3e/ZrEMAAALmSURBVPdZ2i1FEARRkCIbpkrvAWeMPQrgFGPs70opfz96+RyUwL/EGDvFGDsDYLNf\n5ItOliAIgijOvpdAIIi9hjH261LKL+73PIh8MMaekVL+w9TzR6Bs3xNSyi/PyJy0hX23lPIzszCn\n1OsTz/eZ2xkbWTxEilncdMYYezz67wv7PZc0jLGHADy83/PQMMYejH5/s/S7m5nzqX8fzizsvRky\npzMAzkUXnRPR832dU+r1XOf7TAn9rP2RAvsvaLNw4vczCyf+GGbtFvUzUeLC4oz87h4AcCk6ny7t\n95yG7MPZ9703Q+Z0IjWPS9Hz/Z5TfCjP52dK6DFjf6QzImj7fuIPYd9P/GEwxh7QF8RZIFq/+ksA\nkFJ+UUr50j5PSaNLlpyYoTlpZm7vjZTyyykL6UFEv9P9psj5PjNCP2t/pBGzIGh04udnefJbbiqn\nAKwwxh6YFUsyEvY3GGPryJ5Xs8RMJmhEd9f/eVhSyT6R+3yfGaHH7P2RzpKg0Yk/eS6zGCgAwKqO\nmqNFxn2FMbYI4DUAjwP4MmPsrn2eUj+zvPfmjJTyH+33JIDi5/tNa7EzbuPVDP+RAth3QaMTPx8n\nGGMnoO54lqNzar9tiTUAb0SPNwF8EECejYY3kscB/J6UcpsxtgngUQCzlKH0Fag7ofMA7gLw9f2d\njoIx9kmd2cIYOzMDelXofL9pQj8hTWrf/khz7vzdT0GjEz8H+vcV/T4XMBvrPc9BCSmgLLi/2Me5\nxEgpt6N/z0d/d/tG/z6cPHtvbvacoiSRLzDGPg0VdD06foQbP6ei5/tM5dFHk/40gMdmwQ4AYkE7\nGz3eF0GL/r9cwj7mFffN5yEAz0J5vMsAHpVSvrC/s5pNot/dOtQGwpm4+4nWCy4BWJ6F84m48cyU\n0M8aJGgEQVQBEnqCIIiKM0tZNwRBEMQNgISeIAii4pDQEwRBVBwSeoIgiIpDQk8QBFFxSOgJgiAq\nDgk9QRBExfn/AcQv70C82q+UAAAAAElFTkSuQmCC\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "m.plot_f(resolution=500, predict_kw=dict(kern=m.kern.mul), plot_data=False)\n", "plt.plot(x, f_perdom)" ] }, { "cell_type": "code", "execution_count": 14, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/plain": [ "[]" ] }, "execution_count": 14, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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\nQmCC\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "m.plot_f(resolution=500, predict_kw=dict(kern=m.kern.linear_slopes), plot_data=False)\n", "plt.plot(x, f_w)" ] }, { "cell_type": "code", "execution_count": 15, "metadata": { "collapsed": false }, "outputs": [], "source": [ "w_pred, w_var = m.kern.linear_slopes.posterior_inf()" ] }, { "cell_type": "code", "execution_count": 16, "metadata": { "collapsed": false }, "outputs": [], "source": [ "df = pd.DataFrame(w, columns=['truth'], index=np.arange(Phi.shape[1]))\n", "df['mean'] = w_pred\n", "df['std'] = np.sqrt(w_var.diagonal())" ] }, { "cell_type": "code", "execution_count": 17, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/html": [ "
\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
truthmeanstd
00.060.000.00
1-2.59-2.340.63
21.901.420.51
34.364.460.51
\n", "
" ], "text/plain": [ " truth mean std\n", "0 0.06 0.00 0.00\n", "1 -2.59 -2.34 0.63\n", "2 1.90 1.42 0.51\n", "3 4.36 4.46 0.51" ] }, "execution_count": 17, "metadata": {}, "output_type": "execute_result" } ], "source": [ "np.round(df, 2)" ] } ], "metadata": { "kernelspec": { "display_name": "Python 2", "language": "python", "name": "python2" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 2 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython2", "version": "2.7.11" } }, "nbformat": 4, "nbformat_minor": 0 }