Praktikum_Machine_Learning/Regression/Regiska Sari Putri Prasetyo_202310715132_Regresi Polynomial.ipynb

931 lines
160 KiB
Plaintext
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

{
"cells": [
{
"cell_type": "markdown",
"metadata": {},
"source": [
"<p style=\"text-align:center\">\n",
" <a href=\"https://skills.network\" target=\"_blank\">\n",
" <img src=\"https://cf-courses-data.s3.us.cloud-object-storage.appdomain.cloud/assets/logos/SN_web_lightmode.png\" width=\"200\" alt=\"Skills Network Logo\">\n",
" </a>\n",
"</p>\n",
"\n",
"\n",
"# Polynomial Regression\n",
"\n",
"\n",
"Estimated time needed: **15** minutes\n",
" \n",
"\n",
"## Objectives\n",
"\n",
"After completing this lab you will be able to:\n",
"\n",
"* Use scikit-learn to implement Polynomial Regression\n",
"* Create a model, train it, test it and use the model\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"<h1>Table of contents</h1>\n",
"\n",
"<div class=\"alert alert-block alert-info\" style=\"margin-top: 20px\">\n",
" <ol>\n",
" <li><a href=\"#download_data\">Downloading Data</a></li>\n",
" <li><a href=\"#polynomial_regression\">Polynomial regression</a></li>\n",
" <li><a href=\"#evaluation\">Evaluation</a></li>\n",
" <li><a href=\"#practice\">Practice</a></li>\n",
" </ol>\n",
"</div>\n",
"<br>\n",
"<hr>\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### Importing Needed packages\n"
]
},
{
"cell_type": "code",
"execution_count": 1,
"metadata": {},
"outputs": [],
"source": [
"import matplotlib.pyplot as plt\n",
"import pandas as pd\n",
"import pylab as pl\n",
"import numpy as np\n",
"%matplotlib inline\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"<h2 id=\"download_data\">Downloading Data</h2>\n",
"To download the data, we will use !wget to download it from IBM Object Storage.\n"
]
},
{
"cell_type": "code",
"execution_count": 2,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"--2025-10-20 06:29:48-- https://cf-courses-data.s3.us.cloud-object-storage.appdomain.cloud/IBMDeveloperSkillsNetwork-ML0101EN-SkillsNetwork/labs/Module%202/data/FuelConsumptionCo2.csv\n",
"Resolving cf-courses-data.s3.us.cloud-object-storage.appdomain.cloud (cf-courses-data.s3.us.cloud-object-storage.appdomain.cloud)... 169.63.118.104, 169.63.118.104\n",
"Connecting to cf-courses-data.s3.us.cloud-object-storage.appdomain.cloud (cf-courses-data.s3.us.cloud-object-storage.appdomain.cloud)|169.63.118.104|:443... connected.\n",
"HTTP request sent, awaiting response... 200 OK\n",
"Length: 72629 (71K) [text/csv]\n",
"Saving to: FuelConsumption.csv\n",
"\n",
"FuelConsumption.csv 100%[===================>] 70.93K --.-KB/s in 0.002s \n",
"\n",
"2025-10-20 06:29:48 (38.0 MB/s) - FuelConsumption.csv saved [72629/72629]\n",
"\n"
]
}
],
"source": [
"!wget -O FuelConsumption.csv https://cf-courses-data.s3.us.cloud-object-storage.appdomain.cloud/IBMDeveloperSkillsNetwork-ML0101EN-SkillsNetwork/labs/Module%202/data/FuelConsumptionCo2.csv"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"__Did you know?__ When it comes to Machine Learning, you will likely be working with large datasets. As a business, where can you host your data? IBM is offering a unique opportunity for businesses, with 10 Tb of IBM Cloud Object Storage: [Sign up now for free](https://www.ibm.com/us-en/cloud/object-storage?utm_source=skills_network&utm_content=in_lab_content_link&utm_id=Lab-IBMDeveloperSkillsNetwork-ML0101EN-SkillsNetwork)\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"\n",
"## Understanding the Data\n",
"\n",
"### `FuelConsumption.csv`:\n",
"We have downloaded a fuel consumption dataset, **`FuelConsumption.csv`**, which contains model-specific fuel consumption ratings and estimated carbon dioxide emissions for new light-duty vehicles for retail sale in Canada. [Dataset source](http://open.canada.ca/data/en/dataset/98f1a129-f628-4ce4-b24d-6f16bf24dd64)\n",
"\n",
"- **MODELYEAR** e.g. 2014\n",
"- **MAKE** e.g. Acura\n",
"- **MODEL** e.g. ILX\n",
"- **VEHICLE CLASS** e.g. SUV\n",
"- **ENGINE SIZE** e.g. 4.7\n",
"- **CYLINDERS** e.g 6\n",
"- **TRANSMISSION** e.g. A6\n",
"- **FUEL CONSUMPTION in CITY(L/100 km)** e.g. 9.9\n",
"- **FUEL CONSUMPTION in HWY (L/100 km)** e.g. 8.9\n",
"- **FUEL CONSUMPTION COMB (L/100 km)** e.g. 9.2\n",
"- **CO2 EMISSIONS (g/km)** e.g. 182 --> low --> 0\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Reading the data in\n"
]
},
{
"cell_type": "code",
"execution_count": 3,
"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>MODELYEAR</th>\n",
" <th>MAKE</th>\n",
" <th>MODEL</th>\n",
" <th>VEHICLECLASS</th>\n",
" <th>ENGINESIZE</th>\n",
" <th>CYLINDERS</th>\n",
" <th>TRANSMISSION</th>\n",
" <th>FUELTYPE</th>\n",
" <th>FUELCONSUMPTION_CITY</th>\n",
" <th>FUELCONSUMPTION_HWY</th>\n",
" <th>FUELCONSUMPTION_COMB</th>\n",
" <th>FUELCONSUMPTION_COMB_MPG</th>\n",
" <th>CO2EMISSIONS</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>0</th>\n",
" <td>2014</td>\n",
" <td>ACURA</td>\n",
" <td>ILX</td>\n",
" <td>COMPACT</td>\n",
" <td>2.0</td>\n",
" <td>4</td>\n",
" <td>AS5</td>\n",
" <td>Z</td>\n",
" <td>9.9</td>\n",
" <td>6.7</td>\n",
" <td>8.5</td>\n",
" <td>33</td>\n",
" <td>196</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1</th>\n",
" <td>2014</td>\n",
" <td>ACURA</td>\n",
" <td>ILX</td>\n",
" <td>COMPACT</td>\n",
" <td>2.4</td>\n",
" <td>4</td>\n",
" <td>M6</td>\n",
" <td>Z</td>\n",
" <td>11.2</td>\n",
" <td>7.7</td>\n",
" <td>9.6</td>\n",
" <td>29</td>\n",
" <td>221</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2</th>\n",
" <td>2014</td>\n",
" <td>ACURA</td>\n",
" <td>ILX HYBRID</td>\n",
" <td>COMPACT</td>\n",
" <td>1.5</td>\n",
" <td>4</td>\n",
" <td>AV7</td>\n",
" <td>Z</td>\n",
" <td>6.0</td>\n",
" <td>5.8</td>\n",
" <td>5.9</td>\n",
" <td>48</td>\n",
" <td>136</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3</th>\n",
" <td>2014</td>\n",
" <td>ACURA</td>\n",
" <td>MDX 4WD</td>\n",
" <td>SUV - SMALL</td>\n",
" <td>3.5</td>\n",
" <td>6</td>\n",
" <td>AS6</td>\n",
" <td>Z</td>\n",
" <td>12.7</td>\n",
" <td>9.1</td>\n",
" <td>11.1</td>\n",
" <td>25</td>\n",
" <td>255</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4</th>\n",
" <td>2014</td>\n",
" <td>ACURA</td>\n",
" <td>RDX AWD</td>\n",
" <td>SUV - SMALL</td>\n",
" <td>3.5</td>\n",
" <td>6</td>\n",
" <td>AS6</td>\n",
" <td>Z</td>\n",
" <td>12.1</td>\n",
" <td>8.7</td>\n",
" <td>10.6</td>\n",
" <td>27</td>\n",
" <td>244</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"text/plain": [
" MODELYEAR MAKE MODEL VEHICLECLASS ENGINESIZE CYLINDERS \\\n",
"0 2014 ACURA ILX COMPACT 2.0 4 \n",
"1 2014 ACURA ILX COMPACT 2.4 4 \n",
"2 2014 ACURA ILX HYBRID COMPACT 1.5 4 \n",
"3 2014 ACURA MDX 4WD SUV - SMALL 3.5 6 \n",
"4 2014 ACURA RDX AWD SUV - SMALL 3.5 6 \n",
"\n",
" TRANSMISSION FUELTYPE FUELCONSUMPTION_CITY FUELCONSUMPTION_HWY \\\n",
"0 AS5 Z 9.9 6.7 \n",
"1 M6 Z 11.2 7.7 \n",
"2 AV7 Z 6.0 5.8 \n",
"3 AS6 Z 12.7 9.1 \n",
"4 AS6 Z 12.1 8.7 \n",
"\n",
" FUELCONSUMPTION_COMB FUELCONSUMPTION_COMB_MPG CO2EMISSIONS \n",
"0 8.5 33 196 \n",
"1 9.6 29 221 \n",
"2 5.9 48 136 \n",
"3 11.1 25 255 \n",
"4 10.6 27 244 "
]
},
"execution_count": 3,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"df = pd.read_csv(\"FuelConsumption.csv\")\n",
"\n",
"# take a look at the dataset\n",
"df.head()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Let's select some features that we want to use for regression.\n"
]
},
{
"cell_type": "code",
"execution_count": 4,
"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>ENGINESIZE</th>\n",
" <th>CYLINDERS</th>\n",
" <th>FUELCONSUMPTION_COMB</th>\n",
" <th>CO2EMISSIONS</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>0</th>\n",
" <td>2.0</td>\n",
" <td>4</td>\n",
" <td>8.5</td>\n",
" <td>196</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1</th>\n",
" <td>2.4</td>\n",
" <td>4</td>\n",
" <td>9.6</td>\n",
" <td>221</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2</th>\n",
" <td>1.5</td>\n",
" <td>4</td>\n",
" <td>5.9</td>\n",
" <td>136</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3</th>\n",
" <td>3.5</td>\n",
" <td>6</td>\n",
" <td>11.1</td>\n",
" <td>255</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4</th>\n",
" <td>3.5</td>\n",
" <td>6</td>\n",
" <td>10.6</td>\n",
" <td>244</td>\n",
" </tr>\n",
" <tr>\n",
" <th>5</th>\n",
" <td>3.5</td>\n",
" <td>6</td>\n",
" <td>10.0</td>\n",
" <td>230</td>\n",
" </tr>\n",
" <tr>\n",
" <th>6</th>\n",
" <td>3.5</td>\n",
" <td>6</td>\n",
" <td>10.1</td>\n",
" <td>232</td>\n",
" </tr>\n",
" <tr>\n",
" <th>7</th>\n",
" <td>3.7</td>\n",
" <td>6</td>\n",
" <td>11.1</td>\n",
" <td>255</td>\n",
" </tr>\n",
" <tr>\n",
" <th>8</th>\n",
" <td>3.7</td>\n",
" <td>6</td>\n",
" <td>11.6</td>\n",
" <td>267</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"text/plain": [
" ENGINESIZE CYLINDERS FUELCONSUMPTION_COMB CO2EMISSIONS\n",
"0 2.0 4 8.5 196\n",
"1 2.4 4 9.6 221\n",
"2 1.5 4 5.9 136\n",
"3 3.5 6 11.1 255\n",
"4 3.5 6 10.6 244\n",
"5 3.5 6 10.0 230\n",
"6 3.5 6 10.1 232\n",
"7 3.7 6 11.1 255\n",
"8 3.7 6 11.6 267"
]
},
"execution_count": 4,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"cdf = df[['ENGINESIZE','CYLINDERS','FUELCONSUMPTION_COMB','CO2EMISSIONS']]\n",
"cdf.head(9)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Let's plot Emission values with respect to Engine size:\n"
]
},
{
"cell_type": "code",
"execution_count": 5,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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2Lx5s/OxlpYWbNu2DYMGDQIA9O/fHzExMW5jampqsHfvXucYIiIiatvaW3nypqYmfPHFF86vq6qqsHv3bqSkpKBHjx4oLCzEokWLkJ2djezsbCxatAgJCQm49dZbAQDJycmYMmUKZs+ejdTUVKSkpGDOnDnIzc3FiBEjrHpbREREFEYsDXZ27dqFYcOGOb+eNWsWAGDSpElYuXIl5s2bhxMnTmDq1Kk4cuQILrvsMrzzzjtISkpyvqa4uBjt27fHxIkTceLECQwfPhwrV66EnVuQiIiICGFUZ8dK0VZnh4iIqC2I+Do7REREREZgsENERERRzdKcnXChXsmLtkrKRERE0Uz93A6UkcNgB3A2FmUlZSIiosjT2NiI5ORkn88zQRnAmTNn8O233yIpKSlgdWYtGhoakJWVhYMHD7aZxGe+Z77naMX3zPccrSL5PSuKgsbGRmRkZKBdO9+ZOVzZAdCuXTtkZmaadvy2WKWZ77lt4HtuG/ie24ZIfc/+VnRUTFAmIiKiqMZgh4iIiKIagx0TxcXF4aGHHkJcXJzVUwkZvue2ge+5beB7bhvawntmgjIRERFFNa7sEBERUVRjsENERERRjcEOERERRTUGO0RERBTVGOyY5P3338fYsWORkZEBm82G9evXWz0lUy1evBgDBgxAUlISunXrhvHjx+Ozzz6zelqmWr58OS6++GJnIa6BAwfirbfesnpaIbN48WLYbDYUFhZaPRVTLViwADabze2Wnp5u9bRMV11djdtvvx2pqalISEjAL37xC1RWVlo9LdP06tWr1c/ZZrNh2rRpVk/NNKdPn8Yf//hH9O7dG/Hx8TjvvPPw5z//GWfOnLF6aoZjBWWTHDt2DD//+c9x55134vrrr7d6Oqbbtm0bpk2bhgEDBuD06dN44IEHMGrUKHz66adITEy0enqmyMzMxKOPPorzzz8fALBq1Srk5eXhX//6F/r162fx7MxVUVGB5557DhdffLHVUwmJfv36YcuWLc6v7Xa7hbMx35EjR3DFFVdg2LBheOutt9CtWzccOHAA55xzjtVTM01FRQUcDofz671792LkyJG48cYbLZyVuR577DE888wzWLVqFfr164ddu3bhzjvvRHJyMmbMmGH19AzFYMcko0ePxujRo62eRshs2rTJ7esVK1agW7duqKysxFVXXWXRrMw1duxYt68f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SA9Le64TUVSZNGmSYrfblcTERLfbn//8Z+cYAMof//hH59dNTU2KzWZT3nrrLUVRFOW+++5TcnJy3I77wAMPKACUI0eOKIqiKCtWrFCSk5Odzz/00ENKQkKC0tDQ4Hxs7ty5ymWXXeY8R4cOHZSdO3e6HXfKlCnKLbfc4vW9rF27VunUqZPbMV0NGTJEmTFjRqvHf/jhB6VPnz7K1KlTnY8NHjxYWbRokdu41atXK927d/d6bCIyFnN2iMhQw4YNw/Lly90e88xvufjii53/TkxMRFJSEurq6gAAn332GQYMGOA2/le/+lXA8/bq1cstWbh79+7OY3766ac4efIkRo4c6faalpYWXHLJJV6PN3LkSPTs2RPnnXcerr32Wlx77bXOS2++nDp1Ctdffz169OiBp556yvl4ZWUlKioq3FZyHA4HTp48iePHj/s9JhEFj8EOERkqMTER559/vt8xMTExbl/bbDacOXMGgMitsdlsbs8rEptG/R1TvX/jjTdw7rnnuo3zlTydlJSEjz/+GOXl5XjnnXfw4IMPYsGCBaioqPC57f33v/89vvnmG1RUVKB9+7P/ez1z5gwefvhh5Ofnt3pNhw4dAr43IgoOgx0iCisXXngh3nzzTbfHdu3aFdQxf/aznyEuLg7ffPMNhgwZIv269u3bY8SIERgxYgQeeughnHPOOXjvvfe8Bi1LlizBK6+8gg8++ACpqaluz/3yl7/EZ599FjAIJCJzMNghIkM1NzejtrbW7bH27dujS5cuUq+/5557sGTJEtx3332YMmUKdu/ejZUrVwJAqxUfWUlJSZgzZw5mzpyJM2fO4Morr0RDQwN27tyJjh07YtKkSa1e8/rrr+PLL7/EVVddhc6dO+PNN9/EmTNncMEFF7Qau2XLFsybNw9//etf0aVLF+f7j4+PR3JyMh588EGMGTMGWVlZuPHGG9GuXTt88skn2LNnDxYuXKjrPRGRPO7GIiJDbdq0Cd27d3e7XXnlldKv7927N1599VWUlZXh4osvxvLly527sYKp1/Pf//3fePDBB7F48WJcdNFFuOaaa/Daa6+hd+/eXsefc845KCsrw9VXX42LLroIzzzzDF5++WX069ev1dgdO3bA4XDgd7/7ndv7njFjBgBRVPH111/H5s2bMWDAAFx++eVYsmQJevbsqfv9EJE8VlAmorD3yCOP4JlnnsHBgwetngoRRSBexiKisPP0009jwIABSE1NxT/+8Q88/vjjmD59utXTIqIIxWCHiMLO/v37sXDhQvz444/o0aMHZs+ejfnz51s9LSKKULyMRURERFGNCcpEREQU1RjsEBERUVRjsENERERRjcEOERERRTUGO0RERBTVGOwQERFRVGOwQ0RERFGNwQ4RERFFtf8PvJlBIb+scX0AAAAASUVORK5CYII=\n",
"text/plain": [
"<Figure size 640x480 with 1 Axes>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"plt.scatter(cdf.ENGINESIZE, cdf.CO2EMISSIONS, color='blue')\n",
"plt.xlabel(\"Engine size\")\n",
"plt.ylabel(\"Emission\")\n",
"plt.show()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"#### Creating train and test dataset\n",
"Train/Test Split involves splitting the dataset into training and testing sets respectively, which are mutually exclusive. After which, you train with the training set and test with the testing set.\n"
]
},
{
"cell_type": "code",
"execution_count": 6,
"metadata": {},
"outputs": [],
"source": [
"msk = np.random.rand(len(df)) < 0.8\n",
"train = cdf[msk]\n",
"test = cdf[~msk]"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"<h2 id=\"polynomial_regression\">Polynomial regression</h2>\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Sometimes, the trend of data is not really linear, and looks curvy. In this case we can use Polynomial regression methods. In fact, many different regressions exist that can be used to fit whatever the dataset looks like, such as quadratic, cubic, and so on, and it can go on and on to infinite degrees.\n",
"\n",
"In essence, we can call all of these, polynomial regression, where the relationship between the independent variable x and the dependent variable y is modeled as an nth degree polynomial in x. Lets say you want to have a polynomial regression (let's make 2 degree polynomial):\n",
"\n",
"\n",
"$$y = b + \\theta_1 x + \\theta_2 x^2$$\n",
"\n",
"\n",
"\n",
"Now, the question is: how we can fit our data on this equation while we have only x values, such as __Engine Size__? \n",
"Well, we can create a few additional features: 1, $x$, and $x^2$.\n",
"\n",
"\n",
"\n",
"__PolynomialFeatures()__ function in Scikit-learn library, drives a new feature sets from the original feature set. That is, a matrix will be generated consisting of all polynomial combinations of the features with degree less than or equal to the specified degree. For example, lets say the original feature set has only one feature, _ENGINESIZE_. Now, if we select the degree of the polynomial to be 2, then it generates 3 features, degree=0, degree=1 and degree=2: \n"
]
},
{
"cell_type": "code",
"execution_count": 7,
"metadata": {},
"outputs": [
{
"name": "stderr",
"output_type": "stream",
"text": [
"/home/jupyterlab/conda/envs/python/lib/python3.7/site-packages/sklearn/utils/validation.py:37: DeprecationWarning: distutils Version classes are deprecated. Use packaging.version instead.\n",
" LARGE_SPARSE_SUPPORTED = LooseVersion(scipy_version) >= '0.14.0'\n",
"/home/jupyterlab/conda/envs/python/lib/python3.7/site-packages/sklearn/linear_model/least_angle.py:35: DeprecationWarning: `np.float` is a deprecated alias for the builtin `float`. To silence this warning, use `float` by itself. Doing this will not modify any behavior and is safe. If you specifically wanted the numpy scalar type, use `np.float64` here.\n",
"Deprecated in NumPy 1.20; for more details and guidance: https://numpy.org/devdocs/release/1.20.0-notes.html#deprecations\n",
" eps=np.finfo(np.float).eps,\n",
"/home/jupyterlab/conda/envs/python/lib/python3.7/site-packages/sklearn/linear_model/least_angle.py:597: DeprecationWarning: `np.float` is a deprecated alias for the builtin `float`. To silence this warning, use `float` by itself. Doing this will not modify any behavior and is safe. If you specifically wanted the numpy scalar type, use `np.float64` here.\n",
"Deprecated in NumPy 1.20; for more details and guidance: https://numpy.org/devdocs/release/1.20.0-notes.html#deprecations\n",
" eps=np.finfo(np.float).eps, copy_X=True, fit_path=True,\n",
"/home/jupyterlab/conda/envs/python/lib/python3.7/site-packages/sklearn/linear_model/least_angle.py:836: DeprecationWarning: `np.float` is a deprecated alias for the builtin `float`. To silence this warning, use `float` by itself. Doing this will not modify any behavior and is safe. If you specifically wanted the numpy scalar type, use `np.float64` here.\n",
"Deprecated in NumPy 1.20; for more details and guidance: https://numpy.org/devdocs/release/1.20.0-notes.html#deprecations\n",
" eps=np.finfo(np.float).eps, copy_X=True, fit_path=True,\n",
"/home/jupyterlab/conda/envs/python/lib/python3.7/site-packages/sklearn/linear_model/least_angle.py:862: DeprecationWarning: `np.float` is a deprecated alias for the builtin `float`. To silence this warning, use `float` by itself. Doing this will not modify any behavior and is safe. If you specifically wanted the numpy scalar type, use `np.float64` here.\n",
"Deprecated in NumPy 1.20; for more details and guidance: https://numpy.org/devdocs/release/1.20.0-notes.html#deprecations\n",
" eps=np.finfo(np.float).eps, positive=False):\n",
"/home/jupyterlab/conda/envs/python/lib/python3.7/site-packages/sklearn/linear_model/least_angle.py:1097: DeprecationWarning: `np.float` is a deprecated alias for the builtin `float`. To silence this warning, use `float` by itself. Doing this will not modify any behavior and is safe. If you specifically wanted the numpy scalar type, use `np.float64` here.\n",
"Deprecated in NumPy 1.20; for more details and guidance: https://numpy.org/devdocs/release/1.20.0-notes.html#deprecations\n",
" max_n_alphas=1000, n_jobs=None, eps=np.finfo(np.float).eps,\n",
"/home/jupyterlab/conda/envs/python/lib/python3.7/site-packages/sklearn/linear_model/least_angle.py:1344: DeprecationWarning: `np.float` is a deprecated alias for the builtin `float`. To silence this warning, use `float` by itself. Doing this will not modify any behavior and is safe. If you specifically wanted the numpy scalar type, use `np.float64` here.\n",
"Deprecated in NumPy 1.20; for more details and guidance: https://numpy.org/devdocs/release/1.20.0-notes.html#deprecations\n",
" max_n_alphas=1000, n_jobs=None, eps=np.finfo(np.float).eps,\n",
"/home/jupyterlab/conda/envs/python/lib/python3.7/site-packages/sklearn/linear_model/least_angle.py:1480: DeprecationWarning: `np.float` is a deprecated alias for the builtin `float`. To silence this warning, use `float` by itself. Doing this will not modify any behavior and is safe. If you specifically wanted the numpy scalar type, use `np.float64` here.\n",
"Deprecated in NumPy 1.20; for more details and guidance: https://numpy.org/devdocs/release/1.20.0-notes.html#deprecations\n",
" eps=np.finfo(np.float).eps, copy_X=True, positive=False):\n",
"/home/jupyterlab/conda/envs/python/lib/python3.7/site-packages/sklearn/linear_model/randomized_l1.py:152: DeprecationWarning: `np.float` is a deprecated alias for the builtin `float`. To silence this warning, use `float` by itself. Doing this will not modify any behavior and is safe. If you specifically wanted the numpy scalar type, use `np.float64` here.\n",
"Deprecated in NumPy 1.20; for more details and guidance: https://numpy.org/devdocs/release/1.20.0-notes.html#deprecations\n",
" precompute=False, eps=np.finfo(np.float).eps,\n",
"/home/jupyterlab/conda/envs/python/lib/python3.7/site-packages/sklearn/linear_model/randomized_l1.py:320: DeprecationWarning: `np.float` is a deprecated alias for the builtin `float`. To silence this warning, use `float` by itself. Doing this will not modify any behavior and is safe. If you specifically wanted the numpy scalar type, use `np.float64` here.\n",
"Deprecated in NumPy 1.20; for more details and guidance: https://numpy.org/devdocs/release/1.20.0-notes.html#deprecations\n",
" eps=np.finfo(np.float).eps, random_state=None,\n",
"/home/jupyterlab/conda/envs/python/lib/python3.7/site-packages/sklearn/linear_model/randomized_l1.py:580: DeprecationWarning: `np.float` is a deprecated alias for the builtin `float`. To silence this warning, use `float` by itself. Doing this will not modify any behavior and is safe. If you specifically wanted the numpy scalar type, use `np.float64` here.\n",
"Deprecated in NumPy 1.20; for more details and guidance: https://numpy.org/devdocs/release/1.20.0-notes.html#deprecations\n",
" eps=4 * np.finfo(np.float).eps, n_jobs=None,\n"
]
},
{
"data": {
"text/plain": [
"array([[ 1. , 2. , 4. ],\n",
" [ 1. , 2.4 , 5.76],\n",
" [ 1. , 1.5 , 2.25],\n",
" ...,\n",
" [ 1. , 3. , 9. ],\n",
" [ 1. , 3.2 , 10.24],\n",
" [ 1. , 3.2 , 10.24]])"
]
},
"execution_count": 7,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"from sklearn.preprocessing import PolynomialFeatures\n",
"from sklearn import linear_model\n",
"train_x = np.asanyarray(train[['ENGINESIZE']])\n",
"train_y = np.asanyarray(train[['CO2EMISSIONS']])\n",
"\n",
"test_x = np.asanyarray(test[['ENGINESIZE']])\n",
"test_y = np.asanyarray(test[['CO2EMISSIONS']])\n",
"\n",
"\n",
"poly = PolynomialFeatures(degree=2)\n",
"train_x_poly = poly.fit_transform(train_x)\n",
"train_x_poly"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"**fit_transform** takes our x values, and output a list of our data raised from power of 0 to power of 2 (since we set the degree of our polynomial to 2). \n",
"\n",
"The equation and the sample example is displayed below. \n",
"\n",
"\n",
"$$\n",
"\\begin{bmatrix}\n",
" v_1\\\\\\\\\\\\\n",
" v_2\\\\\\\\\n",
" \\vdots\\\\\\\\\n",
" v_n\n",
"\\end{bmatrix}\\longrightarrow \\begin{bmatrix}\n",
" [ 1 & v_1 & v_1^2]\\\\\\\\\n",
" [ 1 & v_2 & v_2^2]\\\\\\\\\n",
" \\vdots & \\vdots & \\vdots\\\\\\\\\n",
" [ 1 & v_n & v_n^2]\n",
"\\end{bmatrix}\n",
"$$\n",
"\n",
"\n",
"\n",
"\n",
"$$\n",
"\\begin{bmatrix}\n",
" 2.\\\\\\\\\n",
" 2.4\\\\\\\\\n",
" 1.5\\\\\\\\\n",
" \\vdots\n",
"\\end{bmatrix} \\longrightarrow \\begin{bmatrix}\n",
" [ 1 & 2. & 4.]\\\\\\\\\n",
" [ 1 & 2.4 & 5.76]\\\\\\\\\n",
" [ 1 & 1.5 & 2.25]\\\\\\\\\n",
" \\vdots & \\vdots & \\vdots\\\\\\\\\n",
"\\end{bmatrix}\n",
"$$\n",
"\n",
"\n",
"\n",
"\n",
"\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"It looks like feature sets for multiple linear regression analysis, right? Yes. It Does. \n",
"Indeed, Polynomial regression is a special case of linear regression, with the main idea of how do you select your features. Just consider replacing the $x$ with $x_1$, $x_1^2$ with $x_2$, and so on. Then the 2nd degree equation would be turn into:\n",
"\n",
"$$y = b + \\theta_1 x_1 + \\theta_2 x_2$$\n",
"\n",
"Now, we can deal with it as a 'linear regression' problem. Therefore, this polynomial regression is considered to be a special case of traditional multiple linear regression. So, you can use the same mechanism as linear regression to solve such problems. \n",
"\n",
"\n",
"\n",
"so we can use __LinearRegression()__ function to solve it:\n"
]
},
{
"cell_type": "code",
"execution_count": 8,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Coefficients: [[ 0. 50.06359412 -1.48589036]]\n",
"Intercept: [107.65985247]\n"
]
}
],
"source": [
"clf = linear_model.LinearRegression()\n",
"train_y_ = clf.fit(train_x_poly, train_y)\n",
"# The coefficients\n",
"print ('Coefficients: ', clf.coef_)\n",
"print ('Intercept: ',clf.intercept_)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"As mentioned before, __Coefficient__ and __Intercept__ , are the parameters of the fit curvy line. \n",
"Given that it is a typical multiple linear regression, with 3 parameters, and knowing that the parameters are the intercept and coefficients of hyperplane, sklearn has estimated them from our new set of feature sets. Lets plot it:\n"
]
},
{
"cell_type": "code",
"execution_count": 9,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"Text(0, 0.5, 'Emission')"
]
},
"execution_count": 9,
"metadata": {},
"output_type": "execute_result"
},
{
"data": {
"image/png": "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\n",
"text/plain": [
"<Figure size 640x480 with 1 Axes>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"plt.scatter(train.ENGINESIZE, train.CO2EMISSIONS, color='blue')\n",
"XX = np.arange(0.0, 10.0, 0.1)\n",
"yy = clf.intercept_[0]+ clf.coef_[0][1]*XX+ clf.coef_[0][2]*np.power(XX, 2)\n",
"plt.plot(XX, yy, '-r' )\n",
"plt.xlabel(\"Engine size\")\n",
"plt.ylabel(\"Emission\")"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"<h2 id=\"evaluation\">Evaluation</h2>\n"
]
},
{
"cell_type": "code",
"execution_count": 10,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Mean absolute error: 25.17\n",
"Residual sum of squares (MSE): 1059.07\n",
"R2-score: 0.76\n"
]
}
],
"source": [
"from sklearn.metrics import r2_score\n",
"\n",
"test_x_poly = poly.transform(test_x)\n",
"test_y_ = clf.predict(test_x_poly)\n",
"\n",
"print(\"Mean absolute error: %.2f\" % np.mean(np.absolute(test_y_ - test_y)))\n",
"print(\"Residual sum of squares (MSE): %.2f\" % np.mean((test_y_ - test_y) ** 2))\n",
"print(\"R2-score: %.2f\" % r2_score(test_y,test_y_ ) )"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"<h2 id=\"practice\">Practice</h2>\n",
"Try to use a polynomial regression with the dataset but this time with degree three (cubic). Does it result in better accuracy?\n"
]
},
{
"cell_type": "code",
"execution_count": 13,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Coefficients: [[ 0. 33.08928706 3.25815397 -0.40004482]]\n",
"Intercept: [125.51640013]\n"
]
},
{
"data": {
"image/png": "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Gp555hkMHDgQx44dQ+3atb3dPbeIjY3FwoULcf311wMA3nnnHSQmJuLHH39Eu3btvNw798rIyMAbb7yB9u3be7srHtGuXTts377d9LNer/dib9zv4sWLuOWWW9C3b198/vnnaNiwIU6ePInrrrvO211zm4yMDBgMBtPPR44cwYABAzBy5Egv9sq9XnjhBbz22mt455130K5dO3z//ff4xz/+gbCwMEyaNMnb3dMUgx03GTx4MAYPHuztbnjMli1bLH5etWoVGjZsiAMHDuDWW2/1Uq/ca9iwYRY/z5s3DytXrsQ333zj18FOYWEh7rvvPrz55puYO3eut7vjETVq1KgWozlGL7zwAuLi4rBq1SrTsaZNm3qvQx7QoEEDi58XLlyIFi1aoHfv3l7qkfvt378fiYmJGDJkCAD5Ga9fvx7ff/+9l3umPU5jkVvk5eUBAMLDw73cE88wGAxIS0vD5cuX0b17d293x60mTJiAIUOGoH///t7uisecOHECMTExaNasGe655x789ttv3u6SW33yySfo3LkzRo4ciYYNG6Jjx4548803vd0tjyktLcW6devw8MMPa1oc2tf07NkTX375JX755RcAwP/+9z/s3bsXd9xxh5d7pj2O7JDmhBCYPHkyevbsifj4eG93x60OHz6M7t2748qVK6hTpw42btyItm3bertbbpOWloYffvgBGRkZ3u6Kx3Tt2hVr1qxBq1atcO7cOcydOxc9evTA0aNHERER4e3uucVvv/2GlStXYvLkyXj66afx3Xff4V//+heCg4Px4IMPert7bvfRRx/h0qVLeOihh7zdFbeaMWMG8vLy0KZNG+j1ehgMBsybNw9jxozxdtc0x2CHNDdx4kQcOnQIe/fu9XZX3K5169Y4ePAgLl26hA0bNmDs2LHYvXu3XwY8WVlZmDRpErZu3YqaNWt6uzseYz4dnZCQgO7du6NFixZ45513MHnyZC/2zH3KysrQuXNnzJ8/HwDQsWNHHD16FCtXrqwWwc7bb7+NwYMHIyYmxttdcav33nsP69atQ2pqKtq1a4eDBw8iJSUFMTExGDt2rLe7pykGO6Sp5ORkfPLJJ9izZw9iY2O93R23CwoKMi1Q7ty5MzIyMvDyyy/j9ddf93LPtHfgwAHk5uaiU6dOpmMGgwF79uzB8uXLUVJS4vcLdwGgdu3aSEhIwIkT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\n",
"text/plain": [
"<Figure size 640x480 with 1 Axes>"
]
},
"metadata": {},
"output_type": "display_data"
},
{
"name": "stdout",
"output_type": "stream",
"text": [
"Mean absolute error: 25.06\n",
"Residual sum of squares (MSE): 1050.14\n",
"R2-score: 0.76\n"
]
}
],
"source": [
"from sklearn.preprocessing import PolynomialFeatures\n",
"from sklearn import linear_model\n",
"from sklearn.metrics import r2_score\n",
"import numpy as np\n",
"import matplotlib.pyplot as plt\n",
"\n",
"poly3 = PolynomialFeatures(degree=3)\n",
"train_x_poly3 = poly3.fit_transform(train_x)\n",
"\n",
"clf3 = linear_model.LinearRegression()\n",
"clf3.fit(train_x_poly3, train_y)\n",
"\n",
"print('Coefficients: ', clf3.coef_)\n",
"print('Intercept: ', clf3.intercept_)\n",
"\n",
"plt.scatter(train.ENGINESIZE, train.CO2EMISSIONS, color='blue')\n",
"XX = np.arange(min(train.ENGINESIZE), max(train.ENGINESIZE), 0.1)\n",
"yy = clf3.intercept_[0] + clf3.coef_[0][1]*XX + clf3.coef_[0][2]*np.power(XX,2) + clf3.coef_[0][3]*np.power(XX,3)\n",
"plt.plot(XX, yy, '-r')\n",
"plt.xlabel(\"Engine size\")\n",
"plt.ylabel(\"CO2 Emission\")\n",
"plt.show()\n",
"\n",
"test_x_poly3 = poly3.transform(test_x)\n",
"test_y3_ = clf3.predict(test_x_poly3)\n",
"\n",
"print(\"Mean absolute error: %.2f\" % np.mean(np.absolute(test_y3_ - test_y)))\n",
"print(\"Residual sum of squares (MSE): %.2f\" % np.mean((test_y3_ - test_y) ** 2))\n",
"print(\"R2-score: %.2f\" % r2_score(test_y, test_y3_))\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"<details><summary>Click here for the solution</summary>\n",
"\n",
"```python \n",
"poly3 = PolynomialFeatures(degree=3)\n",
"train_x_poly3 = poly3.fit_transform(train_x)\n",
"clf3 = linear_model.LinearRegression()\n",
"train_y3_ = clf3.fit(train_x_poly3, train_y)\n",
"\n",
"# The coefficients\n",
"print ('Coefficients: ', clf3.coef_)\n",
"print ('Intercept: ',clf3.intercept_)\n",
"plt.scatter(train.ENGINESIZE, train.CO2EMISSIONS, color='blue')\n",
"XX = np.arange(0.0, 10.0, 0.1)\n",
"yy = clf3.intercept_[0]+ clf3.coef_[0][1]*XX + clf3.coef_[0][2]*np.power(XX, 2) + clf3.coef_[0][3]*np.power(XX, 3)\n",
"plt.plot(XX, yy, '-r' )\n",
"plt.xlabel(\"Engine size\")\n",
"plt.ylabel(\"Emission\")\n",
"test_x_poly3 = poly3.transform(test_x)\n",
"test_y3_ = clf3.predict(test_x_poly3)\n",
"print(\"Mean absolute error: %.2f\" % np.mean(np.absolute(test_y3_ - test_y)))\n",
"print(\"Residual sum of squares (MSE): %.2f\" % np.mean((test_y3_ - test_y) ** 2))\n",
"print(\"R2-score: %.2f\" % r2_score(test_y,test_y3_ ) )\n",
"\n",
"```\n",
"\n",
"</details>\n"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {},
"outputs": [],
"source": []
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"<h2>Want to learn more?</h2>\n",
"\n",
"IBM SPSS Modeler is a comprehensive analytics platform that has many machine learning algorithms. It has been designed to bring predictive intelligence to decisions made by individuals, by groups, by systems by your enterprise as a whole. A free trial is available through this course, available here: <a href=\"https://www.ibm.com/analytics/spss-statistics-software?utm_source=skills_network&utm_content=in_lab_content_link&utm_id=Lab-IBMDeveloperSkillsNetwork-ML0101EN-SkillsNetwork\">SPSS Modeler</a>\n",
"\n",
"Also, you can use Watson Studio to run these notebooks faster with bigger datasets. Watson Studio is IBM's leading cloud solution for data scientists, built by data scientists. With Jupyter notebooks, RStudio, Apache Spark and popular libraries pre-packaged in the cloud, Watson Studio enables data scientists to collaborate on their projects without having to install anything. Join the fast-growing community of Watson Studio users today with a free account at <a href=\"https://www.ibm.com/cloud/watson-studio?utm_source=skills_network&utm_content=in_lab_content_link&utm_id=Lab-IBMDeveloperSkillsNetwork-ML0101EN-SkillsNetwork\">Watson Studio</a>\n",
"\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### Thank you for completing this lab!\n",
"\n",
"\n",
"## Author\n",
"\n",
"Saeed Aghabozorgi\n",
"\n",
"\n",
"### Other Contributors\n",
"\n",
"<a href=\"https://www.linkedin.com/in/joseph-s-50398b136/\" target=\"_blank\">Joseph Santarcangelo</a>\n",
"\n",
"\n",
"## <h3 align=\"center\"> © IBM Corporation 2020. All rights reserved. <h3/>\n",
"\n",
"\n",
"<!--## Change Log\n",
"\n",
"\n",
"| Date (YYYY-MM-DD) | Version | Changed By | Change Description |\n",
"|---|---|---|---|\n",
"| 2021-01-11 | 2.3 | Lakshmi | Changed R2-score calculation in polynomial regression |\n",
"| 2020-11-04 | 2.2 | Lakshmi | Made changes in markdown of equations |\n",
"| 2020-11-03 | 2.1 | Lakshmi | Made changes in URL |\n",
"| 2020-08-27 | 2.0 | Lavanya | Moved lab to course repo in GitLab |\n",
"| | | | |\n",
"| | | | | --!>\n",
"\n",
"\n"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {},
"outputs": [],
"source": []
}
],
"metadata": {
"kernelspec": {
"display_name": "Python",
"language": "python",
"name": "conda-env-python-py"
},
"language_info": {
"codemirror_mode": {
"name": "ipython",
"version": 3
},
"file_extension": ".py",
"mimetype": "text/x-python",
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
"version": "3.7.12"
},
"prev_pub_hash": "4dc110debac287dfd374a575573c16e62a80a935b3bbe2b2f6d5a0598e6e33f6"
},
"nbformat": 4,
"nbformat_minor": 4
}