{ "cells": [ { "cell_type": "markdown", "source": [ "# Regression\n", "\n", "This example will guide through a very noisy regression problem. First we have to create the regression data. The data will originate from\n", "the function $x \\cdot sin(x)$." ], "metadata": { "collapsed": false } }, { "cell_type": "code", "execution_count": 5, "outputs": [ { "data": { "text/plain": " x y\n0 -19.944950 18.102259\n1 -19.905794 16.782999\n2 -19.874876 16.939438\n3 -19.783342 12.793908\n4 -19.721155 18.745640\n.. ... ...\n995 9.941216 -4.190035\n996 9.944221 -7.070674\n997 9.953140 -1.843960\n998 9.957382 -3.120459\n999 9.965003 -2.542398\n\n[1000 rows x 2 columns]", "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 \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
xy
0-19.94495018.102259
1-19.90579416.782999
2-19.87487616.939438
3-19.78334212.793908
4-19.72115518.745640
.........
9959.941216-4.190035
9969.944221-7.070674
9979.953140-1.843960
9989.957382-3.120459
9999.965003-2.542398
\n

1000 rows × 2 columns

\n
" }, "execution_count": 5, "metadata": {}, "output_type": "execute_result" } ], "source": [ "import pandas as pd\n", "import numpy as np\n", "import logging\n", "\n", "logging.getLogger(\"/jpt\").setLevel(0)\n", "def f(x):\n", " return x * np.sin(x)\n", "\n", "def generate_data(func, x_lower, x_upper, n):\n", " '''\n", " Generate a ``DataFrame`` of ``n`` data samples with additive noise from the function ``func``.\n", " '''\n", " X = np.atleast_2d(np.random.uniform(-20, 0.0, size=int(n / 2))).T\n", " X = np.vstack((np.atleast_2d(np.random.uniform(0, 10.0, size=int(n / 2))).T, X))\n", " X = X.astype(np.float32)\n", " X = np.array(list(sorted(X)))\n", "\n", " # Observations\n", " y = func(X).ravel()\n", "\n", " # Add some noise\n", " dy = 1.5 + .5 * np.random.random(y.shape)\n", " y += np.random.normal(0, dy)\n", " y = y.astype(np.float32)\n", "\n", " return pd.DataFrame(data={'x': X.ravel(), 'y': y})\n", "\n", "df = generate_data(f, -20, 10, 1000)\n", "df" ], "metadata": { "collapsed": false, "ExecuteTime": { "start_time": "2023-04-13T15:47:05.736960Z", "end_time": "2023-04-13T15:47:05.758139Z" } } }, { "cell_type": "markdown", "source": [ "Lets have a look at the data visually:" ], "metadata": { "collapsed": false } }, { "cell_type": "code", "execution_count": 6, "outputs": [ { "data": { "text/plain": "
", "image/png": "iVBORw0KGgoAAAANSUhEUgAAAXkAAAD5CAYAAADCxEVRAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjUuMSwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/YYfK9AAAACXBIWXMAAAsTAAALEwEAmpwYAABT1UlEQVR4nO2deXwb5Z3/P4/mkmRbwW7ASQs2pSTtNtBwZEmhEO6F7nbLttAC3Z7AQqGEHJSjlB4LtOXMAYVAgECvJWkJlPxKC9sESKCASwiEkEJNOOzCJoZgY8mWNOfz+2P0jGfGI1/SSCP5eb9eecU659DM93me7/H5EkopOBwOh1OfxKq9AxwOh8MJD27kORwOp47hRp7D4XDqGG7kORwOp47hRp7D4XDqGG7kORwOp44RS/0CQsg+AH4JoBUABbCSUrqcENICYA2AfQG8BeDLlNK+kb5r6tSpdN999y11lzgcDmdS8fzzz++mlO4Z9BopNU+eEDIdwHRK6RZCSBOA5wH8B4BvAuillF5LCLkcQDOl9LKRvmvOnDl08+bNJe0Ph8PhTDYIIc9TSucEvVayu4ZSupNSuqXwdwbAKwA+AuAUAL8ovO0XsA0/h8PhcCpIWX3yhJB9ARwMoANAK6V0Z+GlXbDdORwOh8OpIGUz8oSQRgBrASyklKbdr1HbJxToFyKEnEsI2UwI2fzee++Va3c4HA6HgzIZeUKIBNvA/4ZS+kDh6Z6Cv5757d8N+iyldCWldA6ldM6eewbGDTgcDoczQUo28oQQAuBuAK9QSpe4XloH4BuFv78B4KFSt8XhcDic8VFyCiWAzwD4GoBthJAXC89dAeBaAL8lhJwNoAvAl8uwLQ6Hw+GMg5KNPKX0KQCkyMvHl/r94yWnGujamUb79BQSSjnGMA6Hw6ld6soK5lQDF1z/GAZyGhoTMm679Dhu6DkczqSmrmQNunamMZDTkFdNDGQ1dO1Mj/4hDofDqWPqaprbPj2FxoQMUA2NSRnt01PV3iUOh8OpKnVj5JkvfsmCeejpzXKfPIfD4aBOjDz3xXM4HE4wdeGT5754DofDCaYuprvcF8/hcDjB1IWRTygibrv0OJ4fz+FwOD7qwl0D2Ib+E/u2AABefasXOdWo8h5xOBxO9ambKW9ONdDZ1Yelq7dgMK/XXQC2WCUvr/DlcDgjURdWIacaOP+6DegfUGGYBUVjagdg2ey+limWPcSzijgczmjUhbums7sP7/fnHQMvi7G6CsAWyx5yP58eUNHZNWILXQ6HMwmpCyPvb0fyzX+bVVezWpY9FJcFz+DVPj2FhrgEANAMC0tXb+GxCA6H46EurODM9mZ8aEocmUENTQ0yTpjbVjcGHiiePZRQRCw68xBcdfez0HQLgzm9blxUHA6nPNSFJUwoIlZcdnxdByDd2UNuZrY1I9WgYCDLawQ4HM5w6sYaFjOC9UKxLBpeI8DhcEaCW4QaYLQsmnof4DgczsSpj8BrnVMsuyanGrzwi8PhjEhZZvKEkFUAPgfgXUrpAYXnfgzgvwC8V3jbFZTSP5Zje5MNll1DLRWKLKC1JYm+dB4X3fQE8pqBxiTPkedwOMGUayZ/L4CTA55fSik9qPCPG/gJklBELFkwDwlFQl41cOGNj+E7NzyODwZU5DWuvMnhcIpTFiNPKd0EoLcc31Uq9erC6OnNIqfpUHUL6UEdmazmvBaXRZ5Vw+FwAgl7fX8hIeTrADYDuJhSOqwkkxByLoBzAaCtra2kjdVzmX/79BTisghVGzLukkiQjEu4+eJj6uY4ORxOeQkz8LoCwMcAHARgJ4Cbgt5EKV1JKZ1DKZ2z5557lrTBem4eklBE3HLxsdijUUFcFvChKXH86JzDcecVJ6I5Fa/27nE4nIgS2vSPUtrD/iaE3AngD2Fti1HvzUOaU3GsvOIEnhPP4XDGTGhWghAynVK6s/DwCwBeDmtbjMlQGMRz4jkczngoVwrlfQCOATCVEPI2gB8BOIYQchBs+bC3AJxXjm2NRj0bQa4dz+FwxktZLAWl9MyAp+8ux3dPlHoziP6g8pIF89DTm62b4+NwOOFQl9ahHrNs3EFl08hj/o2PQzXMujk+DocTDnUpa1CPWTZu7XjdpOgfrK/j43A44VCXRr5Yk41ahmnHSyJxnvN3wKrXQjAOhzNx6nKNX69ZNm2tTTCMoTZYsiTg7H+fhc7uPrS1NmHx8k115aLicDilU1dWwB9srfUsG//x9PRmIYkxaIYFABjI6bjuV5sBAKkGGZpuIq+ZddXEnMPhlEbdGPl6C7bmVAPnX7cBmayGpqSMFZcdj/bpKTQ1yHi/Pz/s/YOF4wZQNy4qDodTOrVrBX24g631MJPdtmO3Y8zf78+js7sPs2fsiRWXHY/Orj6oholbf/cietMqAMC0AItSXPLVOThw/6k1PcBxOJzyUTeB16Bga60GInOqgeVrtnie696ZQU41kFBEzJ65Jw775DTcfvkJOPeUA51gbCar45bfvliFPeZwOFGlbqZ7/mArgGHujqjPbpkPPj2oeQYmQoBf/HE71mz4O265+FhHkCyhiDhhbhvWbPg7+ge0wnfoNb+K4XA45aNuZvLAkKRBQhHR2dWH9/vz0HTLdnd0DVM5jhTMB3/FiqdwzaoO6IUsmmRchCzGoOoW+gc0XHTTE54BIKGIuGH+USCFzErdsNDakqzGIXA4nAhSV0beAxnlccRgg5JuULAkSVmM4eKvHIq4awWS14xhxU/9AxoUSbA/Iwno3pWpSTfVaNSq+43DqSbR9l+UwMy2ZnxoStxx18xsa672Lo2MbxASBYKmBhkz9tkDF335YNy85gWouhmYOdM+PYXGpAxAQ0NCwtLVWzCY1+siy4hRb9lTHE6lqNu7JKGIWHHZ8TVTEMUGpfSg6hQ8WZaFRcs2YjCvoyEu4ZKvzcHMtuZhx+KOR6i6iWvu6aibLCNGvWVPcTiVon7dNfD66KMOG5S++blZoAAMk6IvoyGTtQ3bYE6HIgmjHktba1PdSToA9SlVweFUguhbv0lEQhHR0uRt5ReXRcRIsJuG4Xdl/PT8I7D1td2YO2taTQxwY6FepSo4nLDhd0qEyKkGbr3/Rc9zZ39+Fj48tXFEw+Z2ZVBLxaW3PIW8bmDN+s668l3Xg1QFh1Np6tpdU2t0dvdhIOfNHFm1bvuoM1cmQyxLMSiyiLxmcBliDocDoExGnhCyihDyLiHkZddzLYSQPxNCXiv8H/H0lghAhz+l6uaohjqvGjAMC6CAEAM03QRg/89z5jmcyhDVFN9yzeTvBXCy77nLAWyglM4AsKHwuKJE9aQXY2a7nWEjxuwqV2UMQcacamD+TY+jf1CDZlgYzBkQBDsfUxJj6OnNVmr3OZy6Y6w2hMXFfrDyaVxw/WPoS+cjY3vK1eN1EyFkX9/Tp8Bu7g0AvwDwBIDLyrG9sVCLedXutM/WluSYerh27Uwjrw1dSHFZACEEamzkYG0tkFMNu1KZIDB1lMMJk750Hhfd9ATymoHG5Mg2pLO7D+lBFZpugVqq/TndiITtCXPLrZTSnYW/dwFoDXoTIeRcAOcCQFtbW9k2Xqt51QlFRPv01JizSNqnp9CUVACqQpEFiIKAwbxdAXv+Fz9Vob0uP0zmgSlxfmhKHEsXHs2bl3MqgrNCLmhCAcNtCNOaam1JYul9W6Dpdp8HJy4Wkd4OFblTKKWUEBLgcQYopSsBrASAOXPmBL5nIrC8alCtpma0412BBBVCqZoFVbNw3a+eQ6pBqfpMYqy4m6R07Uwjk9Wc19KDxWdH/uYqHE6pDF8hix4b4r5PFUmAqtlxMFmMYcHpB2PFAy8BiIbtCfOO6CGETKeU7iSETAfwbojbGkat5lVPZAXCUgtzqm0ALVOFZljQdMvJsIn6KsY/uC1ZMA9NyaEGKQlFCpwd1aJbjhN93CvkuCLi+vlHelyHbveMZVqQJRFx2W7Yc+D+UyNle8Lc+joA3wBwbeH/h0LcViC1mFfd2pJEXBIBOv4OT2xg6+zqs/VrcnokZhJjwT+49fRmnQYpIHB62PpnR+6bLQpLY0594L6XVMPE5bc+5TToaUkpAOC4ZwyTghATcUXEkgXzHKMeleuwLEaeEHIf7CDrVELI2wB+BNu4/5YQcjaALgBfLse26pmcamDx8k3IaTrisveCGSusqUgt6fYAwe41diyMJQvm4cmt72BaSwMA+3y5faENCakmBjRONAly+y1b88LQJKJAelBDLGZnsIkCQSxGoOoWAAMd23dh7qxpkYodlSu75swiLx1fju+fKDnVwLYdu9HTm8WRsz/sNNuIKmw2q2oWCEz09GYntM+16KMezb2WUw0sWrbRE4hddOYhGMzrAGxf6KIzDqmZ4+VEiyC3H7sf3QYeAFINMgghGMzpSMZFmCYFgQFNt7DywZewYu1WyJIwakZOpajbOyKnGvj2teudJdZdD23DvT88KdKGvhRXDaOWfdQjudf8gdhMVrPPk2v2P7PdrrerxUGOU12CYmHu1WVDQsIFp82GIgmY2daMvGrgya3vYO1jO5DXdQgCAdUB3bRzR/KaiaCMnGpQt3cAa6PHsCjQsX0XTj583+rt1AiUw1UD1G7q6GjYgbChQGxTwaj7Z/+1PMhxqkcxdyG7vtx1KwCwePkmjxtH9JWVSmIsMvGwur3626enkGqQnZl8jABzZ02r8l4Vxx1ALMVVU6upo26CZuKsUCyoOMo9iNXrIMcJl6Ae0a++1Yv26Sm0T095Jg4Lzzh4mBvH8Hp08K3PzcIJh7VFYoJR/T0IiYQi4vbLT6gJn3y5A4gLTz+4JqtEWYVrsc5W/kCs+3Ps5qyHQY5THdypyEFGnam8du1KIyEL9kSigBADGhKyXR2bkNA2ramKR+KldizABEgoIg6L8Oyd0bUzPSyACAzNJMZqqN0XZ1IRcdpxMyM9uLlh++7JZBjDTJxVxrI2j0sXHl2zgxyn+uRUAxu3vI2BrObUZLDYD7VU6IaFX/3xFcR87TpNy860uezr/4zb7t+Ka+7pQENcwqIzD6n6dcjvgAjgD7i2TWuakF/Z7arIqyZW/n5bTQScAQzLZJCl4j5N98ydNUAHgPf785h/4+NQDdM5bxzOSLivJQC44PrHkMmq0DQLshhDQ0JyYj8bt7yNu9e9XAiqDmcgp6O3P4/BnI68Zt+DV939bNWrzrmRrzJBAdee3uyE/MrMVWEYeRiFKH/UA84MfyZDsRmQfynt1+fJaQYvjOKMiWJuGVWzJxoWpdANCx9k8ugf0DB7xlTEZRGWRaH5nfAoFEdR6kh9s+eqXXXOjXyVCcqNn6hfmQWPtu3YjZ/c0wGLRj/gzBirDEXXzjQygyrUgtqfIgn40JQ4MlkNjQnJyV/m/vjKU2upq/4gPXPLMFkQw6RID2o479oNkMUYdMOCJMYQVwQIMYJcwIx+xQMvwXIpcEkCgSILVe3rEP1fos5hBp1aqnMxlKK7w+IQ9/7wJKf6LuquGsZYZCimNMqF6kJA1S2kGiVPdW9eHao6rAVDUy/UYuqqfzLF3DKdXX24/tebnRRsSuG55gDgtONn4DeP/H3Yd1o+iUXDolA1E4uXb6raOeHt/yLA+V/8FOKy6FwMOdVwDN5EL4rmVBwnH75vzRh4YKhBg7vhQk41sLXzPWx97T3kVAOb/+bVufvebU8DGEqjXLRsI+58aBsWLdsYiYYNkwX3rDg9oNqprhGHTaauPu8IxwCzDK4bLzoKhAR/TjcsrH1sB5qbZMRlYcRtUGoXRlWzFWe0h9o6JzCjJCJVcpWGnYtMVoWuWxAEgrgsQogRfFDQ9P7QlDjO+fwBns9phfaIn9i3BZ3d3iBsZ3cfZs8YnnLJKT+sz3BeNaEZFpau3oIVlx0f+dm8O23Snc32bl8OkhiDpluIEe8MXRBiyGsmKKU486SP44HHX0curzvVrm5iBI7EQbXch9H+Beqc8WSUTIS+dN5xXcQVMZL+UubHVXXTG/QyKHRD97w3M2inSTY3yejL2IY/1eA6X/57rGzdCTijkVBELDrzEFx197PQdAuDOb1mJitBMtfuuhW/C0aWBMSIPaO/79G/Q9NtX31T0q64ZkkPokDwvW8c5lyjPLtmEjLWjJKJ0JfO45tXPQqLArfdvxXNqTiy6vACo2rivrka4hIa4hJMwwqcEQF2qXjbtCbc8b0TAytf26Y1YUqDjJxqoKlhSMuGUxlmtjUj1aBgIFtbhWj+AGzH9l0YyGmB7yUEWLpwHra+ttuTTqkZFggBGuIS+gu+/CmNCg7cf2rV77Xq3+mTmDAbm3Rs3+XMQChsQS/diFZqoffmAq781lwAwE3/s9mZqRPY1YQmBUyLYvHyTViyYB4UWfCcM5aKmtcNJOIili48uuo312SjVhv1+AOwc2dNw68feQWqNtzQL198NKZPbcQeTXGsWd8JSu0CKeaSWbJgHrp3ZSJVjFf9PagAtdIQupwpaHNnTcOKtVthUdtQNiVlZPPRSi0Mym5IKKJnpt7W2oSO7bucWROlwW0AbZVK1Xb3UGPC2j+c8eO/bqMwgRgPQYPTDfOPwqKlG5HXTZiFlaUiC447MUi8jP3PruOoEJ09CYmghtBRCQi5S/KdHO8AzZaJ0JyKe9Ioo+iTTxQ66fhTHlmGAzMec2dNw5r1nQA0KLIQ2AawtSUJveBD1Q2rqnnJk4laTJ0Mwj045VQD37vtLxjMe7OzdN30XFfuz8QV0eN6jIKcAaP6exAyQTrkUXFXuEvye3UVshQra7UmS6NkROGY3TAXSyar4tePvIJbLj7WmX0HBcPYbCmoDWBPbxayJCCvmZDEGDq278LRh+wdiZusnqlH1U+/zWBIYgzduzKBXZ/8kiL/feezSDXKkZhQhr51QshbADIATAAGpXRO2Nt0E6RDHhV3BXx5uAlZRIyYkXKphInbxaJqGi666QmsvOIEx/3i7/nKjEeQ37d9egqNSdnxkd697mWsWd9ZszPLWqEeVT/9NoPRkJCwdPUWDOQ0xGXRMylxp5ACgG5akUnjrdTVfyyldHeFtuVhJB3yajOzrdlTkv+dLx3kdJ6Jyj6GSfv0VKEIzJ415TU7dqLIAqY0ykW7ZAX5fZmP1CsiVR8zyyhTq8HWkWA2Y31HN+59eDs0wxYrO+3YmfjFn7Y7k5L5Nz6OS742x7lfF515CH608mmYLlmb7p0ZzGyzs7yqdY4IpeEmExdm8nPGYuTnzJlDN2/eHMp+RFVXYzQN9XqnL523A6magYaEBAAYyGnQdaYT4p0xjYTnXBb0aybTuXQT1eu9lnCnIccIcPvlx+OSW55E/8CQK0eWYmhKylh05iFoa23y9CEmxP6cIMSQjEsFrflwrklCyPPFvCSV+PUpgP8lhFAAd1BKV1Zgmx6iHBxKKCIUWcBgXg/NrxnlG745FcfKK05wCqKuWdXhZDCougVCxtYly59zf+VZcyfNishPFK73KF9zQQRl4HX3ZJw0ZIsC7/blcMvFx+Kim55ANq9DMyxouu2WYZLCP7vgM7jk5ieRyWqwKEv9taDpdoe6asQtKnH2j6SUvkMI2QvAnwkhr1JKN7EXCSHnAjgXANra2kLZgagHh8L0a0bhhh8N5n7pS+c9Mq2KPLZycH+jB8ukAIXnOGvJ6JS6r9W+3t0SFX7fdRQploHnr5hWNdOZlLAVY2ZQc4z9QFbD1td2I6fpw6pkGaV2fZsIoV/tlNJ3Cv+/Swh5EMBhADa5Xl8JYCVgu2vC2AcWFLFMWpWTPBph+jWrfcOPh57eLCQpBlWzIIsE53z+gFEzZNwGRSusADTDwvW/3owbLzoK/QOak5ET5YGOUY5BudrB0JEC6lEjpxr409Nv4oOM6jzHMvBmtjejJaU4faJvW7vVqWCdPXNPJ9bndg/OnjEVAonBzjPxIggEi844pOLnIdStEUIaAMQopZnC3/8C4KowtznyDlVty6MSVhGJM8BZ0Rzg3NhZDQpIIT1yLCmQbj1+SSCgwDAdcFGMwTTpsNz6KFKOQbnUSQNbSbDinrF+h/tz/oA625coraZyqoFvX7veMeIMloGXUEQs/sqhRfV43MaeHffi5ZugGcGdo6Y0KFWR2gj7TLcCeJDYmp0igP+hlD4S8jaHwXqo1ppwUjmhhS43+YL8bpRuNsZEjJNf/0c3rGE64LZvH4iP0f1TTYJm4RNx30x00uBXA/UHv4sNAP4VyA3zj8KltzyFnKo72VJRcxt27Uw71wrj8/P2w1dP/idn30bT43H78rt7MkgP5j3ZNQwhBiw+s/KzeCBkI08pfQPA7DC3MRaqvXytJmxmqBsUumGnfYliLLKZPOM1Tv6BIa8auOimJ5BT7UGd+f9kMYazx+D+qTbFjodlH43UFrEcA7d7ZQSwQdJ2udx88TFO8ZquD+m1sP11r0D6BzTcfPExzr5fcsuTUDUzUqup9ukppBpkz0w+lZSxbcduxy0z0sTD78tvblIgCgI0fXgfg4ZE9QTzonu1l5F6zOUdK/5c9GxeBwiJnFjZePAbNPfAkFBE3HzxMejYvgsfb98DP7zjWTt1rSA8VQvXgFvjfP5Njzspe3ktuDF0OYPr7k5l7kEyrxmOOiMbAFgtQmdXH1TdhCIKnrqGrp1p5HXD0V5PKHaKbFQmWglFxO2Xn4BtO3bjzf/rx28eeRW/fuRVAEBLKo7bLz9+2PXlxl4JDA0QfRkV3zntU7j1/pc870sqAn7+3WO51HDYJBQRrS1JbNzydk21xCsVJra0eJntK9R1C7Rw60bdRx/EaAaNSSWw12+++BiPHEKU3AWj0bUzjZzq1dR3N4ZmhpRp8ZcjuO6eEE1plHHJzU8ip9qrCKYhRK0h5cVkXMT1v3oO6ay9n8m4iB+efZjj0nGvoJk0RZQG2YRit8vsTec9yTSZwdHPIzsOd9+DbN6AJBBHLrsxIeG2S4+rqr2JxpmuAO7ChhVrt+LeH540KQx9TjVwxYqnoZu2pkuMEOQ1E7IYq0qkv1RGC0y6X6eW6mjY1FKWEcM2IhI0fchvLAoxNCQkTGmUce5P1ztunIa4BFB74E5nNWx97b0J1wm4VxKiGAMKm4/7lBe7d2XsXqhZr5FbsGQjFJf0rluhMUoG3s3sGVM9jxuTo0+AEoqIn3/3OMy/8XHkVAONSQkPbXrdMfCpBhk//27100ejd7ZDwq2vblH7sVu8q15x+1gtgSIZH1oy12JTjdHiK253g1vDZsmCeTUTl3G7o265+FjMv/FxpxGFYVowTRPfvflJT9CQafEvue95XH13B4DSFVc7u/uQyWrDEhZYTcMLne9C1Yb7n1lfU0pVx7BHLejqp39AgyLFoOoWhBhw4ZcOGtM+NqfiuPP7Jw4V891jn3tZjOHSr86puoEHJpGRd+urx4j9eDLgFk7STQpBILjya9WvBp1ooHC0+AqTL35o0+t4+C9vOn7jnt5s5OIyQecgyB110ekH4yf3dsAqZG18MKBDEofygeOyiJntzYUBfWhWnclqjhbQeI85pxqeFnhu1557VQwAkkggCgSiICCv6mD1bKpuYUqj7Mmbp5YayVVUa0vSOVbTAn7+uxdxsXzomO4T98rH3x+h2G9cyeuw+ld6hfDrq0dhhK0ETDiJ5fpm8wZAq5tCWWqgcKQMHLd8sa7bwlLMQEWlocVIekV+t1JnVx9uW7vVMfCMhCIhRgzEC4HmhCIWVjESegsl9I0F1cSJZFKxtGMAw1x77lUxABAQmCaQUGI4bs5+eGjTG85rW1/bjbmzpkVe67+nNwvR5Uvvy6iBQe6R8E9AAAzTmN+rOYFLb3nKSQaoxKpm0hh5YLi++mTBnes7klxqpQjTP+5PAbRCFuAbL2yASw+qQ42iTRWdXX2YPXNPj7tJkQWouukYWzcLzjgYqaS3QXReNWCaFJJAkIhL+M5pB+GG32we03n257/7g6Z7tSSw7snXMa2lAbNnTAXBUNW/ZtjH0ZtWsd+Hp3i+d/aMqXYls2i7QiQxVrWuXSMVebW2JJ0G3Ax3kHus16d7IvHqW73OCiavmvjvu56BYVBXgLcysaFJZeRrSb+knLhnGKpu4upVz1a15DzMugX23ZapQjMsGCaNVAEcG4SYgQdsI7l09RYsXXg0enqz+On5RzizvdvWbkVDXAK17GI2UYihqUHGgR/zNoh20i0LfnpBN+3g5xjO89DAk4du0GFB0ymNMs772QbHODUmJExpUpDJak5rPMYHA97q0Xd7c2ib1mSn7KL4TD7se9Nf5OXO8Qfs1YnddcyEJBAk4xJUvbTeDq0tSUdqAwB0w3uu4rJYkdjQpLF0tSDUFSZuv2FQyXklDWCYdQvsu/2aIlEJtLoHOLuTleHMGFnvWkUShgqHYAdVFVkYMUPFn27J/PQjnWdmWFXdtLV/dNsI5TUTlqWie1cGs2fuiUeeecuTXuj2+7tpScWxV7PXgO/cPQAQQBTtrmeyJAybyVdC0My/wmPHuG3Hbqx44CXH+LOq6HKke3bvynjOmxCzg9KiQCBJAq6ffyT3yZeTWkyhCwN33rxuWlUzgGH6x/2aIlFbuS08/WCnSfni5ZswkPX2rqWWt3DI3RiaSQu8+lbvcHdDYaZIAI8BCdKM8fcXVqShgR+wVxdL7nsei79y6LD0QoYs2quKC06b7TS72fa6t23ErWtfwpRG2Vm5SGJs2Ey+EoJmQUVeTMgOBfkLRfJWRZc80Pi0smIkhsYGEZYFqLqJK1Y8zX3y5SRK0gZ96XzVAsDuvPm4bGeiVMIATlT0qhSiEmhluA1rU9Lu/+nOO3f3ri02kyy2InX3uFVkAe/25kZU4PT3F77sa3Nwx4PbMJjTnOBjb9oOPjYlZTQ3KegfUD0B17giYunCoxEvfN+213fj1t+9OOy43U02Mlkdi5Zt9KR2BnUIK/ckzL16TA9q+NkvOmCYtnwwYMtaN41RFG+ssM5v/QMqDJNCNy1ksjpiMWIPNFTFxi1vhy61MWmMvHsZX001ymoXZbmXrQRja8hRKsX8oUsWzEP3rkzk2jKGhduwvt+fd4KtxXrXBv0u7hWpP2DbkJBgUYpkXHSyahRJQF41oOre9EVV9yolNjXIWHmFXeJ/zaqOoaCqbqF/IA9KyTCNdE030b0rgyX3PT9MyXEkMr5gZqIggMZ0bsKahLldlooswsgN5fgffsA0nPXvB5TddcjkiNk5MkwKYlHIUqxivYhjoXxrhFm25gVcc08HLrj+MeTU4YUcYRNUlFVJ2IpGkWKOnzdsPAVZhUKZzKCK+Tc+jivveBpX3v40zr9uQ+i/B3NzVPJ370vn8cgzb6EvnR8+ufA3ci8YoZFudlb3AAwFbNnxWJYF07SgGyYGc3ansVyhgxEwFPTMqXZAl9GSiqOttQldO9NQZAGi6N0xwwTMgC4YsiQgk9WGGXgx5v18UvGamYZCUNP9O7BmHFefd0ToLoxEYQVCXLv5zLZdWLx8U1mvDbZ6ndnejMVfORSiYD9PKQAKSKK98mIZPGExqYy8exYU9oktxtxZ08DuAQL7Bquk0WHFQglFgqqZZb+wg3APLLGC5G+8IE/LyIT8e7DVxA9WPl2xAZ6t2m69fyu+edWjUCTv7bZXc2Lc38nqHuTCd7HMoW07dqMvo8G0gEzWgCwJiMsCEnEJimRbFxb0ZJWsgO1X/85ps7F4+SZ8//an8NN7O5Aco4HN5nXc8rsXAl7xDghZdSjDRIwBlkUDJ1pjGeQmin+Anz61EXdcfjwSsn1uVL28NsF/ve3VnIBbZl4zLGiGWRH56/peH/uIgl+eFWU9ufUdrH1sB274zeaKZ/v09GYddcBK5Oq6/aHuPGx30+OmkH+Pzu6+odz0CgXe/au2h//ypuf1ra/txh5N8WG9RYNwpxgGaZyv2/S65/2fP2o/fKK9Baph4tbfbYVF7aYx7LyzQGhjUoIiC0gP5qHptNB+0YQokGF5434Mk8IwbcslxoCYEAOlcNIlg1BkEapeWclhdxwjqYg4Zd7HsFdzEn0Z1VNHUc6Uxq6daacdJaiG517pGfaeSslfTyojHxXJ4eZUHDP3aUZWDa9590hUY7BzB0GZr5n5K8P2yY9Uoh8mfimNLx67Pza98A4saq/iPt6+R2BvUX+gNag61l9Z+dCmHZ5tf2TPRixb84LTFlEUCDTdxOPP/wMD2aFAqGlS7NWcAPGUN9nGOKYbthRGbGSDL4sEkihgMD/66kgUgKxqDwx2kDh8Z4J7BZ9XTdzzh785r8UIoEgxT+VwObBlEuzj1HQTjQnv90piDE0NSkX6G0wqIw9EI+MipxpQNdNRDqz0qiIqgx1LdQwbd4m+KBBccOrsihxzkJTGssVH47Kf/wWWRfGDO55BzmUY04NeXZeg6lj3hMBdWam5Zs9NCRF9GRWZQRUqkxMwKfSsjnv+8DdPKCCn6li0dKPzPsa5/3EANN3C7BlT8W5vDtf96jlkssH58YosOlkqgJ0PfspR++NPz74J06QQRQLDoNAMC/2D3oHgops24gdnzXWadIQBm9QYRn7YYBWLEZxzyoFlN7bufsWSGMO7fTnP6188Zn+cetwMnidfj/jzk688qzpiYdUe7CpZfewWaTNM6mnIHDZuKY2catiG3fFDUyhSzDHQpkk9gXB/dawsxYoqbzYlFYDaUgiiIODeh192ipv8CAIQlyVougHNoNCM4TPwXzz8CrLq0Mph4ZmHOOqWgD0DZq4oAtvtwwKwlgU8sHFoZWFRYlftUt1Jz3Rz7S+fw5TGsWvETISFpx+MTE7Ddb/c7HnetCjmzppW9u36+xUTX5T9D0+9gVOPm1HWbRYj9KucEHIygOUABAB3UUqvDXubUcafnwyKuk8d9FPp6mO/SFtmUHNSDytJ18408i5p3rgsenzCkq8a1N+/lhUd+fHLVlyzqqOogQeAVEMc137nM4VGMsNn56KAocGlsHKYsfcemNIgFxqIiFCZ2B3sIOKlX/tnAHaf03v/sN2zsjBMCkLs/dQDVgO6MX6NmLHir6a9Yf6RuPKOp53KV1mMoXtXpuypvP7V8rYd3iIxzbAq5qIN1boQQgQAtwI4EcDbAJ4jhKyjlP5t5E+GQyS0a0ZJowubap4Ddxl9pauPZ7Y1oykp4/3+vJN6WIrW+nhwF4KxGXdcEXHRlw/G9b9+znlfwhf48wesR+psxVZmO3cPDMuBB4DmJhmGYSGnmQAo3u3LQTeH3peQY8jrFii1UyZTcREEhtOEe/HyTcjrBuKKAIA4Bh6wYxysKnevlgRW/n7bsO0P5OwiIMB2mc3/0kEYyOtY+9gODOa00NJ5/dW016z6K5KKBFVTnX135/mXqsHvxr1anrHPHmiMCxjI2+e8KTmURlrrPvnDAOwoNPQGIWQ1gFMAVNzIR0W7pq21yZkRNTXImNlWucYd1TwH7m03xKWKxyP8s3mWehhU8l9O/FWuTISMHXNTUgG18kW1TJihePWtXk+2hn9gZAHa63+9GWxxIMaAr332k/jYPnvYwnQFd0tvWoWqmZ5tX3jaQVi+5gVHL2cwp8GyAEoNLFq2EaZJC3rwgEWHDLwoEEeGOKfaDbuDiMsCZElAr24XBP3yT69gxWXH46jZH3GKoBYt21i0UflE8VfT5lTDmVjJYgynHTsT9/5xu/P+9GD5q1Bzqn1szMAnZDsL6Zp7OipyH4Yd2v4IgH+4Hr9deM6BEHIuIWQzIWTze++9F9qOuCPs6QG7UrDSsB87q+pOSXglB5pq1gm4t50Z1HDBqbMrUvjihqUexmXBaZN3/nUbQsudz6kG1nd026sH3cL7/Xl092ScXHBWs5CMyzBNiitWPF10H/zZGqyo6dW3etGXzuP86zbgx3c94+kWZVjAuqfewMy25mFuHkUW8NPzj4AkCtB1Cyt//xIUSYAs2ibBtODouwzmDKi6ndPd1CAj1SA73zOlUXE6jPndUW4IIfivUw6EJHrz+93pvO/353HV3c+W9bdgWk2NCTtVtDEpISGLiMsCUo0Kjjzow2hKDh2PaVLcve7lsu6DvZoY+l1ymoW+jFqx+7DqzmBK6UoAKwFgzpw5oYl/u4NvlV6uMzq7h/zxuqGhuydTUUmD1pYk4pJYlYwe//m/9f6tWLbo6Iq6jtzSFkvuex4/u/evQ9kWRWbHE90/tnLpH8h7X/Bd4WOtWfBna3TvymDZmhcwkNMgi4LHuAsx20gDcOIPM9ttHRW2omhrbcKFNz7mpD1qGQ1CDEjGJchSDAM5r4Fz53QDCEx99QeALYs635PJ6lixdquTQ59Q7Hz5vZoTiEsiLNPOvpmIhvtIuLWaFEkApUBW1ZFQJCxZMA9xRcSiMw6BapjoeT+LX/7xb2WtH2GZdO5mLm4qkc4b9p31DoB9XI/3LjxXcYot1yuaYeIfwirYz4J1TMppekWFyRgJRbRn76uYyyCP+Tc+DtUwK+o6Yttwl+LL4vCslb503qOlMt79YysXpiEuCsSeARN4/LBjrVnwZ2uAwFkZmb7io69/9pN46MnX0ZtWPWqSzFXU2pJEx/ZdnvRNAIVqWR0JxTvrlwrnZ/rUBuccBgWthwUbX9/tycjJuWb5H2RUXH33swWNfAJRjKEhoRQaYpdvAuKR1DCpk92jGxpee/sDrFj7kuO+XLJgHh54YgeYSFyp++B3UV729Tn4+W9fdAbWSqXzhn1XPQdgBiHko7CN+xkAvhLyNovCgm+ZQoekSle8OrOpQc32x1ewkbY7AAVqVKU7j99lkCtoqVeyGCynGnYmhYtvfm4WTjiszSPDO/+mx13qiePbP38dBMuMue3+rbh61bNQJAELTj8EB+5vS/gy6eGRfNF+AwrAk3lDKcVAVkdTg4zPfuaj+Ng+ezgTGqYmmWpQsGTBPKc9YrECJ93wBm4Xn3kI7lr38ph8yAlFdOIcM/beAy0pBelBDY0JEbpBoRfSNSng5ObbaZwmJEEoe0qxV78/Bn1wKLvnpc73PHGOcvcB9sqbA1OnJLDisuOdxuyVSucN1chTSg1CyIUAHoWdQrmKUrp9lI/VLUyVrhrZLa0tSafPpqZbSA9qFYnsu3EPco1JCYSQijb1cKfTxQgQi8XQlJTQNq3J876gVMex7p97G4ok4JKvzsGMffZAx/ZdGMhqUHULqmbh6lUdaEkp9jnI604P0CAD53YbuQcav9F3X1cs/pAeUD1ukI7tu5zBXowBZ5z4Cax78nWkC6mNzU0yTAuO+0eRBfSlVWSy2pgGZP/sFSAgBEgP6oiNkkmmFrpZlVsJ0p2htGjZRvRn8jAp8Mizb0E3LI9+TDnrR4JWaQlFxEWnH4xrf/kcdKMyHoXQ73BK6R8B/DHs7YwFVvnI3DUT7WRfCtUqQnLrjVMA1/3quXE1KS4H/kEOqGxDcX93IEIt9A+ouGZVh8cl4/Ytj7fc3ZuyZ+HmNS9AFGP2dn1Vpf0DKgTB7piUV83AxtEjZUT5ryX33+74g7tD1uwZU52WdIYFPPz0m7jm/COw4a//wCf2bcGh/9SKvGrgopueQE7VoUgx/HbD30eUhHAPQl4pZFu/gbmsAoQsHYJcZqXA9mlKo+w0E29OxbF04dGF86kHNgopJ0GV5UwBlMUm6sEnHyn8xSUT7WRfi7RPT6ExKcOyhmZ2mRDSxUbC3SyFba+SAx77/U0jD92kTnCStYJjAcqunekJt38LTNnT4OnpyjAtgFILshgrGnQspaMZ852zgZX54kWBOL7pvoyKBTdtBAXw/556w+lvcPPFx+Cim57wNBEBgHM+f8Awo+UehJYsmOe5xwBgoLAKKGbjW1IKFn/l0LK5adw9a1lRGOvd0NOb9dYHKFKo179/IHZLbMhizEk/DZP6tWoBDKsMvKdj0rQD9M/sBrJaxZoWANVvlgIMySxfeMNjTuUlk+ViAUrmPpnowJ9QvA0wmKHLDGpOFagQs1vB6aadKfP1f/skHnh8R6Drqhxicmx14jRu8fni2SOLAk9t/T/8+1H7OVk//veueOAlaIbpuJcAeAYhv18bgDOjvuTmJ51G4wxZjGHxmYdi9ozSq4/9xXbuql+LAk9ufQcnHtY+4VVaOfD/njPbm0MvUJxURh7wdoeptuxwpXHP7DZueRt3r3u5InLDOdXAQ5teH9YshWm6VJLunozjfwaA//zsJ/Db9Z2FWbQOEJQcDGYNMNjsuXtXBqph4rb7t2IwpzuGnxn1Ew9rx4mHtQfe6OUSk3O7qmTRbiStauaw4CurOmXpttSinlk489Uz91JTUh5W2FbMjXTn909EZ1efI3+cydqGdq+WxLCetWMxfO73ABhWbGeZFjRj6PjWPrYDJx7WjiUL5lWt/WZQAD3sJuaTzsgzoqLEWA0SioijD9kba9Z3olzpYsVwL50ZMWLL8FYFn8/gI1MbYRgsy8NygoOs4GiiuGfPzJWxdOHRjkZKW2vTMHdQsQFlvHGcIAPpn0H+9Pwj8NwrPfjd+k58UMgiam6SceD+U5300VyhaG/hGZ/C0tVDUs1Ma57Ftq781twRY1vu/Zk9c0/kVAOUWoVsGw3fvnYDJNGW+73l4mMRV8RRK7P9Ae5Tj53hqG5Si+IHZ30amayGZau3OLGQbF7Hth27cctvX0ReMyqygg3CPdHcuOVtZ7/DamI+eSxbAJUMgkZCN8fHWFL3SmVISZFCFgn+/aiP4aRPt6OnN4t4oeqzkvjTWGVJgCAQWAaFJBCAwP5bjJWcZur3p7sLmMKKAxUL1Abp4KQH89ANCjEGyLKI6y48CgA86aOEmGhKyk6TEnc6KFuJMN2aIILqDba9bnexYljUTqdUddvIfferh44ah/AHuN0a8ZpuIdUo4Qd3PO0Z0xVJwPI1L7gKx6rnpnUPUu54TRhNzKNhbeqcqOjmBO3PSKl75cA/gzxl3sdGFNoKG3eGD0upY9kfTQ1yWdM6/cfuLmAKKw40UqDWrYNjGxf7uA0KGHkDl97yFL771UOHpY/ObG8etuo98LKpI05a3Fo6bqPa2dWH5auDWgba5DXDdv2M4kr1B7jdUAC/W//asEDvvx+1H363odNzbNVy07rdZ2IMUBQJpmmFsqqe1Ea+UrNr941HrcpmtIy2P8VS98qF3y1WSrZIuenuyWAwN5TpsPjMQ53smnJcEyzQy/y/cUUMPQ40lkBtMQPpNrCWpSKhSJ7ApD9Fc7RceU+zE9hGFQRQdVdfVzmGnDb0nmRcChxU/DBNmnN/tiFwH555+f+GPbdm/d/tJiaFlUuQIFylaG1JQhEFu8eBBcRBcea/fBzHHrpP2fdp0hr5UsvWxwO78ailVjSjZbT9sUw1FL0QP26DUM0+u+5WerbmS8zpaKQZliPRW65zwKQkBnKa83uzDKewJKbHEmtyZwBl83aKpCzZBUGsMIwQ4vjJx4u/2YkkEiTj9oARV0RH/VIUYzj8gA9jw+YhDcN/PXxfZ5WlaiY6u/uc+IW7P3BPb9YunpJjzmw4mZCRzeuF3rO2+qI7cdWdr2/kDXzvtr9UXL8KGLousupQAsBAzsA9f/gb1j35Rtn3aVIa+VLL1scLu/HWd3Tj3j9ur1gD7dH2Z9uO3fjJPR2waOmBxvFuu9LxiaDZpapZnveMViDm1oV3ywUX61MbtGppn54K3S8/lliTOwPIXTDU05v1FAyO9Rp1r4r99Sh+d+CSBfOc0n63gQeA32/agTUb/g7DoI67JUZs/Rymc6ObFIpkK4k2JmQQ6J5g8v0bXrObdBc+K8QITItCFGKeZiaZECc2I+HXNXITxj5NSiPftTONnGsUrZRv7v7HOyveTLoYCUVEqkH2KBtWSs+mGlW//tllEO4VjV9n3h0o03ULcsHIUEodsbOWVBzLFg3pxQetWqLkrvJnAK1Z3+kpZhrrSiso5jTSQN7Tm/WIlbnxq18CQ4FZAE5KJKvc/kEhs8fdVEUWBUgisYPKAsF//cenMHvGVM8AAABNVVhJskkCW9n7q6AbE9wnXxZaW5IwXKPoVed9OvQZ5bbXd3uUDyvVTHokhtxI9V8r4Da4ybgI06TIqbonj1opaJi0tiQ9jT5YoNYtiWBXyVKYdOgmZcqaed1wcp7dPnlmVKNUn+EfdCYi0lVs4Co2eNmyEbIju92YEAON+2houom2aU1oTsWx9bX3nFWaZVpO/r9hUsyeMRVXrHgaAzkNSUXEV0/+BCQxFor/uxhBlcFPbn0Hd/7+Zec9omDr/JSbSWnke3qzkMSYM4r+4PZncOf3TwzlB2d+4GX3bfE8r8jDe3VWCwoK3bCQr7BgWSUJKkJxF4RJAnD4AdPwlZM+ge5dGccAvd+fd+QO7DhGfsiHnZCg6SYyruKqbN5uVq1qdkMSRRaRVXVPDCZK9RnFRLTGs7oY78DFMpyYm0vVTEeCejxQCnTvytgNeO4byuOPKxJiuom8ZkKWBGz+27vOAJBXTfz6kVcBIBT/dzGC0mkJ9Vp0w6ShCJbV5x09Cu3TU5AlwTHy/YMaOrv7ylJa7aZYlsGUCrf9C4IVYtjyBnZRShiFGFHCb7xYQZhp5qCbwBNb3sGmF97BgjMO8n6wcC+e/8VP4eY1L4BoBuKygKULjwYAXHjDY04VrbuCdDBvONrh7hluJdxVI2WO+V8rddCZyHew6mvAToJIJSVPJbIoMG0f7+diMcByeTgyOW2YHsyC0w/GigdeAmDHBNxuUjeV9Mn7V5I3/Hoz8pphq6ESwKRwgt/lXt2F3f6vdgihgUdQlsGURhm3fPfYSOTJ37VuW2AhRtjbfvWt3rK32psILMVRFIZWVRYF7nhwqBF1SyqOttYmXHD9Y7juV8+hf5DJBZtODOPSr/8zZMm+lSSRIOFbpclSeRUWR4P9vkFtDYNeY4NOKdfkRL8jpxpYuHQjsqqBpCI47grLAq6/8Eg0JiRIgj3OKpJgG0oXK+7fCkWOQYzFoBRa+h24/1TcdulxuPJbc3HqsTOcpuOSQJBKSs5nK+mTZwPhld+aC8OkznUkxABJEiGLMcRlIZRmPvU5ZRuFrp1paK7GCFNCauAxWpZBtXD7lyUBEEURFqWhG6KoFYUBtuvO7VcHgGyh4bKdO38Ienqzw4K27mwkpxlNoYr2Zxd8Bpfe8pQjUFbp332k4G6UAr8AsG3HbvSmbdeYYZp260JqZ9O8tTMDw7Kgm4AixXDOKQdg7qxp+M4NjzkusnRWx0U3bXS+75aLj0BCEdGXzuPG3zyPnKp7NOOXLJjnSEtU+l5MKCIUWfDUCegmoJuFRirUbmjDtWvKgF8v/JaLw5lZR83/yvDn7ccsC3El/JaAUTMwgH0uUg1xfJDJwd0QSRJiTveuvGp4+pACdpDsya3voH1aCm2thaYjhVnoHk1D6YljcZeEcUzFfORRC/zu6h30PGbyz6puSzC7xc9YAeE5p8zC0vteDPy+3296HYd+ohXLVw/JF/g14ystSubGbXtEMQbDsFyZQ+H0nibU7/SqInPmzKGbN2+uyLaiqCVTSZhP/q6HtjnNE6759mdCNbrOTD6rhV6ANt79ckswa7qdUuqeledUHYosQBQEDOa8+uhNSQmqbkLT7Rnj1ecdMabOSWGuZsbjk68mfek8vvHfjxb1ljY3yfjS8R/HkbM/jOZUHDnVwNnX/K8n2D0aezQqkYo1uVMpFy/f5JlgjHb9FIMQ8jyldE7Qa6H55AkhPyaEvEMIebHw71/D2tZEKIcfspZJKCLmzprmdKjRDSu0YijmhwfslnVXn3dEpAx81840ZrY3Y8Vlx+OcUw6EIgvQDDtnfvGyTfhgwM5n1nQLi888BOecciAkcejWyWR1x5WTjItQdbNozMG9mmE5+WEw0vUdpWs/roi48qy5+NbnPonmJmXY630ZDfc+vB2Ll29CXzqP9R3dHgPflBDR3KQEthaMEfv3qKZ8QRDs/Den4liyYB4a4kNxhjDqZ8I+8qWU0htD3saEqdSMJkozJzfuloCiEAvFHxgkH1FtFw0jaFbtlmBWZAF51SvWxcr+G5OSp+4BsI2KbliOznrQsjtq7pJq4j//yxcfg9f+8QGWr97iybRhXcwuuukJDOa9ejsXnHYQmpIytr2xG2v+3Ol5zaJAtoryBWOhpzcL1RiKAYXRKSp6R10hKrVsrqRGznhpn55CQ0JCXjPL7g8spkIYBT88wz2rNvQcfvOnV3DqcTMcfRnW6ANZDXHFnhEuWrYRmayGxoSEH5w9F5pu4vpfbgaFbVTYLPP9/nxgWm5U4zTVIKgQ67BZ0/DzS47D/Y+/hj/95U2nM1WMEOQ1w5ECEAWCVIOMu9a9jMG8PqIUUGYwWtedG3d8LK6Iw5rKl4OwUygvJIS8RAhZRQipbmK4j0osm5lGzgcDKvJauMvziZBQRCw68xAn/Y8VYpQKG0CvWvWsy8DbKXBRmrm2T0/ZgT3YTa0fevINfPOqR/FBJo9la17ADb+240M/OPvTuPOKE/Fubw7v9+eh6RZ60yoUUcDUKQmP68ZDEUdzlNwl1YQZOJb50j495Yh3PfrsWzAt6qRPmhaFppuIywI+NCWOH//X4Vj8lSHdeU0zi26HVRpHBX8a8flf/FRBFdTE4uWbyp5eXNJVRghZDyCoxc/3AawAcDXsS/1qADcBOCvgO84FcC4AtLW1lbI744Ld4JZFPX7Uct54XTvTw7S5o3SxAXYaWapBQWZQdTRASqWYTowghCS9OEESiogLTp2Nn9zb4RTYWBR49Nku1wzTHpwSijhMOfL1dz7A3q1NHtcNAZygbRhpufVE0Krm1bd6PW0KhVgMummvNP1ZMn3pPPTCNWZRYI9GGQM5HY0JW7YiqxpIxqWq16W48fdyAOyirKF7JWICZZTSE8byPkLInQD+UOQ7VgJYCdjZNaXsz0SglOKDjIprVnWU3Z3iSPoGaHNHBVYQxFxKi5dvwm2XHgcA43IpFFMhtH3+BjTdQjZf/q43pZBTDdy2dqungjJGgJM+3Y6NL7wDankHvpltdlep9KAKw6BON6KWlIIfnD0XiiQEtvXjFMdf/eu+diQxhlx+aJIkCjFHAwgAXvvHB07fYArgvC9+Cr3pPFqa4rjzoZchGLaQ3ETkksPC7UGwTDrUUxjhFc2FdvSEkOmU0p2Fh18A8PJI7680rBRad6naheUzLkWbuxJ092SQVVmGiN29ZzxyuCOpEDrqgNnoBRrd5fBiDPi3z+yHU4+bgbgiOhIGbAnNBr5FZxyC7p4M7v3DdidnfiCnQxEFKAWDEpVBrBZxy2Bfs6rD4/EazBtYtGwjVlx2PABg+RqvHtSK+7d6AraA7YLs7OobsQdtJXH74FlKbpbooRbNhXnE1xNCDoI9yL4F4LwQtzVu/AVBYehGMCMyXm3uSpJTDY+4U0NCGnebutFUCKMaaPRnuvznZ/8JAHD+dRvQP6C6dGi8A19DXPK4aBoTEpau3oLBvB6ZSt5aJqGI6E3nA0MaGVdcizV5AYCGuFiYqA0hSzE0ROy38a+cJVHAlWfNDbX6NrSjpZR+LazvLgduf6C7CUQ5T3QtpMt17Uw7LfBEgeCCU2djZlvzuPZ7tOOshn78WAjyCW/tfM9RoATstDZ/f1bLpLjs6/8MhUUFAVxzT0ekKnlrnbmzpmHF2q2OO4bh1lt3V63fMP8ofO+2vzi/XVNSwsIzDoEiC5H7bXp6s8jrhq2JTyl27h4MVbBw0la8Voqo5sgz/BWHrPHFePU9on6cY2Xra+/hytufdh5/63OfxMf23gNtrU1YtGyjY0Q+NCXupJs6DUUGh2Qyqlk6Xy/0pfN4aNPr+MNTb0LVTchiDD88+9OOeqX/msupBrbt2G272XTT0apxuwurPZNn+82uF7cXoZR9q0rFK8fGPYuNivqim57eLERxKG0kk7WLTq65twPLVr8w5u+pl7RAFlyVpRhaUgoe2vQ6rrr7WSxathEXnDo7MN2ULcETihRaGtxkgqUYxhURp5/4cTQ12GmWqUbFk7Hkv+ZYtzPVsLXk0wMqundlIldlzVaQ55xyoFOMGGZ6dfWPeBIQRfVFhi3QpTgzVEm0s2Hy2tiWt0Ez+Fqe1bOGFl0700hnNVx9t93Mgp2fVIMSGER2L8GjVvRVS4y3laAflhqdV70FflH7LRKK6KmuDtOdW1t3YI0SRfVFBjNqbJlrVxVangKVYgTdkAAiO6CNFTZD3Prae57nFVnwxHHchqcW4i+1wHhbCfphBX5X3f1spBMegMpVP9fW3Vej1IIB6E3noeqmo0jpLjophv+G7Ozqw873BzGQ1ca8Eogyba1NiBG70CZG7MfMoPt7wHK5gvJQjnuFFfhFMW3XD5tQMBdVGNcOvxIrQJQNANPW8TdXGM3AA8OboixdvQUDOQ26PraVQNTp7sk42R0WtR83p+Lo7Oob1gN29sw9I5tFVEtUqx1hNQnbnRvto69hasEvzbR1+geCmyuMhvtmUnUT19zTAVUbWgnMnTUt8udgJNx52ACGtGj86gzRUmuoefyD5UTupVoacMN259benRcCTDGxXC3B/COzk8YVMT+1X1snoUjjNszu5SbTAmpISGiZEseiZRsjU4QyXnKqYStQFmhJDWV2sAwc5q6pdlP2eqZY3KeWJw9+wnbn1v4ZKgFm3Jfc97xTvejOf54o/pG5Y/uuSAZe/W0Qr59/JBYv34RMVkVcHp7vHZSXzB4zmBbQdb94zin7j9IxjxW35IHd6/VQT6oey8CpF0MTVfz3EksQyGkGmpIyli701nSwz9TS7xK2e6k2zkIIsBlCelD1qCWysulSDJJfn2L2jKmRDLz6L66unWlksipUzYKqaZh/4+O45GtznJtnpNXJwjMO9mgBMQMfluhS2PhnV35FyVpyB9Qy/rjPstVbPJr9F97wmKNX05JSQAipydVjmNdTbZyBECgmh9tUBoPk16e4YsXTWLJgXiTVCd3ulvSgBjEWgwr7nPQParjq7meRalCw8IyDR1ydgAINcQmmYcG0KGRJCFV0KWxqLXhXr/jjPv991zOe17OuorP0oAZCAN2goJZac6vHsJi0V65/hnDBabOhSELZDJK/OKanNxvZCy6nGjj/ug1Oxgghtqyrbth9TQeythF3z2znzppmF3IUHrOONiRGsEeDjMVfObQmjbsbPluPBu6JiLtwr7lJBiHEcbU2JSUniSDMnsW1Ru3egSUS9kzNaUpiUiQUAa/94wO0tiQjqWliu2mGOjiJAsE3P/dJPPD4DgzmdMdd4T9fflcPU9zMEmOo0QaHUyZYLMSdJAHAeQwA16zqQF4zIUsCenqzkbzfKs2kvgsrMVOzqIW+jIaVv9+Gux7ahnt/eFLkLjw7ACs7M6SEIuGo2R/BUbM/go7tuzyNGtzny33+aqHgi1P7JBTREShjuAXLGpMywpYJqDW4CmWBcuW1s+9heeN51Ztr/Z3TZuPkw/ctcW/Lj1/BryFhtyYbaxCr3GmoHM5EqIX6lDAYSYVy8pyFEShXxZm/f6PtrrGgGazjvK2THUX8Cn6W5WpNNkoKJPPpu8v8OZxqwOMow+FGHuWrOPN+D3Dlt+ZCkQVMaZSx9bXdmDtrWuRcNW6cnrRmHqJIoEgiYsQYcembUw2s7+j2lvl392H2jD0D38/hcCoLN/Ionz/ZHWxtSEhom2Y3dd6jKR5JF42fhCLip+cfgfOu3QDNMJHLm7jyrLk4cP+pgTLCgJ073z+Q935RdDyAHM6kpyQjTwj5EoAfA/gnAIdRSje7XvsegLMBmAAuopQ+Wsq2woRlirij9CVB7MrPWizr3/rabrAwDYWtTuk28G63FsudZwVQgH36WDolh8OpPqV2hnoZwBcBbHI/SQj5JIAzAMwCcDKA2wghQonbCpW8auDG3zyPa1Z14ILrH5tQZx93GuFAVkcma7tuwuz6Um7mzpqGWGGgc8cQcqqBjVvetmWEC8fEcudlcegykqUYenqz1dh1DocTQElTS0rpKwBAyLDp7ykAVlNKVQBvEkJ2ADgMwDP+N0YBvxrjRDv7+AusADh55rWSztWciuPeH57kpE42p+JDPSmzKnTdgizG0JCQnNx5f1/NWjlWDmcyEJb/4CMAnnU9frvw3DAIIecCOBcA2traQtqdkfGrMcZlcUKGyl8gxL671tK5mlPeGAILKKuaLXdgUQpKKTq7+9DW2oQVD7yEvG4gLrNep7VzrBxOvTPq3UgIWQ8gKO/v+5TSh0rdAUrpSgArATtPvtTvmwhOVomlIqFIuPniYyZsqPwpXPWQzjWUdaNCMywYJkVvWsVVdz+LhCJC1UyomgUCk1cZcjgRY1RLRik9YQLf+w6AfVyP9y48F2kIIZDEGOJ8JurBHZheunoLMoMatIKuDYGBhGK7prirhsOJHmFZs3UA/ocQsgTAhwHMAPDXkLZVMl070xjM6Y4Y18Ytb4+5O9JkgZWTM+2Qpau3YCCrIa6IuOq8T+PvXR945A84HE40KCm7hhDyBULI2wAOB/AwIeRRAKCUbgfwWwB/A/AIgO9QSs3i31RdWluSUDV791Tdwt3rXp5whk09wJoK51TD+bsvncerb/UCsLVCli48GglFQl41sHDJRty97mUsXr5p0p4zDieqlJpd8yCAB4u89hMAPynl+ytF966Mp36HyQNPRj1qdyaNIgkQBQGDebs5tyzZzblvu/Q4R0pZLejxT+ZzxuFEGb62BoYVQMliad2M+tJ5TwpiLeHtDmUB0J3X3Ia8tSWJuCSCWhS6MTQAcJ88hxMtuJGHtzFzY0IqqeFFXzqPb171KCwKrFi7NZLSwiPRPj2FuCxC1bTA1xsSEqY0yrjopieQU3XEFRG3fPco9A9oNZcqyuFMBvgdifI2Zu7YvgtWwfdjUftxLejWMBKK3cDbli/QPa9JAsHnj9wP3735SaQH7UGAEBP9Axp30XA4EaVUWYO6geW3T9TAswDl7BlTA2UBaonmVBy3XXoc9mhUoEgxxAigSDGYFsVvHn3VMfCAXTjW2pJ0ArUcDida8Jl8GfALd91++fE1IS08Es2pOFZecYLjf+/Yvgt3r3u54JcHJJEgGZdw/fwjsXj5JmSyKuKyvQqo1WPmcOoRPpMvA24d+YGshnd7c9h3eqrmi6rY6qY5FcfRh+yNxqSMuCzgQ1Pi+NE5h+POK05E/4DmBGr7B7SCr57P6DmcqFDbVqjMBLUOG0s7Mb8w2dLVW2pOYng0ijU+9wdq85rB0yg5nAhR+9anTAS1AAQwrK1dkMF2G0BPb9cSukxFkaDWaglFxA3zj8LiZZugmxZPo+RwIgZ31xTwu1w6u/rw57924f3+PDTdstvadfUV/XxCKShXUqAhLiEuT4688Zxq4IoVT0M3TcRlgatQcjgRg9+NBYJcLulB1fumEbpG+Zt4X3nW3Ann2keVINeVW4aYq1ByONGjfixQiQS5XFhbO0EgmNKgYGZbs+czzOix7JOBrGZnn1BAkYS6M/B+dxZbvZSjPy6HwwmH+rFCZYD5nHOqgcaEDGqp0HQLAiHwN7/yd0uSxBh0w6pbN43bneWONRQLyHI4nGjAffIBJBS7w9HnjtwPiixAMywM5nSnT6u736mqWbCorV4piTGc/fkD6iajxg2bsQcNYqUWknE4nPDgd2UAOdXAomUbkR5UYZrUY9j8M3hFijkCXQ0JCdOnNlR790OBz9g5nNqE36kBbNuxG+/3553Hx//zPjj9hI8joYh49a1eJ9CoSDGcc8qBmDtrGrp3ZbB09RZcc09HXeXHuwlKoeRwONGGu2t85FQDy9ds8Tz38F/ewqJlG5FTDY/boqlBwdGH7I24ImLn+4MYzOlOCiZz7XA4HE41qa+pZhlg2TV+MtmhYKPbbQHA476p18Arh8OpTUpt//clQsh2QohFCJnjen5fQkiOEPJi4d/tpe9qZWifnkJTUoEsetNpmNoi4A00uvPE6znwyuFwapNSLdHLAL4I4I6A116nlB5U4vdXHBZg7Ozqg2qY0HQTt699CapuYvHyTcMMuD9PnDcA53A4UaLUHq+vAADxJ5HXAcvWvICBnAZFEqDqZtEepizdkrX74waew+FEiTADrx8lhLxACNlICDmq2JsIIecSQjYTQja/9957Ie7O2HEX/uRVA3FZLOprz6kGFi/fhLv/38tYvHwTl9nlcDiRYtRpJyFkPYCg9kbfp5Q+VORjOwG0UUrfJ4QcCuD3hJBZlNJhKSeU0pUAVgLAnDlz6Nh3PTz8LpglC+ahpzcbmB9erBKUw+FwosCoRp5SesJ4v5RSqgJQC38/Twh5HcBMAJvHvYdVIKjwp5joFtdu4XA4USYUBzIhZE8AvZRSkxCyH4AZAN4IY1thMdbCH14JyuFwokypKZRfIIS8DeBwAA8TQh4tvDQPwEuEkBcB3A/g25TS3pL2tMKwxtxj8bFz7RYOhxNVSs2ueRDAgwHPrwWwtpTvriY51RjWEQoAn61zOJyag1urADq7+xztmvf789j2+m6sWPvSMC11DofDiTpcuyYIX47PS53v2Q1BRtClGY97h8PhcCoFn44GMLO9GR+aEkd6QIVpUfzpmTehmxSKT3K4s6sPIEBbaxMWL9/EZ/ocDidycEsUQEIRseKy47Fxy9u466FtUHULACAJMSxZMA8AcP51GxyXTlNShm4UqmJ5rjyHw4kQ3F1ThIQiOjLCDN2wG1V37Ux7mnxnsrb8AVeg5HA4UYPP5IvAmnRffd7hWLBkIygFdMPClEYZ/+gZgCTEoBtDksQXnX4wUg0yz77hcDiRglujAFiLPyZQpkgC8poJSYzhkpufRP+g5rxXEmNINcg4cP+p3LhzOJzIwa1SAG49GmpRJBQJlFIIAsFgXnfeJ8SAb/3bLJwwt40beA6HE0m4Tz4Af4u/6+cfCUUSkM2bMMyh/ErTAtY+8VoV95TD4XBGhk8/A/Dr0XR29yGd1T3vEQUCw6QYzOk8m4bD4UQWbuSL4BEoCxBAVmQRomnxbBoOhxNpuLtmDMxsb0Zzk+x5zjBMKLKAJQvmcX88h8OJLNzIF8EtU5BQRFz8n3MguZp7q7oFVbPz5jkcDieq8CloAO4USiZTMLOtGVMa48gMqtANC7LEC584HE704UY+gGIt/VgwtrUlWbQdIIfD4UQJbqECKNbSzx2MLdYOkMPhcKIEN/IB8JZ+HA6nXii1/d8NhJBXCSEvEUIeJITs4Xrte4SQHYSQvxNCTip5TysMb+nH4XDqgVKza/4M4ABK6acAdAL4HgAQQj4J4AwAswCcDOA2QohQ4rY4HA6HM05KMvKU0v+llLJWSM8C2Lvw9ykAVlNKVUrpmwB2ADislG1xOBwOZ/yUM0/+LAB/Kvz9EQD/cL32duE5DofD4VSQUR3OhJD1AKYFvPR9SulDhfd8H4AB4Dfj3QFCyLkAzgWAtra28X6cw+FwOCMwqpGnlJ4w0uuEkG8C+ByA4ymlTOXlHQD7uN62d+G5oO9fCWAlAMyZMydAJYbD4XA4E6XU7JqTAVwK4POUUnd9/zoAZxBCFELIRwHMAPDXUrbF4XA4nPFDhibfE/gwITsAKADeLzz1LKX024XXvg/bT28AWEgp/VPwt3i+7z0AXRPcnakAdk/ws1GDH0s04ccSPerlOIDSjqWdUrpn0AslGfkoQQjZTCmdU+39KAf8WKIJP5boUS/HAYR3LFyFksPhcOoYbuQ5HA6njqknI7+y2jtQRvixRBN+LNGjXo4DCOlY6sYnz+FwOJzh1NNMnsPhcDg+at7I14sSJiHkS4SQ7YQQixAyx/X8voSQHCHkxcK/26u5n2Oh2LEUXquZ38QPIeTHhJB3XL/Fv1Z7n8YLIeTkwrnfQQi5vNr7UwqEkLcIIdsKv8Xmau/PeCCErCKEvEsIedn1XAsh5M+EkNcK/zeXY1s1b+RRP0qYLwP4IoBNAa+9Tik9qPDv2xXer4kQeCw1+JsEsdT1W/yx2jszHgrn+lYAnwXwSQBnFn6TWubYwm9Ra2mU98K+B9xcDmADpXQGgA2FxyVT80a+XpQwKaWvUEr/Xu39KAcjHEtN/SZ1yGEAdlBK36CUagBWw/5NOBWGUroJQK/v6VMA/KLw9y8A/Ec5tlXzRt5HvSphfpQQ8gIhZCMh5Khq70wJ1MNvcmHBNbiqXMvpClIP598NBfC/hJDnC0KHtU4rpXRn4e9dAFrL8aU10fYobCXMSjGW4whgJ4A2Sun7hJBDAfyeEDKLUpoObUfHwASPJfKMdFwAVgC4GrZxuRrATbAnFpzqcCSl9B1CyF4A/kwIebUwQ655KKWUEFKW1MeaMPJhK2FWitGOo8hnVABq4e/nCSGvA5gJoKqBpokcCyL4m/gZ63ERQu4E8IeQd6fcRP78jwdK6TuF/98lhDwI2x1Vy0a+hxAynVK6kxAyHcC75fjSmnfX1LsSJiFkTxacJITsB/s43qjuXk2Ymv5NCjce4wuwA8y1xHMAZhBCPkoIkWEHwddVeZ8mBCGkgRDSxP4G8C+ovd/DzzoA3yj8/Q0AZVkR18RMfhR+DlsJ88+EEKCghEkp3U4I+S2Av8F243yHUmpWcT9HhBDyBQC3ANgTwMOEkBcppScBmAfgKkKIDsAC8G1KqT9gEymKHUut/SYBXE8IOQi2u+YtAOdVdW/GCaXUIIRcCOBRAAKAVZTS7VXerYnSCuDBwj0vAvgfSukj1d2lsUMIuQ/AMQCmEkLeBvAjANcC+C0h5GzYarxfLsu2eMUrh8Ph1C81767hcDgcTnG4kedwOJw6hht5DofDqWO4kedwOJw6hht5DofDqWO4kedwOJw6hht5DofDqWO4kedwOJw65v8Dmo1WDKH31UQAAAAASUVORK5CYII=\n" }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "import matplotlib\n", "import matplotlib.pyplot as plt\n", "\n", "plt.plot(df['x'].values, df['y'].values, '.', markersize=5, label='Training data')\n", "plt.show()" ], "metadata": { "collapsed": false, "ExecuteTime": { "start_time": "2023-04-13T15:47:05.743439Z", "end_time": "2023-04-13T15:47:05.855554Z" } } }, { "cell_type": "markdown", "source": [ "We can clearly see the original function, and we can observe that there is more variance towards higher x. In general, we don't want a model that assumes independent noise, and we don't want to specify much prior knowledge since it is only available rarely. Let's specify a JPT that focuses on predicting y accurately." ], "metadata": { "collapsed": false } }, { "cell_type": "code", "execution_count": 7, "outputs": [ { "data": { "text/plain": "JPT\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 \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 >\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 \n \n >\n >\n \n \n \n >\n >\n >\n \n >\n >\n \n >\n \n >\n >\n\nJPT stats: #innernodes = 62, #leaves = 63 (125 total)" }, "execution_count": 7, "metadata": {}, "output_type": "execute_result" } ], "source": [ "from jpt.variables import NumericVariable, VariableMap\n", "from jpt.trees import JPT\n", "\n", "# Construct the variables, soften up x via blur\n", "varx = NumericVariable('x', blur=.05)\n", "vary = NumericVariable('y')\n", "\n", "# enable a focus on the parameters for y with the targets keyword\n", "jpt = JPT(variables=[varx, vary], targets=[vary], min_samples_leaf=.01, min_impurity_improvement=0.01)\n", "\n", "jpt.learn(data=df)" ], "metadata": { "collapsed": false, "ExecuteTime": { "start_time": "2023-04-13T15:47:05.848221Z", "end_time": "2023-04-13T15:47:05.855976Z" } } }, { "cell_type": "markdown", "source": [ "Since the data is 2D we can get a visual representation of the predictions of the JPT. Let's plot the predictions and get an idea of the distribution. We will plot the expectation of y for every datapoint on the x-axis and confidence intervals that explain 95% of the variance." ], "metadata": { "collapsed": false } }, { "cell_type": "code", "execution_count": 8, "outputs": [ { "data": { "text/plain": "
", "image/png": "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jBkzNE+thikTDIZUPJ58/P5K9PrG3ZbjxInTerp3787s2bMjskK0NfEVSAewY8cOTjjhBGw2GwaDgVNOOSUs8M7tdqMoCjabLar6at26dQwY0J9evbphMMDcuXNZvnw5RqMRl8ulqZv0er2WDTcWTz/9NFdffbUWha4oPi644FxycgZw5MgR5syZw4QJE5g1axbbt28H4OGHH+aWW27hjDPO4KSTTuL1/7xOuj2d66+5nv379zPz7Jm88sorvPPOO9x7770IIdi/fz8nnXQSI0eO1ISZTmfCZhvG44+/oqWa//Of/wxAXl4eQ4cOZcGCBQwfPpyzzjoLl8sFwN69eznjjDMYPXo048aNY9++fQD84x//0Np58MEHY97z7373O4YPH87pp59OWVkZoNY/mThxIqNHj+bCCy+kqqoKRVG45ppruOWWW5g8eTL9+vXTVhmNpcK/6667GDZsGKNGjeL3v/99M96IOHHal3POOYdly5Zx/fXXN3rchx9+yB133MFPP/3Uquv8IgXIxo3TI34KC58BIBBwRt1fVPQiAF5vecS+phgxYgSrV6+moqICp9PJxx9/TEFBgbb/+eef59RTT2XRokXU1NREnF9YWEhubi4u1278/kpyc3MpLCxk6NChZGRkMG7cOM477zz27t2LoigxvS5AXQ2NHz9e+9tgsGO3j0Cvt/LnP/+ZsWPHsnnzZv7+97/z29/+VjvuwIEDvPzSy3z28mc8+L8PUrOlhkdueYQe3Xrw0f99xN13301ycrK2errlllu44oor+Omnn8KCJL/44hv27t3LunXr2LRpEz/++KPmp75nzx4WLVrEtm3bSElJ4b333gNUNd2iRYv46aef+O677+jRowcrVqxgz549WjubNm2K6u9eV1fHhAkT2LZtG6eccoomXC+88ELWr1/Pxo0b6d27N0899ZRWj6WoqIhvvvmGDz/8kLvuuguApUuXaqnwX375Zb777jsAKioqWLp0Kdu2bWPz5s0xV35x4nRFli5dyj/+8Q/WrFnTqvN/kQKkoxk6dCh33nknZ511FmeffTZjxozRVhk33ngjmzZtYuXKleTk5HD77bfHaCW6Ef2xxx5j06ZN3H777dx333389a9/5cEHH+TSSy9l8eLFjfZLUXxhtcq/+eYbrrzySgBNJeZwOBBCcPrpp5NYk0iWNYuM1AxKK0rR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\n" }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "# Mesh the input space for evaluations of the real function,\n", "# the prediction and its MSE\n", "xx = np.atleast_2d(np.linspace(-20, 15, 500)).astype(np.float32).T\n", "\n", "# Apply the JPT model\n", "confidence = .95\n", "conf_level = 0.95\n", "my_predictions = [jpt.posterior([vary], evidence={varx: x_}, fail_on_unsatisfiability=False) for x_ in xx.ravel()]\n", "y_pred_ = [(p[vary].expectation() if p is not None else None) for p in my_predictions]\n", "y_lower_ = [(p[vary].ppf.eval((1 - conf_level) / 2) if p is not None else None) for p in my_predictions]\n", "y_upper_ = [(p[vary].ppf.eval(1 - (1 - conf_level) / 2) if p is not None else None) for p in my_predictions]\n", "\n", "# posterior = jpt.posterior([varx], {vary: 0})\n", "\n", "# Plot the function, the prediction and the 90% confidence interval based on the MSE\n", "plt.plot(xx, f(xx), color='black', linestyle=':', linewidth='2', label=r'$f(x) = x\\,\\sin(x)$')\n", "plt.plot(df['x'].values, df['y'].values, '.', color='gray', markersize=5, label='Training data')\n", "plt.plot(xx, y_pred_, 'm-', label='JPT Prediction', linewidth=2)\n", "plt.plot(xx, y_lower_, 'y--', label='%.1f%% Confidence bands' % (confidence * 100))\n", "plt.plot(xx, y_upper_, 'y--')\n", "# plt.plot(xx, np.asarray(posterior.distributions[varx].pdf.multi_eval(xx.ravel().astype(np.float64))),\n", "# label='Posterior')\n", "plt.plot(xx, np.array([jpt.pdf(VariableMap([(varx, x_), (vary, 0)])) for x_ in xx.ravel().astype(np.float64)]),\n", " label='Posterior')\n", "\n", "plt.xlabel('$x$')\n", "plt.ylabel('$f(x)$')\n", "plt.ylim(-10, 20)\n", "plt.xlim(-25, 15)\n", "plt.legend(loc='upper left')\n", "plt.title(r'2D Regression Example ($\\vartheta=%.2f\\%%$)' % (confidence * 100))\n", "plt.grid()\n", "\n", "plt.show()" ], "metadata": { "collapsed": false, "ExecuteTime": { "start_time": "2023-04-13T15:47:05.884262Z", "end_time": "2023-04-13T15:47:07.704512Z" } } }, { "cell_type": "markdown", "source": [ "As we can see the expectations and variances predicted by the JPT characterize this dataset well and the variance even adjusts to the different x values. Impressive!" ], "metadata": { "collapsed": false } } ], "metadata": { "kernelspec": { "name": "python3", "language": "python", "display_name": "Python 3 (ipykernel)" }, "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.6" } }, "nbformat": 4, "nbformat_minor": 0 }