Skip to content

Instantly share code, notes, and snippets.

@elvisma
Created August 18, 2019 23:22
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save elvisma/1902777f8ddeff0da049f183a7f47be4 to your computer and use it in GitHub Desktop.
Save elvisma/1902777f8ddeff0da049f183a7f47be4 to your computer and use it in GitHub Desktop.
Created on Cognitive Class Labs
Display the source blob
Display the rendered blob
Raw
{
"cells": [
{
"cell_type": "markdown",
"metadata": {},
"source": [
"<div class=\"alert alert-block alert-info\" style=\"margin-top: 20px\">\n",
" <a href=\"https://cocl.us/corsera_da0101en_notebook_top\">\n",
" <img src=\"https://s3-api.us-geo.objectstorage.softlayer.net/cf-courses-data/CognitiveClass/DA0101EN/Images/TopAd.png\" width=\"750\" align=\"center\">\n",
" </a>\n",
"</div>\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"<a href=\"https://www.bigdatauniversity.com\"><img src=\"https://s3-api.us-geo.objectstorage.softlayer.net/cf-courses-data/CognitiveClass/DA0101EN/Images/CCLog.png\" width=300, align=\"center\"></a>\n",
"\n",
"<h1 align=center><font size=5>Data Analysis with Python</font></h1>"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"<h1>Module 5: Model Evaluation and Refinement</h1>\n",
"\n",
"We have built models and made predictions of vehicle prices. Now we will determine how accurate these predictions are. "
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"<h1>Table of content</h1>\n",
"<ul>\n",
" <li><a href=\"#ref1\">Model Evaluation </a></li>\n",
" <li><a href=\"#ref2\">Over-fitting, Under-fitting and Model Selection </a></li>\n",
" <li><a href=\"#ref3\">Ridge Regression </a></li>\n",
" <li><a href=\"#ref4\">Grid Search</a></li>\n",
"</ul>"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"This dataset was hosted on IBM Cloud object click <a href=\"https://cocl.us/DA101EN_object_storage\">HERE</a> for free storage."
]
},
{
"cell_type": "code",
"execution_count": 1,
"metadata": {},
"outputs": [],
"source": [
"import pandas as pd\n",
"import numpy as np\n",
"\n",
"# Import clean data \n",
"path = 'https://s3-api.us-geo.objectstorage.softlayer.net/cf-courses-data/CognitiveClass/DA0101EN/module_5_auto.csv'\n",
"df = pd.read_csv(path)"
]
},
{
"cell_type": "code",
"execution_count": 2,
"metadata": {},
"outputs": [],
"source": [
"df.to_csv('module_5_auto.csv')"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
" First lets only use numeric data "
]
},
{
"cell_type": "code",
"execution_count": 3,
"metadata": {
"collapsed": false,
"jupyter": {
"outputs_hidden": false
}
},
"outputs": [
{
"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>Unnamed: 0</th>\n",
" <th>Unnamed: 0.1</th>\n",
" <th>symboling</th>\n",
" <th>normalized-losses</th>\n",
" <th>wheel-base</th>\n",
" <th>length</th>\n",
" <th>width</th>\n",
" <th>height</th>\n",
" <th>curb-weight</th>\n",
" <th>engine-size</th>\n",
" <th>...</th>\n",
" <th>stroke</th>\n",
" <th>compression-ratio</th>\n",
" <th>horsepower</th>\n",
" <th>peak-rpm</th>\n",
" <th>city-mpg</th>\n",
" <th>highway-mpg</th>\n",
" <th>price</th>\n",
" <th>city-L/100km</th>\n",
" <th>diesel</th>\n",
" <th>gas</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>0</th>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>3</td>\n",
" <td>122</td>\n",
" <td>88.6</td>\n",
" <td>0.811148</td>\n",
" <td>0.890278</td>\n",
" <td>48.8</td>\n",
" <td>2548</td>\n",
" <td>130</td>\n",
" <td>...</td>\n",
" <td>2.68</td>\n",
" <td>9.0</td>\n",
" <td>111.0</td>\n",
" <td>5000.0</td>\n",
" <td>21</td>\n",
" <td>27</td>\n",
" <td>13495.0</td>\n",
" <td>11.190476</td>\n",
" <td>0</td>\n",
" <td>1</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1</th>\n",
" <td>1</td>\n",
" <td>1</td>\n",
" <td>3</td>\n",
" <td>122</td>\n",
" <td>88.6</td>\n",
" <td>0.811148</td>\n",
" <td>0.890278</td>\n",
" <td>48.8</td>\n",
" <td>2548</td>\n",
" <td>130</td>\n",
" <td>...</td>\n",
" <td>2.68</td>\n",
" <td>9.0</td>\n",
" <td>111.0</td>\n",
" <td>5000.0</td>\n",
" <td>21</td>\n",
" <td>27</td>\n",
" <td>16500.0</td>\n",
" <td>11.190476</td>\n",
" <td>0</td>\n",
" <td>1</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2</th>\n",
" <td>2</td>\n",
" <td>2</td>\n",
" <td>1</td>\n",
" <td>122</td>\n",
" <td>94.5</td>\n",
" <td>0.822681</td>\n",
" <td>0.909722</td>\n",
" <td>52.4</td>\n",
" <td>2823</td>\n",
" <td>152</td>\n",
" <td>...</td>\n",
" <td>3.47</td>\n",
" <td>9.0</td>\n",
" <td>154.0</td>\n",
" <td>5000.0</td>\n",
" <td>19</td>\n",
" <td>26</td>\n",
" <td>16500.0</td>\n",
" <td>12.368421</td>\n",
" <td>0</td>\n",
" <td>1</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3</th>\n",
" <td>3</td>\n",
" <td>3</td>\n",
" <td>2</td>\n",
" <td>164</td>\n",
" <td>99.8</td>\n",
" <td>0.848630</td>\n",
" <td>0.919444</td>\n",
" <td>54.3</td>\n",
" <td>2337</td>\n",
" <td>109</td>\n",
" <td>...</td>\n",
" <td>3.40</td>\n",
" <td>10.0</td>\n",
" <td>102.0</td>\n",
" <td>5500.0</td>\n",
" <td>24</td>\n",
" <td>30</td>\n",
" <td>13950.0</td>\n",
" <td>9.791667</td>\n",
" <td>0</td>\n",
" <td>1</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4</th>\n",
" <td>4</td>\n",
" <td>4</td>\n",
" <td>2</td>\n",
" <td>164</td>\n",
" <td>99.4</td>\n",
" <td>0.848630</td>\n",
" <td>0.922222</td>\n",
" <td>54.3</td>\n",
" <td>2824</td>\n",
" <td>136</td>\n",
" <td>...</td>\n",
" <td>3.40</td>\n",
" <td>8.0</td>\n",
" <td>115.0</td>\n",
" <td>5500.0</td>\n",
" <td>18</td>\n",
" <td>22</td>\n",
" <td>17450.0</td>\n",
" <td>13.055556</td>\n",
" <td>0</td>\n",
" <td>1</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"<p>5 rows × 21 columns</p>\n",
"</div>"
],
"text/plain": [
" Unnamed: 0 Unnamed: 0.1 symboling normalized-losses wheel-base \\\n",
"0 0 0 3 122 88.6 \n",
"1 1 1 3 122 88.6 \n",
"2 2 2 1 122 94.5 \n",
"3 3 3 2 164 99.8 \n",
"4 4 4 2 164 99.4 \n",
"\n",
" length width height curb-weight engine-size ... stroke \\\n",
"0 0.811148 0.890278 48.8 2548 130 ... 2.68 \n",
"1 0.811148 0.890278 48.8 2548 130 ... 2.68 \n",
"2 0.822681 0.909722 52.4 2823 152 ... 3.47 \n",
"3 0.848630 0.919444 54.3 2337 109 ... 3.40 \n",
"4 0.848630 0.922222 54.3 2824 136 ... 3.40 \n",
"\n",
" compression-ratio horsepower peak-rpm city-mpg highway-mpg price \\\n",
"0 9.0 111.0 5000.0 21 27 13495.0 \n",
"1 9.0 111.0 5000.0 21 27 16500.0 \n",
"2 9.0 154.0 5000.0 19 26 16500.0 \n",
"3 10.0 102.0 5500.0 24 30 13950.0 \n",
"4 8.0 115.0 5500.0 18 22 17450.0 \n",
"\n",
" city-L/100km diesel gas \n",
"0 11.190476 0 1 \n",
"1 11.190476 0 1 \n",
"2 12.368421 0 1 \n",
"3 9.791667 0 1 \n",
"4 13.055556 0 1 \n",
"\n",
"[5 rows x 21 columns]"
]
},
"execution_count": 3,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"df=df._get_numeric_data()\n",
"df.head()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
" Libraries for plotting "
]
},
{
"cell_type": "code",
"execution_count": 4,
"metadata": {},
"outputs": [],
"source": [
"%%capture\n",
"! pip install ipywidgets"
]
},
{
"cell_type": "code",
"execution_count": 5,
"metadata": {
"collapsed": false,
"jupyter": {
"outputs_hidden": false
}
},
"outputs": [
{
"name": "stderr",
"output_type": "stream",
"text": [
"/home/jupyterlab/conda/envs/python/lib/python3.6/site-packages/IPython/html.py:14: ShimWarning: The `IPython.html` package has been deprecated since IPython 4.0. You should import from `notebook` instead. `IPython.html.widgets` has moved to `ipywidgets`.\n",
" \"`IPython.html.widgets` has moved to `ipywidgets`.\", ShimWarning)\n"
]
}
],
"source": [
"from IPython.display import display\n",
"from IPython.html import widgets \n",
"from IPython.display import display\n",
"from ipywidgets import interact, interactive, fixed, interact_manual"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"<h2>Functions for plotting</h2>"
]
},
{
"cell_type": "code",
"execution_count": 6,
"metadata": {
"collapsed": false,
"jupyter": {
"outputs_hidden": false
}
},
"outputs": [],
"source": [
"def DistributionPlot(RedFunction, BlueFunction, RedName, BlueName, Title):\n",
" width = 12\n",
" height = 10\n",
" plt.figure(figsize=(width, height))\n",
"\n",
" ax1 = sns.distplot(RedFunction, hist=False, color=\"r\", label=RedName)\n",
" ax2 = sns.distplot(BlueFunction, hist=False, color=\"b\", label=BlueName, ax=ax1)\n",
"\n",
" plt.title(Title)\n",
" plt.xlabel('Price (in dollars)')\n",
" plt.ylabel('Proportion of Cars')\n",
"\n",
" plt.show()\n",
" plt.close()"
]
},
{
"cell_type": "code",
"execution_count": 7,
"metadata": {
"collapsed": false,
"jupyter": {
"outputs_hidden": false
}
},
"outputs": [],
"source": [
"def PollyPlot(xtrain, xtest, y_train, y_test, lr,poly_transform):\n",
" width = 12\n",
" height = 10\n",
" plt.figure(figsize=(width, height))\n",
" \n",
" \n",
" #training data \n",
" #testing data \n",
" # lr: linear regression object \n",
" #poly_transform: polynomial transformation object \n",
" \n",
" xmax=max([xtrain.values.max(), xtest.values.max()])\n",
"\n",
" xmin=min([xtrain.values.min(), xtest.values.min()])\n",
"\n",
" x=np.arange(xmin, xmax, 0.1)\n",
"\n",
"\n",
" plt.plot(xtrain, y_train, 'ro', label='Training Data')\n",
" plt.plot(xtest, y_test, 'go', label='Test Data')\n",
" plt.plot(x, lr.predict(poly_transform.fit_transform(x.reshape(-1, 1))), label='Predicted Function')\n",
" plt.ylim([-10000, 60000])\n",
" plt.ylabel('Price')\n",
" plt.legend()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"<h1 id=\"ref1\">Part 1: Training and Testing</h1>\n",
"\n",
"<p>An important step in testing your model is to split your data into training and testing data. We will place the target data <b>price</b> in a separate dataframe <b>y</b>:</p>"
]
},
{
"cell_type": "code",
"execution_count": 8,
"metadata": {
"collapsed": false,
"jupyter": {
"outputs_hidden": false
}
},
"outputs": [],
"source": [
"y_data = df['price']"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"drop price data in x data"
]
},
{
"cell_type": "code",
"execution_count": 9,
"metadata": {},
"outputs": [],
"source": [
"x_data=df.drop('price',axis=1)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Now we randomly split our data into training and testing data using the function <b>train_test_split</b>. "
]
},
{
"cell_type": "code",
"execution_count": 21,
"metadata": {
"collapsed": false,
"jupyter": {
"outputs_hidden": false
}
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"number of test samples : 31\n",
"number of training samples: 170\n"
]
}
],
"source": [
"from sklearn.model_selection import train_test_split\n",
"\n",
"\n",
"x_train, x_test, y_train, y_test = train_test_split(x_data, y_data, test_size=0.15, random_state=1)\n",
"\n",
"\n",
"print(\"number of test samples :\", x_test.shape[0])\n",
"print(\"number of training samples:\",x_train.shape[0])\n"
]
},
{
"cell_type": "code",
"execution_count": 19,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"20"
]
},
"execution_count": 19,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"x_train.shape[1]"
]
},
{
"cell_type": "code",
"execution_count": 10,
"metadata": {},
"outputs": [
{
"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>Unnamed: 0</th>\n",
" <th>Unnamed: 0.1</th>\n",
" <th>symboling</th>\n",
" <th>normalized-losses</th>\n",
" <th>wheel-base</th>\n",
" <th>length</th>\n",
" <th>width</th>\n",
" <th>height</th>\n",
" <th>curb-weight</th>\n",
" <th>engine-size</th>\n",
" <th>bore</th>\n",
" <th>stroke</th>\n",
" <th>compression-ratio</th>\n",
" <th>horsepower</th>\n",
" <th>peak-rpm</th>\n",
" <th>city-mpg</th>\n",
" <th>highway-mpg</th>\n",
" <th>city-L/100km</th>\n",
" <th>diesel</th>\n",
" <th>gas</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>0</th>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>3</td>\n",
" <td>122</td>\n",
" <td>88.6</td>\n",
" <td>0.811148</td>\n",
" <td>0.890278</td>\n",
" <td>48.8</td>\n",
" <td>2548</td>\n",
" <td>130</td>\n",
" <td>3.47</td>\n",
" <td>2.68</td>\n",
" <td>9.0</td>\n",
" <td>111.0</td>\n",
" <td>5000.0</td>\n",
" <td>21</td>\n",
" <td>27</td>\n",
" <td>11.190476</td>\n",
" <td>0</td>\n",
" <td>1</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1</th>\n",
" <td>1</td>\n",
" <td>1</td>\n",
" <td>3</td>\n",
" <td>122</td>\n",
" <td>88.6</td>\n",
" <td>0.811148</td>\n",
" <td>0.890278</td>\n",
" <td>48.8</td>\n",
" <td>2548</td>\n",
" <td>130</td>\n",
" <td>3.47</td>\n",
" <td>2.68</td>\n",
" <td>9.0</td>\n",
" <td>111.0</td>\n",
" <td>5000.0</td>\n",
" <td>21</td>\n",
" <td>27</td>\n",
" <td>11.190476</td>\n",
" <td>0</td>\n",
" <td>1</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2</th>\n",
" <td>2</td>\n",
" <td>2</td>\n",
" <td>1</td>\n",
" <td>122</td>\n",
" <td>94.5</td>\n",
" <td>0.822681</td>\n",
" <td>0.909722</td>\n",
" <td>52.4</td>\n",
" <td>2823</td>\n",
" <td>152</td>\n",
" <td>2.68</td>\n",
" <td>3.47</td>\n",
" <td>9.0</td>\n",
" <td>154.0</td>\n",
" <td>5000.0</td>\n",
" <td>19</td>\n",
" <td>26</td>\n",
" <td>12.368421</td>\n",
" <td>0</td>\n",
" <td>1</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3</th>\n",
" <td>3</td>\n",
" <td>3</td>\n",
" <td>2</td>\n",
" <td>164</td>\n",
" <td>99.8</td>\n",
" <td>0.848630</td>\n",
" <td>0.919444</td>\n",
" <td>54.3</td>\n",
" <td>2337</td>\n",
" <td>109</td>\n",
" <td>3.19</td>\n",
" <td>3.40</td>\n",
" <td>10.0</td>\n",
" <td>102.0</td>\n",
" <td>5500.0</td>\n",
" <td>24</td>\n",
" <td>30</td>\n",
" <td>9.791667</td>\n",
" <td>0</td>\n",
" <td>1</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4</th>\n",
" <td>4</td>\n",
" <td>4</td>\n",
" <td>2</td>\n",
" <td>164</td>\n",
" <td>99.4</td>\n",
" <td>0.848630</td>\n",
" <td>0.922222</td>\n",
" <td>54.3</td>\n",
" <td>2824</td>\n",
" <td>136</td>\n",
" <td>3.19</td>\n",
" <td>3.40</td>\n",
" <td>8.0</td>\n",
" <td>115.0</td>\n",
" <td>5500.0</td>\n",
" <td>18</td>\n",
" <td>22</td>\n",
" <td>13.055556</td>\n",
" <td>0</td>\n",
" <td>1</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"text/plain": [
" Unnamed: 0 Unnamed: 0.1 symboling normalized-losses wheel-base \\\n",
"0 0 0 3 122 88.6 \n",
"1 1 1 3 122 88.6 \n",
"2 2 2 1 122 94.5 \n",
"3 3 3 2 164 99.8 \n",
"4 4 4 2 164 99.4 \n",
"\n",
" length width height curb-weight engine-size bore stroke \\\n",
"0 0.811148 0.890278 48.8 2548 130 3.47 2.68 \n",
"1 0.811148 0.890278 48.8 2548 130 3.47 2.68 \n",
"2 0.822681 0.909722 52.4 2823 152 2.68 3.47 \n",
"3 0.848630 0.919444 54.3 2337 109 3.19 3.40 \n",
"4 0.848630 0.922222 54.3 2824 136 3.19 3.40 \n",
"\n",
" compression-ratio horsepower peak-rpm city-mpg highway-mpg \\\n",
"0 9.0 111.0 5000.0 21 27 \n",
"1 9.0 111.0 5000.0 21 27 \n",
"2 9.0 154.0 5000.0 19 26 \n",
"3 10.0 102.0 5500.0 24 30 \n",
"4 8.0 115.0 5500.0 18 22 \n",
"\n",
" city-L/100km diesel gas \n",
"0 11.190476 0 1 \n",
"1 11.190476 0 1 \n",
"2 12.368421 0 1 \n",
"3 9.791667 0 1 \n",
"4 13.055556 0 1 "
]
},
"execution_count": 10,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"x_data.head()"
]
},
{
"cell_type": "code",
"execution_count": 12,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"0 13495.0\n",
"1 16500.0\n",
"2 16500.0\n",
"3 13950.0\n",
"4 17450.0\n",
"Name: price, dtype: float64"
]
},
"execution_count": 12,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"y_data.head()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"The <b>test_size</b> parameter sets the proportion of data that is split into the testing set. In the above, the testing set is set to 10% of the total dataset. "
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"<div class=\"alert alert-danger alertdanger\" style=\"margin-top: 20px\">\n",
"<h1> Question #1):</h1>\n",
"\n",
"<b>Use the function \"train_test_split\" to split up the data set such that 40% of the data samples will be utilized for testing, set the parameter \"random_state\" equal to zero. The output of the function should be the following: \"x_train_1\" , \"x_test_1\", \"y_train_1\" and \"y_test_1\".</b>\n",
"</div>"
]
},
{
"cell_type": "code",
"execution_count": 22,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"number of test1 sampeles: 81\n",
"number of train1 sampeles: 120\n"
]
}
],
"source": [
"# Write your code below and press Shift+Enter to execute \n",
"from sklearn.model_selection import train_test_split\n",
"x_train1,x_test1,y_train1,y_test1=train_test_split(x_data,y_data, test_size=0.4, random_state=0)\n",
"\n",
"print(\"number of test1 sampeles:\", x_test1.shape[0])\n",
"print(\"number of train1 sampeles:\", x_train1.shape[0])"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Double-click <b>here</b> for the solution.\n",
"\n",
"<!-- The answer is below:\n",
"\n",
"x_train1, x_test1, y_train1, y_test1 = train_test_split(x_data, y_data, test_size=0.4, random_state=0) \n",
"print(\"number of test samples :\", x_test1.shape[0])\n",
"print(\"number of training samples:\",x_train1.shape[0])\n",
"\n",
"-->"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Let's import <b>LinearRegression</b> from the module <b>linear_model</b>."
]
},
{
"cell_type": "code",
"execution_count": 23,
"metadata": {
"collapsed": false,
"jupyter": {
"outputs_hidden": false
}
},
"outputs": [],
"source": [
"from sklearn.linear_model import LinearRegression"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
" We create a Linear Regression object:"
]
},
{
"cell_type": "code",
"execution_count": 24,
"metadata": {
"collapsed": false,
"jupyter": {
"outputs_hidden": false
}
},
"outputs": [],
"source": [
"lre=LinearRegression()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"we fit the model using the feature horsepower "
]
},
{
"cell_type": "code",
"execution_count": 25,
"metadata": {
"collapsed": false,
"jupyter": {
"outputs_hidden": false
}
},
"outputs": [
{
"data": {
"text/plain": [
"LinearRegression(copy_X=True, fit_intercept=True, n_jobs=None,\n",
" normalize=False)"
]
},
"execution_count": 25,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"lre.fit(x_train[['horsepower']], y_train)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Let's Calculate the R^2 on the test data:"
]
},
{
"cell_type": "code",
"execution_count": 26,
"metadata": {
"collapsed": false,
"jupyter": {
"outputs_hidden": false
}
},
"outputs": [
{
"data": {
"text/plain": [
"0.707688374146705"
]
},
"execution_count": 26,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"lre.score(x_test[['horsepower']], y_test)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"we can see the R^2 is much smaller using the test data."
]
},
{
"cell_type": "code",
"execution_count": 27,
"metadata": {
"collapsed": false,
"jupyter": {
"outputs_hidden": false
}
},
"outputs": [
{
"data": {
"text/plain": [
"0.6449517437659684"
]
},
"execution_count": 27,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"lre.score(x_train[['horsepower']], y_train)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"<div class=\"alert alert-danger alertdanger\" style=\"margin-top: 20px\">\n",
"<h1> Question #2): </h1>\n",
"<b> \n",
"Find the R^2 on the test data using 90% of the data for training data\n",
"</b>\n",
"</div>"
]
},
{
"cell_type": "code",
"execution_count": 29,
"metadata": {
"collapsed": false,
"jupyter": {
"outputs_hidden": false
}
},
"outputs": [
{
"data": {
"text/plain": [
"0.7340722810055448"
]
},
"execution_count": 29,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"# Write your code below and press Shift+Enter to execute \n",
"from sklearn.model_selection import train_test_split\n",
"from sklearn.linear_model import LinearRegression\n",
"lre1=LinearRegression()\n",
"\n",
"x_train2, x_test2, y_train2, y_test2 =train_test_split(x_data, y_data, test_size=0.1, random_state=0)\n",
"lre1.fit(x_train2[['horsepower']],y_train2)\n",
"lre1.score(x_test2[['horsepower']], y_test2)"
]
},
{
"cell_type": "code",
"execution_count": 30,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"0.6479796296498318"
]
},
"execution_count": 30,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"lre1.score(x_train2[['horsepower']],y_train2)"
]
},
{
"cell_type": "raw",
"metadata": {},
"source": [
"lre1.score(x_train2[['horsepower']],y_train2)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Double-click <b>here</b> for the solution.\n",
"\n",
"<!-- The answer is below:\n",
"\n",
"x_train1, x_test1, y_train1, y_test1 = train_test_split(x_data, y_data, test_size=0.1, random_state=0)\n",
"lre.fit(x_train1[['horsepower']],y_train1)\n",
"lre.score(x_test1[['horsepower']],y_test1)\n",
"\n",
"-->"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
" Sometimes you do not have sufficient testing data; as a result, you may want to perform Cross-validation. Let's go over several methods that you can use for Cross-validation. "
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"<h2>Cross-validation Score</h2>"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Lets import <b>model_selection</b> from the module <b>cross_val_score</b>."
]
},
{
"cell_type": "code",
"execution_count": 31,
"metadata": {
"collapsed": false,
"jupyter": {
"outputs_hidden": false
}
},
"outputs": [],
"source": [
"from sklearn.model_selection import cross_val_score"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"We input the object, the feature in this case ' horsepower', the target data (y_data). The parameter 'cv' determines the number of folds; in this case 4. "
]
},
{
"cell_type": "code",
"execution_count": 32,
"metadata": {
"collapsed": false,
"jupyter": {
"outputs_hidden": false
}
},
"outputs": [],
"source": [
"Rcross = cross_val_score(lre, x_data[['horsepower']], y_data, cv=4)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"The default scoring is R^2; each element in the array has the average R^2 value in the fold:"
]
},
{
"cell_type": "code",
"execution_count": 33,
"metadata": {
"collapsed": false,
"jupyter": {
"outputs_hidden": false
}
},
"outputs": [
{
"data": {
"text/plain": [
"array([0.7746232 , 0.51716687, 0.74785353, 0.04839605])"
]
},
"execution_count": 33,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"Rcross"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
" We can calculate the average and standard deviation of our estimate:"
]
},
{
"cell_type": "code",
"execution_count": 34,
"metadata": {
"collapsed": false,
"jupyter": {
"outputs_hidden": false
}
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"The mean of the folds are 0.522009915042119 and the standard deviation is 0.2911839444756029\n"
]
}
],
"source": [
"print(\"The mean of the folds are\", Rcross.mean(), \"and the standard deviation is\" , Rcross.std())"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"We can use negative squared error as a score by setting the parameter 'scoring' metric to 'neg_mean_squared_error'. "
]
},
{
"cell_type": "code",
"execution_count": 35,
"metadata": {
"collapsed": false,
"jupyter": {
"outputs_hidden": false
}
},
"outputs": [
{
"data": {
"text/plain": [
"array([20254142.84026704, 43745493.26505169, 12539630.34014931,\n",
" 17561927.72247591])"
]
},
"execution_count": 35,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"-1 * cross_val_score(lre,x_data[['horsepower']], y_data,cv=4,scoring='neg_mean_squared_error')"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"<div class=\"alert alert-danger alertdanger\" style=\"margin-top: 20px\">\n",
"<h1> Question #3): </h1>\n",
"<b> \n",
"Calculate the average R^2 using two folds, find the average R^2 for the second fold utilizing the horsepower as a feature : \n",
"</b>\n",
"</div>"
]
},
{
"cell_type": "code",
"execution_count": 37,
"metadata": {
"collapsed": false,
"jupyter": {
"outputs_hidden": false
}
},
"outputs": [
{
"data": {
"text/plain": [
"0.5166761697127429"
]
},
"execution_count": 37,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"# Write your code below and press Shift+Enter to execute \n",
"from sklearn.model_selection import cross_val_score\n",
"Rsqu=cross_val_score(lre, x_data[['horsepower']], y_data, cv=2)\n",
"Rsqu.mean()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Double-click <b>here</b> for the solution.\n",
"\n",
"<!-- The answer is below:\n",
"\n",
"Rc=cross_val_score(lre,x_data[['horsepower']], y_data,cv=2)\n",
"Rc.mean()\n",
"\n",
"-->"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"You can also use the function 'cross_val_predict' to predict the output. The function splits up the data into the specified number of folds, using one fold to get a prediction while the rest of the folds are used as test data. First import the function:"
]
},
{
"cell_type": "code",
"execution_count": 38,
"metadata": {},
"outputs": [],
"source": [
"from sklearn.model_selection import cross_val_predict"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"We input the object, the feature in this case <b>'horsepower'</b> , the target data <b>y_data</b>. The parameter 'cv' determines the number of folds; in this case 4. We can produce an output:"
]
},
{
"cell_type": "code",
"execution_count": 39,
"metadata": {
"collapsed": false,
"jupyter": {
"outputs_hidden": false
}
},
"outputs": [
{
"data": {
"text/plain": [
"array([14141.63807508, 14141.63807508, 20814.29423473, 12745.03562306,\n",
" 14762.35027598])"
]
},
"execution_count": 39,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"yhat = cross_val_predict(lre,x_data[['horsepower']], y_data,cv=4)\n",
"yhat[0:5]"
]
},
{
"cell_type": "code",
"execution_count": 50,
"metadata": {},
"outputs": [
{
"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>0</th>\n",
" <th>price</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>0</th>\n",
" <td>14141.638075</td>\n",
" <td>13495.0</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1</th>\n",
" <td>14141.638075</td>\n",
" <td>16500.0</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2</th>\n",
" <td>20814.294235</td>\n",
" <td>16500.0</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3</th>\n",
" <td>12745.035623</td>\n",
" <td>13950.0</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4</th>\n",
" <td>14762.350276</td>\n",
" <td>17450.0</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"text/plain": [
" 0 price\n",
"0 14141.638075 13495.0\n",
"1 14141.638075 16500.0\n",
"2 20814.294235 16500.0\n",
"3 12745.035623 13950.0\n",
"4 14762.350276 17450.0"
]
},
"execution_count": 50,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"pd.concat([pd.DataFrame(yhat),y_data],axis=1).head()"
]
},
{
"cell_type": "code",
"execution_count": 51,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"pandas.core.series.Series"
]
},
"execution_count": 51,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"type(y_data)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"<h1 id=\"ref2\">Part 2: Overfitting, Underfitting and Model Selection</h1>\n",
"\n",
"<p>It turns out that the test data sometimes referred to as the out of sample data is a much better measure of how well your model performs in the real world. One reason for this is overfitting; let's go over some examples. It turns out these differences are more apparent in Multiple Linear Regression and Polynomial Regression so we will explore overfitting in that context.</p>"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Let's create Multiple linear regression objects and train the model using <b>'horsepower'</b>, <b>'curb-weight'</b>, <b>'engine-size'</b> and <b>'highway-mpg'</b> as features."
]
},
{
"cell_type": "code",
"execution_count": 52,
"metadata": {
"collapsed": false,
"jupyter": {
"outputs_hidden": false
}
},
"outputs": [
{
"data": {
"text/plain": [
"LinearRegression(copy_X=True, fit_intercept=True, n_jobs=None,\n",
" normalize=False)"
]
},
"execution_count": 52,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"lr = LinearRegression()\n",
"lr.fit(x_train[['horsepower', 'curb-weight', 'engine-size', 'highway-mpg']], y_train)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Prediction using training data:"
]
},
{
"cell_type": "code",
"execution_count": 53,
"metadata": {
"collapsed": false,
"jupyter": {
"outputs_hidden": false
}
},
"outputs": [
{
"data": {
"text/plain": [
"array([11927.70699817, 11236.71672034, 6436.91775515, 21890.22064982,\n",
" 16667.18254832])"
]
},
"execution_count": 53,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"yhat_train = lr.predict(x_train[['horsepower', 'curb-weight', 'engine-size', 'highway-mpg']])\n",
"yhat_train[0:5]"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Prediction using test data: "
]
},
{
"cell_type": "code",
"execution_count": 54,
"metadata": {
"collapsed": false,
"jupyter": {
"outputs_hidden": false
}
},
"outputs": [
{
"data": {
"text/plain": [
"array([11349.16502418, 5914.48335385, 11243.76325987, 6662.03197043,\n",
" 15555.76936275])"
]
},
"execution_count": 54,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"yhat_test = lr.predict(x_test[['horsepower', 'curb-weight', 'engine-size', 'highway-mpg']])\n",
"yhat_test[0:5]\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Let's perform some model evaluation using our training and testing data separately. First we import the seaborn and matplotlibb library for plotting."
]
},
{
"cell_type": "code",
"execution_count": 55,
"metadata": {},
"outputs": [],
"source": [
"import matplotlib.pyplot as plt\n",
"%matplotlib inline\n",
"import seaborn as sns"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Let's examine the distribution of the predicted values of the training data."
]
},
{
"cell_type": "code",
"execution_count": 56,
"metadata": {
"collapsed": false,
"jupyter": {
"outputs_hidden": false
}
},
"outputs": [
{
"name": "stderr",
"output_type": "stream",
"text": [
"/home/jupyterlab/conda/envs/python/lib/python3.6/site-packages/scipy/stats/stats.py:1713: FutureWarning: Using a non-tuple sequence for multidimensional indexing is deprecated; use `arr[tuple(seq)]` instead of `arr[seq]`. In the future this will be interpreted as an array index, `arr[np.array(seq)]`, which will result either in an error or a different result.\n",
" return np.add.reduce(sorted[indexer] * weights, axis=axis) / sumval\n"
]
},
{
"data": {
"image/png": "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vTZexy0iIiKp49ChQ6xbt479+/cnOhQp56pVq0bjxo2pXLly1OvEdRz1VJaVleXUmVRERKR8W7VqFTVq1KBOnTr427uIxJ5zjm3btpGTk0OzZs3yzTOzuc65rEjr6c6kIiIiUmHt379fSbrEnZlRp06dEl+5UaIuIiIiFZqSdCkLpTnPlKiLiIiIiCQhJeoiIiIiIklIibqIiIhIgo0ZMwYz45tvvil22VGjRrFhQ8Fb00Rv6tSpXHLJJfmmff/999SpU4ddu3blm37ppZfy9ttvl2hbsfbkk0/yyiuvcPPNN5OZmUmrVq3IyMggMzOTzMxM3nnnnai3NWbMGB577LEil9m4cSMDBw483rBjIm7DM4qIiIhIdN588026du3K6NGjuf/++4tcdtSoUbRp04ZTTz01Zvs/4YQT6NevH++//z4jR/rb1ezatYvPP/+cN954I2b7Kanc3Fxeeukl5s2bx4gRIwBYvXo1l1xyCfPnzy90nfT0yCnukCFDit1nw4YNqV27NjNnzqRTp06lDz4GlKiLiIiIANx+OxSS/JVaZiY8+WSRi+zZs4fp06czZcoUBg0alC9Rf/TRR3n11VepVKkSAwYMICsrizlz5nD11VeTkZHBjBkzaNmyJXPmzKFu3brMmTOHO+64g6lTpzJr1ixuv/129u3bR0ZGBv/85z85++yzC41j+PDhPPvss3mJ+pgxY+jfvz/Vq1ePalv3338/J554InfccQcAbdq04cMPP6Rp06a89tprPPXUUxw8eJBOnTrxzDPPAHD99dczZ84czIzrrruOX/3qV/m2OXnyZNq3b19o4h3StWtXevTowWeffcZll11Gs2bN+NOf/sTBgwepV68er732GvXr1+cf//gHixYt4sknn+THP/4xderUYfbs2WzcuJHHH388L5G/9NJLef3115Woi4iIiFRk77//Pv379+ess86idu3azJs3j/bt2/Of//yH999/n5kzZ1K9enW2b99O7dq1+dvf/sZf/vIXsrIiDr2dp0WLFkybNo309HQmTpzIPffcw7vvvlvo8v379+eGG25g27Zt1KlTh9GjR/PLX/6yVNsK9/XXX/PWW28xffp0KleuzC9+8Qtef/11Wrduzfr161m0aBEAO3fuPGbd6dOn06FDh6j2s3v3bqZNmwbAjh07GDRoEGbGc889x+OPP86f//znY9bZvHkz06dPZ+HChQwbNiwvUc/KyuLBBx+Mar/xpERdREREBIpt+Y6XN998k9tvvx2Aq666ijfffJP27dszceJEfvKTn1C9enUAateuXaLt7tq1i5EjR7J8+XLMjEOHDhW5fJUqVRg0aBDvvPMOQ4cOZf78+fTr169U2wo3adIk5s6dS8eOHQHYt28f9evX54c//CErV67kl7/8JQMHDszbV7js7GxatmwZ1X6uuuqqvN+/++47hg0bxsaNGzlw4ABnnXVWxHUuvfRSzIy2bduyfv36vOn169c/rn4AsaJEXURERCRBtm3bxuTJk1m0aBFmxuHDhzEzHn30UZxzUY29nZ6ezpEjRwDy3VDn97//PRdeeCFjxoxh9erV9OzZs9htDR8+nAcffBDnHIMHD8673X002wqPIzwW5xwjR47k4YcfPmadBQsW8Mknn/D000/z9ttv89JLL+Wbn5GREfVNgk444YS832+++WbuueceLr74YiZOnMgjjzwScZ2qVavm/e6cyxd7RkZGVPuNJ436IiIiIpIg77zzDiNGjGDNmjWsXr2atWvX0qxZMz7//HP69evHSy+9xN69ewHYvn07ADVq1CAnJydvG02bNmXu3LkA+cpRdu3aRaNGjQDfATUaF154IcuXL+fpp59m+PDhJdpW06ZNmTdvHgDz5s1j1apVAPTu3Zt33nmHzZs35x3HmjVr2Lp1K0eOHGHo0KE88MADeeuGa9myJStWrIgq9nCheJ1zvPzyyyVef9myZbRp06bE68WaEnURERGRBHnzzTePGYlk6NChvPHGG/Tv359BgwaRlZVFZmYmf/nLXwC49tpruemmm8jMzGTfvn3cd9993HbbbXTr1o20tLS87fzmN7/h7rvvpkuXLhw+fDiqeCpVqsTQoUPZtm0b3bt3L9G2hg4dyvbt28nMzOTZZ5/NKzdp1aoVDz74IP369aNt27b07duX7Oxs1q9fT8+ePcnMzOTaa6+N2OI+YMCAvLrzkrj//vsZMmQIPXr0oEGDBiVef8qUKUkxRKOFN/PLUVlZWW7OnDmJDkNERETi6Ouvv466BloSY8iQITz66KM0b968TPbnnKNbt2589NFH1KxZM6bbjnS+mdlc51zEnsFqURcRERGRpPXII4+QnZ1dZvvbvHkzv/nNb2KepJeGOpOKiIiISNI6++yzixz/PdYaNGjAoEGDymx/RVGLuoiIiIhIElKiLiIiIiKShJSoi4iIiIgkIdWoi4h34AAsXAhz5sCXX0L//lBgyDAREREpO2pRF6nosrOhe3eoUQM6doSf/xxefBGuuQZWr050dCIi5V5aWhqZmZm0adOGK664Iu8GR6UxdepULrnkEgDGjh1b6B05AXbu3MkzzzxT4n3cf//9eWO6h++3c+fO+abl5ubSoEGDIkdsibStWLv88stZuXIlnTp1IjMzk9NOO4169eqRmZlJZmYmq0vwv+53v/sdU6ZMKXKZ999/nwceeOA4o/aUqItUdH/+M8yYAb/6FfzrX7ByJaxYAWZw442gey2IiMRVRkYG8+fPZ9GiRVSpUoXnnnsu33znHEeOHCnxdgcNGsRdd91V6PzSJuqRdO/enXXr1uVLeidOnEibNm045ZRTYrKP0li8eDGHDx/m9NNPZ+bMmcyfP58//vGPXHnllcyfP5/58+fTtGnTfOsUdXOohx56iAsvvLDIfQ4ePJh3332X/fv3H3f8StRFKrItW+CFF+Dqq33Cfvnl0KwZNG3q/54wAf75z0RHKSJSJm6/HXr2jO3P7beXLIZu3bqxYsUKVq9eTcuWLfnFL35B+/btWbt2LePHj6dz5860b9+eK664gj179gDw8ccf06JFC7p27cp7772Xt61Ro0Zxyy23ALBp0yaGDBnCueeey7nnnst///tf7rrrLr799lsyMzO58847AXjsscfo2LEjbdu25b777svb1kMPPcTZZ59Nnz59WLp06TFxV6pUiSuuuIK33norb9ro0aMZPnw4AC+88AIdO3bk3HPPZejQoRGvGvTs2ZPQzSa3bt2al0AfPnyYO++8My+uv//97wBkZ2fTvXv3vKsRn3322THbfP311xk8eHCRz3lubi61atXi3nvv5bzzzmPWrFncd999dOzYkTZt2nDTTTcRukHoj3/8Y95//30AGjduzP3330+7du1o27Yty5YtA8DM6NatG+PGjStyv9FQoi5SkT31FOzbB7/97bHzbrrJl8T8z//Ahg1lH5uISAWTm5vLf/7zH8455xwAli5dyogRI/jyyy854YQTePDBB5k4cSLz5s0jKyuLJ554gv379/PTn/6UDz74gM8++4yNGzdG3Patt95Kjx49WLBgAfPmzaN169Y88sgjnHHGGcyfP5/HHnuM8ePHs3z5cmbNmsX8+fOZO3cu06ZNY+7cuYwePZovv/yS9957j9mzZ0fcx/Dhwxk9ejQABw4cYNy4cQwdOhSAyy67jNmzZ7NgwQJatmzJiy++GPXz8uKLL1KzZk1mz57N7NmzeeGFF1i1ahVvvPEGF110EfPnz2fBggVkZmYes+706dPp0KFDsfvYtWsX7du3Z9asWXTu3JnbbruN2bNns3DhQnbt2sXHH38ccb0GDRrw5ZdfcsMNN/DEE0/kTc/Kyor4xaGk1JlUpKLavRv+9jffYTTS7bMrVfK16m3b+qT93//25TAiIuXUk08mZr/79rCDdOcAACAASURBVO3LSzK7devG9ddfz4YNG2jSpAnnn38+AF988QVLliyhS5cuABw8eJDOnTvzzTff0KxZM5o3bw74Ft/nn3/+mH1MnjyZV155BfA18TVr1mTHjh35lhk/fjzjx4+nXbt2AOzZs4fly5eTk5PDkCFDqF69OkChNwPq2LEje/bsYenSpXz99decf/75nHzyyQAsWrSIe++9l507d7Jnzx4uuuiiqJ+f8ePH89VXX/HOO+8APqlevnw5HTt25LrrruPQoUNceumlERP17Oxs6tWrV+w+qlSpwpCwARQmTZrEY489xv79+9m6dSsdOnRgwIABx6x32WWXAdChQ4d8Lej169dnQwwauZSoi1RUzz0HO3fC3XcXvsyZZ8KDD8Kvfw2jR0NwCVNERGInVKNe0AknnJD3u3OOvn378uabb+ZbZv78+ViMGlGcc9x999387Gc/yzf9ySefjHofV111FaNHj+brr7/OK3sBuPbaa3n//fc599xzGTVqFFOnTj1m3fT09Lxa/PD6bucc//d//xcxuZ82bRofffQR11xzDXfeeScjRozINz8jIyOqWvGMjIy8Y9y7dy+33HIL8+bNo1GjRtx7772FbqNq1aqA//KTm5ubN33//v1kZGQUu9/iqPRFpCLatw+eeAL69oWsrKKXve026NQJbr0VYtAxRkRESu78889n+vTprFixAvDJ5LJly2jRogWrVq3i22+/BTgmkQ/p3bs3zz77LOBrvnfv3k2NGjXIycnJW+aiiy7ipZdeyqt9X79+PZs3b6Z79+6MGTOGffv2kZOTwwcffFBonMOHD+e1115j8uTJ+Vrec3JyOOWUUzh06BCvv/56xHWbNm3K3LlzAfJaz0Nx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OiIRSRVK1CUljBsHxx8PTZoUOJGbC19+qbIXkaC0amXJunPQvXvc1qz36QOPP27t4P/yl6CjEZFUoZVdJOktXGglsE88UcjJH36A335T2YtIkA49FL74wrLhk06yRuZnnhl0VPu48UYb9B85Eg47DC65JOiIImDXLvuhvv8e5syBVatgzRqbt7N2rX18ULkyVKliW+3a0LYttG9vW4cOhSzzLCKRokRdkt4779i+yLIXsJE8EQlO27bw7bcwYID9ZR01ytqtxFEnJuesVePChXDVVVZmn3C/OrZvh//+Fz7+GL7+2kYxcnLsXJUqNtu+QQN783TSSbZSc04ObNtm+7VrrZbwhRd+f80OHayAv39/OOYYKKcP60UixXmt5FCoLl26+BkzZgQdhpRRbi60bGmd4PLmjO7l1FNh5cq4ncgmknJycuDSS+0d9hVXwLPPWg17HPnlF1s4belS+yCgS5egIyrBunXw3nvw4Yc2OLFlC1SoAMcea8F37gydOkGbNtY+syTe26j7Tz/Zp5Iffwz/+Y/9wq1fH845B66/XutSiITJOTfTe1/obxIl6kVQop4cJkywtmr/+lchn6T/8ouNHN1yCzzySCDxiUghdu+GoUNhxAhLJN94w0Z448iKFbYo0qZNlqPGXU7622+WnI8da8l5bq5N3u3Txxac6t7dOu5Eyq+/wiefWBH/++/Djh1WUvinP0HfvuG9ARBJUUrU94MS9UoQjh8AAB0sSURBVORwyimQkQHZ2fYJ7l5eesk+v54xw0aURCS+vPceXHmllV08/jgMHhxXpTCZmZasp6VZFckhhwQcUG6u9ad/5RUbpdixwz5OHDQIBg6Eww+PzX+/devs9+uzz8Ly5fYG4b77rGWOEnaRfRSXqKuQTJLWvHk2kHTttYUk6QBvv211MZ06xTw2EQnDmWdaT8QTToBrrrH69bVrg45qj1at4N//tkqSnj2tGiQQWVlwzz3QrJmNmH/+uf3i++47ezfx4INwxBGxe5NTrx7cfTcsWmT17AceCJddZm8U3n3XSmdEJCxK1CVpjRkDlSrZgNw+1q61f8wGDYqrEToRKaBxYyupeOIJy4rbtrWR2l27go4MsPz3o49sqsupp8L69TF68Nat8Npr0K2bvWN4+GE48khLjFeuhCefhKOPDvb3W1qaTQz+7jurP3TO6tePPtra4opI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\n",
"text/plain": [
"<Figure size 864x720 with 1 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"Title = 'Distribution Plot of Predicted Value Using Training Data vs Training Data Distribution'\n",
"DistributionPlot(y_train, yhat_train, \"Actual Values (Train)\", \"Predicted Values (Train)\", Title)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Figure 1: Plot of predicted values using the training data compared to the training data. "
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"So far the model seems to be doing well in learning from the training dataset. But what happens when the model encounters new data from the testing dataset? When the model generates new values from the test data, we see the distribution of the predicted values is much different from the actual target values. "
]
},
{
"cell_type": "code",
"execution_count": 57,
"metadata": {
"collapsed": false,
"jupyter": {
"outputs_hidden": false
}
},
"outputs": [
{
"data": {
"image/png": "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7ExgWDBSzK+ACUAm/iBSHUgqIiIikoR69OhBjx49qr5jDR111FFxa7u64jnqC865N/FhPHzao2F/O+A3sc4bTF8HnFjJPF0qmT6DPYdsFBERERGpt3RmUhERERGRekhBXURERESkHlJQF5Gae/ZZuPFG+PHHRFciIiKSchTURaT6nIO774af/xzuuw/69IH33090VSIiKSEjI4Pc3Fx69+7NueeeW3aCo5qYOnUqp512GgCvvfYaY8eOrfS+69ev55FHHqn2Mm6//fY9RkmZOnUqgwYNKjetpKSE9u3bRx2xJVJbte2cc85hyZIlHHXUUeTm5nLwwQfTrl07cnNzyc3NpaCgoFrtvfLKKyxYsKDs/2uvvTamsd5joaAuItVTWgpXXQW33gpjxsC0aZCZCSedBL/+NWzalOgKRUSSWmZmJnl5ecydO5fGjRvz6KOPlrvdOceuXbuq3e7pp5/OzTffXOntNQ3qkQwdOpSioqJyofe9996jd+/edOjQoVaWURPz5s2jtLSUQw45hM8//5y8vDzuvPNOzjvvPPLy8sjLy6NLly7VarNiUP/tb38b8WRNNaGgLiKx27YNzjsPHnnEd3mZMAGGDIGvvoLf/Q4efRQOPxw2b050pSIie+3aa+G442r3cu211athyJAhLF68mIKCAnr27Mmvf/1r+vfvT2FhIVOmTGHQoEH079+fc889l03BjpK3336b7OxsjjnmGF555ZWytiZMmMBVV10FwHfffcdZZ51FTk4OOTk5fPrpp9x88818++235ObmcsMNNwBw3333ccQRR9C3b19uu+22srb+9Kc/0aNHD0466SQWLly4R90NGjTg3HPP5YUXXiibNnHiREaPHg3A448/zhFHHEFOTg6jRo2K+KvBcccdR+jkk2vXri0L0KWlpdxwww1ldf3jH/8AYOXKlQwdOrTs14iPP/54jzafffZZzjjjjCq3+1tvvVW2bc877zw2B59rN9xwA7169aJv377cdNNNfPzxx7z55ptcd911ZXvju3XrxsqVK1mzZk2Vy6mKgrqIxG7MGHj5ZXjgAfjf/wUzPz0zE/76V3j9dVi0CJ54IrF1ioikgJKSEt566y369OkDwMKFCxkzZgxfffUVzZs35+677+a9995j1qxZDBgwgPvvv59t27bxy1/+ktdff52PP/6YVatWRWz76quv5thjj2X27NnMmjWLww47jLFjx9KtWzfy8vK47777mDJlCvn5+XzxxRfk5eUxc+ZMpk2bxsyZM5k4cSJfffUVr7zyCl9++WXEZYwePZqJEycCsH37dt58801GjRoFwNlnn82XX37J7Nmz6dmzJ09U43PjiSeeoFWrVnz55Zd8+eWXPP744yxdupTnnnuO4cOHk5eXx+zZs8nNzd1j3unTp3P44YdHbX/16tWMHTuW999/n1mzZtG3b18eeughvvvuO958803mzZvHnDlzuOWWWxgyZAinnnoqDzzwQLm98f369ePTTz+NeZ0qE9dx1EUkhfHpBSYAACAASURBVCxdCpMmwe9/X/kuoZEj4ZhjfGj/1a+gUaO6rVFEpBY9+GBilrt169aykDlkyBAuu+wyVqxYQefOnRk4cCAAn332Gd988w1HH300ADt27GDQoEEsWLCArl270r17dwB+/vOf89hjj+2xjA8++ICnnnoK8H3iW7VqxQ8//FDuPlOmTGHKlCn069cPgE2bNpGfn8/GjRs566yzaNasGeC71ERyxBFHsGnTJhYuXMj8+fMZOHAgbdq0AWDu3Ln84Q9/YP369WzatInhw4fHvH2mTJnCnDlzmDRpEgAbNmwgPz+fI444gksvvZSdO3dy5plnRgzqK1eupF27dlHb//TTT/nmm28YPHgw4LftMcccw7777kuDBg345S9/yciRI8v6/key//77s2LFipjXqTIK6iISmyee8HvQr7wy+v1uvhlOOw0mToQLL6yb2kREUkioj3pFzZs3L/vbOcfJJ5/M888/X+4+eXl5WOjXzr3knOOWW27hiiuuKDf9wQcfjHkZ559/PhMnTmT+/Pll3V4ALr74Yl599VVycnKYMGECU6dO3WPehg0blvXF37ZtW7m6/v73v0cM99OmTeM///kPF154ITfccANjxowpd3tmZma5tiJxzjFixAiefvrpPW6bMWMG7777LhMnTmTcuHFMmTIlYhvbtm0jMzMz6nJioa4vIlK1khIYPx5OOQUOOij6fU89FXr39l1janCwk4iIVG3gwIFMnz6dxYsXA7BlyxYWLVpEdnY2S5cu5dtvvwXYI8iHnHjiiYwbNw7wfb5//PFHWrZsycaNG8vuM3z4cMaPH1/W9724uJjVq1czdOhQJk+ezNatW9m4cSOvv/56pXWOHj2aZ555hg8++KDcnveNGzfSoUMHdu7cybPPPhtx3i5dujBz5kyAsr3nobrGjRvHzp07AVi0aBGbN29m2bJl7L///vzyl7/ksssuY9asWXu02bNnz7JtVpnBgwfz0UcfsWTJEgA2b95c9kvCjz/+yGmnncYDDzzAV199BbDHdgvV1Lt376jLiYWCuohU7T//gZUr4fLLq76vGdx0E8yb5+cTEZFa165dOyZMmMDo0aPp27cvAwcOZMGCBTRt2pTHHnuMkSNHcswxx9C5c+eI8z/00EN8+OGH9OnTh8MPP5x58+bRtm1bjj76aHr37s0NN9zAsGHD+NnPfsagQYPo06cP55xzDhs3biw7wDI3N5dRo0YxZMiQSuvs1asXzZo144QTTij3i8Bdd93FUUcdxcknn0x2dnbEea+//nrGjRvH4MGDWbt2bdn0X/ziF/Tq1Yv+/fvTu3dvrrjiCkpKSpg6dSq5ubn069ePl19+mWuuuWaPNkeOHBlx73249u3b88QTT3DeeeeRk5PD4MGDWbRoERs2bGDkyJHk5ORwwgkncP/99wP+y8if//znsoNJt2/fTkFBQVmXob1hzrm9biQVDRgwwIWONBZJeyNHQl4eLFsGDWPoMbdzJ3TvDh07wvTpuw86FRGp5+bPn0/Pnj0TXYbEydatWzn++OOZPn06GRkZcVnGSy+9xDfffFNulJyQSM8vM5vpnBsQqS3tUReR6JYvh7fegksvjS2kgz+I9Prr4b//hU8+iW99IiIiMcrMzOSOO+6guLg4bstwznHdddfVSlsK6iISXWjIrMsuq958l14K++3n+6qLiCQR9TZIbcOHD+fggw+OW/s//elP2WefffaYXpPnlYK6iFQudBDp8OFQzTO10awZXH2176cedsY2EZH6rGnTpqxbt05hXWqVc45169bRtGnTas2n4RlFpHJvvw1FRfC3v9Vs/ksvhT/+EV57DSo5WEhEpD7p1KkTRUVFtXJWSZFwTZs2pVOnTtWaRweTVkIHk4oAp58OX3wBhYU1P3lRbi60bg1VHGUvIiKSjnQwqYhU36ZN/iDSCy/cuzOMnnqqP6B0/fraq01ERCQNKKiLSGT//a/vo37SSXvXzsiRUFoK775bO3WJiIikCQV1EYnso48gIwMGD967do46Ctq00cmPREREqklBXUQimzYN+veHli33rp2GDf2oMW+9Bbt2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\n",
"text/plain": [
"<Figure size 864x720 with 1 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"Title='Distribution Plot of Predicted Value Using Test Data vs Data Distribution of Test Data'\n",
"DistributionPlot(y_test,yhat_test,\"Actual Values (Test)\",\"Predicted Values (Test)\",Title)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Figur 2: Plot of predicted value using the test data compared to the test data. "
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"<p>Comparing Figure 1 and Figure 2; it is evident the distribution of the test data in Figure 1 is much better at fitting the data. This difference in Figure 2 is apparent where the ranges are from 5000 to 15 000. This is where the distribution shape is exceptionally different. Let's see if polynomial regression also exhibits a drop in the prediction accuracy when analysing the test dataset.</p>"
]
},
{
"cell_type": "code",
"execution_count": 58,
"metadata": {
"collapsed": false,
"jupyter": {
"outputs_hidden": false
}
},
"outputs": [],
"source": [
"from sklearn.preprocessing import PolynomialFeatures"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"<h4>Overfitting</h4>\n",
"<p>Overfitting occurs when the model fits the noise, not the underlying process. Therefore when testing your model using the test-set, your model does not perform as well as it is modelling noise, not the underlying process that generated the relationship. Let's create a degree 5 polynomial model.</p>"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Let's use 55 percent of the data for testing and the rest for training:"
]
},
{
"cell_type": "code",
"execution_count": 59,
"metadata": {
"collapsed": false,
"jupyter": {
"outputs_hidden": false
}
},
"outputs": [],
"source": [
"x_train, x_test, y_train, y_test = train_test_split(x_data, y_data, test_size=0.45, random_state=0)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"We will perform a degree 5 polynomial transformation on the feature <b>'horse power'</b>. "
]
},
{
"cell_type": "code",
"execution_count": 60,
"metadata": {
"collapsed": false,
"jupyter": {
"outputs_hidden": false
}
},
"outputs": [
{
"data": {
"text/plain": [
"PolynomialFeatures(degree=5, include_bias=True, interaction_only=False)"
]
},
"execution_count": 60,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"pr = PolynomialFeatures(degree=5)\n",
"x_train_pr = pr.fit_transform(x_train[['horsepower']])\n",
"x_test_pr = pr.fit_transform(x_test[['horsepower']])\n",
"pr"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Now let's create a linear regression model \"poly\" and train it."
]
},
{
"cell_type": "code",
"execution_count": 69,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"pandas.core.series.Series"
]
},
"execution_count": 69,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"type(y_test)"
]
},
{
"cell_type": "code",
"execution_count": 66,
"metadata": {
"collapsed": false,
"jupyter": {
"outputs_hidden": false
}
},
"outputs": [
{
"data": {
"text/plain": [
"LinearRegression(copy_X=True, fit_intercept=True, n_jobs=None,\n",
" normalize=False)"
]
},
"execution_count": 66,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"poly = LinearRegression()\n",
"poly.fit(x_train_pr, y_train)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"We can see the output of our model using the method \"predict.\" then assign the values to \"yhat\"."
]
},
{
"cell_type": "code",
"execution_count": 67,
"metadata": {
"collapsed": false,
"jupyter": {
"outputs_hidden": false
}
},
"outputs": [
{
"data": {
"text/plain": [
"array([ 6728.73877623, 7308.06173582, 12213.81078747, 18893.1290908 ,\n",
" 19995.81407813])"
]
},
"execution_count": 67,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"yhat = poly.predict(x_test_pr)\n",
"yhat[0:5]"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Let's take the first five predicted values and compare it to the actual targets. "
]
},
{
"cell_type": "code",
"execution_count": 68,
"metadata": {
"collapsed": false,
"jupyter": {
"outputs_hidden": false
}
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Predicted values: [ 6728.73877623 7308.06173582 12213.81078747 18893.1290908 ]\n",
"True values: [ 6295. 10698. 13860. 13499.]\n"
]
}
],
"source": [
"print(\"Predicted values:\", yhat[0:4])\n",
"print(\"True values:\", y_test[0:4].values)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"We will use the function \"PollyPlot\" that we defined at the beginning of the lab to display the training data, testing data, and the predicted function."
]
},
{
"cell_type": "code",
"execution_count": 70,
"metadata": {
"collapsed": false,
"jupyter": {
"outputs_hidden": false
}
},
"outputs": [
{
"data": {
"image/png": "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oV/+8pf68Y9/rBUrVqh///66+eabKz32z3/+c1122WVavHixiouLdezYMc2dO1fr169XRkaGJGnZsmXKysrS6tWrZa3VlClT9PHHH6tdu3Z67bXX9NVXX6moqEjx8fEaNWpUpa/z5JNP6q9//ask6dFHH9XEiROrfc+bN2/WBx98oKNHj2rgwIGaNWuWvv76ayUnJ+uzzz5Tly5ddPDgQXXq1ElTpkzRddddp6lTp5Y7xokTJ3TnnXcqNTVVF1xwgaZPn65nn31W999/vySpS5cu+vLLLzV//nw9/vjjev7552v091EdRtIBAABauOPHjysuLk4ej0dRUVGaMWOGJCk6OlpjxoyRJK1atUobN27UuHHjFBcXpwULFignJ0ebN29Wnz59NGDAABljdNttt1X6GitWrNCsWbMk+efAR0ZGnrHNsmXLtGzZMo0cOVLx8fHavHmzsrKy9Mknn+jGG29URESEOnTooClTplT5XspOdzlbQJeka6+9Vm3btlWXLl3UrVs37dmzRytWrNDUqVPVpUsXSVKnTp2qPcaWLVvUp08fXXDBBZKkO+64Qx9//PHp52+66SZJ0qhRo5SdnX3WnmqCkXQAAIAmUtMR74ZWOie9onbt2p2+b63VVVddpVdffbXcNhkZGTLGNEgf1lo99NBD+slPflKuPm/evHq9RkhIyOk59SdOnCj3XNu2bU/fDw4OVlFRkay1tXo9a221z5e+RunxGwIj6QAAANCYMWP02WefaevWrZKkgoICff311xo0aJC++eYbbdu2TZLOCPGlEhIS9Oyzz0qSiouLdeTIEbVv315Hjx49vc3EiRP14osvnp7r/u2332rv3r269NJLtXjxYh0/flxHjx7V0qVLa9V7TEyM0tPTJUlvvvnmWbdPSEjQokWLdODAAUnSwYMHJemMfksNGjRI2dnZp/9sXnnlFV122WW16rG2COkAAABQ165d9fLLL+vWW2/V8OHDNWbMGG3evFlhYWFKSUnRtddeq/Hjxys6OrrS/Z966il98MEHio2N1ahRo7RhwwZ17txZ48aN07Bhw/Tggw/q6quv1g9/+EONHTtWsbGxmjp1qo4ePar4+HjdfPPNiouL0/e//31dcskltep9zpw5uu+++3TJJZcoODj4rNsPHTpUSUlJuuyyyzRixAj94he/kCTdcssteuyxxzRy5MjT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\n",
"text/plain": [
"<Figure size 864x720 with 1 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"PollyPlot(x_train[['horsepower']], x_test[['horsepower']], y_train, y_test, poly,pr)"
]
},
{
"cell_type": "code",
"execution_count": 75,
"metadata": {},
"outputs": [
{
"name": "stderr",
"output_type": "stream",
"text": [
"/home/jupyterlab/conda/envs/python/lib/python3.6/site-packages/scipy/stats/stats.py:1713: FutureWarning: Using a non-tuple sequence for multidimensional indexing is deprecated; use `arr[tuple(seq)]` instead of `arr[seq]`. In the future this will be interpreted as an array index, `arr[np.array(seq)]`, which will result either in an error or a different result.\n",
" return np.add.reduce(sorted[indexer] * weights, axis=axis) / sumval\n"
]
},
{
"data": {
"image/png": "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ufTSS/nIRz7C+eefT1NTEzfffDPbbrstTU1NNDU18cEPfrBHbbYP6kcffTTXXHONB35KkqTCGdR769RT4cADa3s59dRuV7t48WKmTp3KJZdcskZQ/8EPfsAuu+zCuHHjOP3007n66quZNm0aH/3oR2lsbGTZsmWMGjWKefPmATBt2jQOPPBAAO6//3722WcfdtttN/bZZx9mzpzZZT8mTZrUZv3XXXcdEyZMYOjQoVW1deaZZ/KjH/2ofHvs2LHMnj0bgN/97ne84x3voLGxkZNPPplSqUSpVOLEE09k7Nix7LLLLvz4xz9eo80777yT8ePHU1/f9VlHn3zySQ477DB23313DjjgAGbNmgXA5MmTGTt2LOPGjeOggw5i2bJlfOc73+H3v/99eTQ+Ith///25+eabu1yHJEnS2vI86q8z119/PRMmTGD77bdn4403Zvr06YwfP55bbrmF66+/nvvuu4+hQ4fy6quvsvHGG/Pzn/+cH/3oR+yxxx5dtrvjjjty1113UV9fz+23385//dd/cc0113Q6/4QJE/jUpz7F/Pnz2WSTTZg8eTJf/OIXe9VWpccff5w//OEPTJ06lYaGBj7/+c/z+9//np133pnnn3+eRx55BIAFCxassezUqVPZfffdu13HZz7zGX71q1+x7bbbMnXqVE455RRuu+02vv3tbzNlyhS22GILFixYwJAhQ/jmN7/JI488wnnnnVdefo899uDuu+/mAx/4QFXbJEmS1BsG9d6qCG596corr+TUfOT9uOOO48orr2T8+PHcfvvtfOITn2Do0KEAbLzxxj1qd+HChZxwwgk8+eSTRASrVq3qcv6BAwdy1FFHcfXVVzNx4kSampo49NBDe9VWpTvuuIMHH3yQPffcE4Bly5ax+eab8773vY+nn36aL37xixxxxBHldVWaO3cuO+20U5ftL1iwgHvvvZeJEyeWpzU3NwOw7777cvzxx3Psscd2GcI333zzmpcTSZIktWdQfx2ZP38+d955J4888ggRQalUIiL4wQ9+QEqpqnNx19fX09LSAtCmzvob3/gGBx10ENdddx2zZ88ul8R0ZdKkSXz3u98lpcTRRx9NQ0ND1W1V9qOyLyklTjjhBL7//e+vscyMGTO49dZbOf/887nqqqu49NJL29w/ZMiQbmvHU0psuummNDU1rXHfxRdfzH333cdNN93EuHHjePjhhztsY/ny5QwZMqTL9UiSJK0ta9RfR66++mqOP/54nn32WWbPns1zzz3H6NGj+cc//sGhhx7KpZdeytKlSwF49dVXARgxYgSLFi0qtzFq1CgefPBBgDblKAsXLmSrrbYCsgNQq3HQQQfx5JNPcv755zNp0qQetTVq1CimT58OZAdsPvPMMwAccsghXH311bz88svl7Xj22WeZN28eLS0tTJw4kbPOOqu8bKWddtqJp556qss+b7TRRmy55ZZcd911ALS0tDBjxgwAnn76afbaay/OOussNtpoI55//vk19h/ArFmzGDt2bHe7R5Ikaa0Y1F9HrrzySo455pg20yZOnMgVV1zBhAkTOOqoo9hjjz1obGwsH6h54okn8tnPfrZ8MOm3vvUtvvzlL7P//vtTV1dXbuc///M/OeOMM9h3330plUpV9WfAgAFMnDiR+fPnc8ABB/SorYkTJ/Lqq6/S2NjIBRdcwPbbbw/AmDFj+O53v8uhhx7Krrvuynve8x7mzp3L888/z4EHHkhjYyMnnnhihyPuhx9+OHfddVe3/Z48eTIXXngh48aNY+edd+amm24C4Ctf+Qq77LILu+yyC+9+97sZO3YsBx98MDNmzGC33XYrn9rxb3/7G+9973ur2keSJEm9FSml/u7DOmmPPfZI06ZNazPt8ccf77YGWv3rmGOO4Qc/+AHbbbddIe2/8MILnHjiidx22201b9vnlyRJbzwR8WBKqcOzfjiirvXKOeecw9y5cwtr/7nnnmtzWklJkqSieDCp1is77LADO+ywQ2Htv/Od7yysbUmSpEqOqEuSJEnrIIO6JEmStA4yqEuSJEnrIIO6JEmSOrZqFZxxBsya1d89eUMyqL/O1NXV0djYyNixYzn22GPLP3DUG1OmTOHII48E4IYbbuCcc87pdN4FCxbwi1/8osfrOPPMM9c4S8qUKVPYe++920xrbm5miy226PKMLR21VWsf/OAHefrpp3nnO99JY2Mjb3vb29hss81obGyksbGR2bNn96i9a6+9lieeeKJ8+9RTT63qXO+SJK0Tfv5zOOccOO+8/u7JG5JB/XVmyJAhNDU18cgjjzBw4EAuvPDCNvenlGhpaelxu0cddRSnn356p/f3Nqh35IADDmDOnDltQu/tt9/O2LFj2XLLLWuyjt549NFHKZVKbLPNNtx33300NTXxne98hw9/+MM0NTXR1NTEqFGjetRm+6D+xS9+scMfa5IkaZ00dWp2HdG//XiDMqj30qmnwoEH1vZy6qk968P+++/PU089xezZs9lpp534/Oc/z/jx43nuuee47bbb2HvvvRk/fjzHHnssixcvBuAvf/kLO+64I/vttx/XXnttua3LLruMU045BYCXXnqJY445hnHjxjFu3DjuueceTj/9dP75z3/S2NjIaaedBsAPf/hD9txzT3bddVe+9a1vlds6++yz2WGHHXj3u9/NzJkz1+j3gAEDOPbYY/nDH/5QnjZ58mQmTZoEwMUXX8yee+7JuHHjmDhxYoffGhx44IG0/iDVvHnzygG6VCpx2mmnlfv1y1/+EoC5c+dywAEHlL+NuPvuu9do8/e//z1HH310t/v9lltuKe/bD3/4wyxZsgSA0047jTFjxrDrrrvyta99jbvvvpubb76Zr3zlK+XR+G233Za5c+fyyiuvdLseSZL63auvZtcF/kaJOmdQf51qbm7mlltuYZdddgFg5syZHH/88Tz00EMMGzaM7373u9x+++1Mnz6dPfbYg3PPPZfly5fz6U9/mhtvvJG7776bF198scO2v/SlL/Gud72LGTNmMH36dHbeeWfOOecctt12W5qamvjhD3/IbbfdxpNPPsn9999PU1MTDz74IHfddRcPPvggkydP5qGHHuLaa6/lgQce6HAdkyZNYvLkyQCsWLGCm2++mYkTJwLwgQ98gAceeIAZM2aw0047cckll1S9Xy655BI22GADHnjgAR544AEuvvhinnnmGa644goOO+wwmpqamDFjBo2NjWssO3XqVHbfffcu23/55Zc555xzuOOOO5g+fTq77rorP/nJT3jppZe4+eabefTRR3n44Yc544wz2H///Xnve9/Lj3/84zaj8bvtthv33HNP1dskSVK/Maj3K3/wqJf6q1Rr2bJl5ZC5//77c9JJJ/HCCy+w9dZbs9deewFw77338thjj7HvvvsCsHLlSvbee2+eeOIJRo8ezXbbbQfAxz72MS666KI11nHnnXdy+eWXA1lN/AYbbMC///3vNvPcdttt3Hbbbey2224ALF68mCeffJJFixZxzDHHMHToUCArqenInnvuyeLFi5k5cyaPP/44e+21FxtttBEAjzzyCF//+tdZsGABixcv5rDDDqt6/9x22208/PDDXH311QAsXLiQJ598kj333JNPfvKTrFq1ive///0dBvW5c+ey2Wabddn+Pffcw2OPPcY+++wDZPt2v/32Y+ONN2bAgAF8+tOf5ogjjijX/ndk880354UXXqh6myRJ6jet///9v9UvDOqvM6016u0NGzas/HdKife85z1ceeWVbeZpamoialRjllLijDPO4OSTT24z/bzzzqt6HccddxyTJ0/m8ccfL5e9AJx44olcf/31jBs3jssuu4wpU6assWx9fX25Fn/58uVt+vWzn/2sw3B/11138ec//5mPf/zjnHbaaRx//PFt7pGzIEAAACAASURBVB8yZEibtjqSUmLChAn89re/XeO+adOm8de//pXJkydzwQUXcNttt3XYxvLlyxkyZEiX65EkaZ1QOaKekrXqfazQ0peImBARMyPiqYhY40jFyPw0v//hiBjf3bIRsXFE/DUinsyvN6q474x8/pkRcVg+bURENFVc5kXEen3o8l577cXUqVN56qmnAFi6dCmzZs1ixx135JlnnuGf//wnwBpBvtUhhxzCBRdcAGQ136+99hojRoxg0aJF5XkOO+wwLr300nLt+/PPP8/LL7/MAQccwHXXXceyZctYtGgRN954Y6f9nDRpEr/73e+4884724y8L1q0iC233JJVq1bx+9//vsNlR40axYMPPghQHj1v7dcFF1zAqlWrAJg1axZLlizh2WefZfPNN+fTn/40J510EtOnT1+jzZ122qm8zzqzzz778Pe//52nn34agCVLlpS/SXjttdc48sgj+fGPf8xDDz0EsMZ+a+3T2LFju1yPJEn9buVKWLwYhg/PTtO4FmeaU+8UFtQjog44HzgcGANMiogx7WY7HNguv3wGuKCKZU8H7kgpbQfckd8mv/84YGdgAvCLiKhLKS1KKTW2XoBngdVHUa6HNttsMy677DImTZrErrvuyl577cUTTzzB4MGDueiiizjiiCPYb7/92HrrrTtc/ic/+Ql/+9vf2GWXXdh999159NFH2WSTTdh3330ZO3Ysp512Goceeigf+chH2Hvvvdlll1344Ac/yKJFi8oHWDY2NjJx4kT233//Tvs5ZswYhg4dysEHH9zmG4GzzjqLd77znbznPe9hxx137HDZr371q1xwwQXss88+zJs3rzz9U5/6FGPGjGH8+PGMHTuWk08+mebmZqZMmUJjYyO77bYb11xzDV/+8pfXaPOII47ocPS+0hZbbMEll1zChz/8YcaNG8c+++zDrFmzWLhwIUcccQTjxo3j4IMP5txzzwWyDyPf+973ygeTrlixgtmzZ5dLhiRJWme1lr287W3ZdbuBJxUvUkrFNByxN3BmSql1ZPsMgJTS9yvm+SUwJaV0ZX57JnAgMKqzZVvnSSnNjYgt8+V3aN9+RNyat/G/FevbDrgTeFvqZsP32GOP1HpWkVaPP/44O+20Uy/3iNZ1y5Yt46CDDmLq1KnU1dUVso4//vGPPPbYY23OktPK55ckaZ3y+OMwZgwcfjjccgs8+SS8/e393av1TkQ8mFLao6P7iix92Qp4ruL2nHxaNfN0tewWKaW5APn15j1Y3yTgD52F9Ij4TERMi4hpnj7vjWfIkCF8+9vf5vnnny9sHSklvvKVrxTWviRJNbNwYXb91rdm146o97kiDybt6GiD9gG5s3mqWbY36zsO+HhnDaSULgIugmxEvZN5anZAptY9PTnDTG986EMf6nB6Ud9sSZLUa6016ZvnY6IG9T5X5Ij6HOCtFbdHAu3P7dPZPF0t+1Je8kJ+/XI164uIcUB9SunB3mwMwODBg5k/f76hSjWVUmL+/PkMHjy4v7siSdJqy5Zl1wb1flPkiPoDwHYRMRp4nmw0+yPt5rkBOCUiJgPvBBbmteevdLHsDcAJwDn59Z8qpl8REecCbyE7QPX+inVNAjo+zUmVRo4cyZw5c/xVSdXc4MGDGTlyZH93Q5Kk1doH9fxMb+o7hQX1lFJzRJwC3ArUAZemlB6NiM/m918I3Ay8F3gKWAp8oqtl86bPAa6KiJOAfwHH5ss8GhFXAY8BzcAXUkqlii59KF9XrzU0NDB69Oi1aUKSJOn1wRH1flfoDx6llG4mC+OV0y6s+DsBX6h22Xz6fOCQTpY5Gzi7k/u2qbrjkiRJb3TWqPe7Qn/wSJIkSa9TrSPqm22WXRvU+5xBXZIkSWtqDepvehMMHmyNej8wqEuSJGlNy5ZBBAwaBMOHO6LeDwzqkiRJWtPSpdlIegQMGbJ6hF19xqAuSZKkNS1bBkOHZn8b1PuFQV2SJElrWrYsC+hgUO8nBnVJkiStyaDe7wzqkiRJWtPSpauD+tChBvV+YFCXJEnSmqxR73cGdUmSJK3J0pd+Z1CXJEnSmpYvz07PCB0G9ZRgxYp+6NcbiEFdkiRJbfzjH3DjvL2zHzuCDoP6pZfCyJHQ3NwPHXyDMKhLkiSpjR/+ED43579g4MBsQgdB/c47Yd68bOBdxTCoS5IkqY1Vq+D55jczr2XjbEIHQX3GjNXzqhgGdUmSJLVRKmXXTYvfnv0xZEiWyPM6l+XL4YknsrssfSmOQV2SJElttAb1hxaMzv5oPftLPqr+6KOr5zGoF8egLkmSpDbKQf3VrbM/2gX1pqbV81r6UhyDuiRJktool77MH5n90UVQd0S9OAZ1SZIktVEqJQBmvroZS5eyRlBvPZAUDOpFMqhLkiSpjVIzBC20pAH83/+x+oePVqwgpSyob7JJNsmgXhyDuiRJktooNbewI9lpXR56iNU/fLRiBbNnw2uvwR57ZJOsUS+OQV2SJEltlJoT2/A0Gw5ZntWjVwT11vr01qDuiHpxDOqSJElqo9ScqKeZxpHz246oL1/OjBkwYADstls2yaBeHIO6JEmS2ig1J+oo0bj1v3n4YWiuX12j3tQE228Pb3pTNsmgXhyDuiRJktooNUMdJXbbdiHLl8OsF/NUvmIFM2bAuHFQX59Nska9OAZ1SZIktVEqZSPqu719MQAP/XMEAAtebWH2bGhshIaGbF5H1ItjUJckSVIbpVI2or7jqOUMGgRNs4YB8PBTQ4G2I+oG9eIY1CVJktRGa+lLw7CBjB0LDz2R1ag3PbMBkI2oW/pSPIO6JEmS2mgdUWfgQBoboenRBhIw418bstlm8OY3W/rSFwzqkiRJaqMc1AcNYrfdYP6rA5jDSJrmbEpjI0RY+tIXDOqSJElqo9SyekS99XzpD7Anj760KePGZbcN6sWr7+8OSJIkad1SWfqy65hsBH0yk1jRXE9jYzaPNerFc0RdkiRJbZRaolz6Mnw4bLcd/CkdBVAeUbdGvXgGdUmSJLVRHlHP03hjI6xkEIPqVrHDDtk8lr4Uz6AuSZKkNsoj6nlQb61TH7vR8+WRdIN68QzqkiRJaqOzoD5ug2fL81ijXjyDuiRJktpoH9R33x0Gx3L23eix8jzWqBfPs75IkiSpjVIa0Caob7opPL3TkWyx5XDgc4ClL33BoC5JkqSylCCltiPqAFsOXwQrV0dHS1+KZ+mLJEmSykql7Lp9UGfQIFi+vHzTEfXiGdQlSZJU1mlQHzwYVqwo34yAujqDepEM6pIkSSorB/VIWRpvNWhQm6AO2ai6Qb04BnVJkiSVlYN6Xbs7Ognq1qgXx6AuSZKksp4E9YYGR9SLZFCXJElSWadBffDgNgeTgqUvRTOoS5IkqaynpS8G9eIY1CVJklTW09IXa9SLY1CXJElSmSPq6w6DuiRJksq6rFFfuRJaWsqTDOrFMqhLkiSprBzU66PtHYMGZdcrV5YneXrGYhnUJUmSVLY6qLe7ozWoV5S/eHrGYhnUJUmSVLa69KWTEfWKoG7pS7EM6pIkSSrrtvSl4lzqBvViGdQlSZJU1mlQHzw4u243om6NenEM6pIkSSorB/WG7ktfrFEvlkFdkiRJZatH1NvFRGvU+5xBXZIkSWXWqK87DOqSJEkqW1360i4mdlCj3tBgjXqRDOqSJEkq63ZE3dKXPmNQlyRJUlmnI+oG9T5nUJckSVJZT4O6pS/FMahLkiSprCdB3dMzFsugLkmSpLKWlux6jRr1gQOza0tf+oxBXZIkSWXdjqivXFmeZFAvVqFBPSImRMTMiHgqIk7v4P6IiJ/m9z8cEeO7WzYiNo6Iv0bEk/n1RhX3nZHPPzMiDquYPjAiLoqIWRHxRERMLHK7JUmSXq96etYXa9SLU1hQj4g64HzgcGAMMCkixrSb7XBgu/zyGeCCKpY9HbgjpbQdcEd+m/z+44CdgQnAL/J2AP4beDmltH3e3t9rvsGSJEnrAWvU1x1Fjqi/A3gqpfR0SmklMBk4ut08RwOXp8y9wIYRsWU3yx4N/Cb/+zfA+yumT04prUgpPQM8lbcD8Eng+wAppZaU0rxab6wkSdL6oNMRdWvU+1yRQX0r4LmK23PyadXM09WyW6SU5gLk15t31VZEbJjfPisipkfEHyNii446HBGfiYhpETHtlVdeqWYbJUmS1iul5gR0MKI+YEA2hG5Q7zNFBvXoYFqqcp5qlq12ffXASGBqSmk88L/AjzpqIKV0UUppj5TSHptttlk3q5MkSVr/lIN6+xF1yMpf2pW+WKNenCKD+hzgrRW3RwIvVDlPV8u+lJfHkF+/3E1b84GlwHX59D8C45EkSdIaSquy8zOuMaIOWflLuxH1UglSd8Op6pUig/oDwHYRMToiBpId6HlDu3luAI7Pz/6yF7AwL2fpatkbgBPyv08A/lQx/biIGBQRo8kOUL0/pZSAG4ED8/kOAR6r8bZKkiStF0orsyL1DoP6oEFrnJ4RVte1q7bqi2o4pdQcEacAtwJ1wKUppUcj4rP5/RcCNwPvJTvwcynwia6WzZs+B7gqIk4C/gUcmy/zaERcRRbCm4EvpJRanzZfA34bEecBr7SuR5IkSW11OaLervSlNaivWrX6b9VOobs0pXQzWRivnHZhxd8J+EK1y+bT55ONine0zNnA2R1MfxY4oCd9lyRJeiPqSVBvaMiuPaC0GP4yqSRJksp6M6JuUC+GQV2SJEllBvV1h0FdkiRJZZ2eRx06LX3xFI3FMKhLkiSprDyiPrBuzTs7OD0jOKJeFIO6JEmSyrotfeng9IwG9WIY1CVJklTWk9IXg3qxDOqSJEkq67L0xRr1PmVQlyRJUpkj6usOg7okSZLKSs3ZiPqAgR38LqZBvU8Z1CVJklRWak7U0bw6hVfqJKhb+lIMg7okSZLKSqsSdZSgrvvTM7bWqDuiXgyDuiRJksqyEfVSj0bUDerFMKhLkiSprFTqJqiXStkFg3rRDOqSJEkq63ZEHco/euTpGYtlUJckSVJZOah3VKPeGtTz8hdH1ItlUJckSVJZqZnuR9QN6n3CoC5JkqSybmvUwaDeRwzqkiRJKiuPqFdR+mKNerEM6pIkSSorlboofRk4MLt2RL1PGNQlSZJUVlXpS37WF4N6sQzqkiRJKutJ6UtrULf0pRgGdUmSJJV1WfrSSY26I+rFMKhLkiSprCdB3dKXYhnUJUmSVFYO6v7gUb8zqEuSJKmsVIIBtPSo9MUa9WIY1CVJklRWavH0jOsKg7okSZLKqip9yU/P2DqLQb0YBnVJkiSVlUpR9cGkEVlYN6gXw6AuSZKksi5LX9oFdcjq1K1RL4ZBXZIkSWXlEfUqzvoCWZ53RL0YBnVJkiSVlUfUI9a806DepwzqkiRJKiu1BHWROr6zri67WPrSJwzqkiRJKiuVgrpo6XyGgQMdUe8jBnVJkiSVZSPqXQT1QYPKp2cEg3qRDOqSJEkqK7UEdQO6CeqOqPcJg7okSZLKuqxRhzWCujXqxTGoS5Ikqayq0hdH1PuEQV2SJEllpRTUDah+RN2gXhyDuiRJksqsUV93GNQlSZJUVmoZ0HWNervTM1qjXhyDuiRJksqqKn3x9Ix9wqAuSZKkslIaYI36OsKgLkmSpLKe1qhb+lIcg7okSZLKshH1LmZwRL3PGNQlSZJUZunLusOgLkmSpDKD+rrDoC5JkqSyUhpAXZ2nZ1wXGNQlSZJUVlWNuqdn7BMGdUmSJJVZ+rLuMKhLkiSpLCt96WKG1hH1lIV5g3pxDOqSJEkqK1HfdVAfPDi7zstfrFEvjkFdkiRJALTkv3PUZelLa1BftgxwRL1IBnVJkiQBUCpl11WNqC9fDhjUi2RQlyRJEtC7oN7QYFAvikFdkiRJQJVBfciQ7LpiRN0a9WIY1CVJkgRY+rKuMahLkiQJqAjq9V3M1EFQL5XKZ2tUDRnUJUmSBFSOqEfnM7U760tDQ3bTUfXaM6hLkiQJ6H3pCxjUi2BQlyRJEtD70hcwqBfBoC5JkiSgytKXdmd9sfSlOAZ1SZIkAWtX+uIpGmvPoC5JkiSgsvSlioNJLX0pnEFdkiRJQA+Den7WF4N6cQoN6hExISJmRsRTEXF6B/dHRPw0v//hiBjf3bIRsXFE/DUinsyvN6q474x8/pkRcVjF9Cn5tKb8snmR2y1JkvR6VGrOTobekxF1a9SLU1hQj4g64HzgcGAMMCkixrSb7XBgu/zyGeCCKpY9HbgjpbQdcEd+m/z+44CdgQnAL/J2Wn00pdSYX16u9fZKkiS93pVWZkPqXQb1gQMhwhr1PlDkiPo7gKdSSk+nlFYCk4Gj281zNHB5ytwLbBgRW3az7NHAb/K/fwO8v2L65JTSipTSM8BTeTuSJEmqQlVBPSIbVbdGvXBFBvWtgOcqbs/Jp1UzT1fLbpFSmguQX7eWsXS3vl/nZS/fiIgOn30R8ZmImBYR01555ZXutk+SJGm9UlVQB4N6HykyqHf0CKcq56lm2Z6s76MppV2A/fPLxztqIKV0UUppj5TSHptttlk3q5MkSVq/9Caot9aoW/pSe0UG9TnAWytujwReqHKerpZ9KS+PIb9urTfvdJmU0vP59SLgCiyJkSRJWkNpVQsAdQ3dRMTBgz3rSx8oMqg/AGwXEaMjYiDZgZ43tJvnBuD4/OwvewEL83KWrpa9ATgh//sE4E8V04+LiEERMZrsANX7I6I+IjYFiIgG4EjgkSI2WJIk6fXM0pd1S31RDaeUmiPiFOBWoA64NKX0aER8Nr//QuBm4L1kB34uBT7R1bJ50+cAV0XEScC/gGPzZR6NiKuAx4Bm4AsppVJEDANuzUN6HXA7cHFR2y1JkvR6tTalLwb12issqAOklG4mC+OV0y6s+DsBX6h22Xz6fOCQTpY5Gzi73bQlwO497bskSdIbTdWlL0OGeHrGPuAvk0qSJAnoYY26pS+FM6hLkiQJsEZ9XWNQlyRJEtC7s75Yo14cg7okSZKAtSt9sUa99gzqkiRJAqxRX9cY1CVJkgRAS3Pvz/piUK89g7okSZKAihH1gXVdz9jBedQtfak9g7okSZKAiqDuWV/WCQZ1SZIkAVBqTkCVI+qlEqxaZVAvkEFdkiRJQA9LXwCWL/f0jAUyqEuSJAmAUrUHk1YEdU/PWByDuiRJkoCK0pdqzvoCbYK6I+q1Z1CXJEkSAKVVPahRB1i2zKBeIIO6JEmSgB4cTNo6or5sGXX5rAb12jOoS5IkCejBwaRDh2bXS5cSkZ2i0Rr12jOoS5IkCcjOuAhVBPVhw7LrpUuBLKg7ol57BnVJkiQBPTjrS+uI+pIlgEG9KAZ1SZIkARU16oPqu56xovQFoKHB0pciGNQlSZIEQCkfFe9JjTo4ol4Ug7okSZKAHoyoW6PeJwzqkiRJAnpwesYOSl8M6rVnUJckSRKQnfUlaCEauhlRb/3Bo4qDSa1Rrz2DuiRJkgAolRJ1lCj/3GhnBgzIfvTI0pdCGdQlSZIEZAeT1lGi/HOjXRk2zKBeMIO6JEmSgKz0paoRdcjq1K1RL5RBXZIkSUDvg7o16sUwqEuSJAmoqFEfUEVEHDrUXyYtmEFdkiRJAJRKkQX1alTUqFv6UgyDuiRJkoCKEfVqWPpSOIO6JEmSgKxGfUCk6mZuF9QdUa89g7okSZKAHpa+WKNeOIO6JEmSACi1QF20VDezNeqFM6hLkiQJaD09Y5VB3Rr1whnUJUmSBOSlL9WOqFujXjiDuiRJkgAotQR10YMa9eZmWLXKoF4Qg7okSZKAHtaoDx2aXS9ZYo16QQzqkiRJAnpY+jJsWHa9dKk16gUxqEuSJAloLX3pwXnUoRzUHVGvPYO6JEmSgDyoD+hh6cvSpZa+FMSgLkmSJKB1RL3nQd3Sl2IY1CVJkgT0sPSltUZ9yRJLXwpiUJckSRLQy9IXg3phug3qETEsIgbkf28fEUdFREPxXZMkSVJfKqUejKiPGJFdL15sjXpBqhlRvwsYHBFbAXcAnwAuK7JTkiRJ6nullgHVj6gPH55dL1pEfT2USpCqzPiqTjVBPVJKS4EPAD9LKR0DjCm2W5IkSeprpRTUDejhiHoe1MFR9VqrKqhHxN7AR4E/59Pqi+uSJEmS+kOvDiZdvNigXpBqgvqXgTOA61JKj0bENsDfiu2WJEmS+lopDah+RH3AgKz8ZdEiGvKjFw3qtdXlyHhE1AHvSykd1TotpfQ08KWiOyZJkqS+VWoZQF1dDwrN86DeOqLuudRrq8sR9ZRSCdi9j/oiSZKkflRKA6ovfYGsTt0a9cJUU2v+UETcAPwRWNI6MaV0bWG9kiRJUp8rpR6OqI8YUT49IxjUa62aoL4xMB84uGJaAgzqkiRJ65HsrC89WKDdiLqlL7XVbVBPKX2iLzoiSZKk/tWjg0khq1GfO9fSl4J0G9QjYjBwErAzMLh1ekrpkwX2S5IkSX2sV6Uvs2YZ1AtSzZcbvwXeDBwG/B0YCSwqslOSJEnqeyXqel76Yo16Yap5KN6eUvoGsCSl9BvgCGCXYrslSZKkvtarEXVr1AtTTVBv3eULImIssAEwqrAeSZIkqV9kNeo9WGD48OyXSQe0AI6o11o1Z325KCI2Ar4O3AAMB75ZaK8kSZLU50rUUVfXgwVGjACgobQcGGpQr7Fqzvryq/zPu4Btiu2OJEmS+ktW+tKDBfKgXr9qGQb12uv0y42I+I+IOKmD6V+MiFOL7ZYkSZL6Wm9H1OtXLgWsUa+1rqqQPkl2xpf2LsrvkyRJ0nqkx0F9+HAA6ldkP17viHptdRXUU0ppZQcTVwBRXJckSZLU51LqfY36SoN6Ebo8rjcitqhmmiRJkl7nWlp6X/qSj6hb+lJbXQX1HwJ/joh3RcSI/HIgcCPwoz7pnSRJkvpGqZQF9foeFE60C+qOqNdWp0E9pXQ58A3gO8Bs4Bng28C38h8+6lZETIiImRHxVESc3sH9ERE/ze9/OCLGd7dsRGwcEX+NiCfz640q7jsjn39mRBzWwfpuiIhHqum7JEnSG0la1UxLb2vUl2U/Wm9Qr60uS19SSreklN6VUtokpbRp/vct1TQcEXXA+cDhwBhgUkSMaTfb4cB2+eUzwAVVLHs6cEdKaTvgjvw2+f3HATsDE4Bf5O209ucDwOJq+i5JkvRG07IyS9m9qlFfblAvQk9+e6qn3gE8lVJ6Oj8odTJwdLt5jgYuT5l7gQ0jYstulj0aaB3R/w3w/orpk1NKK1JKzwBP5e0QEcOB/wC+W8SGSpIkvd6VVpYAelb60m5E3Rr12ioyqG8FPFdxe04+rZp5ulp2i5TSXID8evMq1ncW8D/A0q46HBGfiYhpETHtlVde6WpWSZKk9UppRT6i3pOgPmAADBtm6UtBuvrBoy/n1/v2su2OHuVU5TzVLFvV+iKiEXh7Sum6bpYnpXRRSmmPlNIem222WXezS5IkrTfKI+o9KX0BGD6chmWvAQb1WutqRP0T+fXPetn2HOCtFbdHAi9UOU9Xy76Ul8eQX7/cTVt7A7tHxGzgH8D2ETGlV1skSZK0nupV6QvAiBHULzWoF6GroP54Hm53yM/I0nr5v4h4uIq2HwC2i4jRETGQ7EDPG9rNcwNwfH72l72AhXk5S1fL3gCckP99AvCniunHRcSgiBhNdoDq/SmlC1JKb0kpjQL2A2allA6sov+SJElvGGsV1JcsBKxRr7X6zu5IKU2KiDcDtwJH9bThlFJzRJySL18HXJpSejQiPpvffyFwM/BesgM/l5KP4ne2bN70OcBVEXES8C/g2HyZRyPiKuAxoBn4Qkqp1NN+S5IkvRH1qkYd2gR1R9Rrq9OgDpBSehEYl49qb59PnplSqurzUkrpZrIwXjntwoq/E/CFapfNp88HDulkmbOBs7voz2xgbBVdlyRJekPp9Yj68OE0zH0VMKjXWrdnfYmIdwFPkp3X/BfArIg4oOiOSZIkqe+UVrUAUNfQixH1xQsAS19qrcsR9dy5wKEppZkAEbE9cCWwe5EdkyRJUt9ZfdaXngf1AYssfSlCNedRb2gN6QAppVlAQ3FdkiRJUl8rB/WGHv7MzogRxJLF1Ncb1GutmhH1aRFxCfDb/PZHgQeL65IkSZL6Wq9LX4YPh8WLaRicaG7u4bLqUjVB/XNkB3x+iexHhe4iq1WXJEnSemL1waQ9H1EnJerrrVGvtW6DekppBVmd+rnFd0eSJEn9oTyi3ovTMwLU1zmiXms9/MgkSZKk9dHq0pcexsPhwwFoqGuxRr3GDOqSJEmitKr3B5MC1A8wqNeaQV2SJEmUVvZyRL0iqFujXlvd1qjn500/Ddi6cv6U0sEF9kuSJEl9qNScgN6XvtRHyRH1GqvmrC9/BC4ELgZKxXZHkiRJ/WFtzqMO0DDAoF5r1QT15pTSBYX3RJIkSf1mbQ8mrafZ0pcaq+aRuDEiPh8RW0bExq2XwnsmSZKkPtPr0pfWGnWaHVGvsWpG1E/Ir0+rmJaAbWrfHUmSJPWH8oj6wLqeLdh6ekaDes1V84NHo/uiI5IkSeo/q0tfevijRfX1MHgw9WmVQb3GqjnrSwPwOeCAfNIU4JcpJauQJEmS1hOrS196OKIOMGIE9WmVNeo1Vk0R0gXA7sAv8svu+TRJkiStJ0rNvSx9gTyor3REvcaqqVHfM6U0ruL2nRExo6gOSZIkqe+VVvXyYFKA4cNpWLSSJQb1mqrmkShFxLatNyJiGzyfuiRJ0nqlXPrS2xH1lhWOqNdYNSPqpwF/i4ingSD7hdJPFNorSZIk9am1CurDh1NfWmGNeo1Vc9aXOyJiO2AHsqD+REppReE9kyRJUp9ZfXrGXpS+jBhBfckR9VrrNKhHxMEppTsj4gPt7to2IkgpXVtw3yRJktRHVo+oV1Nw0c6IETQ0Lzeo11hXj8S7gDuBbyKNDQAAIABJREFU93VwXwIM6pIkSeuJltJalr40L7f0pcY6DeoppW/lf34npfRM5X0R4Y8gSZIkrUfW+mDS5uU0NyeySmnVQjVFSNd0MO3qWndEkiRJ/acc1Ot7EbRHjKAhraDZEfWa6qpGfUdgZ2CDdnXqbwIGF90xSZIk9Z1SfvLtul4MqDN8OPU007yqBehNA+pIVzXqOwBHAhvStk59EfDpIjslSZKkvlUeUe9Nzh4xgnoWWaNeY13VqP8pIm4CvpZS+l4f9kmSJEl9rFRai6A+fDj1/NuzvtRYlzXqKaUS8J4+6oskSZL6yVqVvowYQQOrDOo1Vs2JMu+JiJ8DfwCWtE5MKU0vrFeSJEnqU6U8ZPe+9KXZoF5j1QT1ffLr71RMS8DBte+OJEmS+sPal740s6q5F79qqk51G9RTSgf1RUckSZLUf0ql7LSMazOi3pKClhYYYF6viW53Y0RsEBHnRsS0/PI/EbFBX3ROkiRJfWOtRtTzGvWsnRp26g2ums87l5KdkvFD+eU14NdFdkqSJEl9a61q1PPSF8BTNNZQNTXq26aUJlbc/nZENBXVIUmSJPW9Usv/3969x1lW1Xfe//zqXtVd1bfqRuQmSKO2QVQQIVEn0USBGCUZTXCeGTDJ8/ho1FyNl/BkMpmJCTPPM69EYpSYmFdwclFiJhEviRpER5MwgCIoyKUFuQk0TUNXddf91Hr+WPt0nS6qq6v77F1VXfvzfr3Oa5+z99prr3N2Xb61au2189CXoxq20ttLV0eCWbygtERLORXjEfGy5ouI+CFgvLomSZIkabk1GhDMEnF0+3f35lhpUC/PUnrU3wZcXYxLD2APcFmlrZIkSdKyajSgkwZL68d9uq6+Lhg3qJdpKbO+fBM4KyKGitcjlbdKkiRJy6oxC50xe9T7d/XlWOkY9fIsZdaXLRFxJfBl4PqI+EBEbKm8ZZIkSVo2jUa0F9T7c1C3R708S/nfxseBx4F/C7yheP6JKhslSZKk5dVotNej3t1nUC/bUsaob04p/ZeW178TERdX1SBJkiQtv8Zsmz3qBvXSLaVH/fqIuCQiOorHTwOfrbphkiRJWj5lBXXHqJdnKUH9/wb+CpgqHh8HfjUiRiPCC0slSZLWgHYvJu12jHrpljLry+ByNESSJEkrp/2LSbsBg3qZljJGnYh4HfCK4uWXU0qfqa5JkiRJWm6NVE5Qd+hLeZYyPeMVwC8BdxSPXyrWSZIkaY3IY9TTUe/fNdADwMxko6wm1d5SetQvAl6YUpoFiIirgVuA91bZMEmSJC2fxmzQ2dHGGPWBYujL/klgoKRW1dtS7xG7seX5hioaIkmSpJXTmO0op0d9/2RZTaq9pfSo/x5wS0RcDwR5rPr7Km2VJEmSllVjNujsbGOM+rpeAKZHJ8pqUu0tGtQjIoCvAecBLyEH9feklB5dhrZJkiRpmTRS0NnRRo96EdRnxqbKalLtLRrUU0opIv4+pXQ2cO0ytUmSJEnLrN2hL93ri6Du0JfSLGWM+g0R8ZLKWyJJkqQV03aP+vo+AGbG7VEvy1LGqP8I8NaI+B6wnzz8JaWUXlBlwyRJkrR8GrMdpQx9md7vROplWUpQv7DyVkiSJGlFNVJ7Qb17qB+wR71MhwzqEdEHvBU4HfgW8NGUkjeFlSRJWoNKG/oyZo96WRYbo341cA45pF8I/PdlaZEkSZKWXSN10NnZRlAfzD3q0+P265ZlsaEvO1JKZwJExEeBG5enSZIkSVpu7Q59aQb1mQl71MuyWI/6gU/ZIS+SJElrWw7qR7//gTHqE42SWqTFetTPioiR4nkA/cXr5qwvQ5W3TpIkSdWbnaVBZ3tDX3pyyp+ZsH+3LIcM6imlzuVsiCRJklZIo5GDehs96l1Fqpy2R700bZwOSZIkrQnNoN5GN20zqM9MGtTLYlCXJEmqu5mZtoe+dHZCMMvMlEG9LAZ1SZKkumsG9TaTYVc0mJmcLadNMqhLkiTVXglDXyAH9empo++V18EqDeoRcUFE3BUROyPivQtsj4i4sth+W0S8+HD7RsTmiPhiRNxTLDe1bHtfUf6uiHhNy/p/jIhbI+L2iLgqIrxQVpIkqanZo77YfIBL0N3RYGbKHvWyVBbUizD8R+S7mu4A3hQRO+YVuxDYXjzeAnx4Cfu+F7gupbQduK54TbH9EuD5wAXAh1oC+U+nlM4CfgDYCryx9DcsSZJ0rCpr6EvHLDPT9qiXpcoe9XOBnSmle1NKU8DHgdfPK/N64GMpuwHYGBHHH2bf1wNXF8+vBi5uWf/xlNJkSuk+YGdRDyml5nzwXUAP4FeQJElSU3PoS5s96l0ds0wb1EtTZVA/AXiw5fVDxbqllFls3+NSSo8AFMttSzleRHwe2AWMAp9cqMER8ZaIuDkibn788ccP9/4kSZLWhgOzvkRb1XR1JGamD19OS1NlUF/oTM//E+tQZZay7xEdL6X0GuB4oBd45UIVpJQ+klI6J6V0ztatWw9zOEmSpDXiQFBvr5rurllmZuxRL0uVQf0h4KSW1ycC319imcX2fawYHkOx3LXU46WUJoBrefoQHEmSpPoqa+hLZ2J6JiAZ1stQZVC/CdgeEadGRA/5Qs9r55W5Fri0mP3lPGBvMZxlsX2vBS4rnl8GfKpl/SUR0RsRp5IvUL0xIta3BPsu4CLgziresCRJ0jGppKEvfT2zTNILExMlNaze2vy76dBSSjMR8Q7g80An8Gcppdsj4q3F9quAz5GD805gDPjZxfYtqr4CuCYifh54gGIGl6Lua4A7gBng7SmlRkSsA66NiN6iri8BV1X1viVJko45JU3P2N8zyxgDMDYG/f3ltK3GKgvqACmlz5HDeOu6q1qeJ+DtS923WP8E8KpD7PN+4P3z1j0GvORI2y5JklQbB2541F6P+kD/LOP0w/79sGVLSY2rL+9MKkmSVHcHetTbC+r9fcz1qKttBnVJkqS6K2voSz9zPepqm0FdkiSp7g7M+tJeNBxYZ496mQzqkiRJdVfW0Jd1Hfaol8igLkmSVHNpeoZER9tBfWB9hz3qJap01hdJkiStfo2pBkD7Perruxinzx71ktijLkmSVHON6VkAOrvb7FEf6mSCfmb32aNeBoO6JElSzZXWoz7UDcDE3sm22ySDuiRJUu3NBfU2Z33Z0APA2MhM222SQV2SJKn2Dgx9aXuMeicA46MG9TIY1CVJkmruQI96T2db9QwM5KU96uUwqEuSJNXcgaDe5sWk/f15Ob6v0W6ThEFdkiSp9hrTzaDe5hj1Zo/6/tRuk4RBXZIkqfYaU83pGdsb+nKgR33MoF4Gg7okSVLNHbiYtMce9dXEoC5JklRzc2PUS+pRH2+3RQKDuiRJUu3N3Zm0pB71ifYuSlVmUJckSaq5uaEvJfWoTxgxy+CnKEmSVHOl96hPthf4lRnUJUmSam5ujHp70fBAj/qUQb0MBnVJkqSaa8zkWVo628zXXV3Q3THD2FRXCa2SQV2SJKnmDgx9KaEjvL97hvFpg3oZDOqSJEk1V1aPOsBA9zRjqQ+mp9uvrOYM6pIkSTV3YIx6GT3qPQ3G6Xcy9RIY1CVJkmquzB71/t7ZHNTHxtqvrOYM6pIkSTVX6tCXvlnGGDCol8CgLkmSVHOl9qj3JXvUS2JQlyRJqrkyZ30Z6E/2qJfEoC5JklRzpfao94cXk5bEoC5JklRzpY5RXxf2qJfEoC5JklRzjTw7Yzk96us6HKNeEoO6JElSzZU6Rn19hz3qJfH+rpIkSTVXao/6YCfj9BrUS2CPuiRJUs2VOkZ9qIsJ+pndZ1Bvl0FdkiSp5srtUe8GYGJ0uv3Kas6gLkmSVHOl9qgP5krGRmbar6zmDOqSJEk1V2qP+kAAMD5qUG+XQV2SJKnmygzqAwN5OTbaaL+ymjOoS5Ik1VypPer9eTm+z6DeLoO6JElSzc028hj1jhKS4YEe9f2p/cpqzqAuSZJUc5X0qI8Z1NtlUJckSaq5SsaoO4162wzqkiRJNdeYzTO1lNqjPt5+XXVnUJckSaq5SnrUJ4yZ7fITlCRJqrnGbF6W2qM+acxsl5+gJElSzTUa5Q99GZssobKaM6hLkiTVXCVj1KcM6u0yqEuSJNVcc4x6GfOod3dDV0eDsenu9iurOYO6JElSnaVEIwUdMUtEOVUOdE8zPtsDMzPlVFhTBnVJkqQ6m52lQSedHeXdoKi/p8EYA87R2CaDuiRJUp3NzOSgHrOlVTnQM8M4/d71qE0GdUmSpDqbni6/R7131qBeAoO6JElSnTV71EsM6gN9KQ99Mai3xaAuSZJUZxUE9f7+ZI96CQzqkiRJdVZFj/oAXkxaAoO6JElSnVUxRr0/7FEvgUFdkiSpzg70qJdX5cC6cIx6CQzqkiRJddYM6p0l9qiv67BHvQQGdUmSpDqrYoz6YKc96iXoWukGSJIkaQU1x6h3lldl/2AX43R6MWmbDOqSJEl1VsUY9aFOJuhmdt+Ywzfa4GcnSZJUZ1WMUV+f+4InRqdLq7OODOqSJEl1VsHQl4F1AcDYyEx5ldaQQV2SJKnODvSol1dlf39ejo8a1NtRaVCPiAsi4q6I2BkR711ge0TElcX22yLixYfbNyI2R8QXI+KeYrmpZdv7ivJ3RcRrinUDEfHZiLgzIm6PiCuqfM+SJEnHlAqC+sBAXo6NNsqrtIYqC+oR0Qn8EXAhsAN4U0TsmFfsQmB78XgL8OEl7Pte4LqU0nbguuI1xfZLgOcDFwAfKuoB+P9SSs8FXgT8UERcWP47liRJOgYdCOpRWpUHetTHZkurs46q7FE/F9iZUro3pTQFfBx4/bwyrwc+lrIbgI0Rcfxh9n09cHXx/Grg4pb1H08pTaaU7gN2AuemlMZSStcDFHV9AzixijcsSZJ0zKlijHqzR31feReo1lGVQf0E4MGW1w8V65ZSZrF9j0spPQJQLLct9XgRsRH4CXJP/NNExFsi4uaIuPnxxx9f9M1JkiStCc0e9RIn7Z7rUTeot6PKoL7Q/0/mn61DlVnKvkd0vIjoAv4auDKldO9CFaSUPpJSOieldM7WrVsPczhJkqQ1oMKhL2Pj5dVZR1UG9YeAk1penwh8f4llFtv3sWJ4DMVy1xKP9xHgnpTSHxzxO5EkSVqrKuhRbw598cak7akyqN8EbI+IUyOih3yh57XzylwLXFrM/nIesLcYzrLYvtcClxXPLwM+1bL+kojojYhTyReo3ggQEb8DbAB+uYo3KkmSdMw6MEa9gh71yRIHvtdQiX87HSylNBMR7wA+D3QCf5ZSuj0i3lpsvwr4HHAR+cLPMeBnF9u3qPoK4JqI+HngAeCNxT63R8Q1wB3ADPD2lFIjIk4ELgfuBL4REQAfTCn9aVXvXZIk6ZhxoEe9vKB+oEd90lv2tKOyoA6QUvocOYy3rruq5XkC3r7UfYv1TwCvOsQ+7wfeP2/dQyw8fl2SJEkVBHV71MvhnzmSJEl1VmFQH582qLfDoC5JklRnzTHqJQb17m7o6mgw1uiFhncnPVoGdUmSpDqroEcdYKBnhnH6nfqlDQZ1SZKkOmsG9e5yg3p/d4MxBmBsrNR668SgLkmSVGdV9aj3NnKPukH9qBnUJUmS6uzAGPVyY2F/36xBvU0GdUmSpDqr4GJSgIG+5NCXNhnUJUmS6mxqigZddJY8k2J/f/Ji0jYZ1CVJkupseppGdJYe1AcGsEe9TQZ1SZKkOpuaykNfyu5RHwjHqLfJoC5JklRnzTHqZfeor+uwR71NBnVJkqQ6q6pHfX2nPeptMqhLkiTVWUVBfWCwM/eoezHpUTOoS5Ik1VlFQ1/6B+1Rb1fXSjdAkiRJK6iyHvUuJuhmdv+4PcNHyc9NkiSpzqanaaSOSmZ9AZgYmSq34hoxqEuSJNVZZTc8ysuxkZlyK64Rg7okSVKNzU5OA1RywyOA8f2z5VZcIwZ1SZKkGmtMNYDyg/qBHvXRRrkV14hBXZIkqcaqCur2qLfPoC5JklRjjekcpCvrUR9L5VZcIwZ1SZKkGmtM5os9K+tRdxr1o2ZQlyRJqrHKx6iPR7kV14hBXZIkqcaqGvpyoEd9wqB+tAzqkiRJNVb5GHV71I+aQV2SJKnGKu9RnzRuHi0/OUmSpBqrfIz6ZAckZ345GgZ1SZKkGqt66Mt46oOJiXIrrwmDuiRJUl2lRGOmmqDe3Q1dHQ3GGIDR0XIrrwmDuiRJUl3NzNAgJ/SygzrAQG+Dcfph377yK68Bg7okSVJdTU9XGtT7e2dzj7pB/agY1CVJkupqaqraHvW+WXvU22BQlyRJqquKg3p/Hwb1NhjUJUmS6qrioS8D63DoSxsM6pIkSXVVdY/6QNij3gaDuiRJUl1VPUZ9fYc96m0wqEuSJNVV1bO+rO+0R70NBnVJkqS6qrpHfbDTGx61waAuSZJUV1X3qPcH4+HQl6NlUJckSaqrqi8m7XfWl3YY1CVJkuqq6qEvA86j3g6DuiRJUl1VPvQFJlIfs6P7y6+8BgzqkiRJdbUMPeoAEyNT5VdeAwZ1SZKkupqeZppuALq7y6++vz8vx0Zmyq+8BgzqkiRJdTU1xSiDAAwOll99s0d9fF+j/MprwKAuSZJUV1NTjDAEwNBQ+dUf6FHfN1t+5TVgUJckSaqr6ekDQb3SHvX9BvWjYVCXJEmqq2LoS09Pore3/OoP9KiPASmVf4A1zqAuSZJUV0WP+tBgNSF6/fq83DfbDxMTlRxjLTOoS5Ik1VUxRr2K8ekAW7fm5eNshb17qznIGmZQlyRJqqti6EtVQX3btrzcxTaD+lEwqEuSJNVVMfRlcCgqqX7DBujumjWoHyWDuiRJUl1NTTHCBoYqCuoRsHXjtEH9KBnUJUmS6mp6mpGobow6wLYts3mM+shIdQdZowzqkiRJdVWMUa9iDvWmbdsco360DOqSJEl1NTXFSKruYlKAbcd3GtSPkkFdkiSppmYmG4wzUG1Qf2aXQf0oGdQlSZJqanR/joKVBvVndLCf9ezfPV7dQdYog7okSVJNjYx1AVQ+Rh3g8cdmqzvIGmVQlyRJqqmR/Z1AxT3qzZse7TZ2Hik/MUmSpJpq9qgvS1B/squ6g6xRBnVJkqSaGh3LPerLMfRl196+6g6yRhnUJUmSampkogeotkd969a83LWvv7qDrFGVBvWIuCAi7oqInRHx3gW2R0RcWWy/LSJefLh9I2JzRHwxIu4plptatr2vKH9XRLymZf37I+LBiNhX5fuVJEk6loxM9gLVBvWBAVjfPcGusfXVHWSNqiyoR0Qn8EfAhcAO4E0RsWNesQuB7cXjLcCHl7Dve4HrUkrbgeuK1xTbLwGeD1wAfKioB+DTwLkVvE1JkqRj1uhk9T3qANsG9rNrYkO1B1mDquxRPxfYmVK6N6U0BXwceP28Mq8HPpayG4CNEXH8YfZ9PXB18fxq4OKW9R9PKU2mlO4Ddhb1kFK6IaX0SDVvU5Ik6dg0MpXHja+vuLN76+AEu2a3wNRUtQdaY6oM6icAD7a8fqhYt5Qyi+17XDN0F8ttR3C8RUXEWyLi5oi4+fHHHz+SXSVJko45I9N9rOuaoLPz8GXbsW3jpHcnPQpVBvVYYF1aYpml7Hs0x1tUSukjKaVzUkrnbG1e+SBJkrRGjUwPMNQzUflxtm1uGNSPQpVB/SHgpJbXJwLfX2KZxfZ9rBgeQ7HcdQTHkyRJUmG0McBgb/XDUbZtg8fZyuwTT1Z+rLWkyqB+E7A9Ik6NiB7yhZ7XzitzLXBpMfvLecDeYjjLYvteC1xWPL8M+FTL+ksiojciTiVfoHpjVW9OkiTpWDfSGGBoOYL6M7uYoZunHhg5sh0nJ+Hii+GUU+DWW6tp3CpWWVBPKc0A7wA+D3wHuCaldHtEvDUi3loU+xxwL/nCzz8BfmGxfYt9rgB+LCLuAX6seE2x/RrgDuAfgbenlBoAEfHfIuIhYCAiHoqI/1TV+5YkSTomzM4ykgYZ6l+GoH5SngZy1/fGFmoGP/Mz8KUvLbDjBz8In/oUPPAAvPOdFbdy9an0Xq4ppc+Rw3jruqtanifg7Uvdt1j/BPCqQ+zzfuD9C6x/N/DuI2m7JEnSmjY5ySiDbO2fqfxQ205dB8DjD03y3HnbHn4YrrkGnvUseOUrWzakBB/+MPzwD8NrXwvvehfceSc8d34Na5d3JpUkSaqjyUlGGGJwYBmC+ml5/sddjzz9WHffnZe7d8/b8I1vwHe/C5deCj/1U3ndF79YYStXH4O6JElSHRVBfWigUfmhth2f53/ctevp25pB/Ykn5m34/Ofz8sd/HE49FU47Da67rrpGrkIGdUmSpBpK4xM5qK+frfxYw8N5ueuJp4+6vueevHxaj/qXvgQveEGeMgbg/PPh5pura+QqZFCXJEmqocnRKWboZnD9Ed125qh0dcGWrqfY9VTP07YtOPQlJbjlFnjpS+fWvehFeUB7jW5KaVCXJEmqoZHdebaXocHqgzrAtr4Rdu0beNr6BYP6ww/Dnj1w1llz6170ory85ZbqGrnKGNQlSZJqaOTJPDZ9aGh5jrdt3X52jQ8etG56Gu67Dzo7cy5vNIfLN+dMbw3qO3bkZTPZ14BBXZIkqYZG90wDMLRxeeLgtqFJdk1tPGjd974HMzM5j6cETzZvXHrbbXl55plzhY87DtavnxvUXgMGdUmSpBpq9qgPbupcluNt3TTDrjQMU3M3WGp2jp9/fl4eGP5y6615YvUNG+YqiIDTT4edO5elvauBQV2SJKmGRp7Ks70Mba70/pcHbNua2MMWph+dm4ex2Tn+gz+YlwemaLz11oOHvTQZ1CVJkrTWje5tBvXuZTnetmfk2Ln7u3sPrLv7bti0CZ7znPx6925gfDxvOFRQv/fePF6mBgzqkiRJNTSyN8/2MjjcuyzH23ZC/oNg1737Dqy7+27Yvn1unvXdu4Hbb4fZ2YWD+vbtOaQ/8MAytHjlGdQlSZJqaGQ0L4e2LlNQPzVPzbjre2MH1t1zD5xxxryg3pzx5QUveHolp58+t2MNGNQlSZJqaGS0gw4aDGzpX5bjbXvOZgB23T8O5BEuDzyQg/rAAPT1tQT19evhtNOeXsn27XlZk3Hqy3P1gCRJklaV0f0dDDFCDCzPROrbzshTM+56OE8L2cza27fnCV2Gh4ugft9teVrGjgX6k5/xDOjthfvvX5Y2rzR71CVJkmpoZKyTQUbz3YaWwcbNHXQxza5d+XVz9MoZZ+Tl8DA88UQ69IwvkBP9iSfCgw9W3+BVwKAuSZJUQyNj3Qx17Dt8wZJEwLbuJ9m1Jw/oaM6h3hzNMjwMux+egqeeWnh8etNJJxnUJUmStHaNTnQz1Ll/WY+5bWAfj4/mi1fvvjuPZBkczNuGh2H3o3lYzCF71MGgLkmSpLVtZLKHwa7xZT3mtqFJdo3lZN6c8aVpyxbY/WQxDOfMMw9dyUknwcMPQ6NRYUtXB4O6JElSDY1M9jLUvcxBfcsMuxqbYXycu+8+OKgPD8OT4/3MnHbGXDf7Qk46KYf0Rx+tvsErzKAuSZJUQyPT/Qz1TCzrMbdtC3axjb13P8quXU8P6gB7nvuDi1dy0kl5WYPhLwZ1SZKkGhqd7mOoZ3JZj7ntxB72s55vfjVfxNq8kBRgeDC3Zfezzlm8EoO6JEmS1qrZWRhtDDDYN72sx916Sr476T//c359UI/66H0APHHCIjO+gEFdkiRJa9f+/ZDoYGhgZlmPu+30fHOlr926ngh49rPntg3vuh2A3Zu2L7TrnI0bYd06g7okSZLWntHRvBxaP7usx9327HyR6L989zhOOSXfZLRp+IFbANjdsW3xSiJqM0WjQV2SJKlmRkbycnB9WtbjbjsuANg7NXDQsBeALXf/KwC79ywhnhrUJUmStBY1g/rQ0PIed+vWuecHBfWZGfpvvYGBrkl2715CRQZ1SZIkrUUjT+abBQ1tXN4ouG4drOvOs7tsP71l2M13vgNjYwxvmFl6UH/0UZiaqqahq4RBXZIkqWZGd+ewPLRp+aPgtg352Gds2DW38qabABh+RufSg3pK8P3vV9DC1cOgLkmSVDMju3NP9ODGrmU/dnOc+hlT355beeONsGEDw8/s5YknllDJySfn5Rof/mJQlyRJqplmUB8a7ln2Y287uZ9upjj5sZvmVt50E7zkJQxvjaX3qAM88EAlbVwtDOqSJEk1M/pknj99cLj3MCXL94pXdvHaddfTdUsR1J96Cr75TTj/fIaHObKgvsZ71Jf//x2SJElaUSNPNuhhkt6N/ct+7He9C/j2X8Nnv5rHmX/pS/lWqa9+NcPXw969MD0N3d2LVLJuHWzebI+6JEmS1paRvYkhRmD9+pVpwCtekbvOb70VPvlJ2LQJXvpStmzJm5c8Tt2gLkmSpLVkdGSFg/rrXpe7zC+/HP7u7+BNb4LuboaH8+YlDX85+eQ1P/TFoC5JklQzI6PkoD44uDINGB6GN78ZPve5/PrXfu3AajiCceprvEfdMeqSJEk1MzLawSCjsOHUlWvElVfCmWfCy14Gp50GzAX1JQ99eeopGB1duT84KmZQlyRJqpmRsU6OZwSGhlauEX198M53HrTqiHvUIQ9/2bGj3LatEg59kSRJqpnR8S6GusahY3VFwebFpEseow5w//2VtWelra6zI0mSpMqNTPQy2De10s14mt7ePIplSUH91GLYzn33VdqmlWRQlyRJqpmR6T6G+qZXuhkLWvJNj44/Hvr7YefOytu0UgzqkiRJNTIzA+ONXobWzax0Uxa0ZcsSg3oEnH66QV2SJElrw+hoXg6tm13ZhhzCknvUwaAuSZKktWNkJC8HV3DCl8UMDy9xekbIQf2734VGo9I2rRSDuiRJUo00g/rQhtUZA4+4R31qCh5+uNI2rZTVeYYkSZJUidEn89j0oa29K9yShQ12Q6tFAAAT3ElEQVQP5+E5k5NLKHz66Xm5Roe/GNQlSZJqZOT7+wAY3Na/wi1Z2BHdnfTZz87Le+6prD0ryaAuSZJUIyMP56tJh45ft8ItWdgR3510YADuuKPSNq0Ug7okSVKNjD66H4ChEwZXuCULO6K7k3Z0wJlnwm23VdqmlWJQlyRJqpGRx/Pg76GTN65wSxZ2RENfAM46C269FVKqrE0rxaAuSZJUIyO7pwBYf/LmFW7Jwo5o6AvAi18MTz4J995bWZtWikFdkiSpRkb2zLCOfXQeN7zSTVnQEQ19AXjZy/Lya1+rpD0ryaAuSZJUI6NPzjDUsQ96ela6KQvq7oYNG44gqD/vebBpE1x/faXtWgkGdUmSpBoZ2TvLYPfESjdjUUd006OODrjoIvjMZ2BmptJ2LTeDuiRJUo2M7OtgqH96pZuxqCMK6gBvfGO++vRTn6qsTSuha6UbIEmSpOUzOt7F0HGzK92MRQ0PwyOPHMEOr30tbN8O7353Hgbz8MP54tJzz4ULLoCIytpaJYO6JElSXezfz8jMAKdtWOmGLG7LFvj2t49gh85OuPpqePWr4VWvOnjbz/88/MmfHJNh3aEvkiRJdbFzJyMMMTjcu9ItWdQRD30BOP98+O534bOfhdtvh7ExeM974KMfhQ99qJJ2Vs2gLkmSVBOP3XAf3+eZHHfqupVuyqKGh2H/fhgfP8Idt23LF5bu2AH9/fC7vws//uPwq796TM6zblCXJEmqif/+sa3M0MX/9WtDK92URT372Xn50Y+2WVFHB/zxH0NXF/zGb7TdruVmUJckSaqB3bvhQ//7bN60/tOccebqHvryhjfk60N/5VfgK19ps7ITToB3vQs+8Qm44YZS2rdcDOqSJEk18Pu/D2ONHi5/+VdXuimH1dEBf/EXuWf9jW+EBx5os8Jf/3V4xjPyEJiUSmnjcjCoS5IkrXF79sAfXjnLG/kbnnfhs1a6OUuyYUOeFn1yEn7qp45ivHqr9evh/e+Hf/3X3LN+jDCoS5IkrREPPgizC0yR/oEPwOi+Dv4ffgd+5EeWv2FH6TnPgb/8S/jGN+Atb2mzM/yyy+BFL8rDYPbsKa2NVTKoS5IkrXKzs/D444fePjYGv/ALcPLJ8JrX5Pv9ND31FHzgA4mf2vxlznzuDDz/+dU3uESvfS389m/noTAf+EAbFXV25vnUH3ushNS/PCoN6hFxQUTcFRE7I+K9C2yPiLiy2H5bRLz4cPtGxOaI+GJE3FMsN7Vse19R/q6IeE3L+rMj4lvFtisjVv+M95OT8Nd/DRdfnIdV3X33wuVSgm99C+6445j4epMkqVZGRxcfsrFvH/zVX+UAev/9T98+M5O3v+AFeebBCy6Ar84bYn7zzfDiF8OHPww/8zPwL/8CZ54Jn/xk3v6Hfwh79wa/ueeXc5pf/THoaS6/HH7yJ+G229rMO2efnads/Nu/hbe9DaanS2tjFSJVlO4iohO4G/gx4CHgJuBNKaU7WspcBLwTuAh4KfCBlNJLF9s3Iv4bsCeldEUR4DellN4TETuAvwbOBZ4J/BNwRkqpERE3Ar8E3AB8DrgypfQPi7X/nHPOSTfffHNpn8dS3Xln/mPv6qvhiSfgmc+EXbvyN+q/+Tf5D8BXvxq+9rU8n/8//MPcX82nnJKnDr3oolz2/vvzxc3NxxNPwDnn5PsBnHcevOQlMDGR7/zVfDz4YL5w4wd+IH+TP//50Nubpx797ndh585c7/AwnH56Lnv66Xkc2aOP5v0feAAeegh6evJf9iedlJebNuUfWI88MveYmcnXdhx/fH5s3py/Zx5/fO6xb1++Q9nWrfmxeXN+v3v35ve0Z09+PjiYt23ZAhs35gtRxsdzT8KTT+YyPT1526ZNuc1dXfl4IyN5+8hIrntoKG8fGoLu7tyTsX9/bv/ISN5ncHDu0dOTf3BMTeX27tuXjz0wkIfFrV+fy0B+z/v358fYWF6/bl1+9Pbmn5+zs/ncjI3lR0TePjAwV6Z5vPHxXGZ2Nk8ZOzAAfX1zP4dnZnJd4+O53b29uVxfX/6MIO87OZnLTE7mNvX15XLNMinl/Scm8qOzM5fp68vPm2Zmch0TE/l1b28u09VyH+Tm8SYnc/nWMs12N9/f5GQ+bnd3LtPdfXCZ5vGmpvL+PT1zn9FCx4vI23t65t5b6/GmpnL5np78aH1vrcebmclt6e09+L2lBI3GXLu7uubKtLap0Zg7XkfH3PHmt7tZJqVDt3t6Oh+v0Zh7/wu1e2pq7rPs6Vm4Tc3PsrMz19P6eS/0WTaP19qmZrsnJ+c+y4U+p2aZmZm59z///Dbf2+Rk3r+v7+Dz23pOJiZyO5plWj+DRmPua7f5Wc7/mmst0/p12Xq85vdm6/dKf//B3yutZcbH8zGa35vd3XPtnv89Pv/7N6V8jObPi5mZvL35s6Cz8+CfO/v35zr7+/PPnHXr5n7uTE7mMqOjednbO/fza2AgH6/5s7D56OjIPwOHhnK55s/LvXvz46mn8me2YUP+ubphQ277zMzcz909e/L7a/7c3bw51zU7m7fv3p0fTz6ZjzM8nB9btuTj79mTOz8feyz/Luzrg+OOy783jjsuv9c9e/LvwYceysvZ2TzJx4kn5uXwcC5z333wve/l5chI/r106qn5cfLJ+fO78878+M538u+zU06B5z4Xnve8PAQjAm65Bb7+9TwU41vfym05++wclM8+O/+e+trX4Prr8+PrX8+f3XnnwStfmUednHUW/NM/5aHSn/nMwUH+/PPhkktyR90XvwhXXJF/9+7YkX+/X311/t34ilfk2Qa//nX4rd/Kn8fHPpaPcffd8O//Pdx0E1x6KXz6b6d4+cQX+NSO34Abb8wf5DGo+T3X9t8ZKeUP74or8gn+d/8uV7xjB/zET5TS1iMREV9PKZ2z4MaUUiUP4Hzg8y2v3we8b16ZPyYH8Obru4DjF9u3WaZ4fjxw10L1A58v6jkeuLNl/ZuAPz5c+88+++y03N72tpQgpa6ulN7whpS+8IWUGo2UHnkkpd/7vZROOy1vbz6GhnK5j340pY98JKWLL05p3bqDy0BKmzendNFFKV16aUrPfe7Tt7eWO+uslNavP3h9xMGvFzpGR8eh620+urrKKdPZ+fQ2LfTo7j58mZ6ew5fp7T388Xp6Dt/27u7DH6+jI6W+vsXLRKTU33/4z7yv7/Bt6u3Nj8O1u69v8c+gqyu3qbNz8fPW37/4eYnIxzpcm3p7D9+m7u7Dt6mrK6WBgcXb1Gz3Ym1qnrfDtam39/Bt6u7ObVrs3DU/78W+njo65tp9qDZFzLVpsa+nnp5yPstmmxZrd7NNh/s+aLZpsXYv5euy2abD/bzo6zv892/ze2WxMs2vp8W+TprfB4f7Hu/tXdrPncO9t46Ow3/PNY93uDJL+bnb2bm03xmLnbfWc3w09cz//Oe3p7s7pVNOWbz+E05I6cILU3rhCxcu192d0stfntJv/mZKv/7rKZ199tOPu21bSm9/e0pf/WpK99yT0u/+bv493Frm7LNT+p//M+eBlFLavz+lP/iDfPxmmZ/+6ZT27Dk4U0xN5WM339tNL/i5lB5+eNmzzar26U+n9OIXz32Qb37zijQDuDmlhfNolT3qbwAuSCn9n8Xr/wC8NKX0jpYynwGuSCl9rXh9HfAe4FmH2jcinkopbWyp48mU0qaI+CBwQ0rpL4r1HwX+AfhecYwfLda/HHhPSum1C7T5LcBbipfPIf9RUFfDwJHevFdrg+e+njzv9eW5ry/P/epwSkpp60IbuhZaWZKF/jEx/6+CQ5VZyr5LPd6S60opfQT4yGGOUwsRcXM61L9htKZ57uvJ815fnvv68tyvflVeTPoQcFLL6xOB7y+xzGL7PhYRxwMUy11LqOvEw7RDkiRJWlWqDOo3Adsj4tSI6AEuAa6dV+Za4NJi9pfzgL0ppUcOs++1wGXF88uAT7WsvyQieiPiVGA7cGNR32hEnFfM9nJpyz6SJEnSqlTZ0JeU0kxEvIN8UWcn8Gcppdsj4q3F9qvIM7BcBOwExoCfXWzfouorgGsi4ueBB4A3FvvcHhHXAHcAM8DbU0qNYp+3AX8O9JPHrS8644sAhwDVmee+njzv9eW5ry/P/SpX2cWkkiRJko6edyaVJEmSViGDuiRJkrQKGdRrICLeFREpIoZb1r0vInZGxF0R8ZqW9WdHxLeKbVcWF+BSXKT7iWL9/46IZ7Xsc1lE3FM8LmtZf2pR9p5i357leceKiP8SEbdFxDcj4gsR8cyWbZ77NSoi/t+IuLM4938XEa33nPC8r2ER8caIuD0iZiPinHnbPPc6SERcUHw97Ix8l3etVoe6E5KPtfEgT1n5eeB+YLhYtwO4FegFTgW+C3QW224k39E1yBfdXlis/wXgquL5JcAniuebgXuL5abi+aZi2zXAJcXzq4C3rfTnUZcHMNTy/Bdbzp3nfg0/gFcDXcXz/wr8V897PR7A88g36vsycE7Les+9j/lfK53F18FpQE/x9bFjpdvlY+GHPepr3+8D7+bgmzy9Hvh4SmkypXQfedadcyPPSz+UUvrXlL+bPwZc3LLP1cXzTwKvKnpfXgN8MaW0J6X0JPBF4IJi2yuLshT7NutSxVJKIy0v1zF3/j33a1hK6QsppZni5Q3M3UPC877GpZS+k1Ja6G7annvNdy6wM6V0b0ppCvg4+ZxrFTKor2ER8Trg4ZTSrfM2nQA82PL6oWLdCcXz+esP2qcIAnuBLYvUtQV4qiU0tNalZRAR74+IB4H/A/iPxWrPfX38HHNT0Xre68tzr/kOdR61ClU2j7qWR0T8E/CMBTZdDvwG+V/hT9ttgXVpkfVHs89idakEi537lNKnUkqXA5dHxPuAdwC/hef+mHe4816UuZx8P4m/bO62QHnP+zFmKed+od0WWOe5rzfP1zHEoH6MSyn96ELrI+JM8njEW4vrg04EvhER55L/ej6ppfiJwPeL9ScusJ6WfR6KiC5gA7CnWP/D8/b5MrAb2BgRXUUvS2tdKsGhzv0C/gr4LDmoe+6PcYc778UFfq8FXlUMaQDP+5pwBN/zrTz3mu9QXxNahRz6skallL6VUtqWUnpWSulZ5G/MF6eUHgWuBS4pruw/FdgO3JhSegQYjYjzijGHlwLNXpprgeYV/m8AvlSEgM8Dr46ITRGxidyD//li2/VFWYp9D9Xjo5JFxPaWl68D7iyee+7XsIi4AHgP8LqU0ljLJs97fXnuNd9NwPZipp4e8gXD165wm3QoK301q4/leQDfo5j1pXh9Ofmq77sorvQv1p8DfLvY9kHm7l7bB/wN+UKkG4HTWvb5uWL9TuBnW9afVpTdWezbu9KfQ10ewN8W5/E24NPACZ77tf8oPu8HgW8Wj6s87/V4AD9J7pCZBB4jB2jPvY9Dfb1cBNxdnPvLV7o9Pg79aH5TSpIkSVpFHPoiSZIkrUIGdUmSJGkVMqhLkiRJq5BBXZIkSVqFDOqSJEnSKmRQl6RjSEQ0IuKbEfHtiPibiBg4RLnPRcTGEo73ooj40+L56yLivW3U9Z8i4l2HKfPnEfGG4vmXI+Kcoz1eS52vjYjfbrceSVpuBnVJOraMp5RemFL6AWAKeGvrxsg6UkoXpZSeKuF4vwH8IUBK6dqU0hUl1FmJiOg8xKbPAq871B81krRaGdQl6dj1VeD0iHhWRHwnIj4EfAM4KSK+FxHDABFxaUTcFhG3RsT/KNZtjYi/jYibiscPza88IgaBF6SUbi1evzkiPlg8//OIuDIi/iUi7m32gi9Qx+URcVdE/BPwnJb1L4yIG4p2/V1xp8tDiogPR8TNEXF7a+948T7/Y0R8DXhjRPxiRNxR1PtxgJRvGPJl4LVL/mQlaRXoWukGSJKOXER0ARcC/1iseg75TpG/UGxvlns++c6UP5RS2h0Rm4vyHwB+P6X0tYg4mXx7+OfNO0zzzpWHcjzwMuC55FuQf3JeG88m3578ReTfN98Avl5s/hjwzpTSVyLiPwO/BfzyIse6PKW0p+g1vy4iXpBSuq3YNpFSellxzO8Dp6aUJucN/bkZeDlwzSLHkKRVxaAuSceW/oj4ZvH8q8BHgWcC96eUblig/CuBT6aUdgOklPYU638U2NEM9MBQRAymlEZb9j0eeHyRtvx9SmkWuCMijltg+8uBv0spjQFExLXFcgOwMaX0laLc1eTbzi/mpyPiLeTfW8cDO4BmUP9ES7nbgL+MiL8H/r5l/S7y5yRJxwyDuiQdW8ZTSi9sXVGE7f2HKB9AWmB9B3B+Sml8sWMBfYtsn5x3nIUsdOwjEhGnAu8CXpJSejIi/nxeu1rf+48DrwBeB/xmRDw/pTRTlF/svUrSquMYdUla264j90ZvAWgZ+vIF4B3NQhHxwgX2/Q5wehvH/l/AT0ZEfzHe/ScAUkp7gScj4uVFuf8AfOUQdQAMkcP43qLn/sKFCkVEB3BSSul64N3ARmB9sfkMFh/GI0mrjj3qkrSGpZRuj4j3A1+JiAZwC/Bm4BeBP4qI28i/C/4X82aQSSndGREbFhgSs9RjfyMiPgF8E7ifPFSn6TLgqmImlnuBn12knlsj4hbg9qLsPx+iaCfwF8XQmiCPwW/OfPMjwPuO9D1I0kqKfDG8JElPFxG/AoymlP50pdtytIpe+L9KKb1qpdsiSUfCoS+SpMV8mIPHoh+LTgZ+baUbIUlHyh51SZIkaRWyR12SJElahQzqkiRJ0ipkUJckSZJWIYO6JEmStAoZ1CVJkqRV6P8HyLmjmuBdk00AAAAASUVORK5CYII=\n",
"text/plain": [
"<Figure size 864x720 with 1 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"DistributionPlot(y_test,yhat,\"Actual Values (Test)\",\"Predicted Values (Test)\",Title)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Figur 4 A polynomial regression model, red dots represent training data, green dots represent test data, and the blue line represents the model prediction. "
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"We see that the estimated function appears to track the data but around 200 horsepower, the function begins to diverge from the data points. "
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
" R^2 of the training data:"
]
},
{
"cell_type": "code",
"execution_count": 71,
"metadata": {
"collapsed": false,
"jupyter": {
"outputs_hidden": false
}
},
"outputs": [
{
"data": {
"text/plain": [
"0.5567716902028981"
]
},
"execution_count": 71,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"poly.score(x_train_pr, y_train)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
" R^2 of the test data:"
]
},
{
"cell_type": "code",
"execution_count": 72,
"metadata": {
"collapsed": false,
"jupyter": {
"outputs_hidden": false
}
},
"outputs": [
{
"data": {
"text/plain": [
"-29.87162132967278"
]
},
"execution_count": 72,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"poly.score(x_test_pr, y_test)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"We see the R^2 for the training data is 0.5567 while the R^2 on the test data was -29.87. The lower the R^2, the worse the model, a Negative R^2 is a sign of overfitting."
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Let's see how the R^2 changes on the test data for different order polynomials and plot the results:"
]
},
{
"cell_type": "code",
"execution_count": 73,
"metadata": {
"collapsed": false,
"jupyter": {
"outputs_hidden": false
}
},
"outputs": [
{
"data": {
"text/plain": [
"Text(3, 0.75, 'Maximum R^2 ')"
]
},
"execution_count": 73,
"metadata": {},
"output_type": "execute_result"
},
{
"data": {
"image/png": "iVBORw0KGgoAAAANSUhEUgAAAYgAAAEWCAYAAAB8LwAVAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADh0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uMy4xLjEsIGh0dHA6Ly9tYXRwbG90bGliLm9yZy8QZhcZAAAgAElEQVR4nO3deZhU5bnu/+/dE0MzqTSogDRDo4IDSosDDohiNEbNoMcpOybGgyRijJrk6D4n2UOS3y87O05JzEncSTTTjjGJGjMp4ABqotKIA4QwN4KoIEMjzdjNc/6oQstONT3Q1auquT/XVVdXrfW+tZ7F0rrrXbUGRQRmZmZNFSVdgJmZ5ScHhJmZZeWAMDOzrBwQZmaWlQPCzMyyckCYmVlWDgjLW5LOkvRlSb0TrOEwSVskFSdVg1lSHBDWqSTVStqW/tB9U9J9knplaXca8CDwQeAhSWVN5n9R0nxJ70haIemLe1nmREmrs0x/StI1e6s3Il6LiF4R0djqlWwFSX9O/xtskbRL0s6M19/fh/f9hqQfttDmTUlb0/92GyU9LekaSWrlMo6Q1NDeGq1wOCAsCRdERC9gLHAccGvmTEnHAA8AVwCnA3XAzyRl/vcq4BPAAcC5wDRJl3VC7R0iIs5LB08v4BfAN/e8joipnVDCORHRGxgG3AF8BfheJyzXCogDwhITEW8Cj5EKCgAkVQK/BT4eEX+MiF3ApUADcFdG329GxIsR0RARi4DfARPaW4uk8ZJqJG2W9Jak2/fUIykklaRfPyXpq5KeTX8Dny6pf8b7fELSSknr07vHaiWd3c6aPiLpFUmb0t/yR2fM+7KkN9L1LpR0mqQPAzcBV6VHIi+0tIyI2BQRDwJXAtdKqspY9svp918p6Z8zus0GijNGPMelRxVPSdogaZ2knyS5a9A6hgPCEiNpMHAesHTPtIiojYiqiHg8Y1pDRFwZEdc38z4CTgMW7EM5dwF3RUQfYASpEUxzrgA+BQwAyoAvpOsYTepb+JXAIUBfYFB7ipF0Uvq9PgUcBPwMeFhSiaRj09PHppdxPrA6Ih4Gbgd+kh6JjG/t8iLiaeBt4NT0pM3p9ewHfAT4gqRz0/NOBxozRjzz0tP/HTgYOBo4HPjf7Vl3yx8OCEvCw5LeAVYBa4F/2cf3+1dS/y3fuw/vsQsYKal/RGyJiOf20vbeiFgcEdtIBcmeEdDFwO8j4pmI2Elqt017L3Z2LfDdiJgbEY0RcQ/QDRhHajTVAxgNFEfE8ohY0c7lZFoDHAgQEY9HxIKI2B0RL5JazzOa6xgRf4+IJyJiZ3pkeOfe2lthcEBYEj6c3v89ETgC6L/35s2TNI3UbxHnR8SOZpo1AKVZppeSCgaATwOjgL9LmiPpQ3tZ7JsZz7cCe35kP5RU6AEQEVuB9S2uRHZDgX9O717aJGkTUAEMiogFwC3A14G1kn4haWA7l5NpELABQNIESbPSu4vqgE+yl+0k6VBJv5b0uqTNwA/31t4KgwPCEhMRs4D7gG+1p7+kq0l9UJ4VEf9wlFKG14D+mUdLpXdLDQVWpmtZEhGXk9pt9B/AbySVt7GkN4DBGcvoQWr3UHusAr4SEf0yHj3TvxcQET+JiFOA4UB34Gvpfu0asUg6NV3rM+lJDwC/AoZERF9S22nPUU7ZlvGfQD1wVHo33TUZ7a1AOSAsaXcCkyWNbbFlBklXAv8fMDkilu+tbUS8BjwP/IekXpK6AV8kNbJ4Lv1+H5dUERG7gU3prm09tPU3wAWSTkkflvtvtP9D8h7geknVSukl6UJJPSWNlnRGej22pR97an0LGNaGQ1b7pn/c/jnww4hYku7bC1gfEdslnQJcktFtLakfqQ/LmNYb2AJsTk+/qZ3rbXnEAWGJioh1wE+BL7ex69dIfeOdo9adP3ApqdHBUuB14CzggxGxPT3/XGCBpC2kfrC+LGNeq6R3/VwP3E9qNPEOqQ/T5nZ97e29ngU+B/yAVGAtJvWjcZD6/eE2Uj8qv0Hqw/wr6a73Az2BDZL+spdFTE+v60pSYfn/A1PTy47082+lfyv6EvDrjNo2At8E5qZ3f41NL/9UUockP0TqSDQrcPINg8xyI71LaxNQ1UE/Ipt1Ko8gzDqQpAvSu4HKSf228ipQm2xVZu3jgDDrWBeROlx0DVBFaleVh+lWkBwQZh0oIq5JH3HUNyLOSp/l3eWkzy7/WcbrkvQhsX9o5/tdKOmWjquwzct/StKi9Nnjc7IdNCHpB5LqJU1qMv0mSX9Ln/X+uKShnVd5bjkgzKw96oGj0ofyAkwm9eN/u0TEIxHxjQ6prP2ujIhjSZ3B/p+ZMyT9H1LX/ToRuFup64XtMQ+ojohjSB3J9s1OqjfnutSP1P3794/KysqkyzDr8ubNm8eAAQPo2bMnBxxwACtWrKBHjx5s2bKFkSNHUl9fz6pVq9i9ezdFRUVUVlbSvXt33nrrLbZt20ZlZSXbtm1j+fLlHHnkkWzYsIGtW7dy2GGHUVtbiyS2b9/Ozp07qaysZP369dTX11NeXs6e/8fnzZvHcccdB8DGjRupq6ujsrKy1f0zLVq0iMGDB1NeXs727dtZtmwZY8aMAWD9+vXU1dUxbNiwd993xYoVjBgxgrKy911kmK1bt/Laa69xxBFH5PTfvyPNnTv37YioyDozIrrMY9y4cWFmuVdeXh4vv/xyfOxjH4tt27bFscceG08++WScf/75ERFRV1cXu3btioiIGTNmxEc/+tGIiGhsbIzTTjstHnzwwRg3blw888wzERFx7733xnXXXRcREVdddVVceumlsXv37nj44Yejd+/e8corr0RjY2Mcf/zxMW/evHdr2OPXv/51XHXVVW3qn+mMM86IOXPmRETEHXfcEbfeemu7/l2uu+66+OpXv9quvkkBaqKZz9SSXCZT+uJedwHFpE7C+UaT+V8kdWEzgBLgSKAiIjZIqiV1HHkj0BAR1bms1cza5phjjqG2tpZf/vKXfPCDH3zfvLq6Oq666iqWLFmCJHbtSl3RpKioiPvuu49jjjmGa6+9lgkTsl+A94ILLkASRx99NAMHDuToo48GYMyYMdTW1jJ27N7Pq2xP/yuvvJL6+noaGxt58cUX2/zv8fOf/5yamhpmzZrV5r75Kme/QSh1B667SV2tczRwuTIuVwwQEf8ZEWMjYiypewLMiogNGU3OTM93OJjloQsvvJAvfOELXH755e+b/uUvf5kzzzyT+fPn8/vf/57t298753DJkiX06tWLNWvWNPu+3bp1A1KBsuf5ntcNDal7FWWeLJ75/q3t39QvfvELVqxYwRVXXMF111231/VuaubMmXz961/nkUceed/yCl0uf6QeDyyN1JUmd5I6w/OivbS/HPhlDusxsw529dVX85WvfOXdb+h71NXVMWhQ6krn99133/um33DDDcyePZv169fzm9/8pt3LHjhwIAsXLmT37t089NBD7X6fTKWlpXzta1/jueeeY+HCha3qM2/ePK699loeeeQRBgwY0CF15ItcBsQgMq5sCaymmWvjS+pJ6lIHmafnB6nLAcyVNKW5hUiaotSNXmrW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\n",
"text/plain": [
"<Figure size 432x288 with 1 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"Rsqu_test = []\n",
"\n",
"order = [1, 2, 3, 4]\n",
"for n in order:\n",
" pr = PolynomialFeatures(degree=n)\n",
" \n",
" x_train_pr = pr.fit_transform(x_train[['horsepower']])\n",
" \n",
" x_test_pr = pr.fit_transform(x_test[['horsepower']]) \n",
" \n",
" lr.fit(x_train_pr, y_train)\n",
" \n",
" Rsqu_test.append(lr.score(x_test_pr, y_test))\n",
"\n",
"plt.plot(order, Rsqu_test)\n",
"plt.xlabel('order')\n",
"plt.ylabel('R^2')\n",
"plt.title('R^2 Using Test Data')\n",
"plt.text(3, 0.75, 'Maximum R^2 ') "
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"We see the R^2 gradually increases until an order three polynomial is used. Then the R^2 dramatically decreases at four."
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"The following function will be used in the next section; please run the cell."
]
},
{
"cell_type": "code",
"execution_count": 76,
"metadata": {},
"outputs": [],
"source": [
"def f(order, test_data):\n",
" x_train, x_test, y_train, y_test = train_test_split(x_data, y_data, test_size=test_data, random_state=0)\n",
" pr = PolynomialFeatures(degree=order)\n",
" x_train_pr = pr.fit_transform(x_train[['horsepower']])\n",
" x_test_pr = pr.fit_transform(x_test[['horsepower']])\n",
" poly = LinearRegression()\n",
" poly.fit(x_train_pr,y_train)\n",
" PollyPlot(x_train[['horsepower']], x_test[['horsepower']], y_train,y_test, poly, pr)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"The following interface allows you to experiment with different polynomial orders and different amounts of data. "
]
},
{
"cell_type": "code",
"execution_count": 77,
"metadata": {
"collapsed": false,
"jupyter": {
"outputs_hidden": false
}
},
"outputs": [
{
"data": {
"application/vnd.jupyter.widget-view+json": {
"model_id": "58c82eeb73514423862e61125f320f48",
"version_major": 2,
"version_minor": 0
},
"text/plain": [
"interactive(children=(IntSlider(value=3, description='order', max=6), FloatSlider(value=0.45, description='tes…"
]
},
"metadata": {},
"output_type": "display_data"
},
{
"data": {
"text/plain": [
"<function __main__.f(order, test_data)>"
]
},
"execution_count": 77,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"interact(f, order=(0, 6, 1), test_data=(0.05, 0.95, 0.05))"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"<div class=\"alert alert-danger alertdanger\" style=\"margin-top: 20px\">\n",
"<h1> Question #4a):</h1>\n",
"\n",
"<b>We can perform polynomial transformations with more than one feature. Create a \"PolynomialFeatures\" object \"pr1\" of degree two?</b>\n",
"</div>"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Double-click <b>here</b> for the solution.\n",
"\n",
"<!-- The answer is below:\n",
"\n",
"pr1=PolynomialFeatures(degree=2)\n",
"\n",
"-->"
]
},
{
"cell_type": "code",
"execution_count": 83,
"metadata": {},
"outputs": [],
"source": [
"pr1=PolynomialFeatures(degree=2)"
]
},
{
"cell_type": "code",
"execution_count": 81,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"numpy.ndarray"
]
},
"execution_count": 81,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"pr1=PolynomialFeatures(degree=2)\n",
"x_train_pr=pr1.fit_transform(x_train[['horsepower','curb-weight','engine-size','highway-mpg']])\n",
"type(x_train_pr)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"<div class=\"alert alert-danger alertdanger\" style=\"margin-top: 20px\">\n",
"<h1> Question #4b): </h1>\n",
"\n",
"<b> \n",
" Transform the training and testing samples for the features 'horsepower', 'curb-weight', 'engine-size' and 'highway-mpg'. Hint: use the method \"fit_transform\" \n",
"?</b>\n",
"</div>"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Double-click <b>here</b> for the solution.\n",
"\n",
"<!-- The answer is below:\n",
"\n",
"x_train_pr1=pr.fit_transform(x_train[['horsepower', 'curb-weight', 'engine-size', 'highway-mpg']])\n",
"\n",
"x_test_pr1=pr.fit_transform(x_test[['horsepower', 'curb-weight', 'engine-size', 'highway-mpg']])\n",
"\n",
"-->"
]
},
{
"cell_type": "code",
"execution_count": 84,
"metadata": {},
"outputs": [],
"source": [
"x_train_pr1=pr1.fit_transform(x_train[['horsepower','curb-weight','engine-size','highway-mpg']])\n",
"x_test_pr1=pr1.fit_transform(x_test[['horsepower','curb-weight','engine-size','highway-mpg']])"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"<!-- The answer is below:\n",
"\n",
"x_train_pr1=pr.fit_transform(x_train[['horsepower', 'curb-weight', 'engine-size', 'highway-mpg']])\n",
"x_test_pr1=pr.fit_transform(x_test[['horsepower', 'curb-weight', 'engine-size', 'highway-mpg']])\n",
"\n",
"-->"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"<div class=\"alert alert-danger alertdanger\" style=\"margin-top: 20px\">\n",
"<h1> Question #4c): </h1>\n",
"<b> \n",
"How many dimensions does the new feature have? Hint: use the attribute \"shape\"\n",
"</b>\n",
"</div>"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Double-click <b>here</b> for the solution.\n",
"\n",
"<!-- The answer is below:\n",
"\n",
"There are now 15 features: x_train_pr1.shape \n",
"\n",
"-->"
]
},
{
"cell_type": "code",
"execution_count": 85,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"(110, 15)"
]
},
"execution_count": 85,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"x_train_pr1.shape"
]
},
{
"cell_type": "code",
"execution_count": 82,
"metadata": {},
"outputs": [
{
"ename": "NameError",
"evalue": "name 'linear_model' is not defined",
"output_type": "error",
"traceback": [
"\u001b[0;31m---------------------------------------------------------------------------\u001b[0m",
"\u001b[0;31mNameError\u001b[0m Traceback (most recent call last)",
"\u001b[0;32m<ipython-input-82-9de19bda4e19>\u001b[0m in \u001b[0;36m<module>\u001b[0;34m\u001b[0m\n\u001b[0;32m----> 1\u001b[0;31m \u001b[0mpoly1\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0mlinear_model\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mLinearRegression\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mfit\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mx_train_pr1\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0my_train\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m",
"\u001b[0;31mNameError\u001b[0m: name 'linear_model' is not defined"
]
}
],
"source": [
"poly1=linear_model.LinearRegression().fit(x_train_pr1,y_train)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"<div class=\"alert alert-danger alertdanger\" style=\"margin-top: 20px\">\n",
"<h1> Question #4d): </h1>\n",
"\n",
"<b> \n",
"Create a linear regression model \"poly1\" and train the object using the method \"fit\" using the polynomial features?</b>\n",
"</div>"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Double-click <b>here</b> for the solution.\n",
"\n",
"<!-- The answer is below:\n",
"\n",
"poly1=linear_model.LinearRegression().fit(x_train_pr1,y_train)\n",
"\n",
"-->"
]
},
{
"cell_type": "code",
"execution_count": 87,
"metadata": {},
"outputs": [],
"source": [
"lre=LinearRegression()\n",
"poly1=lre.fit(x_train_pr1,y_train)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
" <div class=\"alert alert-danger alertdanger\" style=\"margin-top: 20px\">\n",
"<h1> Question #4e): </h1>\n",
"<b>Use the method \"predict\" to predict an output on the polynomial features, then use the function \"DistributionPlot\" to display the distribution of the predicted output vs the test data?</b>\n",
"</div>"
]
},
{
"cell_type": "code",
"execution_count": 90,
"metadata": {},
"outputs": [
{
"name": "stderr",
"output_type": "stream",
"text": [
"/home/jupyterlab/conda/envs/python/lib/python3.6/site-packages/scipy/stats/stats.py:1713: FutureWarning: Using a non-tuple sequence for multidimensional indexing is deprecated; use `arr[tuple(seq)]` instead of `arr[seq]`. In the future this will be interpreted as an array index, `arr[np.array(seq)]`, which will result either in an error or a different result.\n",
" return np.add.reduce(sorted[indexer] * weights, axis=axis) / sumval\n"
]
},
{
"data": {
"image/png": "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FBUVsX37drp06UJZWRkA06ZNY8CAAQB8+umnHH/88Rx55JEcf/zxzJs3L2Yco0aN2mP948ePZ/DgwTRp0iSutm6++WbuvPPOyr8LCgpYvHgxAE8++SRHH300RUVFXHXVVVRUVFBRUcEll1xCQUEBvXv3rkycx40bx+DBg6vdb1OnTuXkk0/mqKOOYsiQIaxevRqAv//97/Tq1YvCwkIuvPBCvv76ax588EHGjBlT2RvfrFkzOnbsyIwZM6pdT6ppHHURERGRLPXiiy8yePBgDj/8cFq3bs2MGTPo27cvr7/+Oi+++CKffPIJTZo0Yf369bRu3Zr/+7//484776S4uDhmuz169GDy5MnUr1+fiRMn8tvf/pbnn38+6vyDBw/miiuuYN26dbRp04axY8fys5/9rEZthZszZw7PPvssU6ZMITc3l2uuuYannnqK/Px8VqxYwaxZswDYsGEDAFOmTOH73/9+zDZ37tzJtddey0svvUTbtm156qmnuPHGG7n//vu54447WLJkCQ0aNGDDhg20bNmSK664grZt23Jd2Aen4uJi3n//ffr27RvXdqSKEnURERGR6tx1V0ZW+8wzz1QmkOeffz7PPPMMffv2ZeLEiVx66aU0adIEgNatWyfU7saNG7n44ouZP38+ZsauXbtizt+gQQPOOussxo0bx8iRIykpKeGMM86oUVvh3n77baZPn06/fv0A2L59O+3bt+d73/seCxcu5Gc/+xlDhw6tXFdpaSnt2rWL2eacOXP48ssvOe200wCoqKigU6dOAOTn53PhhRdy9tlnM3z48KhttG/fvrLHP5OUqIuIiIhkoXXr1vHOO+8wa9YszIyKigrMjDvuuAPnXFzjctevX5/du3cD7HGznRtvvJGBAwcyfvx4Fi9eXFkSE8uoUaO47bbbcM5x9tlnk5ubG3db4XGEx+Kc4+KLL+b222/fa5mZM2fy5ptv8q9//YvnnnuOhx9+mMaNG1d70yDnHH369OH999/f67k333yT9957j//+97/cdtttlT32Ve3YsYPGjRvHXE86qEZdREREJAuNGzeO0aNHs2TJEhYvXsyyZcvo2rUrH3zwAWeccQYPP/ww27ZtA/xFlgDNmzdn8+bNlW106dKF6dOnA+xRjrJx40Y6duwI+AtQ4zFw4EDmz5/Pv/71L0aNGpVQW126dKms+Z4xYwaL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xhlR22jfvj0rV66ksLAw7m2JRIm6SBa4/34oKIDgnLuXevV8j/qCBXDllbBsGdTXu1dEZJ8XqlGvqmnTppW/O+c4/fTTeeaZZ/aYp6SkBIvU+1MDzjluuOEGrrrqqj2m33XXXXGv4/zzz2fs2LHMmTOnsuwF4JJLLuHFF1+ksLCQRx99lEmTJu21bP369Str8Xfs2LFHXP/85z8jJveTJ0/m1Vdf5aKLLuLXv/41o0ePrmynXr3oRSXOOS677DJuvfXWvZ77/PPPef3117n77rt5/vnnI37wCcXYuHHjqOuIl0pfRDLss89g6lR/8bHoPnYAACAASURBVGisc12TJvCHP8CqVb48RkREBODYY49lypQpLFiwAIBt27bx1Vdf0aNHDxYtWsTXX38NsFciH3Lqqady7733Ar7me9OmTTRv3pzNmzdXzjNo0CAefvjhytr3FStWsGbNGvr378/48ePZvn07mzdv5uWXX44a56hRo3jyySd555139uh537x5M3l5eezatYunnnoq4rJdunRh+vTpAJW956G47r33Xnbt2gXAV199xdatW1myZAnt27fnyiuv5PLLL2fGjBkAHHHEEdWOyHLaaafx3HPPUVZWBsC6detYunQpa9euxTnHueeeyy233FLZZtV9BTB//nzy8/Njrice6pMTybAHHoBGjeDCC6uf98wzoXVrePxxGDIk9bGJiEj2a9euHY8++iijRo1iZzBE2G233cbhhx/O/fffz9ChQ2nbti0nnnhixLrpf/zjH/zoRz/ioYceIicnh3vvvZfjjjuOE044gYKCAoYMGcKYMWOYM2dO5TCLzZo148knn6Rv376VddqdO3fmpJNOihpnr169aNKkCUcdddQe3wjceuutHHPMMXTu3JnevXvvlfQC/OpXv+K8887jiSee4JRTTqmcfsUVV7B48WL69u2Lc4527drx4osvMmnSJMaMGUNubi7NmjWrLO0ZOnQokyZNolu3blHj7N27NzfddBOnnXYau3fvJjc3l/vuu4+cnBwuv/xynHOYGX/5y18AuPTSS7niiito3Lgxn376KWVlZbRo0YJ27drFetniYk7DSERUXFzsQlcXi6TK1q2QlwfDh/vkOx4/+Ym/8HT1ajjggNTGJyKyP5szZw49e/bMdBiSRKWlpYwePZq3UvjV9JgxY2jfvj0XX3zxXs9F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\n",
"text/plain": [
"<Figure size 864x720 with 1 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"yhat_test1=poly1.predict(x_test_pr1)\n",
"Title='Distribution Plot of Predicted Value Using Test Data vs Data Distribution of Test Data'\n",
"DistributionPlot(y_test,yhat_test1,\"Actual Values(Test)\",\"Predicted Values(Test)\", Title)\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Double-click <b>here</b> for the solution.\n",
"\n",
"<!-- The answer is below:\n",
"\n",
"yhat_test1=poly1.predict(x_test_pr1)\n",
"Title='Distribution Plot of Predicted Value Using Test Data vs Data Distribution of Test Data'\n",
"DistributionPlot(y_test, yhat_test1, \"Actual Values (Test)\", \"Predicted Values (Test)\", Title)\n",
"\n",
"-->"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"<div class=\"alert alert-danger alertdanger\" style=\"margin-top: 20px\">\n",
"<h1> Question #4f): </h1>\n",
"\n",
"<b>Use the distribution plot to determine the two regions were the predicted prices are less accurate than the actual prices.</b>\n",
"</div>"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Double-click <b>here</b> for the solution.\n",
"\n",
"<!-- The answer is below:\n",
"\n",
"The predicted value is lower than actual value for cars where the price $ 10,000 range, conversely the predicted price is larger than the price cost in the $30, 000 to $40,000 range. As such the model is not as accurate in these ranges .\n",
" \n",
"-->\n",
"\n",
"<img src = \"https://ibm.box.com/shared/static/c35ipv9zeanu7ynsnppb8gjo2re5ugeg.png\" width = 700, align = \"center\">\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"<h2 id=\"ref3\">Part 3: Ridge regression</h2> "
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
" In this section, we will review Ridge Regression we will see how the parameter Alfa changes the model. Just a note here our test data will be used as validation data."
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
" Let's perform a degree two polynomial transformation on our data. "
]
},
{
"cell_type": "code",
"execution_count": 91,
"metadata": {},
"outputs": [],
"source": [
"pr=PolynomialFeatures(degree=2)\n",
"x_train_pr=pr.fit_transform(x_train[['horsepower', 'curb-weight', 'engine-size', 'highway-mpg','normalized-losses','symboling']])\n",
"x_test_pr=pr.fit_transform(x_test[['horsepower', 'curb-weight', 'engine-size', 'highway-mpg','normalized-losses','symboling']])"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
" Let's import <b>Ridge</b> from the module <b>linear models</b>."
]
},
{
"cell_type": "code",
"execution_count": 92,
"metadata": {},
"outputs": [],
"source": [
"from sklearn.linear_model import Ridge"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Let's create a Ridge regression object, setting the regularization parameter to 0.1 "
]
},
{
"cell_type": "code",
"execution_count": 93,
"metadata": {},
"outputs": [],
"source": [
"RigeModel=Ridge(alpha=0.1)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Like regular regression, you can fit the model using the method <b>fit</b>."
]
},
{
"cell_type": "code",
"execution_count": 94,
"metadata": {
"collapsed": false,
"jupyter": {
"outputs_hidden": false
}
},
"outputs": [
{
"name": "stderr",
"output_type": "stream",
"text": [
"/home/jupyterlab/conda/envs/python/lib/python3.6/site-packages/sklearn/linear_model/ridge.py:125: LinAlgWarning: scipy.linalg.solve\n",
"Ill-conditioned matrix detected. Result is not guaranteed to be accurate.\n",
"Reciprocal condition number1.029716e-16\n",
" overwrite_a=True).T\n"
]
},
{
"data": {
"text/plain": [
"Ridge(alpha=0.1, copy_X=True, fit_intercept=True, max_iter=None,\n",
" normalize=False, random_state=None, solver='auto', tol=0.001)"
]
},
"execution_count": 94,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"RigeModel.fit(x_train_pr, y_train)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
" Similarly, you can obtain a prediction: "
]
},
{
"cell_type": "code",
"execution_count": 95,
"metadata": {
"collapsed": false,
"jupyter": {
"outputs_hidden": false
}
},
"outputs": [],
"source": [
"yhat = RigeModel.predict(x_test_pr)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Let's compare the first five predicted samples to our test set "
]
},
{
"cell_type": "code",
"execution_count": 96,
"metadata": {
"collapsed": false,
"jupyter": {
"outputs_hidden": false
}
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"predicted: [ 6567.83081933 9597.97151399 20836.22326843 19347.69543463]\n",
"test set : [ 6295. 10698. 13860. 13499.]\n"
]
}
],
"source": [
"print('predicted:', yhat[0:4])\n",
"print('test set :', y_test[0:4].values)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"We select the value of Alfa that minimizes the test error, for example, we can use a for loop. "
]
},
{
"cell_type": "code",
"execution_count": 97,
"metadata": {
"collapsed": false,
"jupyter": {
"outputs_hidden": false
}
},
"outputs": [],
"source": [
"Rsqu_test = []\n",
"Rsqu_train = []\n",
"dummy1 = []\n",
"ALFA = 10 * np.array(range(0,1000))\n",
"for alfa in ALFA:\n",
" RigeModel = Ridge(alpha=alfa) \n",
" RigeModel.fit(x_train_pr, y_train)\n",
" Rsqu_test.append(RigeModel.score(x_test_pr, y_test))\n",
" Rsqu_train.append(RigeModel.score(x_train_pr, y_train))"
]
},
{
"cell_type": "code",
"execution_count": 99,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"[0.4709833260694387,\n",
" 0.5418576440207072,\n",
" 0.5451713713358675,\n",
" 0.5467785284275197,\n",
" 0.5475411380780124]"
]
},
"execution_count": 99,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"Rsqu_test[0:5]"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"We can plot out the value of R^2 for different Alphas "
]
},
{
"cell_type": "code",
"execution_count": 100,
"metadata": {
"collapsed": false,
"jupyter": {
"outputs_hidden": false
}
},
"outputs": [
{
"data": {
"text/plain": [
"<matplotlib.legend.Legend at 0x7f0cea0d8eb8>"
]
},
"execution_count": 100,
"metadata": {},
"output_type": "execute_result"
},
{
"data": {
"image/png": "iVBORw0KGgoAAAANSUhEUgAAAtcAAAJNCAYAAAD6c1l4AAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADh0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uMy4xLjEsIGh0dHA6Ly9tYXRwbG90bGliLm9yZy8QZhcZAAAgAElEQVR4nOzde5RlZWHn/d/TdenqK91Agwi03Too0IBcKkSDoxCVoBPjJSbByyT6TiQSnWSyMgwkk8SoK++bd0UdddQY4jiTcUh8DYpilvcMihoc6UZULl64CS0KDQj0vau6nvePc0716aL6evbp6q7+fNY66+yzL6eew1b5uuups0utNQAAQO/mzPQAAABgthDXAADQEHENAAANEdcAANAQcQ0AAA0R1wAA0JDBmR5Ak44++ui6YsWKmR4GAACz2Jo1ax6qtS6bbtusiusVK1Zk9erVMz0MAABmsVLKj3a1zbQQAABoiLgGAICGiGsAAGjIrJpzDQAwk8bGxrJ27dps2bJlpodCA0ZGRnLCCSdkaGhor48R1wAADVm7dm0WLVqUFStWpJQy08OhB7XWPPzww1m7dm1Wrly518eZFgIA0JAtW7bkqKOOEtazQCklRx111D7/FkJcAwA0SFjPHvtzLsU1AMBhbOHChUmS+++/P6985Sun3ef888/f471E3v3ud2fTpk2Tr1/84hfn0UcfbW6gbZ3x7sqjjz6aD3zgA43/3L0lrgEAyJOf/ORcffXV+3381Lj+zGc+kyVLljQxtH0irgEAaMTll1++U1j++Z//ed75zndmw4YNef7zn5+zzz47p59+ej71qU894dh77rknp512WpJk8+bNufjii3PGGWfkN37jN7J58+bJ/S699NKMjo5m1apVectb3pIkee9735v7778/F1xwQS644IIkrTtnP/TQQ0mSd73rXTnttNNy2mmn5d3vfvfkzzvllFPyhje8IatWrcqFF16408/puPvuu/PsZz87P/dzP5c//dM/nVy/q890xRVX5M4778yZZ56Zyy67bK8+e6NqrbPmcc4551QAgJly2223zejPv+mmm+pzn/vcydennHJK/dGPflTHxsbqY489Vmutdd26dfVpT3tanZiYqLXWumDBglprrXfffXddtWpVrbXWd77znfX1r399rbXWb3/723VgYKDeeOONtdZaH3744VprrePj4/V5z3te/fa3v11rrfUpT3lKXbdu3eTP7rxevXp1Pe200+qGDRvq+vXr66mnnlpvuummevfdd9eBgYH6rW99q9Za66/92q/Vj3zkI0/4TC95yUvq3/3d39Vaa33f+943Od5dfabuz7G7/fbWdOc0yeq6ix71VXwAAH3w1k/fmtvuf7zR9zz1yYvzlpes2uX2s846Kw8++GDuv//+rFu3LkuXLs3y5cszNjaWP/7jP87111+fOXPm5Mc//nEeeOCBPOlJT5r2fa6//vr83u/9XpLkjDPOyBlnnDG57WMf+1iuvPLKjI+P5yc/+Uluu+22nbZP9bWvfS0vf/nLs2DBgiTJK17xinz1q1/Nr/zKr2TlypU588wzkyTnnHNO7rnnnicc//Wvfz0f//jHkyT/9t/+21x++eVJWheIp/tMU+1qv1199l6JawCAWeSVr3xlrr766vz0pz/NxRdfnCS56qqrsm7duqxZsyZDQ0NZsWLFHr9ibrpvyrj77rvzjne8IzfeeGOWLl2a173udXt8n9aF3unNnTt3cnlgYGDaaSG7Gsvefqb9+ey9ENcAAH2wuyvM/XTxxRfnDW94Qx566KF85StfSZI89thjOeaYYzI0NJTrrrsuP/rRj3b7Hs997nNz1VVX5YILLsgtt9yS73znO0mSxx9/PAsWLMgRRxyRBx54IJ/97Gdz/vnnJ0kWLVqU9evX5+ijj37Ce73uda/LFVdckVprrrnmmnzkIx/Z689z3nnn5aMf/Whe+9rX5qqrrppcv6vP1BnHnvbrF3ENADCLrFq1KuvXr8/xxx+f4447Lknymte8Ji95yUsyOjqaM888MyeffPJu3+PSSy/N61//+pxxxhk588wzc+655yZJnvnMZ+ass87KqlWr8tSnPjXnnXfe5DGXXHJJXvSiF+W4447LddddN7n+7LPPzute97rJ9/jt3/7tnHXWWdNOAZnOe97znrz61a/Oe97znvzqr/7q5Ppdfaajjjoq5513Xk477bS86EUvyuWXX75Pn71XZXeX6g81o6OjdU/fwQgA0C+33357TjnllJkeBg2a7pyWUtbUWken299X8QEAQEPENQAANERcAwBAQ8Q1AAA0RFwDAEBDxDUAADREXPdq8+bkwguTz3xmpkcCABzmHn300XzgAx/Yr2Nf/OIX59FHH93tPn/2Z3+WL33pS/v1/lOtWLEip59+ek4//fSceuqp+ZM/+ZNs3bp1t8f08vkOFHHdq/vuS774xeTlL289AwDMkN3F5/bt23d77Gc+85ksWbJkt/u87W1vywte8IL9Ht9U1113Xb773e/mm9/8Zu66665ccsklu91fXB8OOvemHxhIXvrSpH2bUQCAA+2KK67InXfemTPPPDOXXXZZvvzlL+eCCy7Iq1/96px++ulJkpe97GU555xzsmrVqlx55ZWTx65YsSIPPfRQ7rnnnpxyyil5wxvekFWrVuXCCy/M5s2bkySve93rcvXVV0/u/5a3vCVnn312Tj/99Hzve99Lkqxbty4vfOELc/bZZ+d3fud38pSnPCUPPfTQbse9cOHCfPCDH8wnP/nJPPLII9mwYUOe//znT773pz71qWk/3672m0niuledX1+8//3JypXJv/k3yb/8y8yOCQA4LP3lX/5lnva0p+Xmm2/OX/3VXyVJvvnNb+Yv/uIvcttttyVJPvzhD2fNmjVZvXp13vve9+bhhx9+wvv88Ic/zJve9KbceuutWbJkST7+8Y9P+/OOPvro3HTTTbn00kvzjne8I0ny1re+Nb/4i7+Ym266KS9/+ctz77337tXYFy9enJUrV+aHP/xhRkZGcs011+Smm27Kddddlz/8wz9MrfUJn29X+82kwRn96bNBJ65POCH50peS5z0v+aVfSv7rf01+67eSUmZ2fADAzPgP/yG5+eZm3/PMM5N3v3ufDjn33HOzcuXKydfvfe97c8011yRJ7rvvvvzwhz/MUUcdtdMxK1euzJlnnpkkOeecc3LPPfdM+96veMUrJvf5xCc+kST52te+Nvn+F110UZYuXbrXY+2Eca01f/zHf5zrr78+c+bMyY9//OM88MAD0+4/3X5PetKT9vpnNs2V6151poWMjCTHHZd8+cvJOeckr399a5pI+1ckAAAzYcGCBZPLX/7yl/OlL30pN9xwQ7797W/nrLPOypZOy3SZO3fu5PLAwEDGx8enfe/Oft377O+V4/Xr1+eee+7J05/+9Fx11VVZt25d1qxZk5tvvjnHHnvstOPc2/0OJFeue9W5ct35D+GTn5z88z8n73pX8ra3JatWJRdfnLzxjclznuNKNgAcLvbxCnMTFi1alPXr1+9y+2OPPZalS5dm/vz5+d73vpdvfOMb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\n",
"text/plain": [
"<Figure size 864x720 with 1 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"width = 12\n",
"height = 10\n",
"plt.figure(figsize=(width, height))\n",
"\n",
"plt.plot(ALFA,Rsqu_test, label='validation data ')\n",
"plt.plot(ALFA,Rsqu_train, 'r', label='training Data ')\n",
"plt.xlabel('alpha')\n",
"plt.ylabel('R^2')\n",
"plt.legend()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Figure 6:The blue line represents the R^2 of the test data, and the red line represents the R^2 of the training data. The x-axis represents the different values of Alfa "
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"The red line in figure 6 represents the R^2 of the test data, as Alpha increases the R^2 decreases; therefore as Alfa increases the model performs worse on the test data. The blue line represents the R^2 on the validation data, as the value for Alfa increases the R^2 decreases. "
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"<div class=\"alert alert-danger alertdanger\" style=\"margin-top: 20px\">\n",
"<h1> Question #5): </h1>\n",
"\n",
"Perform Ridge regression and calculate the R^2 using the polynomial features, use the training data to train the model and test data to test the model. The parameter alpha should be set to 10.\n",
"</div>"
]
},
{
"cell_type": "code",
"execution_count": 101,
"metadata": {
"collapsed": false,
"jupyter": {
"outputs_hidden": false
}
},
"outputs": [
{
"data": {
"text/plain": [
"0.5418576440207072"
]
},
"execution_count": 101,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"# Write your code below and press Shift+Enter to execute \n",
"RM=Ridge(alpha=10)\n",
"RM.fit(x_train_pr,y_train)\n",
"yhat=RM.predict(x_test_pr)\n",
"RM.score(x_test_pr,y_test)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Double-click <b>here</b> for the solution.\n",
"\n",
"<!-- The answer is below:\n",
"\n",
"RigeModel = Ridge(alpha=0) \n",
"RigeModel.fit(x_train_pr, y_train)\n",
"RigeModel.score(x_test_pr, y_test)\n",
"\n",
"-->"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"<h2 id=\"ref4\">Part 4: Grid Search</h2>"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"The term Alfa is a hyperparameter, sklearn has the class <b>GridSearchCV</b> to make the process of finding the best hyperparameter simpler."
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Let's import <b>GridSearchCV</b> from the module <b>model_selection</b>."
]
},
{
"cell_type": "code",
"execution_count": 102,
"metadata": {
"collapsed": false,
"jupyter": {
"outputs_hidden": false
}
},
"outputs": [],
"source": [
"from sklearn.model_selection import GridSearchCV"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"We create a dictionary of parameter values:"
]
},
{
"cell_type": "code",
"execution_count": 103,
"metadata": {
"collapsed": false,
"jupyter": {
"outputs_hidden": false
}
},
"outputs": [
{
"data": {
"text/plain": [
"[{'alpha': [0.001, 0.1, 1, 10, 100, 1000, 10000, 100000, 100000]}]"
]
},
"execution_count": 103,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"parameters1= [{'alpha': [0.001,0.1,1, 10, 100, 1000, 10000, 100000, 100000]}]\n",
"parameters1"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Create a ridge regions object:"
]
},
{
"cell_type": "code",
"execution_count": 104,
"metadata": {
"collapsed": false,
"jupyter": {
"outputs_hidden": false
}
},
"outputs": [
{
"data": {
"text/plain": [
"Ridge(alpha=1.0, copy_X=True, fit_intercept=True, max_iter=None,\n",
" normalize=False, random_state=None, solver='auto', tol=0.001)"
]
},
"execution_count": 104,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"RR=Ridge()\n",
"RR"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Create a ridge grid search object "
]
},
{
"cell_type": "code",
"execution_count": 105,
"metadata": {
"collapsed": false,
"jupyter": {
"outputs_hidden": false
}
},
"outputs": [],
"source": [
"Grid1 = GridSearchCV(RR, parameters1,cv=4)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Fit the model "
]
},
{
"cell_type": "code",
"execution_count": 109,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"sklearn.model_selection._search.GridSearchCV"
]
},
"execution_count": 109,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"type(Grid1)"
]
},
{
"cell_type": "code",
"execution_count": 106,
"metadata": {
"collapsed": false,
"jupyter": {
"outputs_hidden": false
}
},
"outputs": [
{
"name": "stderr",
"output_type": "stream",
"text": [
"/home/jupyterlab/conda/envs/python/lib/python3.6/site-packages/sklearn/model_selection/_search.py:841: DeprecationWarning: The default of the `iid` parameter will change from True to False in version 0.22 and will be removed in 0.24. This will change numeric results when test-set sizes are unequal.\n",
" DeprecationWarning)\n"
]
},
{
"data": {
"text/plain": [
"GridSearchCV(cv=4, error_score='raise-deprecating',\n",
" estimator=Ridge(alpha=1.0, copy_X=True, fit_intercept=True, max_iter=None,\n",
" normalize=False, random_state=None, solver='auto', tol=0.001),\n",
" fit_params=None, iid='warn', n_jobs=None,\n",
" param_grid=[{'alpha': [0.001, 0.1, 1, 10, 100, 1000, 10000, 100000, 100000]}],\n",
" pre_dispatch='2*n_jobs', refit=True, return_train_score='warn',\n",
" scoring=None, verbose=0)"
]
},
"execution_count": 106,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"Grid1.fit(x_data[['horsepower', 'curb-weight', 'engine-size', 'highway-mpg']], y_data)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"The object finds the best parameter values on the validation data. We can obtain the estimator with the best parameters and assign it to the variable BestRR as follows:"
]
},
{
"cell_type": "code",
"execution_count": 107,
"metadata": {
"collapsed": false,
"jupyter": {
"outputs_hidden": false
}
},
"outputs": [
{
"data": {
"text/plain": [
"Ridge(alpha=10000, copy_X=True, fit_intercept=True, max_iter=None,\n",
" normalize=False, random_state=None, solver='auto', tol=0.001)"
]
},
"execution_count": 107,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"BestRR=Grid1.best_estimator_\n",
"BestRR"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
" We now test our model on the test data "
]
},
{
"cell_type": "code",
"execution_count": 108,
"metadata": {
"collapsed": false,
"jupyter": {
"outputs_hidden": false
}
},
"outputs": [
{
"data": {
"text/plain": [
"0.8411649831036149"
]
},
"execution_count": 108,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"BestRR.score(x_test[['horsepower', 'curb-weight', 'engine-size', 'highway-mpg']], y_test)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"<div class=\"alert alert-danger alertdanger\" style=\"margin-top: 20px\">\n",
"<h1> Question #6): </h1>\n",
"Perform a grid search for the alpha parameter and the normalization parameter, then find the best values of the parameters\n",
"</div>"
]
},
{
"cell_type": "code",
"execution_count": 110,
"metadata": {
"collapsed": false,
"jupyter": {
"outputs_hidden": false
}
},
"outputs": [
{
"name": "stderr",
"output_type": "stream",
"text": [
"/home/jupyterlab/conda/envs/python/lib/python3.6/site-packages/sklearn/model_selection/_search.py:841: DeprecationWarning: The default of the `iid` parameter will change from True to False in version 0.22 and will be removed in 0.24. This will change numeric results when test-set sizes are unequal.\n",
" DeprecationWarning)\n"
]
},
{
"data": {
"text/plain": [
"0.840859719294301"
]
},
"execution_count": 110,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"# Write your code below and press Shift+Enter to execute \n",
"parameter2=[{'alpha':[0.001,0.1,1,10,100,1000],'normalize':[True,False]}]\n",
"RR=Ridge()\n",
"Grid2=GridSearchCV(RR, parameter2, cv=4)\n",
"Grid2.fit(x_data[['horsepower','curb-weight','engine-size','highway-mpg']],y_data)\n",
"BestRR=Grid2.best_estimator_\n",
"BestRR.score(x_test[['horsepower','curb-weight','engine-size','highway-mpg']],y_test)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Double-click <b>here</b> for the solution.\n",
"\n",
"<!-- The answer is below:\n",
"\n",
"parameters2= [{'alpha': [0.001,0.1,1, 10, 100, 1000,10000,100000,100000],'normalize':[True,False]} ]\n",
"Grid2 = GridSearchCV(Ridge(), parameters2,cv=4)\n",
"Grid2.fit(x_data[['horsepower', 'curb-weight', 'engine-size', 'highway-mpg']],y_data)\n",
"Grid2.best_estimator_\n",
"\n",
"-->"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"<h1>Thank you for completing this notebook!</h1>"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"<div class=\"alert alert-block alert-info\" style=\"margin-top: 20px\">\n",
"\n",
" <p><a href=\"https://cocl.us/corsera_da0101en_notebook_bottom\"><img src=\"https://s3-api.us-geo.objectstorage.softlayer.net/cf-courses-data/CognitiveClass/DA0101EN/Images/BottomAd.png\" width=\"750\" align=\"center\"></a></p>\n",
"</div>\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"<h3>About the Authors:</h3>\n",
"\n",
"This notebook was written by <a href=\"https://www.linkedin.com/in/mahdi-noorian-58219234/\" target=\"_blank\">Mahdi Noorian PhD</a>, <a href=\"https://www.linkedin.com/in/joseph-s-50398b136/\" target=\"_blank\">Joseph Santarcangelo</a>, Bahare Talayian, Eric Xiao, Steven Dong, Parizad, Hima Vsudevan and <a href=\"https://www.linkedin.com/in/fiorellawever/\" target=\"_blank\">Fiorella Wenver</a> and <a href=\" https://www.linkedin.com/in/yi-leng-yao-84451275/ \" target=\"_blank\" >Yi Yao</a>.\n",
"\n",
"<p><a href=\"https://www.linkedin.com/in/joseph-s-50398b136/\" target=\"_blank\">Joseph Santarcangelo</a> is a Data Scientist at IBM, and holds a PhD in Electrical Engineering. His research focused on using Machine Learning, Signal Processing, and Computer Vision to determine how videos impact human cognition. Joseph has been working for IBM since he completed his PhD.</p>"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"<hr>\n",
"<p>Copyright &copy; 2018 IBM Developer Skills Network. This notebook and its source code are released under the terms of the <a href=\"https://cognitiveclass.ai/mit-license/\">MIT License</a>.</p>"
]
}
],
"metadata": {
"anaconda-cloud": {},
"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.7"
}
},
"nbformat": 4,
"nbformat_minor": 4
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment