gp pymc3 notebook init
This commit is contained in:
1 parent
d6c9b781b1
commit
ae25756427
1 file changed
+243
@@ -0,0 +1,243 @@
|
||||
{
|
||||
"cells": [
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": 1,
|
||||
"metadata": {},
|
||||
"outputs": [
|
||||
{
|
||||
"name": "stderr",
|
||||
"output_type": "stream",
|
||||
"text": [
|
||||
"WARNING (theano.configdefaults): install mkl with `conda install mkl-service`: No module named 'mkl'\n"
|
||||
]
|
||||
}
|
||||
],
|
||||
"source": [
|
||||
"import pymc3 as pm\n",
|
||||
"import numpy as np\n",
|
||||
"import matplotlib.pyplot as plt\n",
|
||||
"from pymc3.gp.util import plot_gp_dist\n",
|
||||
"\n",
|
||||
"#https://docs.pymc.io/notebooks/GP-Marginal.html"
|
||||
]
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": 2,
|
||||
"metadata": {},
|
||||
"outputs": [
|
||||
{
|
||||
"data": {
|
||||
"text/plain": [
|
||||
"[<matplotlib.lines.Line2D at 0x7fcf4339ec18>]"
|
||||
]
|
||||
},
|
||||
"execution_count": 2,
|
||||
"metadata": {},
|
||||
"output_type": "execute_result"
|
||||
},
|
||||
{
|
||||
"data": {
|
||||
"image/png": "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 truncated
|
||||
"text/plain": [
|
||||
"<Figure size 432x288 with 1 Axes>"
|
||||
]
|
||||
},
|
||||
"metadata": {
|
||||
"needs_background": "light"
|
||||
},
|
||||
"output_type": "display_data"
|
||||
}
|
||||
],
|
||||
"source": [
|
||||
"np.random.seed(5)\n",
|
||||
"x = np.linspace(0, 10)[:, None]\n",
|
||||
"y = np.sin(x)\n",
|
||||
"\n",
|
||||
"X = np.random.choice(x.flatten(), 7, replace=False)[:, None]\n",
|
||||
"Y = np.sin(X)\n",
|
||||
"\n",
|
||||
"plt.plot(x, y)\n",
|
||||
"plt.plot(X, Y, 'o')"
|
||||
]
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": 25,
|
||||
"metadata": {},
|
||||
"outputs": [
|
||||
{
|
||||
"name": "stderr",
|
||||
"output_type": "stream",
|
||||
"text": [
|
||||
"/opt/miniconda3/lib/python3.7/site-packages/theano/tensor/basic.py:6611: FutureWarning: Using a non-tuple sequence for multidimensional indexing is deprecated; use `arr[tuple(seq)]` instead of `arr[seq]`. In the future this will be interpreted as an array index, `arr[np.array(seq)]`, which will result either in an error or a different result.\n",
|
||||
" result[diagonal_slice] = x\n",
|
||||
"Only 100 samples in chain.\n",
|
||||
"Sequential sampling (1 chains in 1 job)\n",
|
||||
"NUTS: [f*, ls]\n",
|
||||
"100%|██████████| 150/150 [03:43<00:00, 1.05it/s]\n",
|
||||
"The acceptance probability does not match the target. It is 0.9064175024104284, but should be close to 0.8. Try to increase the number of tuning steps.\n",
|
||||
"The chain reached the maximum tree depth. Increase max_treedepth, increase target_accept or reparameterize.\n",
|
||||
"Only one chain was sampled, this makes it impossible to run some convergence checks\n"
|
||||
]
|
||||
}
|
||||
],
|
||||
"source": [
|
||||
"with pm.Model() as model:\n",
|
||||
" ls = pm.HalfCauchy('ls', beta=5)\n",
|
||||
" \n",
|
||||
" # zero mean\n",
|
||||
" mean = pm.gp.mean.Constant(0)\n",
|
||||
" # input_dim = the total columns of X\n",
|
||||
" cov = pm.gp.cov.ExpQuad(input_dim=1, ls=ls)\n",
|
||||
" \n",
|
||||
" # The GP\n",
|
||||
" gp = pm.gp.Marginal(mean , cov)\n",
|
||||
" \n",
|
||||
" # Observed data\n",
|
||||
" f = gp.marginal_likelihood('y_obs', X, Y.flatten(), noise=0)\n",
|
||||
" \n",
|
||||
" # Conditional GP\n",
|
||||
" f_star = gp.conditional('f*', x) \n",
|
||||
" step = pm.NUTS()\n",
|
||||
"\n",
|
||||
" trace = pm.sample(chains=1, step=step, tune=50, draws=100)"
|
||||
]
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": 26,
|
||||
"metadata": {},
|
||||
"outputs": [
|
||||
{
|
||||
"name": "stderr",
|
||||
"output_type": "stream",
|
||||
"text": [
|
||||
"100%|██████████| 1000/1000 [00:01<00:00, 891.40it/s]\n"
|
||||
]
|
||||
}
|
||||
],
|
||||
"source": [
|
||||
"with model:\n",
|
||||
" pred_samples = pm.sample_ppc(trace, vars=[f_star, f], samples=1000)"
|
||||
]
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": 27,
|
||||
"metadata": {},
|
||||
"outputs": [
|
||||
{
|
||||
"data": {
|
||||
"text/plain": [
|
||||
"[<matplotlib.lines.Line2D at 0x7fcf281c8748>]"
|
||||
]
|
||||
},
|
||||
"execution_count": 27,
|
||||
"metadata": {},
|
||||
"output_type": "execute_result"
|
||||
},
|
||||
{
|
||||
"data": {
|
||||
"image/png": "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 truncated
|
||||
"text/plain": [
|
||||
"<Figure size 432x288 with 1 Axes>"
|
||||
]
|
||||
},
|
||||
"metadata": {
|
||||
"needs_background": "light"
|
||||
},
|
||||
"output_type": "display_data"
|
||||
}
|
||||
],
|
||||
"source": [
|
||||
"plt.plot(pred_samples['f*'].mean(0))"
|
||||
]
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": 28,
|
||||
"metadata": {},
|
||||
"outputs": [
|
||||
{
|
||||
"data": {
|
||||
"text/plain": [
|
||||
"[<matplotlib.lines.Line2D at 0x7fcf28183d68>]"
|
||||
]
|
||||
},
|
||||
"execution_count": 28,
|
||||
"metadata": {},
|
||||
"output_type": "execute_result"
|
||||
},
|
||||
{
|
||||
"data": {
|
||||
"image/png": "iVBORw0KGgoAAAANSUhEUgAAAs4AAAEyCAYAAADqVFbTAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADl0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uIDMuMC4zLCBodHRwOi8vbWF0cGxvdGxpYi5vcmcvnQurowAAIABJREFUeJzs3VmM5Fl23/fvvfe/xZaRmZVV1VXVXV2zNGfnMmxxlSjKMkVbIuQFli0DhiUBxsAGCD/ZFgzYluEXPhh+MCzbAgELBAFDkh8kkrZombBgkebAXHqGM+QsPb1V156VW+zx///vdvzwj8yqnumZKZI1Vd3V94NOZEZkdGZkRiL61yfOPUeJCEmSJEmSJEmSfGf6ad+BJEmSJEmSJHk/SME5SZIkSZIkSR5BCs5JkiRJkiRJ8ghScE6SJEmSJEmSR5CCc5IkSZIkSZI8ghSckyRJkiRJkuQRpOCcJEmSJEmSJI8gBeckSZIkSZIkeQQpOCdJkiRJkiTJI8ie9h34Tvb29uTatWtP+24kSZIkSZIkz7AvfOELRyJy/rvd7j0dnK9du8Yrr7zytO9GkiRJkiRJ8gxTSt14lNulVo0kSZIkSZIkeQQpOCdJkiRJkiTJI0jBOUmSJEmSJEkeQQrOSZIkSZIkSfIIUnBOkiRJkiRJkkeQgnOSJEmSJEmSPIIUnJMkSZIkSZLkEaTgnCRJkiRJkiSPIAXnJEmSJEmSJHkEKTgnSZIkSZIkySN4T6/cTpIkSZLkGSACMUDwoDWYHJR62vcqSf7YUnBOkiRJkuTxOwvLrgvM3ZUQANeAzsBs3lR6ATx5f0jBOUmSJEmSx+NbwrJsPqE2FWb1zttFj1gBpREMojUi3eclRgCyfh+VqtPJe0QKzkmSJEmS/Ml9x7D8oJLs1zW+abpALIKIIFFAIkrpLlcbgzIGlRWQF0gU/HpNubODzlJkSZ6+9FeYJEmSJMkfXwzg7buHZZGz20gI2NmMaC35YIAqctAKZbIuJGvzzmr0GQFlcFbTHB9TbG2R9XpP7udLknfxWIKzUurvAz8HHIjIp9/l8z8N/CpwfXPVPxaR/+ZxfO8kSZIkSZ6gGMG3XYUZ6AKv6sKy+M37CALRe9rZDG0M1bkdlH4oVMOmXSM+uKw2wfs0SKtAnoHeGmGXS4J1FFuj1LqRPDWPq+L8S8DfBX75O9zm/xWRn3tM3y9JkiRJkidJBNxpYJYHLRqbkPzQDQHwdYNdLsmHQ/L+Q5Xibxd6RR6E7oerz0pjDFTjEXbV0BwdU+7uoI15zD9gknx3jyU4i8hvKaWuPY6vlSRJkiTJe4hI15LhLV1gZlMpDrwjMW8CsQjY+YLoHOXONibPz76OxNhVnd8tPL/bdSIgAYKgUJSjPq51NEdHFOMxWVU97p82Sb6jJ9nj/ONKqS8Dd4H/RES++m43Ukp9DvgcwNWrV5/g3UuSJEmS5IxIV1327aa9QnU5OdgH7RbfFHa71ow5WmvK7TFKAtLW+PUaXzeAUIy30FnejaHTpgvS345SDyrRwYEV8qKH3tmhnU6J1pGPhql1I3linlRw/iLwoogslVJ/GfgV4KV3u6GI/CLwiwAvv/yyvNttkiRJkiT5HjltwXDNQ20TqjsEeFplVupsXFx3+4hfL7HTGaboKszrkyPcek1oWtCQFRUgLG/dIR8OKLfHFONxNy1jM8/5XUP0aSiWCL7rqzZ5j97eHu10RnN8QrmznVo3kifiiQRnEZk/9PGvK6X+J6XUnogcPYnvnyRJkiTJIzgNzDFwFpg385YRiMETrMWva+JyQXQtrm2wkzlutcZUJVop8kFFNhhQjofkz50jy/OzynGMEbtY0xwfs7x9l3zYp9ze7irR5ptC9MOV5NPqs+96rBU9qt0d3HKZWjeSJ+aJBGel1HPAfRERpdSPABo4fhLfO0mSJEmS70KkC8zBcRaYAYIjOktoW3xjic5iFGAb7PQIt1jhmpqs12N85QKmKDG5Rrwneo/MJtg5eK3AaEyekVUVVT+jGu4RBexyTXN4wOLtm2TDAflwSNbvoZRC0OTj8YMxdGfh2YOsAcgHA3RRnLVuFFujp/EbTD4gHtc4un8A/DSwp5S6DfwdIAcQkb8H/FvAf6SU8kAN/HURSW0YSZIkSfK0iYBdQwgPDvh5h18v8XWLOIspCrJcY4qC9uiY1f4+eZVT9QzjvfPkVbFZbNJCiEiMiAREPMF6xDqCs9TrGpWX5NvbmKqP0NWOi1yT7wxxtaW+d4fgAsV4TDkeE22L7/Upd3dRxjwIzyFA24Vnkxdd68ZkSjubU463nuIvNHmWqfdyfn355ZfllVdeedp3I0mSJEmeTRK78Cmx29JXN/jVAnEOk2eYskRnChU8sVmzuHWbUNeUpcIdH1IWGUorYvAQu6kZEmM3m1krVBQUgrQtdrmA1uJVhpQlZjCgd36PYryNrvqootxsDsyJIjTzFc1kStbrU+yeI0ah2N4hH20qyqf5RRso+pCXiAj10RHl9jamKJ7e7zV531FKfUFEXv5ut0ubA5MkSZLkgyiGrtIsgl2u8MslxmjyqsKMBg8O47UWO5+yuHWHLINS1qyv36fqlygTUEGRobq9JUSUtyhvwVnwrmvnmM0Z6EimQJQmNDntMmd9eJ9me4fe+V2KrTEqy5GihKKi1y+pRpdY7B/SHOwzvPI8bjbF13W3gvu0b/qhn0MVFcVohJ3NqPb20rSN5LFLwTlJkiRJPmiCB1sjMdJOZxA8ve0tFBEJsVt0Ej3ROdZ3blMfH1HlAvM1zXzOcNynzBTMZ5sZz5uJG3GzwCREpKlpF0vEBapCo9ymGq0UmbFkStHXC9rFEfVNzWqwTXXlEsXuLqYqu0OCWc5o1Ge1dMzfvs7W1asIQr2/T741fjCKLgZwNQBZVeHrBrdcUoxSv3PyeKXgnCRJkiQfJN6BawjO0U6mZLmh2Ooj3m3aLDwEh5/NmL19HWlqShMwgLc1w1GPfDmB9YqzBShx03PsLNgWbx3NqsYARoNfeaLzKIlkedaNjtMatKZUitIY/PQe9cEdXFmiz+1RXLpMtr2N6TUMqiF1VjG7fp3RC89TbY2x6yV+vaLc2cWUxYPKM0KxNaI5PsZU1YMFLEnyGKTgnCRJkiQfBGcbAFt83WJnM4pBRVZkiPddoN4sPFndvcv8xk1yE+j3C4qiwM7m5OsFua8RF/DOIc4hbYtYi2wOBbq6C855rlEiBOcIziPOEl1ARNBFjikKijInKzJMZsiUYmgUwa5pb76Nu30DX/XILl2i+MSn6FUDzHjA4tYtBhcd1fk9vI80R8dk/YpiawtlAFujK0M+GmGnM3rn9572bz55hqTgnCRJkiTPOhFwLeLbbh1201JuDTBaPQjNtsYtpkzfuI49OWa0N6Df76NjwB4dwPEhRgmt9YS6xgSPlohWoEw36aKuW7QE+hlEZ4mtBefO2jTEe4wxKOfAeZoluCjo3JAXOVlVkBcZldGEILhpg13MiZMTys/+CMXWFnrcZ37vHsG2DJ57DrM9xNUN9f0D8u0t8v4A2jX5YEzYtGzkw+HTfgSSZ0QKzkmSJEnyLNvMaBbX0pxMURKotkcoiUjoQrO0KxbX32L2xnV6fcPFq3toJVCvsHdu0x7PMFqwMZKrSKFj11ssmug87bqmma8R59Ah4mxLdIFou3F0JggqeIhdUA4ixEyT5Tl5lUHQBOfwdU2jNCozoA1ZkYMPhIMD1p//TapPfz/Z5efZ3u6zmJwQGsvwhSsUVUksC9rZnNhayu1taNYU462zlg2dpciT/Omlv6IkSZIkeVZtZjSHuqadzsjKjGIwhuAfCs1Ljr/yVdq7tzl3+RzVoAfNmnh0SHt4yHoyp1/lFEZjDOAjEgLtusHVDavJArtsyMSjrIMAWYxkIkiI5ALBBxBBR7oFKkoRfSBYh1sqnGzCtDFkpenWdhcaozNMmVH0K7Loab/4BcLxMcUnP8Vo2Ge5XDJ7623G155Hlz2qrSHNbIkv1mRKo7OcfDDAzuZU53af9qORPANScE6SJEmSZ9FmRrNbrXDzOcWgT1bmENxZaI7NksnXX8Xt3+H8hy5hosffvYU/OsKvVoS6ZWtUkmcGrIUYCa1lMV2yvHeEny7JEPpGkQFaBCXgXcD7gPiIUZAphRLpRi8r0EqBUmdrtU+nxkURfOtxtSVEsJvKtN3bIq8remNBXX+DZjmn/MwPsLW9y6puOXntTbZfvEo2HFIOKprpFJVlGK3JB9vdlI31mrzff5qPSPIMSME5SZIkSZ41MSLtEjudEduWajxCG91dfxqa1yumr7+GvXuL3Rf2iMeH2Pv7aNugxaO8YzAqyRTQtl2VebFiejjFH56QN46RUeQogvM4G2hdQEJEo9BKoU/vDu9ctvbNlxV0C1Pohm30tEY0RIk0IdLcmxJGPXzdUowHDEKkXq8pP/FJBpeex6iM6VtvsvXiVYqtMUWvoD0+oXcxQ9VLivEW7WTSLXQx5gk8AMmzKgXnJEmSJHmWiBDrJe3JMQqh2hmj6BaFiHcQPH45Y3n9Tdq7NxlfGOPv3EFPDqkQVAbNOpDnhkwi+EC0lvnRnOX+EWW9JrMB1TqcDdQeYoxorTCqewOQ2FWYhe59jILEd97VKN3SbQTCpiIdz27fBWpjIO9luMkSVze4pqVd1GxdsFj3JeJkQvnSx9C9itkbbzJ88Rq9c+eImaY5OaG3ZzB5Sdbvdy0buztP/CFJnh0pOCdJkiTJM0TamubwkLzMyAebDYAPhWY3m7C6fQt79zaDYY94f59iNSEzAIpm1aBjpFCADaznKyYHJ6jjOVsIvnbYlSW4gETQdG9ECAj+7I4IIQghCt5HnIuE0PVqiAiobvwzqgvXSik0XduGYvOmFA5BtZG8UMQgxMYTR46j2jJarenblrCYUX7y04zHY2bX3yQrcvLxNu2ywS3m5NqQ97dLine truncated
|
||||
"text/plain": [
|
||||
"<Figure size 864x360 with 1 Axes>"
|
||||
]
|
||||
},
|
||||
"metadata": {
|
||||
"needs_background": "light"
|
||||
},
|
||||
"output_type": "display_data"
|
||||
}
|
||||
],
|
||||
"source": [
|
||||
"# plot the results\n",
|
||||
"fig = plt.figure(figsize=(12,5))\n",
|
||||
"ax = fig.gca()\n",
|
||||
"\n",
|
||||
"plot_gp_dist(ax, pred_samples[\"f*\"], x)\n",
|
||||
"plt.plot(X, Y, 'o')"
|
||||
]
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": 29,
|
||||
"metadata": {},
|
||||
"outputs": [
|
||||
{
|
||||
"name": "stderr",
|
||||
"output_type": "stream",
|
||||
"text": [
|
||||
"/opt/miniconda3/lib/python3.7/site-packages/theano/tensor/basic.py:6611: FutureWarning: Using a non-tuple sequence for multidimensional indexing is deprecated; use `arr[tuple(seq)]` instead of `arr[seq]`. In the future this will be interpreted as an array index, `arr[np.array(seq)]`, which will result either in an error or a different result.\n",
|
||||
" result[diagonal_slice] = x\n"
|
||||
]
|
||||
}
|
||||
],
|
||||
"source": [
|
||||
"with model:\n",
|
||||
" prior_pc = pm.sample_prior_predictive(samples=100)"
|
||||
]
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": null,
|
||||
"metadata": {},
|
||||
"outputs": [],
|
||||
"source": []
|
||||
}
|
||||
],
|
||||
"metadata": {
|
||||
"kernelspec": {
|
||||
"display_name": "Python 3",
|
||||
"language": "python",
|
||||
"name": "python3"
|
||||
},
|
||||
"language_info": {
|
||||
"codemirror_mode": {
|
||||
"name": "ipython",
|
||||
"version": 3
|
||||
},
|
||||
"file_extension": ".py",
|
||||
"mimetype": "text/x-python",
|
||||
"name": "python",
|
||||
"nbconvert_exporter": "python",
|
||||
"pygments_lexer": "ipython3",
|
||||
"version": "3.7.3"
|
||||
}
|
||||
},
|
||||
"nbformat": 4,
|
||||
"nbformat_minor": 2
|
||||
}
|
||||
Reference in new issue
Block a user