Skip to content

Instantly share code, notes, and snippets.

Show Gist options
  • Save Alexon-Abreu/95c17cd10713b9af201f290e44520ee6 to your computer and use it in GitHub Desktop.
Save Alexon-Abreu/95c17cd10713b9af201f290e44520ee6 to your computer and use it in GitHub Desktop.
Created on Skills Network Labs
Display the source blob
Display the rendered blob
Raw
{
"cells": [
{
"cell_type": "markdown",
"metadata": {},
"source": [
"<a href=\"https://www.bigdatauniversity.com\"><img src = \"https://ibm.box.com/shared/static/cw2c7r3o20w9zn8gkecaeyjhgw3xdgbj.png\" width=\"400\" align=\"center\"></a>\n",
"\n",
"<h1><center>Non Linear Regression Analysis</center></h1>\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"If the data shows a curvy trend, then linear regression will not produce very accurate results when compared to a non-linear regression because, as the name implies, linear regression presumes that the data is linear. \n",
"Let's learn about non linear regressions and apply an example on python. In this notebook, we fit a non-linear model to the datapoints corrensponding to China's GDP from 1960 to 2014.\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"<h2 id=\"importing_libraries\">Importing required libraries</h2>\n"
]
},
{
"cell_type": "code",
"execution_count": 1,
"metadata": {},
"outputs": [],
"source": [
"import numpy as np\n",
"import matplotlib.pyplot as plt\n",
"%matplotlib inline"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Though Linear regression is very good to solve many problems, it cannot be used for all datasets. First recall how linear regression, could model a dataset. It models a linear relation between a dependent variable y and independent variable x. It had a simple equation, of degree 1, for example y = $2x$ + 3.\n"
]
},
{
"cell_type": "code",
"execution_count": 2,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "iVBORw0KGgoAAAANSUhEUgAAAYcAAAEGCAYAAACO8lkDAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjMuNCwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8QVMy6AAAACXBIWXMAAAsTAAALEwEAmpwYAAAv8UlEQVR4nO3dd5hV1bnH8e87FAGJhWY0MkMRC5aLATVKLEFsxIZiHYxGI4khiuSqV8WCKCYaSzRGI3Zlgool1ogNWyw4KB0EBAZrBCuI0ua9f+xz9Dhzei+/z/OsZ+bss/c+aw+63rO6uTsiIiKRqgqdARERKT4KDiIi0oyCg4iINKPgICIizSg4iIhIMy0LnYFs6NSpk3fr1q3Q2RARKSlTp05d7u6do71XFsGhW7du1NfXFzobIiIlxcwaYr2nZiUREWlGwUFERJpRcBARkWYUHEREpBkFBxERaUbBQUSkBNXVQbduUFUV/Kyry+79y2Ioq4hIJamrg2HDYNWq4HVDQ/AaoLY2O5+hmoOISIkZNer7wBC2alVwPFsUHERESszSpakdT4eCg4hIiamuTu14OhQcRERKzNix0K7dD4+1axcczxYFBxGRElNbC+PGQU0NmAU/x43LXmc0FDg4mNntZvaJmc2KODbazD4ws2mhNKiQeRQRKUa1tbBkCTQ2Bj+zGRig8DWHO4EDoxy/1t37hNKTec6TiEjFK2hwcPeXgM8KmQcREWmu0DWHWP5gZjNCzU6bRjvBzIaZWb2Z1S9btizf+RMRKWvFGBxuAnoCfYCPgKujneTu49y9n7v369w56kZGIiKSpqILDu7+X3df7+6NwC3AroXOk4hIpSm64GBmm0e8HAzMinWuiIjkRkEX3jOzCcA+QCczex+4GNjHzPoADiwBfluo/ImIVKpCj1Y6zt03d/dW7r6lu9/m7ie4+47uvpO7H+ruHxUyjyIiuZLrZbczUXTNSiIipS6ZQj+87HZDA7h/v+x2sQQIBQcRkSxKttCPtez20KHFUYtQcBARSSCV5p9k91qIt7x2MdQiFBxEROJItfkn2b0WEi2vne3Ne1Kl4CAiEkequ67F22shsgayciW0bh3/s7O5eU+qFBxEROJIdde1WHstDBr0wxrIp58GPzt2jP3Z2dy8J1UKDiIicaS661qsvRaefLJ5DWTtWmjfHsaPj715T6GGuyo4iIjEkc6ua9H2WohXA4kVUKBww10VHERE4sjWrmuJaiCRAWXs2KBPY+jQ1Po7sknBQUQkgWzsupZsDSRydFQs+eioVnAQEcmDZGsg0UZHNfVdLWT58vhRJAMKDiIieZJMDSRRraBdO7hy1Jdw8cXQoweMGJGLrBZ2VVYREfmh6urYlYFtuq5iQv8b2PncK+Czz+DII2HMmJzkQzUHEZEiEq1vYpO2q5nyqxuYt7YnO9/7f7DbbjB1KjzwAPTunZN8KDiIiERRqPkFkX0TLVnHWR3v4L0Nt2GXu0+HrbeGl18OJk389Kc5zYealUREmgiPGAp3DIfnF0B6I5VSVXtcI7UtJwb9Cu+8A/36wfibYf/9g97sPFDNQUSkiVTXU8oad3j88aBWcOyx0LIlPPQQTJkCBxyQt8AACg4iIs2kup5SVkyeDP37wyGHwIoVcM89MH06DB6c16AQpuAgItJEsuspZaVfYsoU2G8/GDAgiD433wzz5gXTo1u0SOOG2aHgICLSRDKzmaPt83DCCcGX/KQCxYwZcNhhwcij6dPhmmtg4cLgpq1aZfuRUqbgICLSRDKzmaP1S7gHP+MukLdgARx/PPTpAy++CJddBosWwciR0KZNrh4pZRqtJCISRW1t/JFJifofIjuwR40Cb1jKFe3HcPSqO6lqswGcey6cfTZsumn2Mp1FqjmIiISk0oeQzEY8DQ1wwan/ZWTDCObTi8Er7+EfVcN58C+L4PLLUw4MeZ174e4ln/r27esiIpkYP969XTv3oHEoSO3aBceTPT8ybcJn/ic7z1fSztfSwm/hFO9Kg4N7TU3u85cMoN5jlKuqOYhIScj1t+ZU5zZE9kvA96NN27OCUVzGYrpzjv+ZRziM7ZjLqdzKewTVjXSGxOZ77oWCg4ikLV/NHNFGBmV7R7R05jaEV1l1h7rbvmXMptfyLj25jAtZ0XcfBm0+jVr+yUJ6/eC6dPaGzvvci1hVilJKalYSyb9cNHPEUlMTvekmleaZ8eOD882Cn03zmfZnrFnjfvPN7ltuGVwwcKD7669/95nZ+htl42/QFHGalQpesGcjKTiI5F8uCqtYzKJ/llly1ydTSKdckK9bF7zZs2dw8h57uE+eHPWz4wWlZOW7z6HgBXs2koKDSP5lWmCnItNAlOz1SRXkjY3uDz3kvv32wU369HF//PHgeI5lK9CExQsO6nMQkbQku8RENiS7/3IssdrlGxp+2FcSd6c2d5g0CXbdFY44Atatg/vvD/ZV+OUv87L+UTb2sk6WgoOIpCXTAjsVye6/HEu8gJVU5/Yrr8A++8CBB8KyZXDHHTBrFhx1VNAbX4YK+lRmdruZfWJmsyKOdTCzZ8xsQehncU4fFKlwmRbY6Xxeut+aowWySDGHhE6dCgcdBHvuCfPnww03BPsrnHRSsJx2GSt0yLsTOLDJsXOB59y9F/Bc6LWIFKF8NnNkoumchGh+0PQ0Zw4MGRJssjNlClxxBbz7LgwfDhtskPP8FoOCBgd3fwn4rMnhw4C7Qr/fBRyezzyJSHkKB7JYAaK6mmABvBNPhB13DPoXLr44OHbOOfGrHmWo0DWHaDZz948AQj+7RDvJzIaZWb2Z1S9btiyvGRSR0hWtialHmw95eqvfwzbbBJ3MI0fC4sUwejRsvHFB8lloxRgckuLu49y9n7v369y5c6GzIyIlIrKJqRPLuXmjs3hnfU+2fvEWOPXUoPnoqqugU6dCZ7WgirFH5b9mtrm7f2RmmwOfFDpDIlJeag/+ktr51wQb7KxcFey6dvHF0KNHobNWNIqx5vAocGLo9xOBRwqYFxEpJ6tWBZ3L3bvDmDFwwAHBkNS77ko6MOR12ewCShgcLDDUzC4Kva42s12z8eFmNgF4DdjGzN43s1OAPwP7mdkCYL/QaxGRqJIqrFevDoah9uwZbLKz++7BMNUHHoDttkvps3K9AGCxsGAGdZwTzG4CGoEB7r5daN7B0+6+Sz4ymIx+/fp5fX19obMhInkWLqwjl7Ju1y5ivsW6dXDPPXDJJUFJvvfeQY90//5pfV63bsFtmqqpCUZClRozm+ru/aK9l0yz0m7uPhz4FsDdPwdaZzF/IiJpibXHwQXnNwajjnbYAU4+Gbp0gaefhsmT0w4MUIBlswsomeCw1sxaAA5gZp0JahIiIgXVvFB2fsnjPLS0LxxzDLRqBQ8/DG+8Afvtl/H6R/lcT6rQkgkO1wMPA13MbCzwCnB5TnMlImUjlx24kYXyPkzmP/TncQ5h05YrYPx4mDYNDj88a4vi5XM9qUJLGBzcvQ44B/gT8BFwuLtPzHXGRKT05boDd+xY2GuDN3iGgUxmAF15j2GMo9e6uXQbVUvdvS2y80Eh+V5PqpBidkibWYd4F7p702UvCkYd0iKZq6sL2vCXLg2+kY8dm3mhl9MO3Bkz4MIL4dFHWV7Vmcsaz+dmfse3tPnulB90Tksz8Tqk4wWHxQT9DNHqY+7uRTNbRMFBJDMJR/2kqaoqqDE0ZRYs1peW+fODCWv33hssbXH22TBiBN12aF9WI4nyIa3RSu7e3d17hH42TUUTGEQkc7FG/URdxjoF6XTgxuyjWLoUfvMb6N0bHn0UzjsvWP9o1Cho376iRhLlQ1IzpM3sCDO7xsyuNrPDc5wnEcmzXBWsqXbgRuujuODU/zLvgBHQq1cwZ2H48GCl1Msvh02/3+6lkkYS5UMyM6RvBH4HzARmAb8zs7/nOmMikj+pFKypjD5KtgM3fM+hQ7+vwWzKZ1zOecz6pgdbPf13JrT+FQ9fuQCuu466Zzdrlod0RxJVynIYKYu1uXQ4AbMJ9U2EXlcBsxNdl8/Ut2/fVPfVFhH/fsN6CDatD76vB6ldu+Yb2I8fHxxPdF6qeYi8Z3u+8gsY41+wka/HvI7jfCvmf/dZp50WOw/h5zELfibKVy6ep5QA9R6r7I/1xncnwENATcTrGmBCouvymRQcRFIXrWAMB4hYBWs4kDRNNTXp5yN8zzas8pFc7Z/QyR38XxzqOzK92We1aJG9POTieUpJvOAQs1nJzB4zs0eBjsBcM3vBzCYDcwFtoCBS4qJ1Qrt/P7on2iilTPsmojXhfNiwlmHczAJ6cQ3/yzT6sBuvcziPMJOdmt1j/frM8pDMNerEjr+fw1V5y4WI5F06BWN1dfR5C8l0+jYdLvtew3qeP3kC71RdTPfGRbzK7pzAPbzAL+Lep0WL6AEinY7nTJ6n3MUbyvpivJTPTIpI9qUzuieT5SO+r6k4g3mIGezEbWtOYIVtxBEbPE5//vNdYGjXDk47LfpnDRuWvSUsKmk5jJTFam8KJ+BnwJvASmANsB74KtF1+UzqcxBJXbqdsal2+oYZjb4/T/kU+rmDz2FbH8L9XsX6mPdM9Xg6snmvUkOcPodk9nOoB44FJgL9gF8Bvdz9/NyFrNRohrRIenKxZEZUr7zCGwNHsdvql1hCDaMZzXiGsp6WmsFcQPFmSCe1h7S7LzSzFu6+HrjDzF7Nag5FpCBqa3O87tDUqXDBBfDUU+y08Y8Z2XgDN679DWvYAFATTjFLZob0KjNrDUwzsyvNbCSwYY7zJSKlbM4cGDIE+vWDKVPgyitp++G79LtjOJvXbJC3FU01wS19yTQr1QCfAK2AkcDGwI3uvjD32UuOmpVEisSiRTB6dLCXQvv28Mc/wsiRwQJ5eZarxQTLSVqrspYSBQeRAvvgA7jsMrj1VmjZEk4/Hc45Bzp1KliWym2/51xIq8/BzO5396PNbCahLUIjuXvz2SkiUlmWLYM//xluvBHWrYNTTw36GLbYotA50wS3DMXrcxgR+nkwcEiUJCJlKmFb/ZdfwkUXQY8e8Ne/Bvs1z58fBIkiCAygVVozFbPm4O4fmVkL4DZ3H5jHPIlIATVtqw9v7QlQe/jXcMMNcMUV8PnnQafzmDGw3XaFy3AMY8dG73PQ6KjkxB2tFBq6usrM8t+bJCIFEW3NpXWrVvPO6TdAz55w7rnws58Fw1QnTowaGIphlFAl7fecC8nMc/gWmGlmzwBfhw+6+xk5y5WIFExkm3wL1vEr7uZiLqHm86Ww997w4IPQv3/M6+PWPPJcMOd8HkcZS2aewxPAhcBLwNSIJCJlqLoajEaO5j5msz23cwqf0IUTukyCyZNjBoZoG/aEZWPLUcmvhDUHd78rHxkRkSLgzp1DnqDDNRewk09nFttzOA/zTNvDGHeNgUW/LNqcgqY0Sqi0JLNNaC8ze8DM5pjZonDKR+ZEJI+efx722IN9rj6Ebl2+5oxOdfRhOtNqDmfcLRa3eSZaP0VTGiVUWpJpVroDuAlYB/wCuBu4J5eZEpE8euMNGDgQ9t0X3n8fxo1jo/fmcP2y41nnLWJu/BMpUa1Ao4RKTzLBoa27P0cwm7rB3UcDA3KbLRHJuRkz4NBDg5FHM2YE8xUWLAgmsrVqldKt4tUKNEqoNCUTHL41sypggZn9wcwGA11ynC+RklIMQzeTNn8+HHcc9OkDL78cfKVftAhGjIA2bdK6ZaxNc8aPj73lqBS3eHtIbxb69UygHXAG0BcYCpyY64yZ2RIzm2lm00J7SogUpXBnbENDsGVOeOhm0QWIhgY45RTo3RseewzOOy8ICuefHyySl4F05hSUVECtQDEX3jOzj4GZwATgQXf/Mq8ZM1sC9HP35YnO1cJ7UkhFv8Dbxx8HX+3HjQte//73QWDoUrgGAK2YWhziLbwXr1npJ8BVwJ7AfDP7l5kdY2Ztc5FJkVJVtAu8ffZZMJu5Rw+46SY48URYuJC6ftfSbdcuBf3GHm10k+ZCFJeYwcHd17v7JHf/NdCVYNTS4cBiM8vHf04OPG1mU81sWNM3zWyYmdWbWf2yZcvykB2R6IpugbcVK+DSS6F7d7jyShg8GObOhXHjqHupa1E0gRVtQJXvJNMhjbuvAeYAc4GvgN65zFRIf3f/KXAQMNzM9mqSp3Hu3s/d+3Xu3DkP2ZFylI1271idsfkauhl+hnb2DZd2uIZvf9IjWDF1wACYPj04oVcvoHi+sRddQJXm3D1mAqqBs4G3gHeAS4Dt4l2TiwSMBs6K9X7fvn1dJFXjx7u3a+cefIcOUrt2wfF07lVT424W/EznHukYP959o7ZrfBj/8PfZwh382ar9/N+XvBH1fLMfPm84meUnv5H5ztbfXtIH1HuscjfmG/Aq0EDQ79Av1nm5SAR7VP8o4vdXgQNjna/gULkyKZRraqIXlDU1uclrsmI9U9PjdXev8zM73u0L6eEO/gp7+N5MjvsM6TxzrgJfoQKqfC/d4LA3odFM+U5AD2B6KM0GRsU7X8GhMmX67bNYvkVHivVMp50WebzRB/Ogz7be7uBv0ccP4gmHxoTPkOrfTN/wy1tawaGUkoJDZcr0m38x1hxi5alFiyAo7M9T/iZ93cHnso0fxX1urM9ZTaAY/0aSPfGCQ1Id0iLFKNMRL4XuSI4mVt53X/8yL7I3kziQTiznJO5gB2YxkaNp+r9xomeorQ3mXzQ2Jp69rFFFlSuZVVm7J3NMJN8yHfGS753CkhkZ1TTvP2UqT3IQL7MXvVjAcG5gG97hLk5ifZQV97P9DBpVVMFiVSnCCXgryrGpia7LZ1KzUmUqpfbwZPMaPm87ZvtEjnQHX04Hf/BnV3rHtl9HbeJJpq8k3c7fUvobS+pIs0N6W+BI4F3giIh0EjA71nWFSAoOlSsfI16y8RlJt92/+66/+/MTfB1V/iU/8ms2Hu33jvvyB/mIFRxi9QNkWsBrVFH5Sjc4HEYwK/rT0M9wuh7YI9Z1hUgKDoVXrgVItr45JxwZ9f777r/7nXvLlu5t27qffbb78uVZyZM6lSWWtILDdyfA7onOKXRScCiscm56yFbBGus+O2/5ifsf/+jepo17q1buw4e7f/hhwvulEoyLcciuFId4wSHmqqxhZtYZOBXoRsSe0+5+cqb9HdmiVVkLq+hXJc1AVVVQlDZlFoz2SVbTVUg34kvObXk1Z7W8llZrVsGvfgUXXxz8MbOsnP99JDPprsoa9giwMfAs8EREEgHKe7hjOqN1oo1KCo+M2rbr15zLn2mo6s556y6l1SEHwaxZcMcdOQkMUJxDdqUExKpShBMwLdE5hU5qViqscm7TztaM4n/e8a37dde5b7ZZcHDQIPe33srrc5Rjn5Bkhgz7HC4DBiU6r5BJwaGwyrnPwT2zGcUtWOsnc6u/16I6OLD33u6vvJKfjIskEC84JNPnsIJg8bs1oWRBhcM3ymGFJiXqcyi8urpg2eelS4Mml7FjK3NHr3AfhdHI0dzPGC5iaxYwhV3Y9emxMHBg0GEhUgTi9Tk0n2LZhLv/KPtZknJTW1uZwaCp6q7Ojksf5zIu4H+YwUx24HAeZlr1YSzZT0FBSkcyy2eYmQ01swtDr7ua2a65z5pIiXn+eepb7c5jHMqGfE0t4+nDNJ5pdzhjL1dgkNKSzGilG4HdgeNDr1cCf89ZjkRKzeuvw777wr770mn1B7x+yjgOrJ7LBKula02LnK7XFE82drmTypWwWQnYzd1/amZvA7j752bWOsf5Eil+06fDhRfCY49B585w7bXwu9/xszZtWFjgrDWdVxHeKxrU/CfJSabmsNbMWgAO302KS2H6j0iZmT8fjj0W+vSBl16Cyy6DRYvgzDOhTZtC5w4onr2ipXQlExyuBx4GupjZWOAV4PKc5kqkGDU0wCmnwHbbweOPw/nnw+LFQYnbvn1Kt8p1k085T0yU/EgYHNy9DjgH+BPwEXC4u0/MdcZEisbHH8MZZ8DWWwel+BlnwKJF1PUeS7edN025gA83+TQ0BMNew00+2QwQ2odBMhZrAgTQIV6KdV0hkibBSU58+qn7//1fMKOvRQv3U091X7rU3TOb+JePGeXlPjFRsoN0JsGZ2WKCfgYDqoHPQ79vAix196LZDU6T4CSrVqyAv/4Vrroq+P3442H0aNhqq+9OyWQxu2wt5peIJiZKImktvOfu3d29BzAJOMTdO7l7R+Bg4KHcZFUkN5Jq4//mG7j6aujRAy66CAYMCEYkjR//g8AAmbXp57LJJ/I5R40KAkIye0WLNBOrShFORNkSlDhVkUIkNStJPAmbWFavdr/pJvcttgje3G8/9zfeiHvPTJqGctXko6YkSVW8sjyZ4DAJuIBgP4caYBQwKdF1+UwKDrlTDqt5xirIu1evc7/rLvfu3YMDe+zhPnlyUvcsxq03y3l1XMmNTINDB+A64O1Qug51SFeEcvkm2nwntEY/ggd8Fr2DAzvv7P7EE+6NjSndt9gCp3Z8k1TFCw7JDGX9zN1HuPvOoTTC3T/LbuOWFKNymUj1fVu+cwBPUU8/HmQIG7RshIkTob4eBg1KebXU2tqgLT9em34+l7DQ8FXJpmQW3tvazMaZ2dNm9nw45SNzUli5nEiVaqGZSSE7diwM3OBlXmRvnuIgOvAZw1rfyZTbZsKQIcFNcyAb8xlSeW7t+CZZFatKEU7AdOA0YFegbzglui6fSc1KuZGrNuxs7a6WVDPOm2+6H3CAO/jHLTb33/N336p6dV6agDL9+6Xz3MXW1CXFjQz7HJqNViq2pOCQG7nqc0i10Ez2/MiCceDms7xhlyOCEzt0cP/LX9y//jqzjKco2T6AWAW6Opgl1zINDqOB3wOboxnSFScX30RT7ThN5vxwIOvOu34XJ/h6zL/kRz598MXuX36ZeabTkEzhHi8Aq4NZci3T4LA4SlqU6Lp8JgWH4hUZXDp2DFK0Ai/TmsOuP3nfb+K3voaWvoo2fgVneweWp/QtO9uBMJmaV7xnU81Bci2j4FAKScGhOEUrHGOltPscPvnE/Y9/9G/YwFfTyv/GcP8xH6b8LTvaZ4S/uWcSKBIFnHi1g3IZSizFK9OaQzuCSXDjQq97AQcnui7TBBwIvAMsBM6Nd66CQ3GK9c032jfhRAVe00L2vnFfuF94oXv79u5VVX7/hid5DYvT/padKK/hQjnbtYtEtQN1MEsuZRoc7iNYsntW6HVbYFqi6zJJQAvgXaAH0Do0Yqp3rPMVHPIj1YIq1rfijNrPV650/9Of3DfdNLjB0Ue7z52b0rfsaM+RTF47dsz+N3nVDqSQMg0O9aGfb0ccm57oukwSwZ7VkyJenwecF+t8BYfcS6cQS6bmkHT7+bfful9/vftmmwUX/vKX7m+91SyPTfs3mgayWM8Rry8ka88Qg2oHUiiZBodXQ7WFt0KvewJTEl2XSQKGALdGvD4BuKHJOcOAeqC+uro6R3+68pZKoZRO52iiPoekviGvXet+663u1dXBRfvs409d9J+4+Y4XyGI9R7RaQbJJo4ekVGUaHPYDXgSWAXXAEmCfRNdlkoCjogSHv8U6XzWH1KVaE0h3WGUy3+ajWr/efcIE9169gg/adVf3Z57x8fc0ZjQCKFEHcPjapufFq11o9JCUqoxHKwEdgV8S7OXQKZlrMklqVsq9XE1Ey1hjo/sjj7jvtFPwATvs4P6vf323KF4y+YgXANKZUBcOZOofkHKTjeBwBHANcDUwOJlrMklAS2AR0D2iQ3r7WOcrOKQu1ZpAXgrGZ59132234OZbbeX+z38GNYgU8x0vABTjUtsihZJps9KNwNPAr0PpKeDvia7LNAGDgPmhUUuj4p2r4JC6dPsQclIwvvaa+4ABQQa6dnW/5Rb3NWvSzneiAKACXiSQaXCYDcFe06HXVcDsRNflMyk4pK4omkimTXM/+ODgw7t0cf/rX92/+eYHeUy3aUcBQCSxTIPDQ0BNxOsaYEKi6/KZFBzSU7ACdN4892OOCf7z22QT97Fj3VesaJa3WEFABb9IdsQLDha8H5uZvQjsAkwJHdoFeA1YBeDuh8a9QR7069fP6+vrC50NSaShAcaMgTvvhLZtYcQIOOss2HTTZqd26xac3lRNTbCxjohkzsymunu/aO+1TOL6i7KcH6k0H38c7Dhz883Bbmunnw7nnw9dusS8JJcbDYlIYgmDg7u/aGY1QC93f9bM2gIt3X1F7rMnJe2zz+DKK+Fvf4PVq+GUU+CCC6Br14SXVldHrzloy0uR/Ehmm9BTgQeAm0OHtgT+lcM8SalbsQIuvRS6dw+Cw+DBMG9eUHNIIjCAtrwUKbRkNs8dDvQHvgJw9wVA7PYAqQhR9zb+5hu4+mro0QMuugj23RdmzIDx42GrrVK67wknBN0SHTsGLVE1NTBuHNTW5vChROQ7yfQ5rHb3NWYGgJm1BOL3YktZq6uDYcNg1arg9YcNa3jj17cz+PRLaff5h7D//nDZZbDLLhnd99NPg9rCPfcoKIjkWzI1hxfN7HygrZntB0wEHstttqSYjRoVFOBVrGco9zCPbbl+7WnMXtUdXngBJk1KOTBE3jfSqlXBcRHJr2SCw7kEi+7NBH4LPEmw+Y9UqPcaGjmSB5jJjtzDr/iCTTiIJ9lt9cuw995p31cjlESKR8Lg4O6NBB3Qv3f3Ie5+iyeaHCFFJWr/QDrc4d//ZlrrXXiAozCcIUykH/U8xUFU11hG+Yw1EkkjlETyL2ZwsMBoM1sOzAPeMbNlZqZ5DyUk3I7f0BCU7Q0NweumASJhAHnpJdhzTxg0iO4bf8aw1neyA7N4kCE4VVkZSaQRSiJFJNbUaWAk8AzQPeJYD2ASMDLWdYVIWj4jtowXqpsyxX3//YODm2/ufuON7qtX52wJCy2NIZI/pLN8hpm9Dezn7subHO8MPO3uO+cuZKWmlJfPqKsLOlyXLg2aT8aOze7InKqqoLhvygwaG4Pfoy1V0ZvZXN32Qg785mHo0AHOPReGD2/+1V5ESla85TPi9Tm0ahoYANx9GdAqW5mrROEmHLNgPH+iJp9MJNOOH9nh24N3uZsTmMmO7PHNszB6NCxeDGefrcAgUkHiBYc1ab4ncUT2AUDzb/XZHrqZTDt+dTX8hPf5B79lHttyJA/yF85mry0Xw8UXw0YbZS9DIlIS4gWH/zGzr6KkFcCO+cpguYk2lr+pbA7drK0NZhbX1MSYabxsGf/e7o8sZCt+zR2MYxg9eZcx7a7g7D93zF5G4sjaaCoRyZ5YnRGllEqpQzrWNpfZ2Jc5sjO3Y8cgxezY/fxz9wsucN9wQ/eqKl+450ne/yeL894RXBSbDolUKDLdQ7rYUykFh1ijhzItGKMVslHvu3Kl++WXB5vsgPtRR7nPnZvtx0xaOtuVikh2xAsOycyQliyK1gcQWraqWZNPKs0tiZqr1q1azYLTr4eePYO9FPr3h7fegvvvh223zeSRMqJZ0SLFKZmF9ySLwgV/ouGrTRehC49kirxHpFiFaQvWcSJ3cRFjqPl8KeyzDzz8MOy+e1aeJ1Pat0GkOKnmUAC1tcFWl42Nwc9ohX2qi9A1LUyNRo7hXubQm9v4DR/zY2q7PAPPP180gQE0K1qkWCk4FKlUm1u+L2Sdg3mMt9mZezmOb2nDoTzCgLavM+iagd+3YRWJhKOpRKQg1KxUpFJtbqmthc1mPUeHay7gp2te592qXpzabgK3rzyarjVVjMvyzOtsqq0t3ryJVCrVHLIsW2P2U2puee01GDCAgX8eyE83+wBuuYWeq+dwy4pjWe9VMZuuRERiUXDIomRXQE1GUs0t06bBwQfDHnvA7Nlw3XWwYAH85jfQsnCVQk1qEykDsca4llIqxDyHaKuH5m3M/rx57kcfHdx8k02CeQsrV2b5Q9KjSW0ipYN0VmUtJflelbXpMFMImnxizTOIXAE1Iw0NcMklcNdd0LYtnHkmnHUWbLJJFm6eHdFWeIWg5rNkSb5zIyLxxFuVVR3SaYg1zLRFC1i/vvn5GY/Z/+gjuPxyuPnmoK1mxIhgCe0uXTK8cfZpUptIeVBwSEOsgm79+uY1iIzG7H/6KVx5Jfztb7B2LZx8Mlx4IWy5ZZo3zD1NahMpD+qQTkG4ozVWS1y40zjjMftffQVjxkCPHvCXv8ARR8DcuUHNIQ+BIZMOZU1qEykTsTojSinlo0M66YXtmlyT9Cqp7u6rVrlfdVVwIrgPHuw+c2bOn61pnjPtUNZWnyKlgVJalRUYDXwATAulQYmuyUdwiLeaarQCMKVgsnq1+003uW+xRfDm/vsHezcXgFZJFakc8YJDsfY5XOvuVxU6E5Fi9TOYRR+Fk2iV1FWr4MLz11O7vu77rTh//nOYMAH22isbWU6LOpRFBNTnkLRk9mKOFK8wNRo5kgd4fOmOcOKJwVDUJ5+El15KKjDkcpJZqs8pIuWpWIPDH8xshpndbmabRjvBzIaZWb2Z1S9btiznGUq1ozV6YeocyL+ppx8PcBStWzpMnAj19XDQQUktipfNWdjRqENZRIDC9DkAzwKzoqTDgM2AFgSBayxwe6L75WuGdCodrU37HPbkRX+Jn7uDL6Kbn9r6Tq+7e13Keci0TyCZZ1CHskhloJQ6pH+QOegGzEp0XrFuEzp+vPvBP37T/80B7uAf2eZ+Gjf6VtWr0y5wY+1BbZZcfrS0hYiExQsORdesZGabR7wcTFCjKD2zZ1P74BE89vEuHNixHq66ih9//S43+mksaGid9iqpmfQJpLqBkIhUrqILDsCVZjbTzGYAvwBGFjpDKVm4EIYOhR13hOeeC9ZCWrQI/vd/g/WQ4kimozmTPgGNRBKRpMWqUpRSymWzUtLt7++95z5smHvLlu5t27qfc4778uUpfU6yTT7p9gloDoOIRKJU+xySTdkIDtEK3KQK7P/+133kSPcNNnBv1cr9D39w//DDlD8/HwW3+hxEJFK84KAlu4m+BLdZ/DWUlkz7Aq6+Gq69Fr75JpivcNFFQXtQGqqqon9e1pb7DqmrC/oYli4N+inGFvH2oSKSW1qyO4FoHbWxAkM7vub4huuh+5XwxRdw9NFBv8K222aUh3ytZqr9mkUkGcXYIZ13yXTItmY1p3M9i+jB5ZwP/fvD22/DffdlHBhAk89EpLgoOBD/23kL1nEyt7GAXlzPCOZVbc+ki/4Djz8OffpkLQ9J7RktIpInCg5E/9ZuNHIsE5hDb27jN3zIFhzf5Vnev/t5Drhkj5zko7Y2WMSvsTH4qcAgIoWi4MAPv7WDcyiP8jY7M4Hj+ZY2DGn9KO/e8xr//O++KrBFpCIoOITUHu8sufVZfLfdeYTD+FHLbzief3JY9TQG334ItUMTL4onIlIuNFoJ4NVXgyFLL7wAXbvCrbfS48QT+WdL/XlEpDJVds1h4UI4+OBg5NGcOXDddbBgAZxyCigwiEgFq+wSsKoK3nwT/vQnOP102HDDQudIRKQoVHbNoUcPeO89OPfcog8Mudz9TUSkqYoODnV10G3r1kVf4OZ69zcRkaYqNjiUUoGrfRhEJN8qNjiUUoGrfRhEJN8qNjiUUoEbb/c39UWISC5UbHDIZLvNfIu1KN+gQaXTNCYipaVig0MprYIaa1G+J58snaYxESktFb3ZT6lvfJOvDYJEpDxps58YSn3jm3xtECQiladim5XKQSk1jYlIaVFwKGHaIEhEckXBIQsKOZxUGwSJSC5UdJ9DNoRnWodHDYWHk4IKahEpXao5ZKiUZlqLiCRLwSFDpTTTWkQkWQoOGSqlmdYiIslScMiQhpOKSDlScMiQhpOKSDnSaKUsKPWZ1iIiTanmICIizRQkOJjZUWY228wazaxfk/fOM7OFZvaOmR1QiPyJiFS6QjUrzQKOAG6OPGhmvYFjge2BLYBnzWxrd1+f/yyKiFSugtQc3H2uu78T5a3DgHvdfbW7LwYWArvmN3ciIlJsfQ4/Ad6LeP1+6FgzZjbMzOrNrH7ZsmV5yZyISKXIWbOSmT0L/DjKW6Pc/ZFYl0U5FnU3IncfB4wLfdYyM4uys0HR6wQsL3QmCqASn7sSnxkq87lL6ZlrYr2Rs+Dg7gPTuOx9oGvE6y2BD5P4rM5pfFbBmVl9rF2YylklPnclPjNU5nOXyzMXW7PSo8CxZraBmXUHegFTCpwnEZGKU6ihrIPN7H1gd+AJM5sE4O6zgfuBOcBTwHCNVBIRyb+CDGV194eBh2O8NxaolJWJxhU6AwVSic9dic8MlfncZfHM5h61v1dERCpYsfU5iIhIEVBwEBGRZhQcioSZnWVmbmadCp2XfDCzv5jZPDObYWYPm9kmhc5TrpjZgaG1whaa2bmFzk+umVlXM5tsZnNDa6iNKHSe8sXMWpjZ22b2eKHzkikFhyJgZl2B/YBK2lz0GWAHd98JmA+cV+D85ISZtQD+DhwE9AaOC60hVs7WAf/r7tsBPwOGV8Azh40A5hY6E9mg4FAcrgXOIcZs8HLk7k+7+7rQy9cJJjyWo12Bhe6+yN3XAPcSrCFWttz9I3d/K/T7CoLCMuoyOOXEzLYEfgncWui8ZIOCQ4GZ2aHAB+4+vdB5KaCTgX8XOhM5kvR6YeXIzLoBOwNvFDgr+fBXgi95jQXOR1ZoJ7g8iLfOFHA+sH9+c5QfyayvZWajCJoh6vKZtzxKer2wcmNm7YEHgTPd/atC5yeXzOxg4BN3n2pm+xQ4O1mh4JAHsdaZMrMdge7AdDODoGnlLTPb1d0/zmMWcyLR+lpmdiJwMLCvl++Em7TWCyt1ZtaKIDDUuftDhc5PHvQHDjWzQUAbYCMzG+/uQwucr7RpElwRMbMlQD93L5UVHdNmZgcC1wB7u3vZrrluZi0JOtz3BT4A3gSODy0VU5Ys+KZzF/CZu59Z4OzkXajmcJa7H1zgrGREfQ5SKDcAPwKeMbNpZvaPQmcoF0Kd7n8AJhF0zN5fzoEhpD9wAjAg9G87LfSNWkqIag4iItKMag4iItKMgoOIiDSj4CAiIs0oOIiISDMKDiIi0oyCgxScma1M8fx9srXqpZmNNrOzsnSvO81sSJrX9ok23NPMNjSzT81s4ybH/2VmR6dw/ycTrXwb698hk+eS0qXgIFIc+gDNgoO7fw08DRwePhYKFD8HEgZIC1S5+yB3/yJbmZXyp+AgRSNUI3jBzB4I7fVQF5ptG94TYZ6ZvQIcEXHNhmZ2u5m9GVpH/7DQ8ZPM7BEzeyq0l8LFEdeMCh17Ftgm4njP0PlTzexlM9s2dPxOM7vezF41s0Xhb9GhgvcGM5tjZk8AXSLu1dfMXgzda5KZbR46/oKZXWFmU8xsvpntaWatgTHAMaEJY8c0+dNMAI6NeD0YeAqoMrPnzOwtM5sZ8ezdQnsp3Ai8BXQ1syUW2iskVOuYGtprYViTf4OrQ/d7zsw6R/k3ivpcUobcXUmpoAlYGfq5D/AlwfpDVcBrBN+Q2xCsbNqLYCG7+4HHQ9dcDgwN/b4JwVIVGwInAR8BHYG2wCygH9AXmAm0AzYCFhIsdQDwHNAr9PtuwPOh3+8EJoby1JtgCW4IgtQzQAtgC+ALYAjQCngV6Bw67xjg9tDvLwBXh34fBDwb+v0k4IYYf5/WwCdAx9DrpwiWhm4JbBQ61in0LAZ0I1gZ9GcR91gCdAr93iH0M/x3Cd/XgdrQ7xeF8xN6/rjPpVR+SQvvSbGZ4u7vA5jZNIKCbiWw2N0XhI6PB8LfePcnWPAs3G/QBqgO/f6Mu38auuYhgkAD8LC7rwodfzT0sz2wBzAxVFkB2CAiX/9y90ZgjpltFjq2FzDB3dcDH5rZ86Hj2wA7ECwNAkHw+CjiXuGF6KaGni8ud18TyucQM3uQoAnqaYJAcLmZ7UUQDH4ChPPW4O6vx7jlGWY2OPR7V4Kg+2noHveFjo+PyGdYoueSMqLgIMVmdcTv6/n+v9FY67wYcKS7v/ODg2a7RbnGQ+dHu1cV8IW790kiX5HLcEe7lwGz3X33BPeKfL5EJgAXhO79iLuvNbOTgM5A39DrJQTBEeDraDcJLQo3ENjd3VeZ2QsR1zTV9NkSPZeUEfU5SCmYB3Q3s56h18dFvDcJOD2ib2LniPf2M7MOZtaWoEP3P8BLwGAza2tmPwIOAfBgv4HFZnZU6D5mZv+TIF8vAcdasG/w5sAvQsffATqb2e6he7Uys+0T3GsFwUKEsUwm+IY/nCBQAGxMsIfAWjP7BVCT4DPC13weCgzbEmzjGVZF0HwEcDzwSpNr03kuKVEKDlL03P1bgmakJ0Id0g0Rb19K0BY+w8xmhV6HvQLcA0wDHnT3eg+2r7wvfAx4OeL8WuAUM5sOzCbxdp4PAwsI+jBuAl4M5XcNQSF7Rehe0wiarOKZDPSO0SFNqEnrQYI+lJdCh+uAfmZWH8r7vASfAUF/RUszm0Hwt4psevoa2N7MpgIDCDrJI/OQznNJidKqrFKWQk0u/dz9D4XOi0gpUs1BRESaUc1BRESaUc1BRESaUXAQEZFmFBxERKQZBQcREWlGwUFERJr5f3WoCwW21C6UAAAAAElFTkSuQmCC\n",
"text/plain": [
"<Figure size 432x288 with 1 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"x = np.arange(-5.0, 5.0, 0.1)\n",
"\n",
"##You can adjust the slope and intercept to verify the changes in the graph\n",
"y = 2*(x) + 3\n",
"y_noise = 2 * np.random.normal(size=x.size)\n",
"ydata = y + y_noise\n",
"#plt.figure(figsize=(8,6))\n",
"plt.plot(x, ydata, 'bo')\n",
"plt.plot(x,y, 'r') \n",
"plt.ylabel('Dependent Variable')\n",
"plt.xlabel('Indepdendent Variable')\n",
"plt.show()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Non-linear regressions are a relationship between independent variables $x$ and a dependent variable $y$ which result in a non-linear function modeled data. Essentially any relationship that is not linear can be termed as non-linear, and is usually represented by the polynomial of $k$ degrees (maximum power of $x$). \n",
"\n",
"$$ \\ y = a x^3 + b x^2 + c x + d \\ $$\n",
"\n",
"Non-linear functions can have elements like exponentials, logarithms, fractions, and others. For example: $$ y = \\log(x)$$\n",
"\n",
"Or even, more complicated such as :\n",
"$$ y = \\log(a x^3 + b x^2 + c x + d)$$\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Let's take a look at a cubic function's graph.\n"
]
},
{
"cell_type": "code",
"execution_count": 3,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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\n",
"text/plain": [
"<Figure size 432x288 with 1 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"x = np.arange(-5.0, 5.0, 0.1)\n",
"\n",
"##You can adjust the slope and intercept to verify the changes in the graph\n",
"y = 1*(x**3) + 1*(x**2) + 1*x + 3\n",
"y_noise = 20 * np.random.normal(size=x.size)\n",
"ydata = y + y_noise\n",
"plt.plot(x, ydata, 'bo')\n",
"plt.plot(x,y, 'r') \n",
"plt.ylabel('Dependent Variable')\n",
"plt.xlabel('Indepdendent Variable')\n",
"plt.show()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"As you can see, this function has $x^3$ and $x^2$ as independent variables. Also, the graphic of this function is not a straight line over the 2D plane. So this is a non-linear function.\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Some other types of non-linear functions are:\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### Quadratic\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"$$ Y = X^2 $$\n"
]
},
{
"cell_type": "code",
"execution_count": 4,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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\n",
"text/plain": [
"<Figure size 432x288 with 1 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"x = np.arange(-5.0, 5.0, 0.1)\n",
"\n",
"##You can adjust the slope and intercept to verify the changes in the graph\n",
"\n",
"y = np.power(x,2)\n",
"y_noise = 2 * np.random.normal(size=x.size)\n",
"ydata = y + y_noise\n",
"plt.plot(x, ydata, 'bo')\n",
"plt.plot(x,y, 'r') \n",
"plt.ylabel('Dependent Variable')\n",
"plt.xlabel('Indepdendent Variable')\n",
"plt.show()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### Exponential\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"An exponential function with base c is defined by $$ Y = a + b c^X$$ where b ≠0, c > 0 , c ≠1, and x is any real number. The base, c, is constant and the exponent, x, is a variable. \n"
]
},
{
"cell_type": "code",
"execution_count": 7,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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\n",
"text/plain": [
"<Figure size 432x288 with 1 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"X = np.arange(-5.0, 5.0, 0.1)\n",
"\n",
"##You can adjust the slope and intercept to verify the changes in the graph\n",
"\n",
"Y= np.exp(X)\n",
"\n",
"plt.plot(X,Y) \n",
"plt.ylabel('Dependent Variable')\n",
"plt.xlabel('Indepdendent Variable')\n",
"plt.show()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### Logarithmic\n",
"\n",
"The response $y$ is a results of applying logarithmic map from input $x$'s to output variable $y$. It is one of the simplest form of **log()**: i.e. $$ y = \\log(x)$$\n",
"\n",
"Please consider that instead of $x$, we can use $X$, which can be polynomial representation of the $x$'s. In general form it would be written as \n",
"\\begin{equation}\n",
"y = \\log(X)\n",
"\\end{equation}\n"
]
},
{
"cell_type": "code",
"execution_count": 8,
"metadata": {},
"outputs": [
{
"name": "stderr",
"output_type": "stream",
"text": [
"/home/jupyterlab/conda/envs/python/lib/python3.6/site-packages/ipykernel_launcher.py:3: RuntimeWarning: invalid value encountered in log\n",
" This is separate from the ipykernel package so we can avoid doing imports until\n"
]
},
{
"data": {
"image/png": "iVBORw0KGgoAAAANSUhEUgAAAYoAAAEGCAYAAAB7DNKzAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjMuNCwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8QVMy6AAAACXBIWXMAAAsTAAALEwEAmpwYAAAqsElEQVR4nO3deXxddZ3/8denabqne5K26ZIu6Q4tNBRKQQoUgQ4IIigoKqhTHWHG0Z+MjPobHP2N4zjDzM8ZQaeDbMKvCGIBpQJl3+lG96b7lmZrmzZL2zTb5/fHOamhJje3TXJPkvt+Ph73kbPdcz4nbe7nfs93M3dHRESkOd2iDkBERDo2JQoREYlJiUJERGJSohARkZiUKEREJKbuUQfQHoYOHerZ2dlRhyEi0mmsWrXqoLunN7WvSyaK7OxsVq5cGXUYIiKdhpntaW6fHj2JiEhMShQiIhKTEoWIiMSkRCEiIjEpUYiISExKFCIiEpMShYiIxNQl+1GIiCSLQ5Un2FZSybaSSo6eqOVrl4xv82soUYiIdAKHKk+wtbiSrcUVbCupYFtxJdtLKjl0tPrkMRlpPfnqx8ZhZm16bSUKEZEOpOxYDVtLKthSVMHW4uC1rfijCSGtV3dyMvpxxdRMJmT0IyczjZyMfgwf0KvNkwREnCjM7EHgGqDE3ac3sX8e8CywK9z0O3f/YcICFBFpJ1U1dWwrrmRLcQVbisrZUlzJ1qIKisqrTh7Tr2d3cjL7MX9KJjmZ/ZiYmcbEzDQy+/dsl4TQnKhLFA8DPwcejXHMW+5+TWLCERFpW/X1zt7SY+QVlZNXFJQUthRVsPvQUerDmah7dO9GTkY/Lhw/hEnD0pg4LEgII9qphHC6Ik0U7v6mmWVHGYOISFspO1ZzMiHkFZWzuTBICsdr6gAwgzGD+zBpWBrXzhjB5DApZA/pS0q36BNCc6IuUcRjjpmtBQqAb7v7xqYOMrOFwEKA0aNHJzA8EUk29fXOntJjbC4sP/naVFBOQdmfHhsN7JPKlGH9uXn2KCYPS2PysP7kZPajT4/O8LH7UR094tXAGHevNLMFwDNATlMHuvsiYBFAbm6uJyxCEenSqmrq2FJUwabCcjYWlLGpICgxHKsOSgndDMan9yM3ezBThvdnyvA0pgzvT0ZaYusR2lOHThTuXt5oeamZ3W9mQ939YJRxiUjXVHasho2FZWzcHySFjQXl7DhQebIuoV/P7kwd3p9P5446mRAmZqbRKzUl2sDbWYdOFGY2DCh2dzez2QQ9yQ9FHJaIdAEHKk6woaCMjfvL2LC/nI2FZewrPX5y//ABvZg2oj9XTx/G1BH9mTp8ACMH9aZbB65LaC9RN49dDMwDhppZPnAPkArg7r8EbgT+ysxqgePAze6ux0oiclpKyqtYv7+M9WFS2LC/7CPNULOH9OHskQO5ZfZopo8YwLQR/RnSr2eEEXcsUbd6uqWF/T8naD4rIhKXg5UngqSQX8a6/DLW7z9CcfkJIGh1ND69HxeMG8z0rAFMzxrA1BH96d8rNeKoO7YO/ehJRCSW8qoaNuSXsTa/jHX5R1iXX8b+I8Hjo4akcOH4oZyVNYCzRg5g6vD+9O2pj73Tpd+YiHQK1bX1bC4sZ82+I6zdd4S1+UfYceDoyf1jhvTh3DGDuH1uNmdlDWBa1gD6KSm0Cf0WRaTDcQ96M6/Zd4QP9x5hzb4jbCoop7quHoCh/Xoyc9QArp+ZxdmjBnJ21gAG9e0RcdRdlxKFiESu8kQt6/Yd4cN9R/hw72E+3Hvk5CB4vVK7cXbWQL544RhmjhrEzNEDO8zQFslCiUJEEsrd2XPoGKv2HGb13sOs2nOYrcUVJ/sqjEvvy7xJGZw7ZiAzRw1kUmYa3VM0x1qUlChEpF1V1dSxfn8ZK3cHSeHDvYdPlhbSenZn5uiBXDltGOeMDhLDwD56hNTRKFGISJsqPVrNyt2lrNpzmBW7S9mw/091C2OHBqWFWWMGMWvMICZk9OvQg+FJQIlCRFol//Axlu8qZcXuUpbvKj3ZEik1xTgrawC3z80+mRjUia1zUqIQkbi5OzsOVPLBriAprNhVenLE1LRe3ckdM4hPzRrJedmDOStrQJcfAylZKFGISLPq651tJZV8sOsQH+ws5YNdhzhYGdQvpKf1ZHb2YL46djDnZQ9m0rA0PUbqopQoROQkd2d7SSXv7TzEu9sP8cGuQxw+VgPAiAG9uDgnnfPHDub8cUPIHtJHTVSThBKFSBJzd3YfOsZ7Ow7x7o6DvL+zlIOVwbhIWQN7c9nkTC4YN5gLxg1h5KDeSgxJSolCJMmUlFfx7o5DvL39IO9uP3iyjiGzf08umjCEOeOHMGfcUEYNVmKQgBKFSBdXeaKWD3Ye4q1tB3ln+0G2lVQCwVSdc8YN4euXDuXC8UMYO7SvEoM0SYlCpIupq3c27C/jrW0HeHPbQVbvOUxtvdMrtRvnZQ/mxlkjmTthKFOH90/KSXjk9ClRiHQBxeVVvLH1AG9sPcA72w9yJKyAnp7Vn69cPI6P5Qzl3DGD1FxVzkjUM9w9CFwDlLj79Cb2G/AzYAFwDLjN3VcnNkqRjqe6tp6Ve0qD5LDlAHlFFQBkpPVk/pRMLs4ZykUThqqDm7SJqEsUDxPMYPdoM/uvBnLC1/nAL8KfIkmnuLyK1/JKeG1LCW9vO8jR6jpSU4zzsgdz99WTuWRiOpOHpameQdpc1FOhvmlm2TEOuQ54NJwn+30zG2hmw929MDERikSnrt5Zs+/IyeSwsaAcCPozXH9OFvMmZXDh+CGasU3aXUf/H5YF7Gu0nh9u+7NEYWYLgYUAo0ePTkhwIm3t6Ila3tp2kJc3F/NaXgmHjlaT0s2YNXoQ37lqMpdOTmdSpkoNklgdPVE09dfgTR3o7ouARQC5ublNHiPSERWVVbFsczEvbyrmvZ2HqK6tp3+v7syblMHlUzKYNzGDAX1Sow5TklhHTxT5wKhG6yOBgohiEWkz20sqeHFjMS9tLGJtfhkA2UP68PkLxjB/Sia52YNI1WQ90kF09ETxHHCnmT1BUIldpvoJ6YzcnbX5ZbywoYiXNhWxMxyKe8aogdx15SSunJbJ+PR+eqQkHVLUzWMXA/OAoWaWD9wDpAK4+y+BpQRNY7cTNI+9PZpIRU5ffb2zeu9hlq4v4oUNhRSUVdG9mzFn/BBuvzCbK6YOY9iAXlGHKdKiqFs93dLCfgfuSFA4Iq1WV+8s31XKHzcU8sKGIkoqTtCjezc+lpPO//r4JOZPyVR9g3Q6Hf3Rk0iH11By+MO6Qp5fX8iBihP0Su3GpZMyuGr6MC6bnEFaLyUH6byUKETOgLuzLr+M368t4Pn1hRSWVdGzezcum5zBNWeP4NLJ6fTpoT8v6Rr0P1nkNOw8UMkzawp4ds1+9hw6RmqKccnEdL5z1WTmT82knzq/SRek/9UiLSipqOL3awt5ds1+1uWXYQZzxg3hjnkTuHLaMNU5SJenRCHShKqaOl7cWMTTq/fz9rYD1DtMG9Gf7y2YwrUzRqi1kiQVJQqRkLuzas9hnl6dzx/WFlJxopasgb35q3nj+eQ5WUzISIs6RJFIKFFI0issO87Tq/J5evV+dh08Su/UFK4+axg3njuSC8YN0eQ+kvSUKCQp1dTV82peCb9ZsY/Xt5RQ73DBuMF8fd54rj5ruCqlRRrRX4MklV0Hj/KbFfv47ap8DlaeILN/T74+bwKfzh3F6CF9og5PpENSopAur6aunmWbinns/T28u+MQKd2MyyZncPN5o7hkYjrdNfieSExKFNJlFRw5zhPL9/LEin2UVJwga2Bv7rpyEjfNGklGf7VaEomXEoV0Ke7O29sP8uh7e3hlczEOzJuYzj9fMIZ5kzJIUcW0yGlTopAu4Vh1Lb9bvZ+H393N9pJKBvftwVcvGc9nZ49m1GDVPYi0hhKFdGr5h4/x6/f2sHj5Xsqrapme1Z97b5rBNTOG07N7StThiXQJShTSKa3ee5gH3trJCxuKMDOumjaM2+dmM2vMIE3+I9LGWkwUFvzVfQ4Y5+4/NLPRwDB3X97u0Yk0Ul/vvJJXwqI3d7Bi92EG9E5l4cfG8/k5Y8ga2Dvq8ES6rHhKFPcD9cBlwA+BCuBp4LzWXtzMrgJ+BqQAD7j7T07ZPw94FtgVbvqdu/+wtdeVzqWqpo5nPtzP/7y1kx0HjpI1sDf3XDuVT+eOoq86xom0u3j+ys5393PN7EMAdz9sZj1ae2EzSwHuA64A8oEVZvacu2865dC33P2a1l5POp/KE7U89v4eHnhrFwcrTzBtRH9+dvNM/uKs4er7IJJA8SSKmvBD3QHMLJ2ghNFas4Ht7r4zPO8TwHXAqYlCkkzZ8Roefmc3D76zi7LjNVycM5SvXTKTC8cPUf2DSATiSRT/CSwBMszsn4Abge+3wbWzgH2N1vOB85s4bo6ZrQUKgG+7+8Y2uLZ0QKVHq/nV2zt59N09VJyoZf6UTO68bAIzRw2MOjSRpNZionD3x81sFXA5YMD17r65Da7d1FdDP2V9NTDG3SvNbAHwDJDT5MnMFgILAUaPHt0G4UmiHKo8wX+/uZNfv7eHqto6Fkwfzh2XTmDqiP5RhyYixEgUZja40WoJsLjxPncvbeW184FRjdZHEpQaTnL38kbLS83sfjMb6u4HTz2Zuy8CFgHk5uaemnCkAyo7XsMDb+3kwbd3cbymjutmZnHHpeM174NIBxOrRLGK4Bt+c9/8x7Xy2iuAHDMbC+wHbgY+2/gAMxsGFLu7m9lsoBtwqJXXlYgdPVHLQ+/sYtGbOymvquUvzh7ON+fnKEGIdFDNJgp3H9ueF3b3WjO7E3iRoHnsg+6+0cy+Fu7/JUF9yF+ZWS1wHLjZ3VVa6KSqaup47P093P/6DkqPVjN/SgbfumKSHjGJdHAWz+eumd0AXERQknjL3Z9p57haJTc311euXBl1GBKqr3d+v66An76whf1HjnNxzlC+dcVEzhk9KOrQRCRkZqvcPbepffH0zL4fmMCf6ii+ZmZXuPsdbRijdFHv7zzEj5duZl1+GVOH9+enN57N3AlDow5LRE5DPM1jLwGmNzzyMbNHgPXtGpV0ettLKvnJH/N4eXMxwwf04t6bZvDJc7I0/7RIJxRPotgCjAb2hOujgHXtFpF0amXHaviPl7fy6/f30Ds1hb+7ahJfmjuWXqkayVWks4rVPPb3BHUSA4DNZrY8XD8feDcx4UlnUV/vPLVqH//ywhaOHKvms+eP5pvzJzKkX8+oQxORVopVovi3hEUhndrafUf4h+c2snbfEXLHDOIfr5vNtBEDog5LRNpIrOaxbyQyEOl8So9W868v5vHEin0M7deT//jMDK6fmaXxmES6mHhaPV0A/BcwBehB0OfhqLur8XuScneeXr2f//P8JiqravnKRWP5m8tzSOuVGnVoItIO4qnM/jlBr+mngFzgCzQz3pJ0fftKj/HdJet5a9tBZo0ZxD/fcBYTM9WjWqQri2vWF3ffbmYp7l4HPGRmqsxOMrV19Tz87m7ufWkr3Qx+dN00Pnf+GDV3FUkC8SSKY+FERWvM7KdAIdC3fcOSjmRTQTl3/24d6/LLuHxyBj+6fjojNPWoSNKIJ1F8nqBe4k7gmwT9KD7VnkFJx1BbV8/9r+/gP1/ZxsA+qfzXLedwzdnDVVktkmTimY+ioaPdceAf2zcc6Sh2HTzKN3+zhjX7jnDtjBH88BPTGNS31TPgikgnFKvD3ZPu/mkzW8+fTyiEu5/drpFJJNydxcv38aM/bCI1xfjZzTO5bmZW1GGJSIRilSi+Ef68JhGBSPQOVJzg7qfX8UpeCXMnDOHfbprB8AGqixBJdrE63BWaWQrwK3efn8CYJAKv5hVz11PrqDhRyz9cM5XbLsxWiyYRAVqoo3D3OjM7ZmYD3L0sUUFJ4tTW1fPvy7Zy/+s7mDK8P4tvnql+ESLyEfG0eqoC1pvZMuBow0Z3/5t2i0oSoqS8ir9e/CEf7CrlltmjuOfaaRrlVUT+TDyJ4vnw1ebM7CrgZwTNbx9w95+cst/C/QuAY8Bt7r66PWJJNu/tOMRfL/6QyhM13HvTDD41a2TUIYlIBxVP89hH2uPCYf3HfcAVQD6wwsyec/dNjQ67mmC4kByC4c1/Ef6UM1Rf7/zijR3c+9IWsof25fGvnM+kYXrUJCLNi2dQwBzgn4GpQK+G7e4+rpXXng1sd/ed4XWeAK4DGieK64BHw9n13jezgWY23N0LW3ntpFRRVcM3f7OGlzeXcM3Zw/nJp86mX8+4RnERkSQWz6fEQ8A9wH8AlwK3A23RHCYL2NdoPZ8/Ly00dUwWwTAiH2FmC4GFAKNHj26D8LqW/MPH+PLDK9l+oJIfXDuVL16YrR7WIhKXbnEc09vdXwHM3fe4+w+Ay9rg2k19Sp3asS+eY4KN7ovcPdfdc9PT01sdXFeyeu9hrr/vHQrKjvPI7bO5be5YJQkRiVtcrZ7MrBuwzczuBPYDGW1w7XyCcaMajAQKzuAYieHZNfu567frGD6gF08sPI8JGf2iDklEOplmSxRmlhku/i3QB/gbYBZwK/DFNrj2CiDHzMaGo9PeDDx3yjHPAV+wwAVAmeon4uPu/MeyrXzjiTXMHDmQJV+fqyQhImckVolibTjO02Jgq7vnE9RPtAl3rw1LKC8SNI990N03mtnXwv2/BJYSNI3dTtA8ts2u35VV1dRx12/X8fu1BXzq3JH8+Ibp9Oyu/hEicmYsaFDUxI6g+ep8gm/6C4D3CJLGc+5+PGERnoHc3FxfuXJl1GFE4lh1LQsfXcXb2w/yd1dN4q8uGa/6CBFpkZmtcvfcpvY1++jJ3evc/UV3v52gnuAh4Hpgl5k93i6RSquUHa/h879azrs7DvJvN83g6/MmKEmISKvF0+oJd68m6N+wGSgn6FMhHcjByhPcsuh91uUf4b7PnsuN6mktIm0kZqsnMxsNfAa4hWD60yeA69x9cwJikzgVHDnOrb/6gIIjx3ngi+dxyUQ1DxaRthNr4qJ3CTq3PQUsdPfkfOjfwe0+eJTPPfAB5cdrePRL5zN77OCoQxKRLiZWieLvgTe9udpuidzW4go+98AH1NbVs3jhBUzPGhB1SCLSBcWauOiNRAYip6ehJGHAk1+dQ47mkBCRdqIR4TqhorIqbv1VUJJ46mtzmJChJCEi7afFVk9mNjaebZIYpUerufVXH3DkWA2PfGm2koSItLt4msc+3cS237Z1INKyiqoabntoOXtLj/E/X8jl7JEDow5JRJJArFZPk4FpwAAzu6HRrv40mpdCEqOqpo6vPLKSTQXl/PfnZzFn/JCoQxKRJBGrjmIScA0wELi20fYK4C/bMSY5RU1dPXc8vprlu0v5v5+ZyeVTMlt+k4hIG4nV6ulZ4Fkzm+Pu7yUwJmnE3fm7367jlbwSfnT9dK6bmRV1SCKSZOJp9bTdzL4LZDc+3t2/1F5ByZ/84o0dLPlwP9+6YiKfv2BM1OGISBKKJ1E8C7wFvAzUtW840tirecX864tbuHbGCP76sglRhyMiSSqeRNHH3b/T7pHIR+w4UMk3Fq9h6vD+/PRTZ2sUWBGJTDzNY/9gZgvaPRI5qbyqhr98dCWp3bvx35+fRe8emnRIRKITT4niG8B3zawaqAYMcHfvf6YXNbPBwG8I6j12A59298NNHLeboJVVHVDb3KQaXUldvfO3T6xh76FjPPaV8xk5qE/UIYlIkmuxROHuae7ezd17uXv/cP2Mk0TobuAVd88BXgnXm3Opu89MhiQB8O/LtvBqXgn3XDuVC8apr4SIRC+eITzMzG41s/8dro8ys9mtvO51wCPh8iMEM+clvT+sK+C+13Zwy+xR3KoWTiLSQcRTR3E/MAf4bLheCdzXyutmunshQPgzo5njHHjJzFaZ2cJYJzSzhWa20sxWHjhwoJXhJd624gruemods8YM4h8/MV2V1yLSYcRTR3G+u59rZh8CuPthM+vR0pvM7GVgWBO7vnca8c119wIzywCWmVmeu7/Z1IHuvghYBJCbm9up5tCoqavnm0+uoU+PFH7xuXPp0T2uGWpFRBIinkRRY2YpBN/uMbN0oL6lN7n7/Ob2mVmxmQ1390IzGw6UNHOOgvBniZktAWYDTSaKzuy/Xt3Ohv3l/PLWWWT01zBaItKxxPPV9T+BJUCGmf0T8Dbw41Ze9zngi+HyFwk69X2EmfU1s7SGZeDjwIZWXrfDWbvvCPe9tp0bzsniqulNFcBERKLVYonC3R83s1XA5QRNY693982tvO5PgCfN7MvAXuAmADMbATzg7guATGBJ+Ky+O/D/3P2FVl63Q6mqqeNbT64hI60n93xiWtThiIg0KdYw44MbrZYAixvvc/fSM72oux8iSDynbi8AFoTLO4EZZ3qNzuCnL2xhx4GjPPbl8xnQOzXqcEREmhSrRLGKoF7CgNHA4XB5IEEpQLPctcJ7Ow7x4Du7+MKcMVyUMzTqcEREmtVsHYW7j3X3ccCLwLXuPtTdhxDMUfG7RAXYFVVU1fDtp9Yydmhf7r56ctThiIjEFE9l9nnuvrRhxd3/CFzSfiF1fT/6wyYKy45z76dn0KdHPA3PRESiE8+n1EEz+z7wGMGjqFuBQ+0aVRf2al4xT67M5+vzxnPu6EFRhyMi0qJ4ShS3AOkETWSfIehFfUs7xtRlnait4wfPbWJiZj++MT8n6nBEROIST/PYUoIRZKWVHn13D3tLj/HrL8+mZ3cNHS4inUOLicLMJgLf5s+nQr2s/cLqeg4frea/Xt3GvEnpXJyTHnU4IiJxi6eO4ingl8ADaCrUM/azV7ZReaKW7y6YEnUoIiKnJZ5EUevuv2j3SLqwnQcqeez9Pdw8ezQTM9OiDkdE5LTEU5n9ezP7upkNN7PBDa92j6wL+ec/5tErNYVvzp8YdSgiIqctnhJFw+B9dzXa5sC4tg+n63lvxyGWbSrmrisnkZ7WM+pwREROWzytnjRUxxmqr3f+aekmsgb25ssX6dcoIp1TPFOh9jGz75vZonA9x8yuaf/QOr8lH+5nw/5y7rpyEr1S1RxWRDqneOooHgKqgQvD9Xzg/7RbRF3E8eo6/vXFLcwYOYBPzBgRdTgiImcsnkQx3t1/CtQAuPtxglFkJYb/eWsnReVVfP+aqXTrpl+XiHRe8SSKajPrzZ+mQh0PnGjXqDq5iqoaFr25kyunZXJethqIiUjnFk+rp3uAF4BRZvY4MBe4rT2D6uyeXJlP5Yla7rxU4zmJSOfXYonC3ZcBNxAkh8VArru/3pqLmtlNZrbRzOrNLDfGcVeZ2RYz225md7fmmolSV+888u5ucscM4qyRA6IOR0Sk1eJ59ATB/BOXA5cCF7fBdTcQJJ83mzvAzFKA+4CrganALWY2tQ2u3a5ezSthb+kxbp+r5rAi0jXE0zz2fuBrwHqCD/ivmtl9rbmou2929y0tHDYb2O7uO929GngCuK41102Eh97ZxYgBvbhyWmbUoYiItIl46iguAaa7e0Nl9iMESaO9ZQH7Gq3nA+c3d7CZLQQWAowePbp9I2tGXlE57+44xHeumkz3lHgLayIiHVs8n2ZbgMafvKOAdS29ycxeNrMNTbziLRU01abUmzvY3Re5e66756anRzOM98Pv7KZXajdumT0qkuuLiLSHeEoUQ4DNZrY8XD8PeM/MngNw90809SZ3n9/K2PIJklKDkUBBK8/ZbkqPVrPkw/3ccO5IBvbpEXU4IiJtJp5E8Q/tHkXTVgA5ZjYW2A/cDHw2olhatHj5Xk7U1nP73OyoQxERaVPxNI99A9gNpIbLy4HV7v5GuH7azOyTZpYPzAGeN7MXw+0jzGxpeN1a4E7gRWAz8KS7bzyT67W3mrp6fv3eHi6aMFTzTYhIlxPPVKh/SVBJPBgYT/AI6JcEzWXPiLsvAZY0sb0AWNBofSmw9Eyvkyh/3FBEUXkVP75hetShiIi0uXgqs+8g6I1dDuDu24CM9gyqs3nonV2MHdqXeRP1axGRrieeRHEi7McAgJl1J0bro2Tz4d7DfLj3CF+cM0aD/4lIlxRPonjDzL4L9DazK4CngN+3b1idx0Pv7CatZ3duzFWTWBHpmuJJFHcDBwg62X2VoM7g++0ZVGdRXF7F0vWF3JQ7in4942lAJiLS+cQzFWq9mT0DPOPuB9o/pM7j+XWF1NY7n7sgmp7gIiKJ0GyJwgI/MLODQB6wxcwOmFlU/So6nJc3F5OT0Y/x6f2iDkVEpN3EevT0twStnc5z9yHuPphgrKW5ZvbNRATXkZUdq+GDXaVcMVWD/4lI1xYrUXwBuMXddzVscPedwK3hvqT22pYS6uqd+UoUItLFxUoUqe5+8NSNYT1FavuF1Dks21RMelpPZo4cGHUoIiLtKlaiqD7DfV3eido6Xt9SwvwpGeo7ISJdXqxWTzPMrLyJ7Qb0aqd4OoX3d5ZytLpO9RMikhSaTRTunpLIQDqTZZuK6NMjhQvHD406FBGRdqdp2E6Tu/PyphI+lpNOr1TlUhHp+pQoTtP6/WUUlVeptZOIJA0litO0bFMx3Qwum6yRYkUkOShRnKZlm4rJzR7M4L6a7lREkkMkicLMbjKzjWZWb2a5MY7bbWbrzWyNma1MZIxN2Vd6jLyiCj6ux04ikkSiGvJ0A3AD8N9xHHtpUx3/orBsUzGAmsWKSFKJJFG4+2YAs87VWW3ZpmImZvZjzJC+UYciIpIwHb2OwoGXzGyVmS2MdaCZLTSzlWa28sCBth8N/cixapbvLmX+FJUmRCS5tFuJwsxeBoY1set77v5snKeZ6+4FZpYBLDOzPHd/s6kD3X0RsAggNze3zadqbRgEUI+dRCTZtFuicPf5bXCOgvBniZktAWYDTSaK9vbyphIy0noyQ4MAikiS6bCPnsysr5mlNSwDHyeoBE+4hkEAL5+SqUEARSTpRNU89pNmlg/MAZ43sxfD7SPMbGl4WCbwtpmtBZYDz7v7C1HE+96OQxytrlOzWBFJSlG1eloCLGliewGwIFzeCcxIcGhNei2vhD49UpgzfkjUoYiIJFyHffTUkazfX8ZZWQM0CKCIJCUlihbU1ztbiiqYMrx/1KGIiERCiaIF+YePc7S6jsnD0qIORUQkEkoULdhcFEzyN1klChFJUkoULcgrrMAMJmb2izoUEZFIKFG0YHNhOdlD+tKnR1TjJ4qIREuJogV5ReWqnxCRpKZEEcPRE7XsKT3G5GGqnxCR5KVEEcPW4grcYcpwlShEJHkpUcSQV1QBoD4UIpLUlChiyCssp1/P7mQN7B11KCIikVGiiGFzUQWThqVpxFgRSWpKFM1wd/IK1eJJRESJohmFZVWUV9WqR7aIJD0limbkhUN3TFGJQkSSnBJFMzYXBi2eJipRiEiSi2qGu381szwzW2dmS8xsYDPHXWVmW8xsu5ndncgYNxeWM3JQb/r3Sk3kZUVEOpyoShTLgOnufjawFfj7Uw8wsxTgPuBqYCpwi5lNTVSAeUUV6pEtIkJEicLdX3L32nD1fWBkE4fNBra7+053rwaeAK5LRHxVNXXsPFCpHtkiInSMOoovAX9sYnsWsK/Ren64rd1tL6mk3tUjW0QEoN3Gzjazl4FhTez6nrs/Gx7zPaAWeLypUzSxzWNcbyGwEGD06NGnHW9jmwvDyYpUkS0i0n6Jwt3nx9pvZl8ErgEud/emEkA+MKrR+kigIMb1FgGLAHJzc5tNKPHIK6qgV2o3xgzp25rTiIh0CVG1eroK+A7wCXc/1sxhK4AcMxtrZj2Am4HnEhFfXlE5kzLTSNHQHSIikdVR/BxIA5aZ2Roz+yWAmY0ws6UAYWX3ncCLwGbgSXff2N6BuTubC9XiSUSkQSTze7r7hGa2FwALGq0vBZYmKi6AA5UnKD1azWS1eBIRATpGq6cOJS/ska0ShYhIQIniFGrxJCLyUUoUp8grqmBY/14M6tsj6lBERDoEJYpTbC4sV/2EiEgjShSNVNfWs+NApXpki4g0okTRyM6DldTUueonREQaUaJopKHFk0oUIiJ/okTRyOaicnqkdGPsUA3dISLSQImikbzCCiZk9CM1Rb8WEZEG+kRsJK9ILZ5ERE4VyRAeHVFNXT0XTUjn4pyhUYciItKhKFGEUlO6ce+nZ0QdhohIh6NHTyIiEpMShYiIxKREISIiMSlRiIhITEoUIiISkxKFiIjEpEQhIiIxKVGIiEhM5u5Rx9DmzOwAsCfGIUOBgwkKpyNK5vtP5nuH5L5/3XtsY9w9vakdXTJRtMTMVrp7btRxRCWZ7z+Z7x2S+/5172d+73r0JCIiMSlRiIhITMmaKBZFHUDEkvn+k/neIbnvX/d+hpKyjkJEROKXrCUKERGJkxKFiIjElHSJwsyuMrMtZrbdzO6OOp5EMrMHzazEzDZEHUuimdkoM3vNzDab2UYz+0bUMSWKmfUys+Vmtja893+MOqZEM7MUM/vQzP4QdSyJZma7zWy9ma0xs5VndI5kqqMwsxRgK3AFkA+sAG5x902RBpYgZvYxoBJ41N2nRx1PIpnZcGC4u682szRgFXB9Mvzbm5kBfd290sxSgbeBb7j7+xGHljBm9i0gF+jv7tdEHU8imdluINfdz7izYbKVKGYD2919p7tXA08A10UcU8K4+5tAadRxRMHdC919dbhcAWwGsqKNKjE8UBmupoavpPmGaGYjgb8AHog6ls4q2RJFFrCv0Xo+SfJhIX9iZtnAOcAHEYeSMOGjlzVACbDM3ZPm3oH/C/wdUB9xHFFx4CUzW2VmC8/kBMmWKKyJbUnzzUrAzPoBTwN/6+7lUceTKO5e5+4zgZHAbDNLikePZnYNUOLuq6KOJUJz3f1c4GrgjvAR9GlJtkSRD4xqtD4SKIgoFkmw8Pn808Dj7v67qOOJgrsfAV4Hroo2koSZC3wifE7/BHCZmT0WbUiJ5e4F4c8SYAnBI/jTkmyJYgWQY2ZjzawHcDPwXMQxSQKEFbq/Aja7+79HHU8imVm6mQ0Ml3sD84G8SINKEHf/e3cf6e7ZBH/vr7r7rRGHlTBm1jdsvIGZ9QU+Dpx2q8ekShTuXgvcCbxIUJn5pLtvjDaqxDGzxcB7wCQzyzezL0cdUwLNBT5P8I1yTfhaEHVQCTIceM3M1hF8WVrm7knXTDRJZQJvm9laYDnwvLu/cLonSarmsSIicvqSqkQhIiKnT4lCRERiUqIQEZGYlChERCQmJQoREYlJiUI6FDOrbPmojxw/r61GBDWzH5jZt9voXA+b2Y1n+N6ZTTXdDdvEHzKzAadsf8bMPn0a51/a0K8ixjFN/ju05r6k81KiEOl4ZgJ/lijc/SjwEnB9w7YwaVwEtJgsLdDN3ReEPbRF4qJEIR1SWFJ43cx+a2Z5ZvZ42Lu6YU6RPDN7G7ih0Xv6hnNurAjnHrgu3H6bmT1rZi+Ec5Hc0+g93wu3vQxMarR9fHj8KjN7y8wmh9sfNrP/NLN3zWxnw7fr8EP452a2ycyeBzIanWuWmb0RnuvFcMhzwvv7l3CuiK1mdnE4YsAPgc+EnQI/c8qvZjFBD+MGnwReALqZ2Stmtjqce6Dh3rMtmIPjfmA1MMqC+QmGhvufCePaeOqAcWZ2b3i+V8wsvYl/oybvS7ogd9dLrw7zAirDn/OAMoLxuLoR9Ci/COhFMAJwDsEgj08Cfwjf82Pg1nB5IMHcI32B24BCYAjQm2AIg1xgFrAe6AP0B7YD3w7f/wqQEy6fTzD0A8DDwFNhTFMJhq2HIGEtA1KAEcAR4EaCIb3fBdLD4z4DPBguvw7cGy4vAF4Ol28Dft7M76cHwQiwQ8L1FwiG0O5OMNcCwNDwXgzIJhg19YJG59gNDA2XB4c/G34vDed14HPh8j80xBPef8z70qvrvboj0nEtd/d8AAuGyM4mmHhpl7tvC7c/BjR8E/44wQBwDfUMvYDR4fIydz8Uvud3BEkHYIm7Hwu3Pxf+7AdcCDwVFmIAejaK6xl3rwc2mVlmuO1jwGJ3rwMKzOzVcPskYDqwLDxXCkHSatAwOOGq8P5icvfqMM4bzexpgsdULxEkhR9bMDJoPcHw+Q2x7fHmJyn6GzP7ZLg8iiABHwrP8Ztw+2ON4mzQ0n1JF6JEIR3ZiUbLdfzp/2tz484Y8Cl33/KRjWbnN/EeD49v6lzdgCMeDMvdUlyNh65v6lwGbHT3OS2cq/H9tWQx8P3w3M+6e42Z3QakA7PC9d0EiRLgaFMnMbN5BAMEznH3Y2b2eqP3nOrUe2vpvqQLUR2FdDZ5wFgzGx+u39Jo34vAXzeqyzin0b4rzGywBaOnXg+8A7wJfNLMelswwua1AB7MU7HLzG4Kz2NmNqOFuN4EbrZggqDhwKXh9i1AupnNCc+VambTWjhXBZAWY/9rBN/87yBIGgADCOZdqDGzS4ExLVyj4T2HwyQxGbig0b5uBI+YAD5LMH1qY2dyX9JJKVFIp+LuVQSPmp4PK7P3NNr9I4Jn5+vMbEO43uBt4NfAGuBpd1/pwdSov2nYBrzV6PjPAV+2YNTNjbQ8Ze4SYBtBnccvgDfCeKsJPnD/JTzXGoLHWrG8BkxtpjKb8LHX0wR1Lm+Gmx8Hcs1sZRh7PMOIvwB0t2BU2R8BjR9PHQWmmdkq4DKCCvbGMZzJfUknpdFjpcsLH8vkuvudUcci0hmpRCEiIjGpRCEiIjGpRCEiIjEpUYiISExKFCIiEpMShYiIxKREISIiMf1/cmuZBcUrtYIAAAAASUVORK5CYII=\n",
"text/plain": [
"<Figure size 432x288 with 1 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"X = np.arange(-5.0, 5.0, 0.1)\n",
"\n",
"Y = np.log(X)\n",
"\n",
"plt.plot(X,Y) \n",
"plt.ylabel('Dependent Variable')\n",
"plt.xlabel('Indepdendent Variable')\n",
"plt.show()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### Sigmoidal/Logistic\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"$$ Y = a + \\frac{b}{1+ c^{(X-d)}}$$\n"
]
},
{
"cell_type": "code",
"execution_count": 9,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "iVBORw0KGgoAAAANSUhEUgAAAYoAAAEJCAYAAACKWmBmAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjMuNCwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8QVMy6AAAACXBIWXMAAAsTAAALEwEAmpwYAAArdElEQVR4nO3deXxV9Z3/8dcnGxD2VdYAKrIqIhFQW5dqFanVqtXivo3otP6qnWnHhdaxtnWsTjsdrUUZ1LrVpVXEBUWoexVkEQEh7FvYd0IgZPv8/jgn9ZYmNxfIvSc3eT8fjzzu2e4575tAPjnne873a+6OiIhITTKiDiAiIvWbCoWIiMSlQiEiInGpUIiISFwqFCIiEpcKhYiIxBVpoTCzJ8xss5ktqGG9mdlDZrbMzOaZ2Qmpzigi0thFfUbxR2BknPXnAn3CrzHAuBRkEhGRGFlRHtzdPzSzXnE2uQB42oOnAqebWRsz6+LuG+Ltt0OHDt6rV7zdiohIrNmzZ291947VrYu0UCSgG7A2Zr4wXBa3UPTq1YtZs2YlM5eISINiZqtrWhf1pafaWDXLqu1zxMzGmNksM5u1ZcuWJMcSEWk86nuhKAR6xMx3B9ZXt6G7j3f3fHfP79ix2rMnERE5BPW9ULwGXB3e/TQC2FVb+4SIiNStSNsozOx54HSgg5kVAv8JZAO4+6PAZGAUsAzYC1wXTVIRkcYr6rueLqtlvQM/SFEcERGpRn2/9CQiIhFToRARkbhUKERE0tzOvaVMmruOce8vT8r+6/sDdyIiUo212/fy1oINTFu4mVmrt1Pp0KV1U278em+yMuv2HECFQkQkTazfuY/XvljPm/M2MH/dLgD6d2nFD844mjP6dWJw9zZkZlT3nPLhUaEQEanH9paW8+a8DbwyZx3TV27DHQb3aMNdo/oxcmAX8trnJj2DCoWISD20aMNu/jRjDa9+vo6i/eX0ap/LbWcew3eGdKVn++YpzaJCISJST1RUOu8WbObxj1cwfcV2crIy+NaxXRh9Yg+G9W6HWd1fVkqECoWISMRKyyt5ZU4hj36wnFXb9tK1dVPuPLcf3zuxB21yc6KOp0IhIhKV/eUVPD9jDY99uIINu0o4tltrfn/5EEYO7Fzndy4dDhUKEZEUq6h0XplTyO+mLWXdzn0M69WO+y8+jlP7dIjs8lI8KhQiIin0wZIt/PKNhSzdvIfjurfm1xcfx9f6dIg6VlwqFCIiKbByazG/fGMhfy3YTK/2uYy74gRGDupcL88gDqRCISKSRPvLK3jkveWMe38ZTbIyufPcflx7Si+aZGVGHS1hKhQiIkkyY8U27pw4nxVbivnO8V2561v96dSyadSxDpoKhYhIHSspq+D+twr44yer6N62GU9dP4zTjknfIZpVKERE6tAXa3fyby/NZfmWYq49uRf/MbIvuTnp/as20ht1zWykmS02s2Vmdkc16083s11mNjf8ujuKnCIitamsdMa9v5yLxn3C3tIKnr1hOPecPzDtiwREeEZhZpnAI8A3gUJgppm95u4LD9j0I3c/L+UBRUQStKO4lH97aS7vLd7Ct47twn0XHUvrZtlRx6ozUZa6YcAyd18BYGYvABcABxYKEZF6a+7anXz/2dls3VPKLy4YyJUjeqbFLa8HI8pLT92AtTHzheGyA51kZl+Y2VtmNjA10UREavfKnEIufexTMjKMl//1ZK46qVeDKxIQ7RlFdd9NP2B+DtDT3feY2SjgVaBPtTszGwOMAcjLy6vDmCIi/6ii0nng7QIe+3AFI45sxx+uGEq75tF33pcsUZ5RFAI9Yua7A+tjN3D33e6+J5yeDGSbWbXPurv7eHfPd/f8jh3T9zY0Eanf9pVWcNMzs3nswxVcNaInz9wwvEEXCYj2jGIm0MfMegPrgNHA5bEbmFlnYJO7u5kNIyhs21KeVEQE2F5cyg1PzWTu2p38/PyBXHNyr6gjpURkhcLdy83sFmAKkAk84e5fmtnN4fpHge8C/2pm5cA+YLS7H3h5SkQk6dZu38vVT3zG+p37GHfFUEYO6hx1pJSxhvh7Nz8/32fNmhV1DBFpIJZt3sMVE6ZTUlbJ49fkk9+rXdSR6pyZzXb3/OrWpf+TICIiSbRow26unDADM+Olm06ib+eWUUdKufozhJKISD0zr3Ano8dPJzszgxdvGtEoiwTojEJEpFoL1u3iygkzaNUsm+dvHEGPdrlRR4qMCoWIyAEWbyziqsdn0LJpNi+MGUH3to23SIAuPYmI/IPlW/ZwxYQZZGdm8Ny/DG/0RQJUKERE/m7Drn1cNWEG7s6fbhxOrw7No45UL+jSk4gIsGtvGdc+MZPdJeW8MGYER3dqnA3X1dEZhYg0eiVlFdz49CxWbN3D+KuGMqhb66gj1Ss6oxCRRq2y0vnRi3OZuXo7D40ewslHV9udXKOmMwoRadQefGcxby3YyNhR/fn24K5Rx6mXVChEpNH6y+xCxr2/nCuG53HD13pHHafeUqEQkUbps5XbufOVeZxydHvuOX9ggxxwqK6oUIhIo7Nu5z5ufnY2Pdrl8ofLh5KdqV+F8ei7IyKNSklZBTc/M5uy8komXJ1P69zsqCPVe7rrSUQaDXfnZ68uYP66Xfzf1fkc2bFF1JHSgs4oRKTReG7GGv48u5AffuNovjngiKjjpA0VChFpFOYV7uTnr3/J6X07cutZx0QdJ61EWijMbKSZLTazZWZ2RzXrzcweCtfPM7MTosgpIultd0kZt/zpczq2aML/XHo8mRm6w+lgRFYozCwTeAQ4FxgAXGZmAw7Y7FygT/g1BhiX0pAikvbcnTtfns+6nft4+PIhtG2eE3WktBPlGcUwYJm7r3D3UuAF4IIDtrkAeNoD04E2ZtYl1UFFJH09O2MNb87fwI/P7svQng1vrOtUiLJQdAPWxswXhssOdhsRkWot3ljEL95YyKnHdOSmU4+MOk7airJQVHeR0A9hm2BDszFmNsvMZm3ZsuWww4lIeispq+DWFz6nVdMsfnvpYDLULnHIoiwUhUCPmPnuwPpD2AYAdx/v7vnunt+xY8c6DSoi6ee/pyymYGMRD353MB1aNIk6TlqLslDMBPqYWW8zywFGA68dsM1rwNXh3U8jgF3uviHVQUUkvXy8dCsTPl7JVSN6cka/TlHHSXuRPZnt7uVmdgswBcgEnnD3L83s5nD9o8BkYBSwDNgLXBdVXhFJD7v2lvHvf57LUR2bc9eo/lHHaRAi7cLD3ScTFIPYZY/GTDvwg1TnEpH09fPXv2TrnlImXH0izXIyo47TIOjJbBFpMKYu3MQrn6/jB6cfxbHdNZxpXVGhEJEGYUdxKXdNnE+/zi255Rt9oo7ToNRaKMKG5CvN7O5wPs/MhiU/mohI4u55/Ut2FJfym0sHk5Olv4HrUiLfzT8AJwGXhfNFBF1viIjUC9MWbmLS3PXc8o2jGdhVl5zqWiKN2cPd/QQz+xzA3XeEt7OKiESuqKSMn766gH6dW/L904+OOk6DlEihKAs78HMAM+sIVCY1lYhIgh54ezGbikp49KqhuuSUJIl8Vx8CJgKdzOxXwMfAfUlNJSKSgFmrtvPM9NVcd3Jvju/RJuo4DVatZxTu/pyZzQbOJOh76TvuvijpyURE4thfXsHtL8+jW5tm/PvZGogomWosFGYW2x/vZuD52HXuvj2ZwURE4nn0/RUs31LMU9cPo3mTSJ8dbvDifXdnE7RL1NSDq/rsFZFIrNpazCPvL+Pbg7ty2jHqBDTZaiwU7t47lUFERBLh7vxs0gKaZGbws2+pL6dUSOh8zcwuAr5GcCbxkbu/msxQIiI1eWPeBj5aupWfnz+QTq2aRh2nUUjkyew/ADcD84EFwM1mpgfuRCTldpeUce8bCzm2W2uuHNEz6jiNRiJnFKcBg8KeXDGzpwiKhohISv1u6lK27tnP49fkk6kR61ImkecoFgN5MfM9gHnJiSMiUr3FG4t46tNVXD4sj+O6t4k6TqMS7/bY1wnaJFoDi8zss3B+OPBJauKJiAQN2HdPWkDLpln8+Oy+UcdpdOJdevrvZB00fEbjRaAXsAq41N13VLPdKoJOCCuAcnfPT1YmEam/Xp+3gRkrt/OrCwfRtrm6mku1eLfHfpDE494B/NXd7zezO8L522vY9gx335rELCJSjxXvL+dXby5kULdWjD4xr/Y3SJ1L5K6nEWY208z2mFmpmVWY2e7DPO4FwFPh9FPAdw5zfyLSQD3y3jI27d7PvRcMUgN2RBJpzP49wVgUS4FmwL+Eyw7HEe6+ASB87VTDdg68Y2azzWzMYR5TRNLMmm17mfDRSi46oRsn5LWNOk6jldADd+6+zMwy3b0CeNLMam3MNrNpQOdqVo09iHynuPt6M+sETDWzAnf/sIbjjQHGAOTl6fRUpCH41eSFZGUat4/sF3WURi2RQrE3HKhorpk9AGwAmtf2Jnc/q6Z1ZrbJzLq4+wYz60LQ6WB1+1gfvm42s4nAMKDaQuHu44HxAPn5+V5bPhGp3/62bCtTvtzET87pyxF6AjtSiVx6ugrIBG4Bigmeo7j4MI/7GnBNOH0NMOnADcysuZm1rJoGziZ4MlxEGrjyikrufX0h3ds244avqdu5qCUyHsXqcHIf8PM6Ou79wEtmdgOwBrgEwMy6AhPcfRRwBDDRzKpy/snd366j44tIPfb8Z2tYvKmIR688gabZmVHHafTiPXD3krtfambzCYdBjeXuxx3qQd19G8FASAcuXw+MCqdXAIMP9Rgikp527Svjt1OXMLx3O84ZWF0zp6RavDOKW8PX81IRREQEgtthd+4r42fnDSC8oiARi/fA3QYzywQej9cwLSJSV1ZvK+bJv63k4hO6M6hb66jjSChuY3Z4O+xeM9NPTESS7v63CsjKyOAn56g/p/okkdtjS4D5ZjaV4K4nANz9h0lLJSKNzmcrt/PWgo386KxjdDtsPZNIoXgz/BIRSYrKSudXby6kc6um3HiqboetbxK5Pfap2rYRETkcr89bzxeFu/jvSwaTm5NQhxGSQrX+RMysD/BfwADg7+eD7n5kEnOJSCNRUlbBA28vZkCXVlw4pFvUcaQaiTyZ/SQwDigHzgCeBp5JZigRaTye/nQV63buY+y3+qt32HoqkULRzN3/Cpi7r3b3e4BvJDeWiDQGO4pLefjdZZzRtyOnHN0h6jhSg4TuejKzDGCpmd0CrKPmbsFFRBL28LvLKN5fzp2j+kcdReKo8YzCzI4IJ28DcoEfAkOBK/mqQz8RkUOyZttenpm+ikvze3DMES2jjiNxxDuj+CLs5+l5YIm7FwLXpSaWiDR0D0wJHq770TePiTqK1CJeG0U34L+BrwNLzOxVM/uemTVLTTQRaajmrt3JG/M2cOPXe+vhujRQY6Fw9wp3n+Lu1xGMQfEkwdjWK83suRTlE5EGxt35r8mLaN88hzGnHRV1HElAInc94e6lwEJgEbCb4JkKEZGD9m7BZmas3M5tZ/WhRRM9XJcO4hYKM8szs5+Y2RzgDYKR7i5w9yEpSSciDUp5RSX3v1VA7w7NGT1MY9uni3gDF31C0E7xZ2CMu89KWSoRaZBenlPI0s17GHfFCWRnJnRBQ+qBeD+pO4Fe7v7jui4SZnaJmX1pZpVmlh9nu5FmttjMlpnZHXWZQURSa19pBb+duoQheW0YOUgj16WTeI3ZH7j7Pw2BWkcWABcBH9a0QTho0iPAuQRtIpeZmdpGRNLUE39byabd+7nz3P4auS7NRNKS5O6LgNr+sQwDloVjZ2NmLwAXEDSqi0ga2V5cyqPvL+es/kcwrHe7qOPIQar1IqGZ/VPn8NUtS4JuwNqY+cJwmYikmYffXUpxaTm3j9TIdekokdakl6tZ9pfa3mRm08xsQTVfFySYrbrTjRovhZnZGDObZWaztmzZkuAhRCTZ1mzby7PTV3Npfg/6qKuOtBTvrqd+wECgtZldFLOqFTHjUtTE3c86zGyFBA/6VekOrI9zvPHAeID8/Pxkta2IyEF68J3FZGaYuupIY/HaKPoC5wFtgG/HLC8CbkxipiozgT7hZa51wGjg8hQcV0TqyLzCnbz+xXpuOeNoddWRxmosFO4+CZhkZie5+6d1eVAzuxB4GOgIvGlmc939HDPrCkxw91HuXh52az6F4EG/J9z9y7rMISLJE3TVUUC75jncdJoGxExnidz1tMzM7gJ6xW7v7tcf6kHdfSIwsZrl64FRMfOTgcmHehwRic77S7bw6Ypt3PPtAbRsmh11HDkMiRSKScBHwDSgIrlxRKQhqKh0fv1WAT3b53L58J5Rx5HDlEihyHX325OeREQajFfmFFKwsYiHLxtCTpa66kh3ifwE3zCzUbVvJiICJWUV/OadJQzu0YbzjusSdRypA4kUilsJikWJme02syIz253sYCKSnp7420o27i7hrnP7qauOBqLWS0/uridkRCQh24tLGfde0FXH8CPbRx1H6kgiXXiYmV1pZj8L53uY2bDkRxORdFPVVccd56qrjoYkkUtPfwBO4quH3fYQ9OoqIvJ3q7YW8+z01XzvxB4c3UkXIhqSRO56Gu7uJ5jZ5wDuvsPMcpKcS0TSzANTCsjOzFBXHQ1QImcUZeHYEA5gZh2ByqSmEpG0Mnv1dibP38hNpx5Fp5bqqqOhSaRQPETwFHUnM/sV8DFwX1JTiUjacHd++eYiOrVswo2npmIEAkm1RO56es7MZgNnEnT9/Z2qgYdERCbP38jna3bywMXHkZsTyVhokmTxuhmPHYZqM/B87Dp3357MYCJS/+0vr+DXbxfQr3NLLh7aPeo4kiTxyv9sgnYJA/KAHeF0G2ANoHNMkUbu6U9Ws2b7Xp6+fhiZGXq4rqGqsY3C3Xu7+5EE3Xx/2907uHt7gjEqXklVQBGpn7bt2c9D7y7ljL4dOfWYjlHHkSRKpDH7xLC7bwDc/S3gtORFEpF08L9/Xcre0gruGtU/6iiSZIm0PG01s58CzxJciroS2JbUVCJSry3dVMRzM9Zw+bA8jYPdCCRyRnEZwUh0E4FXgU7hMhFppO6bvIjc7ExuO6tP1FEkBRK5PXY7QQ+ydcbMLgHuAfoDw9x9Vg3brSIYo7sCKHf3/LrMISIH7/3Fm3lv8RbuPLcf7Vs0iTqOpECthcLMjgF+zD8PhfqNwzjuAuAi4LEEtj3D3bcexrFEpI6UVVTyizcW0qt9Ltee0ivqOJIiibRR/Bl4FJhAHQ2FWvXAnvqqF0kvz3y6muVbiplwdT5NsjKjjiMpkkihKHf3cUlPUj0H3jEzBx5z9/ER5RBp9Lbt2c//TFvC1/t04Mz+naKOIymUSKF43cy+T9CYvb9qYW1PZpvZNKBzNavGuvukBPOd4u7rzawTMNXMCtz9wxqONwYYA5CXl5fg7kUkUb+duoS9pRXcfd4AXQ1oZBIpFNeErz+JWebAkfHe5O5nHWqomH2sD183m9lEYBhQbaEIzzbGA+Tn5/vhHltEvrJw/W6e/2wNV5/US7fDNkKJ3PUUSVcdZtYcyHD3onD6bODeKLKINGbuzt2TFtAmN4cfnaWxJhqjRIZCzTWzn5rZ+HC+j5mddzgHNbMLzayQYOS8N81sSri8q5lVPQV+BPCxmX0BfAa86e5vH85xReTgvTp3HbNW7+D2kX1pnZsddRyJQCKXnp4k6CDw5HC+kOBOqDcO9aDuPpGgzePA5euBUeH0CmDwoR5DRA5fUUkZ900uYHCPNlwytEfUcSQiiTyZfZS7PwCUAbj7PoJeZEWkgfvfaUvZumc/954/kAz1DttoJVIoSs2sGV8NhXoUMXc/iUjDtGRTEX/8ZBWjT+zB4B5too4jEUrk0tN/Am8DPczsOeAU4NpkhhKRaFVWOmMnzqdF0yx+ck6/qONIxBK562mqmc0BRhBccrpVXWqINGx/mVPIzFU7+PXFx9KueU7UcSRiiQ5wexrwNYLLT9lU0xAtIg3DjuJS/mvyIvJ7tlUDtgCJ3R77B+BmYD5BZ343mdkjyQ4mItG4/60CikrK+eWFg9SALUBiZxSnAYPcvaox+ymCoiEiDczMVdt5cdZabjr1SPp1bhV1HKknErnraTEQ23lSD2BecuKISFRKyiq4/eV5dGvTjFs1IJHESOSMoj2wyMw+C+dPBD41s9cA3P38ZIUTkdR55L1lrNhSzFPXDyM3J9HmS2kMEvnXcHfSU4hIpAo27mbc+8u5aEg3TjumY9RxpJ5J5PbYD8ysJ9DH3aeFD99luXtR8uOJSLJVVDq3vzyf1s2y+dl5A6KOI/VQInc93Qj8ha+GLe0OvJrETCKSQk/+bSVfrN3J3d8eQFs9MyHVSKQx+wcET2PvBnD3pYCGtxJpAJZv2cODUxZzVv8jOH9w16jjSD2VSKHY7+6lVTNmlkXY75OIpK+KSufHf/6CptmZ3HfhII1aJzVKpFB8YGZ3Ac3M7JsEXYy/ntxYIpJsEz5awedrdnLvBQPp1Kpp1HGkHkukUNwBbCF4yO4mYDLw02SGEpHkWrqpiN9MXcI5A3XJSWqXyF1PlWb2KvCqu29JfiQRSabS8kpue3EuzXMy+eV3jtUlJ6lVjWcUFrjHzLYCBcBiM9tiZof9XIWZPWhmBWY2z8wmmlmbGrYbaWaLzWyZmd1xuMcVEfjt1CV8uX43v774ODq2bBJ1HEkD8S493UZwt9OJ7t7e3dsBw4FTzOxHh3ncqQT9Rx0HLAHuPHADM8sEHgHOBQYAl5mZbvIWOQzTV2zjsQ+Xc9mwHpw9sHPUcSRNxCsUVwOXufvKqgXhONZXhusOmbu/4+7l4ex0gmczDjQMWObuK8K7rl4ALjic44o0Zrv2lfFvL86lZ7tcfvot/c0liYtXKLKrG6AobKfIrsMM1wNvVbO8G7A2Zr4wXCYiB8ndueuV+Wwq2s/vRg+heRP15SSJi/evpfQQ1wFgZtOA6s5tx7r7pHCbsUA58Fx1u6hmWY3Pb5jZGGAMQF5eXk2biTRKz85Yw5vzN3D7yH4cr/Gv5SDFKxSDzWx3NcsNqPWma3c/K956M7sGOA84s2qsiwMUEnRpXqU7sD7O8cYD4wHy8/P1QKBI6Mv1u/jFGws5vW9Hbjr1yKjjSBqqsVC4e2ayDmpmI4HbgdPcfW8Nm80E+phZb2AdMBq4PFmZRBqiPfvLueVPn9M2N5vfXDJYI9bJIUnkgbtk+D3QEphqZnPN7FEAM+tqZpMBwsbuW4ApwCLgJXf/MqK8ImnH3bn95Xms3lbMQ6OH0L6FboWVQxNJi5a7H13D8vXAqJj5yQRPgovIQZrw0UrenBe0Sww/sn3UcSSNRXVGISJJ9MmyrfzXW4s4d1Bnbj5N7RJyeFQoRBqYdTv3ccvzn3NUxxY8eMlgddEhh02FQqQB2VtazpinZ1FWXsmjVw2lhZ6XkDqgf0UiDURlpXPbC3NZtGE3j19zIkd1bBF1JGkgdEYh0kA8MGUx7yzcxE+/NYAz+mkQSqk7KhQiDcBLs9by6AfLuWJ4Hted0ivqONLAqFCIpLn3Fm/mzlfm87WjO3DP+QPVeC11ToVCJI3NXbuT7z87h36dWzLuyhPIztR/aal7+lclkqZWbNnD9X+cSYeWOTx53Ym0bFqXnTqLfEWFQiQNFe7Yy1WPf4YBT18/nE4ta+2nU+SQ6fZYkTSzcVcJV0yYwe6SMp6/cQS9OzSPOpI0cDqjEEkjW4r2c/mE6Wwt2s/T1w9jULfWUUeSRkBnFCJpYnNRCVdOmMGGnSU8df0whuS1jTqSNBIqFCJpYP3OfVwxYQabdpfw+LX5DOvdLupI0oioUIjUc2u27eWy/5vO7n1lPHPDMIb2VJGQ1FKhEKnHFm3YzbVPfsb+8kr+dOMIju2uNglJvUgKhZk9CHwbKAWWA9e5+85qtlsFFAEVQLm756cwpkikPlm2lZuemU3zJlm8OOYk+nZuGXUkaaSiuutpKjDI3Y8DlgB3xtn2DHc/XkVCGpNJc9dxzZOf0aVNU175/skqEhKpqIZCfSdmdjrw3ShyiNQ3lZXO76Yt4aF3lzG8dzvGX51P62Z64lqiVR/aKK4HXqxhnQPvmJkDj7n7+NTFEkmt4v3l/OjFubyzcBOXDO3OLy8cRJOszKhjiSSvUJjZNKBzNavGuvukcJuxQDnwXA27OcXd15tZJ2CqmRW4+4c1HG8MMAYgLy/vsPOLpNKKLXv4/nNzWLKpiLvPG8B1p/RSL7BSbyStULj7WfHWm9k1wHnAme7uNexjffi62cwmAsOAagtFeLYxHiA/P7/a/YnUR69/sZ47Xp5HTlYGT10/jK/36Rh1JJF/ENVdTyOB24HT3H1vDds0BzLcvSicPhu4N4UxRZKqpKyCX7yxkOdmrGFoz7Y8fNkQurZpFnUskX8SVRvF74EmBJeTAKa7+81m1hWY4O6jgCOAieH6LOBP7v52RHlF6tS8wp386MW5LN9SzJhTj+Qn5/TVWBJSb0V119PRNSxfD4wKp1cAg1OZSyTZyioq+cN7y3n43aV0aNGEZ27QpSap/+rDXU8ijcLna3Zw5yvzKdhYxAXHd+Xe8wfROle3vkr9p0IhkmRFJWX85p0lPPXpKjq1bMJjVw3lnIHV3RAoUj+pUIgkSWWl85fZhTwwpYBtxaVcNaInPzmnr4YslbSjQiGSBJ8u38Z9kxcxf90uTshrw+PXnMjgHm2ijiVySFQoROrQ/MJdPDClgI+WbqVL66b87+jjOX9wVz08J2lNhUKkDnyxdie/f28ZUxduok1uNmNH9eeqk3rSNFtdcEj6U6EQOUTuzqfLtzHug+V8tHQrrZpmceuZfbjh671ppXYIaUBUKEQOUklZBa/NXc8Tf1tJwcYiOrTI4faR/bhyRJ4aqqVBUqEQSdCSTUU8/9kaXpmzjl37yujXuSUPXHwc5x/fVZeYpEFToRCJY9ue/bw5fwMTP1/H52t2kp1pnDOwM5cPz+OkI9urkVoaBRUKkQPsKC5l6sJNvLVgAx8t3Up5pdOvc0vGjurPRSd0o32LJlFHFEkpFQoRYOXWYt4t2My7BZuYvmI7FZVO97bNuOFrvfnOkG7079Iq6ogikVGhkEZp194yPl2xjY+XbeHjpVtZtS3o7b5PpxaMOfVIRg3qwqBurXRpSQQVCmkE3J31u0r4fM0OZq7czmerdlCwcTfukJuTyYgj23Ptyb04s/8R9GiXG3VckXpHhUIanM1FJXy5bjcL1u1i/rpdzF27k81F+wFolp3J0J5tue3MYzj56PYM7t6GnCyNAyESjwqFpCV3Z3txKcu3FLNs8x6Wbi5i8cbga1tx6d+369U+l5OPas+QvLYc36MNA7q20gBBIgdJhULqrf3lFWzcVcK6HftYu2Mva7fvY832vazeVszKrcXsLin/+7bNsjM55ogWnNm/E307t2Jg1+BLD8CJHL6oxsz+BXABUAlsBq4NR7c7cLuRwP8CmQRDpN6f0qCSFHtLy9m2p5Ste/azNXzdUrSfTbtL2LQ7eN2wq4Ste/b/w/syM4wurZvSu0Nzzj++K73aN+foTi04qmMLurVpRkaGGp5FkiGqM4oH3f1nAGb2Q+Bu4ObYDcwsE3gE+CZQCMw0s9fcfWGqw8pXKiudfWUVFO8vp7g0eN2zv5w9JcFrUUkZu0vK2b2vjF0xXzv2lrFzbyk79pZSUlZZ7b7b5mZzRKumHNGqKQO6tKJrm2Z0adOUbm2akdcul86tm+qykUgEohoze3fMbHPAq9lsGLAsHDsbM3uB4CykQRWKykqn0p0Kd9yhojKYrqx0KiqdyphlFRXha2Ul5eH68gqnvNIprwiWlVVUhssqKat6LXdKKyopq6iktPyr1/1Vr+WV7C+rZH95BSV/fw2m95VVsK80mC8uLa/xl/yBcrIyaN0smzbNsmndLJtubZoyqGsr2jbPoW1uDu1b5NChRQ7tmjehU8smtG+RQ5MsdYMhUh9F1kZhZr8CrgZ2AWdUs0k3YG3MfCEwPJmZznv4I/aVVgRVy4Pq5e7hKzjBL/Pg66vllbHbhNOV4S/72G2Cr2CbqgIQpZysDJpkZpCTlUHT7EyaZH013TQ7g/YtcsjNyaRpdibNsjPJzckkNycreG2SRYsmmTTPyaJF0yxaNsmmeZNMWjXLpmXTLP3SF2lAklYozGwaUN3AwGPdfZK7jwXGmtmdwC3Afx64i2reW+NvVjMbA4wByMvLO6TMfTq1pLS8Eiw4uJmFr/84j0FGzLoMMyxckREzX/VqGJkZwTwGmWZkWLhtRjCdmfHVssx/WAaZGRlkZRgZGfb310wzsjKD+cwMIzsz2CYrM4PsTCMrI3wNC0F2ppGdEUznZAXb6mEyEUlE0gqFu5+V4KZ/At7knwtFIdAjZr478E8N3jHHGw+MB8jPzz+kP9X/53vHH8rbREQatEhaBs2sT8zs+UBBNZvNBPqYWW8zywFGA6+lIp+IiHwlqjaK+82sL8HtsasJ73gys64Et8GOcvdyM7sFmEJwe+wT7v5lRHlFRBqtqO56uriG5euBUTHzk4HJqcolIiL/TDeli4hIXCoUIiISlwqFiIjEpUIhIiJxqVCIiEhc5h5tNxLJYGZbCG67TTcdgK1Rh0ixxviZoXF+bn3m+q2nu3esbkWDLBTpysxmuXt+1DlSqTF+Zmicn1ufOX3p0pOIiMSlQiEiInGpUNQv46MOEIHG+JmhcX5ufeY0pTYKERGJS2cUIiISlwpFPWRmPzYzN7MOUWdJBTN70MwKzGyemU00szZRZ0oWMxtpZovNbJmZ3RF1nlQwsx5m9p6ZLTKzL83s1qgzpYqZZZrZ52b2RtRZDocKRT1jZj2AbwJros6SQlOBQe5+HLAEuDPiPElhZpnAI8C5wADgMjMbEG2qlCgH/t3d+wMjgB80ks8NcCuwKOoQh0uFov75H+A/iDPsa0Pj7u+4e3k4O51gNMOGaBiwzN1XuHsp8AJwQcSZks7dN7j7nHC6iOAXZ7doUyWfmXUHvgVMiDrL4VKhqEfM7Hxgnbt/EXWWCF0PvBV1iCTpBqyNmS+kEfzCjGVmvYAhwIyIo6TC7wj+6KuMOMdhi2qEu0bLzKYBnatZNRa4Czg7tYlSI97ndvdJ4TZjCS5TPJfKbClk1SxrNGeOZtYCeBm4zd13R50nmczsPGCzu882s9MjjnPYVChSzN3Pqm65mR0L9Aa+MDMILr/MMbNh7r4xhRGToqbPXcXMrgHOA870hnvPdiHQI2a+O7A+oiwpZWbZBEXiOXd/Jeo8KXAKcL6ZjQKaAq3M7Fl3vzLiXIdEz1HUU2a2Csh393TpUOyQmdlI4LfAae6+Jeo8yWJmWQSN9WcC64CZwOUNfSx4C/7yeQrY7u63RRwn5cIzih+7+3kRRzlkaqOQ+uD3QEtgqpnNNbNHow6UDGGD/S3AFIIG3ZcaepEInQJcBXwj/PnODf/SljShMwoREYlLZxQiIhKXCoWIiMSlQiEiInGpUIiISFwqFCIiEpcKhdQrZrbnILc/va565jSze8zsx3W0rz+a2XcP8b3HV3f7qJk1N7NtZtb6gOWvmtmlB7H/ybX10FvTz+FwPpekLxUKkfrneOCfCoW7FwPvAN+pWhYWja8BtRZLC2S4+yh331lXYaXhU6GQeik8U3jfzP4SjlXxXPiEb9WYDgVm9jFwUcx7mpvZE2Y2MxwD4IJw+bVmNsnM3g7HgvjPmPeMDZdNA/rGLD8q3H62mX1kZv3C5X80s4fM7BMzW1H113X4S/j3ZrbQzN4EOsXsa6iZfRDua4qZdQmXv29mvzazz8xsiZl93cxygHuB74UPpn3vgG/N88DomPkLgbeBDDP7q5nNMbP5MZ+9VzgOxB+AOUAPM1tl4Vgn4dnI7HCciDEH/Ax+E+7vr2bWsZqfUbWfSxogd9eXvurNF7AnfD0d2EXQH1IG8CnBX85NCXpg7UPQyd5LwBvhe+4Drgyn2xB0l9EcuBbYALQHmgELgHxgKDAfyAVaAcsIuloA+CvQJ5weDrwbTv8R+HOYaQBBt+EQFKypQCbQFdgJfBfIBj4BOobbfQ94Ipx+H/hNOD0KmBZOXwv8vobvTw6wGWgfzr9N0JV1FtAqXNYh/CwG9CLovXREzD5WAR3C6Xbha9X3pWq/DlwRTt9dlSf8/HE/l74a3pc6BZT67DN3LwQws7kEv/T2ACvdfWm4/Fmg6i/hswk6YqtqZ2gK5IXTU919W/ieVwiKDsBEd98bLn8tfG0BnAz8OTyJAWgSk+tVd68EFprZEeGyU4Hn3b0CWG9m74bL+wKDCLongaCQbIjZV1UHebPDzxeXu5eGOb9rZi8TXKZ6h6Ao3GdmpxIUhm5AVbbV7j69hl3+0MwuDKd7EBTgbeE+XgyXPxuTs0ptn0saEBUKqc/2x0xX8NW/15r6nTHgYndf/A8LzYZX8x4Pt69uXxnATnc/PoFcsV2HV7cvA75095Nq2Vfs56vN88BPw31PcvcyM7sW6AgMDedXERRKgOLqdhJ2VncWcJK77zWz92Pec6ADP1ttn0saELVRSLopAHqb2VHh/GUx66YA/y+mLWNIzLpvmlk7M2tG0Bj8N+BD4EIza2ZmLYFvA3gwVsJKM7sk3I+Z2eBacn0IjLZgjOQuwBnh8sVARzM7KdxXtpkNrGVfRQSdJNbkPYK//H9AUDQAWhOMf1BmZmcAPWs5RtV7doRFoh/BMKVVMgguMQFcDnx8wHsP5XNJmlKhkLTi7iUEl5reDBuzV8es/gXBtfN5ZrYgnK/yMfAMMBd42d1neTA854tVy4CPYra/ArjBzL4AvqT2IUsnAksJ2jzGAR+EeUsJfuH+OtzXXILLWvG8BwyooTGb8LLXywRtLh+Gi58D8s1sVpi9oJZjQNC+kWVm8wi+V7GXp4qBgWY2G/gGQQN7bIZD+VySptR7rDR44WWZfHe/JeosIulIZxQiIhKXzihERCQunVGIiEhcKhQiIhKXCoWIiMSlQiEiInGpUIiISFwqFCIiEtf/B7zXnFGk0ofFAAAAAElFTkSuQmCC\n",
"text/plain": [
"<Figure size 432x288 with 1 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"X = np.arange(-5.0, 5.0, 0.1)\n",
"\n",
"\n",
"Y = 1-4/(1+np.power(3, X-2))\n",
"\n",
"plt.plot(X,Y) \n",
"plt.ylabel('Dependent Variable')\n",
"plt.xlabel('Indepdendent Variable')\n",
"plt.show()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"<a id=\"ref2\"></a>\n",
"\n",
"# Non-Linear Regression example\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"For an example, we're going to try and fit a non-linear model to the datapoints corresponding to China's GDP from 1960 to 2014. We download a dataset with two columns, the first, a year between 1960 and 2014, the second, China's corresponding annual gross domestic income in US dollars for that year. \n"
]
},
{
"cell_type": "code",
"execution_count": 10,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"2021-06-15 15:30:13 URL:https://cf-courses-data.s3.us.cloud-object-storage.appdomain.cloud/IBMDeveloperSkillsNetwork-ML0101EN-Coursera/labs/Data_files/china_gdp.csv [1218/1218] -> \"china_gdp.csv\" [1]\n"
]
},
{
"data": {
"text/html": [
"<div>\n",
"<style scoped>\n",
" .dataframe tbody tr th:only-of-type {\n",
" vertical-align: middle;\n",
" }\n",
"\n",
" .dataframe tbody tr th {\n",
" vertical-align: top;\n",
" }\n",
"\n",
" .dataframe thead th {\n",
" text-align: right;\n",
" }\n",
"</style>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>Year</th>\n",
" <th>Value</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>0</th>\n",
" <td>1960</td>\n",
" <td>5.918412e+10</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1</th>\n",
" <td>1961</td>\n",
" <td>4.955705e+10</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2</th>\n",
" <td>1962</td>\n",
" <td>4.668518e+10</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3</th>\n",
" <td>1963</td>\n",
" <td>5.009730e+10</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4</th>\n",
" <td>1964</td>\n",
" <td>5.906225e+10</td>\n",
" </tr>\n",
" <tr>\n",
" <th>5</th>\n",
" <td>1965</td>\n",
" <td>6.970915e+10</td>\n",
" </tr>\n",
" <tr>\n",
" <th>6</th>\n",
" <td>1966</td>\n",
" <td>7.587943e+10</td>\n",
" </tr>\n",
" <tr>\n",
" <th>7</th>\n",
" <td>1967</td>\n",
" <td>7.205703e+10</td>\n",
" </tr>\n",
" <tr>\n",
" <th>8</th>\n",
" <td>1968</td>\n",
" <td>6.999350e+10</td>\n",
" </tr>\n",
" <tr>\n",
" <th>9</th>\n",
" <td>1969</td>\n",
" <td>7.871882e+10</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"text/plain": [
" Year Value\n",
"0 1960 5.918412e+10\n",
"1 1961 4.955705e+10\n",
"2 1962 4.668518e+10\n",
"3 1963 5.009730e+10\n",
"4 1964 5.906225e+10\n",
"5 1965 6.970915e+10\n",
"6 1966 7.587943e+10\n",
"7 1967 7.205703e+10\n",
"8 1968 6.999350e+10\n",
"9 1969 7.871882e+10"
]
},
"execution_count": 10,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"import numpy as np\n",
"import pandas as pd\n",
"\n",
"#downloading dataset\n",
"!wget -nv -O china_gdp.csv https://cf-courses-data.s3.us.cloud-object-storage.appdomain.cloud/IBMDeveloperSkillsNetwork-ML0101EN-Coursera/labs/Data_files/china_gdp.csv\n",
" \n",
"df = pd.read_csv(\"china_gdp.csv\")\n",
"df.head(10)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"**Did you know?** When it comes to Machine Learning, you will likely be working with large datasets. As a business, where can you host your data? IBM is offering a unique opportunity for businesses, with 10 Tb of IBM Cloud Object Storage: [Sign up now for free](http://cocl.us/ML0101EN-IBM-Offer-CC)\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### Plotting the Dataset\n",
"\n",
"This is what the datapoints look like. It kind of looks like an either logistic or exponential function. The growth starts off slow, then from 2005 on forward, the growth is very significant. And finally, it decelerate slightly in the 2010s.\n"
]
},
{
"cell_type": "code",
"execution_count": 11,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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\n",
"text/plain": [
"<Figure size 576x360 with 1 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"plt.figure(figsize=(8,5))\n",
"x_data, y_data = (df[\"Year\"].values, df[\"Value\"].values)\n",
"plt.plot(x_data, y_data, 'ro')\n",
"plt.ylabel('GDP')\n",
"plt.xlabel('Year')\n",
"plt.show()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### Choosing a model\n",
"\n",
"From an initial look at the plot, we determine that the logistic function could be a good approximation,\n",
"since it has the property of starting with a slow growth, increasing growth in the middle, and then decreasing again at the end; as illustrated below:\n"
]
},
{
"cell_type": "code",
"execution_count": 12,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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\n",
"text/plain": [
"<Figure size 432x288 with 1 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"X = np.arange(-5.0, 5.0, 0.1)\n",
"Y = 1.0 / (1.0 + np.exp(-X))\n",
"\n",
"plt.plot(X,Y) \n",
"plt.ylabel('Dependent Variable')\n",
"plt.xlabel('Indepdendent Variable')\n",
"plt.show()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"The formula for the logistic function is the following:\n",
"\n",
"$$ \\hat{Y} = \\frac1{1+e^{\\beta_1(X-\\beta_2)}}$$\n",
"\n",
"$\\beta_1$: Controls the curve's steepness,\n",
"\n",
"$\\beta_2$: Slides the curve on the x-axis.\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### Building The Model\n",
"\n",
"Now, let's build our regression model and initialize its parameters. \n"
]
},
{
"cell_type": "code",
"execution_count": 13,
"metadata": {},
"outputs": [],
"source": [
"def sigmoid(x, Beta_1, Beta_2):\n",
" y = 1 / (1 + np.exp(-Beta_1*(x-Beta_2)))\n",
" return y"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Lets look at a sample sigmoid line that might fit with the data:\n"
]
},
{
"cell_type": "code",
"execution_count": 14,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"[<matplotlib.lines.Line2D at 0x7f76f9984da0>]"
]
},
"execution_count": 14,
"metadata": {},
"output_type": "execute_result"
},
{
"data": {
"image/png": "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\n",
"text/plain": [
"<Figure size 432x288 with 1 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"beta_1 = 0.10\n",
"beta_2 = 1990.0\n",
"\n",
"#logistic function\n",
"Y_pred = sigmoid(x_data, beta_1 , beta_2)\n",
"\n",
"#plot initial prediction against datapoints\n",
"plt.plot(x_data, Y_pred*15000000000000.)\n",
"plt.plot(x_data, y_data, 'ro')"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Our task here is to find the best parameters for our model. Lets first normalize our x and y:\n"
]
},
{
"cell_type": "code",
"execution_count": 15,
"metadata": {},
"outputs": [],
"source": [
"# Lets normalize our data\n",
"xdata =x_data/max(x_data)\n",
"ydata =y_data/max(y_data)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"#### How we find the best parameters for our fit line?\n",
"\n",
"we can use **curve_fit** which uses non-linear least squares to fit our sigmoid function, to data. Optimal values for the parameters so that the sum of the squared residuals of sigmoid(xdata, *popt) - ydata is minimized.\n",
"\n",
"popt are our optimized parameters.\n"
]
},
{
"cell_type": "code",
"execution_count": 16,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
" beta_1 = 690.451715, beta_2 = 0.997207\n"
]
}
],
"source": [
"from scipy.optimize import curve_fit\n",
"popt, pcov = curve_fit(sigmoid, xdata, ydata)\n",
"#print the final parameters\n",
"print(\" beta_1 = %f, beta_2 = %f\" % (popt[0], popt[1]))"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Now we plot our resulting regression model.\n"
]
},
{
"cell_type": "code",
"execution_count": 17,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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\n",
"text/plain": [
"<Figure size 576x360 with 1 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"x = np.linspace(1960, 2015, 55)\n",
"x = x/max(x)\n",
"plt.figure(figsize=(8,5))\n",
"y = sigmoid(x, *popt)\n",
"plt.plot(xdata, ydata, 'ro', label='data')\n",
"plt.plot(x,y, linewidth=3.0, label='fit')\n",
"plt.legend(loc='best')\n",
"plt.ylabel('GDP')\n",
"plt.xlabel('Year')\n",
"plt.show()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Practice\n",
"\n",
"Can you calculate what is the accuracy of our model?\n"
]
},
{
"cell_type": "code",
"execution_count": 18,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Mean absolute error: 0.03\n",
"Residual sum of squares (MSE): 0.00\n",
"R2-score: -0.38\n"
]
}
],
"source": [
"# write your code here\n",
"\n",
"msk = np.random.rand(len(df)) < 0.8\n",
"train_x = xdata[msk]\n",
"test_x = xdata[~msk]\n",
"train_y = ydata[msk]\n",
"test_y = ydata[~msk]\n",
"\n",
"popt, pcov = curve_fit(sigmoid, train_x, train_y)\n",
"\n",
"y_hat = sigmoid(test_x, *popt)\n",
"\n",
"print(\"Mean absolute error: %.2f\" % np.mean(np.absolute(y_hat - test_y)))\n",
"print(\"Residual sum of squares (MSE): %.2f\" % np.mean((y_hat - test_y) ** 2))\n",
"from sklearn.metrics import r2_score\n",
"print(\"R2-score: %.2f\" % r2_score(y_hat , test_y) )\n",
"\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Double-click **here** for the solution.\n",
"\n",
"<!-- Your answer is below:\n",
" \n",
"# split data into train/test\n",
"msk = np.random.rand(len(df)) < 0.8\n",
"train_x = xdata[msk]\n",
"test_x = xdata[~msk]\n",
"train_y = ydata[msk]\n",
"test_y = ydata[~msk]\n",
"\n",
"# build the model using train set\n",
"popt, pcov = curve_fit(sigmoid, train_x, train_y)\n",
"\n",
"# predict using test set\n",
"y_hat = sigmoid(test_x, *popt)\n",
"\n",
"# evaluation\n",
"print(\"Mean absolute error: %.2f\" % np.mean(np.absolute(y_hat - test_y)))\n",
"print(\"Residual sum of squares (MSE): %.2f\" % np.mean((y_hat - test_y) ** 2))\n",
"from sklearn.metrics import r2_score\n",
"print(\"R2-score: %.2f\" % r2_score(y_hat , test_y) )\n",
"\n",
"-->\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"<h2>Want to learn more?</h2>\n",
"\n",
"IBM SPSS Modeler is a comprehensive analytics platform that has many machine learning algorithms. It has been designed to bring predictive intelligence to decisions made by individuals, by groups, by systems – by your enterprise as a whole. A free trial is available through this course, available here: <a href=\"http://cocl.us/ML0101EN-SPSSModeler\">SPSS Modeler</a>\n",
"\n",
"Also, you can use Watson Studio to run these notebooks faster with bigger datasets. Watson Studio is IBM's leading cloud solution for data scientists, built by data scientists. With Jupyter notebooks, RStudio, Apache Spark and popular libraries pre-packaged in the cloud, Watson Studio enables data scientists to collaborate on their projects without having to install anything. Join the fast-growing community of Watson Studio users today with a free account at <a href=\"https://cocl.us/ML0101EN_DSX\">Watson Studio</a>\n",
"\n",
"<h3>Thanks for completing this lesson!</h3>\n",
"\n",
"<h4>Author: <a href=\"https://ca.linkedin.com/in/saeedaghabozorgi\">Saeed Aghabozorgi</a></h4>\n",
"<p><a href=\"https://ca.linkedin.com/in/saeedaghabozorgi\">Saeed Aghabozorgi</a>, PhD is a Data Scientist in IBM with a track record of developing enterprise level applications that substantially increases clients’ ability to turn data into actionable knowledge. He is a researcher in data mining field and expert in developing advanced analytic methods like machine learning and statistical modelling on large datasets.</p>\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"| Date (YYYY-MM-DD) | Version | Changed By | Change Description |\n",
"| ----------------- | ------- | ---------- | --------------------- |\n",
"| 2020-08-04 | 0 | Nayef | Upload file to Gitlab |\n",
"| | | | |\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"<hr>\n",
"\n",
"<p>Copyright &copy; 2018 <a href=\"https://cocl.us/DX0108EN_CC\">Cognitive Class</a>. This notebook and its source code are released under the terms of the <a href=\"https://bigdatauniversity.com/mit-license/\">MIT License</a>.</p>\n"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {},
"outputs": [],
"source": []
}
],
"metadata": {
"kernelspec": {
"display_name": "Python",
"language": "python",
"name": "conda-env-python-py"
},
"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.6.13"
}
},
"nbformat": 4,
"nbformat_minor": 4
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment