Newer
Older
{
"cells": [
{
"cell_type": "markdown",
"metadata": {},
"source": [
"<img width=\"800px\" src=\"../fidle/img/00-Fidle-header-01.svg\"></img>\n",
"\n",
"# <!-- TITLE --> [BHP1] - Regression with a Dense Network (DNN)\n",
"<!-- DESC --> A Simple regression with a Dense Neural Network (DNN) - BHPD dataset\n",
"<!-- AUTHOR : Jean-Luc Parouty (CNRS/SIMaP) -->\n",
" - Predicts **housing prices** from a set of house features. \n",
" - Understanding the **principle** and the **architecture** of a regression with a **dense neural network** \n",
"\n",
"The **[Boston Housing Dataset](https://www.cs.toronto.edu/~delve/data/boston/bostonDetail.html)** consists of price of houses in various places in Boston. \n",
"Alongside with price, the dataset also provide information such as Crime, areas of non-retail business in the town, \n",
"age of people who own the house and many other attributes...\n",
"\n",
"\n",
" - Retrieve data\n",
" - Preparing the data\n",
" - Build a model\n",
" - Train the model\n",
" - Evaluate the result\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
]
},
{
"cell_type": "code",
{
"data": {
"text/html": [
"<style>\n",
"\n",
"div.warn { \n",
" background-color: #fcf2f2;\n",
" border-color: #dFb5b4;\n",
" border-left: 5px solid #dfb5b4;\n",
" padding: 0.5em;\n",
" font-weight: bold;\n",
" font-size: 1.1em;;\n",
" }\n",
"\n",
"\n",
"\n",
"div.nota { \n",
" background-color: #DAFFDE;\n",
" border-left: 5px solid #92CC99;\n",
" padding: 0.5em;\n",
" }\n",
"\n",
"div.todo:before { content:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI1My44OTEyIiBoZWlnaHQ9IjE0My4zOTAyIiB2aWV3Qm94PSIwIDAgNTMuODkxMiAxNDMuMzkwMiI+PHRpdGxlPjAwLUJvYi10b2RvPC90aXRsZT48cGF0aCBkPSJNMjMuNDU2OCwxMTQuMzAxNmExLjgwNjMsMS44MDYzLDAsMSwxLDEuODE1NywxLjgyNEExLjgyMDksMS44MjA5LDAsMCwxLDIzLjQ1NjgsMTE0LjMwMTZabS0xMC42NjEyLDEuODIyQTEuODI3MiwxLjgyNzIsMCwxLDAsMTAuOTgsMTE0LjMsMS44MiwxLjgyLDAsMCwwLDEyLjc5NTYsMTE2LjEyMzZabS03LjcwNyw0LjU4NzR2LTVzLjQ4NjMtOS4xMjIzLDguMDIxNS0xMS45Njc1YTE5LjIwODIsMTkuMjA4MiwwLDAsMSw2LjA0ODYtMS4yNDU0LDE5LjE3NzgsMTkuMTc3OCwwLDAsMSw2LjA0ODcsMS4yNDc1YzcuNTM1MSwyLjgzNDcsOC4wMTc0LDExLjk2NzQsOC4wMTc0LDExLjk2NzR2NS4wMjM0bC4wMDQyLDcuNjgydjIuNGMuMDE2Ny4xOTkyLjAzMzYuMzkyMS4wMzM2LjU4NzEsMCwuMjEzOC0uMDE2OC40MTA5LS4wMzM2LjYzMzJ2LjA1ODdoLS4wMDg0YTguMzcxOSw4LjM3MTksMCwwLDEtNy4zNzM4LDcuNjU0N3MtLjk5NTMsMy42MzgtNi42OTMzLDMuNjM4LTYuNjkzNC0zLjYzOC02LjY5MzQtMy42MzhhOC4zNyw4LjM3LDAsMCwxLTcuMzcxNi03LjY1NDdINS4wODQzdi0uMDU4N2MtLjAxODktLjIyLS4wMjk0LS40MTk0LS4wMjk0LS42MzMyLDAtLjE5MjkuMDE2Ny0uMzgzNy4wMjk0LS41ODcxdi0yLjRtMTguMDkzNy00LjA0YTEuMTU2NSwxLjE1NjUsMCwxLDAtMi4zMTI2LDAsMS4xNTY0LDEuMTU2NCwwLDEsMCwyLjMxMjYsMFptNC4wODM0LDBhMS4xNTk1LDEuMTU5NSwwLDEsMC0xLjE2MzYsMS4xN0ExLjE3NSwxLjE3NSwwLDAsMCwyNy4yNjE0LDEyNC4zNzc5Wk05LjM3MzksMTE0LjYzNWMwLDMuMTA5MywyLjQxMzIsMy4zMSwyLjQxMzIsMy4zMWExMzMuOTI0MywxMzMuOTI0MywwLDAsMCwxNC43MzQ4LDBzMi40MTExLS4xOTI5LDIuNDExMS0zLjMxYTguMDc3Myw4LjA3NzMsMCwwLDAtMi40MTExLTUuNTUxOWMtNC41LTMuNTAzMy05LjkxMjYtMy41MDMzLTE0Ljc0MTEsMEE4LjA4NTEsOC4wODUxLDAsMCwwLDkuMzczOSwxMTQuNjM1WiIgc3R5bGU9ImZpbGw6IzAxMDEwMSIvPjxjaXJjbGUgY3g9IjMzLjE0MzYiIGN5PSIxMjQuNTM0IiByPSIzLjgzNjMiIHN0eWxlPSJmaWxsOiMwMTAxMDEiLz48cmVjdCB4PSIzNS42NjU5IiB5PSIxMTIuOTYyNSIgd2lkdGg9IjIuMDc3IiBoZWlnaHQ9IjEwLjU0NTgiIHRyYW5zZm9ybT0idHJhbnNsYXRlKDIxLjYgMjQxLjExMjEpIHJvdGF0ZSgtMTU1Ljc0NikiIHN0eWxlPSJmaWxsOiMwMTAxMDEiLz48Y2lyY2xlIGN4PSIzOC44NzA0IiBjeT0iMTEzLjQyNzkiIHI9IjIuNDA4NSIgc3R5bGU9ImZpbGw6IzAxMDEwMSIvPjxjaXJjbGUgY3g9IjUuMjI0OCIgY3k9IjEyNC41MzQiIHI9IjMuODM2MyIgc3R5bGU9ImZpbGw6IzAxMDEwMSIvPjxyZWN0IHg9IjEuNDE2NCIgeT0iMTI0LjYzMDEiIHdpZHRoPSIyLjA3NyIgaGVpZ2h0PSIxMC41NDU4IiB0cmFuc2Zvcm09InRyYW5zbGF0ZSg0LjkwOTcgMjU5LjgwNikgcm90YXRlKC0xODApIiBzdHlsZT0iZmlsbDojMDEwMTAxIi8+PGNpcmNsZSBjeD0iMi40MDkxIiBjeT0iMTM3LjA5OTYiIHI9IjIuNDA4NSIgc3R5bGU9ImZpbGw6IzAxMDEwMSIvPjxwYXRoIGQ9Ik0xOC4wNTExLDEwMC4xMDY2aC0uMDE0NlYxMDIuNjFoMi4zdi0yLjQyNzlhMi40MjI5LDIuNDIyOSwwLDEsMC0yLjI4NTQtLjA3NTVaIiBzdHlsZT0iZmlsbDojMDEwMTAxIi8+PHBhdGggZD0iTTM5LjQyMTQsMjcuMjU4djEuMDVBMTEuOTQ1MiwxMS45NDUyLDAsMCwwLDQ0LjU5NTQsNS43OWEuMjQ0OS4yNDQ5LDAsMCwxLS4wMjM1LS40MjI3TDQ2Ljc1LDMuOTUxNWEuMzg5Mi4zODkyLDAsMCwxLC40MjYyLDAsMTQuODQ0MiwxNC44NDQyLDAsMCwxLTcuNzU0MywyNy4yNTkxdjEuMDY3YS40NS40NSwwLDAsMS0uNzA0Ny4zNzU4bC0zLjg0MTktMi41MWEuNDUuNDUsMCwwLDEsMC0uNzUxNmwzLjg0MTktMi41MWEuNDUuNDUsMCwwLDEsLjY5NDYuMzc1OFpNNDMuMjMsMi41ODkyLDM5LjM4NzguMDc5NGEuNDUuNDUsMCwwLDAtLjcwNDYuMzc1OHYxLjA2N2ExNC44NDQyLDE0Ljg0NDIsMCwwLDAtNy43NTQzLDI3LjI1OTEuMzg5LjM4OSwwLDAsMCwuNDI2MSwwbDIuMTc3Ny0xLjQxOTNhLjI0NS4yNDUsMCwwLDAtLjAyMzUtLjQyMjgsMTEuOTQ1MSwxMS45NDUxLDAsMCwxLDUuMTc0LTIyLjUxNDZ2MS4wNWEuNDUuNDUsMCwwLDAsLjcwNDYuMzc1OGwzLjg1NTMtMi41MWEuNDUuNDUsMCwwLDAsMC0uNzUxNlpNMzkuMDUyMywxNC4yNDU4YTIuMTIwNiwyLjEyMDYsMCwxLDAsMi4xMjA2LDIuMTIwNmgwQTIuMTI0LDIuMTI0LDAsMCwwLDM5LjA1MjMsMTQuMjQ1OFptNi4wNzMyLTQuNzc4MS44MjU0LjgyNTVhMS4wNTY4LDEuMDU2OCwwLDAsMSwuMTE3NSwxLjM0MjFsLS44MDIsMS4xNDQyYTcuMTAxOCw3LjEwMTgsMCwwLDEsLjcxMTQsMS43MTEybDEuMzc1Ny4yNDE2YTEuMDU2OSwxLjA1NjksMCwwLDEsLjg3NTcsMS4wNHYxLjE2NDNhMS4wNTY5LDEuMDU2OSwwLDAsMS0uODc1NywxLjA0bC0xLjM3MjQuMjQxNkE3LjExLDcuMTEsMCwwLDEsNDUuMjcsMTkuOTNsLjgwMTksMS4xNDQyYTEuMDU3LDEuMDU3LDAsMCwxLS4xMTc0LDEuMzQyMmwtLjgyODguODQ4OWExLjA1NywxLjA1NywwLDAsMS0xLjM0MjEuMTE3NGwtMS4xNDQyLS44MDE5YTcuMTMzOCw3LjEzMzgsMCwwLDEtMS43MTEzLjcxMTNsLS4yNDE2LDEuMzcyNGExLjA1NjgsMS4wNTY4LDAsMCwxLTEuMDQuODc1N0gzOC40Njg0YTEuMDU2OCwxLjA1NjgsMCwwLDEtMS4wNC0uODc1N2wtLjI0MTYtMS4zNzI0YTcuMTM1NSw3LjEzNTUsMCwwLDEtMS43MTEzLS43MTEzbC0xLjE0NDEuODAxOWExLjA1NzEsMS4wNTcxLDAsMCwxLTEuMzQyMi0uMTE3NGwtLjgzNTUtLjgyNTVhMS4wNTcsMS4wNTcsMCwwLDEtLjExNzQtMS4zNDIxbC44MDE5LTEuMTQ0MmE3LjEyMSw3LjEyMSwwLDAsMS0uNzExMy0xLjcxMTJsLTEuMzcyNC0uMjQxNmExLjA1NjksMS4wNTY5LDAsMCwxLS44NzU3LTEuMDRWMTUuNzgyNmExLjA1NjksMS4wNTY5LDAsMCwxLC44NzU3LTEuMDRsMS4zNzU3LS4yNDE2YTcuMTEsNy4xMSwwLDAsMSwuNzExNC0xLjcxMTJsLS44MDItMS4xNDQyYTEuMDU3LDEuMDU3LDAsMCwxLC4xMTc1LTEuMzQyMmwuODI1NC0uODI1NEExLjA1NjgsMS4wNTY4LDAsMCwxLDM0LjMyNDUsOS4zNmwxLjE0NDIuODAxOUE3LjEzNTUsNy4xMzU1LDAsMCwxLDM3LjE4LDkuNDUxbC4yNDE2LTEuMzcyNGExLjA1NjgsMS4wNTY4LDAsMCwxLDEuMDQtLjg3NTdoMS4xNjc3YTEuMDU2OSwxLjA1NjksMCwwLDEsMS4wNC44NzU3bC4yNDE2LDEuMzcyNGE3LjEyNSw3LjEyNSwwLDAsMSwxLjcxMTIuNzExM0w0My43NjY2LDkuMzZBMS4wNTY5LDEuMDU2OSwwLDAsMSw0NS4xMjU1LDkuNDY3N1ptLTIuMDMsNi44OTg3QTQuMDQzMyw0LjA0MzMsMCwxLDAsMzkuMDUyMywyMC40MWgwQTQuMDQ2NSw0LjA0NjUsMCwwLDAsNDMuMDk1NSwxNi4zNjY0WiIgc3R5bGU9ImZpbGw6I2UxMjIyOSIvPjxwb2x5Z29uIHBvaW50cz0iMzkuNDEzIDM0Ljc1NyAzOS41MzcgMzQuNzU3IDM5LjY3NSAzNC43NTcgMzkuNjc1IDEwOS41MSAzOS41MzcgMTA5LjUxIDM5LjQxMyAxMDkuNTEgMzkuNDEzIDM0Ljc1NyAzOS40MTMgMzQuNzU3IiBzdHlsZT0iZmlsbDpub25lO3N0cm9rZTojOTk5O3N0cm9rZS1saW5lY2FwOnJvdW5kO3N0cm9rZS1taXRlcmxpbWl0OjEwO3N0cm9rZS13aWR0aDowLjMwODg1NDQ1MDU2MDE2MThweDtmaWxsLXJ1bGU6ZXZlbm9kZCIvPjwvc3ZnPg==);\n",
" float:left;\n",
" margin-right:20px;\n",
" margin-top:-20px;\n",
" margin-bottom:20px;\n",
"}\n",
"div.todo{\n",
" font-weight: bold;\n",
" font-size: 1.1em;\n",
" margin-top:40px;\n",
"}\n",
"div.todo ul{\n",
" margin: 0.2em;\n",
"}\n",
"div.todo li{\n",
" margin-left:60px;\n",
" margin-top:0;\n",
" margin-bottom:0;\n",
"}\n",
"\n",
"\n",
"</style>\n",
"\n"
],
"text/plain": [
"<IPython.core.display.HTML object>"
]
},
"metadata": {},
"output_type": "display_data"
},
{
"name": "stdout",
"output_type": "stream",
"text": [
"\n",
"FIDLE 2020 - Practical Work Module\n",
"Version : 0.4.3\n",
"Run time : Friday 28 February 2020, 10:21:04\n",
"Keras version : 2.2.4-tf\n"
"source": [
"import tensorflow as tf\n",
"from tensorflow import keras\n",
"\n",
"import numpy as np\n",
"import matplotlib.pyplot as plt\n",
"import pandas as pd\n",
"sys.path.append('..')\n",
"import fidle.pwk as ooo\n",
"\n",
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Boston housing is a famous historic dataset, so we can get it directly from [Keras datasets](https://www.tensorflow.org/api_docs/python/tf/keras/datasets) "
]
},
{
"metadata": {},
"source": [
"(x_train, y_train), (x_test, y_test) = keras.datasets.boston_housing.load_data(test_split=0.2, seed=113)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### 2.2 - Option 2 : From a csv file\n",
"More fun !"
]
},
{
"cell_type": "code",
"outputs": [
{
"data": {
"text/html": [
"<style type=\"text/css\" >\n",
"</style><table id=\"T_a693c87e_5a0b_11ea_b39f_3573e419ff83\" ><caption>Few lines of the dataset :</caption><thead> <tr> <th class=\"blank level0\" ></th> <th class=\"col_heading level0 col0\" >crim</th> <th class=\"col_heading level0 col1\" >zn</th> <th class=\"col_heading level0 col2\" >indus</th> <th class=\"col_heading level0 col3\" >chas</th> <th class=\"col_heading level0 col4\" >nox</th> <th class=\"col_heading level0 col5\" >rm</th> <th class=\"col_heading level0 col6\" >age</th> <th class=\"col_heading level0 col7\" >dis</th> <th class=\"col_heading level0 col8\" >rad</th> <th class=\"col_heading level0 col9\" >tax</th> <th class=\"col_heading level0 col10\" >ptratio</th> <th class=\"col_heading level0 col11\" >b</th> <th class=\"col_heading level0 col12\" >lstat</th> <th class=\"col_heading level0 col13\" >medv</th> </tr></thead><tbody>\n",
" <th id=\"T_a693c87e_5a0b_11ea_b39f_3573e419ff83level0_row0\" class=\"row_heading level0 row0\" >0</th>\n",
" <td id=\"T_a693c87e_5a0b_11ea_b39f_3573e419ff83row0_col0\" class=\"data row0 col0\" >0.01</td>\n",
" <td id=\"T_a693c87e_5a0b_11ea_b39f_3573e419ff83row0_col1\" class=\"data row0 col1\" >18.00</td>\n",
" <td id=\"T_a693c87e_5a0b_11ea_b39f_3573e419ff83row0_col2\" class=\"data row0 col2\" >2.31</td>\n",
" <td id=\"T_a693c87e_5a0b_11ea_b39f_3573e419ff83row0_col3\" class=\"data row0 col3\" >0.00</td>\n",
" <td id=\"T_a693c87e_5a0b_11ea_b39f_3573e419ff83row0_col4\" class=\"data row0 col4\" >0.54</td>\n",
" <td id=\"T_a693c87e_5a0b_11ea_b39f_3573e419ff83row0_col5\" class=\"data row0 col5\" >6.58</td>\n",
" <td id=\"T_a693c87e_5a0b_11ea_b39f_3573e419ff83row0_col6\" class=\"data row0 col6\" >65.20</td>\n",
" <td id=\"T_a693c87e_5a0b_11ea_b39f_3573e419ff83row0_col7\" class=\"data row0 col7\" >4.09</td>\n",
" <td id=\"T_a693c87e_5a0b_11ea_b39f_3573e419ff83row0_col8\" class=\"data row0 col8\" >1.00</td>\n",
" <td id=\"T_a693c87e_5a0b_11ea_b39f_3573e419ff83row0_col9\" class=\"data row0 col9\" >296.00</td>\n",
" <td id=\"T_a693c87e_5a0b_11ea_b39f_3573e419ff83row0_col10\" class=\"data row0 col10\" >15.30</td>\n",
" <td id=\"T_a693c87e_5a0b_11ea_b39f_3573e419ff83row0_col11\" class=\"data row0 col11\" >396.90</td>\n",
" <td id=\"T_a693c87e_5a0b_11ea_b39f_3573e419ff83row0_col12\" class=\"data row0 col12\" >4.98</td>\n",
" <td id=\"T_a693c87e_5a0b_11ea_b39f_3573e419ff83row0_col13\" class=\"data row0 col13\" >24.00</td>\n",
" <th id=\"T_a693c87e_5a0b_11ea_b39f_3573e419ff83level0_row1\" class=\"row_heading level0 row1\" >1</th>\n",
" <td id=\"T_a693c87e_5a0b_11ea_b39f_3573e419ff83row1_col0\" class=\"data row1 col0\" >0.03</td>\n",
" <td id=\"T_a693c87e_5a0b_11ea_b39f_3573e419ff83row1_col1\" class=\"data row1 col1\" >0.00</td>\n",
" <td id=\"T_a693c87e_5a0b_11ea_b39f_3573e419ff83row1_col2\" class=\"data row1 col2\" >7.07</td>\n",
" <td id=\"T_a693c87e_5a0b_11ea_b39f_3573e419ff83row1_col3\" class=\"data row1 col3\" >0.00</td>\n",
" <td id=\"T_a693c87e_5a0b_11ea_b39f_3573e419ff83row1_col4\" class=\"data row1 col4\" >0.47</td>\n",
" <td id=\"T_a693c87e_5a0b_11ea_b39f_3573e419ff83row1_col5\" class=\"data row1 col5\" >6.42</td>\n",
" <td id=\"T_a693c87e_5a0b_11ea_b39f_3573e419ff83row1_col6\" class=\"data row1 col6\" >78.90</td>\n",
" <td id=\"T_a693c87e_5a0b_11ea_b39f_3573e419ff83row1_col7\" class=\"data row1 col7\" >4.97</td>\n",
" <td id=\"T_a693c87e_5a0b_11ea_b39f_3573e419ff83row1_col8\" class=\"data row1 col8\" >2.00</td>\n",
" <td id=\"T_a693c87e_5a0b_11ea_b39f_3573e419ff83row1_col9\" class=\"data row1 col9\" >242.00</td>\n",
" <td id=\"T_a693c87e_5a0b_11ea_b39f_3573e419ff83row1_col10\" class=\"data row1 col10\" >17.80</td>\n",
" <td id=\"T_a693c87e_5a0b_11ea_b39f_3573e419ff83row1_col11\" class=\"data row1 col11\" >396.90</td>\n",
" <td id=\"T_a693c87e_5a0b_11ea_b39f_3573e419ff83row1_col12\" class=\"data row1 col12\" >9.14</td>\n",
" <td id=\"T_a693c87e_5a0b_11ea_b39f_3573e419ff83row1_col13\" class=\"data row1 col13\" >21.60</td>\n",
" <th id=\"T_a693c87e_5a0b_11ea_b39f_3573e419ff83level0_row2\" class=\"row_heading level0 row2\" >2</th>\n",
" <td id=\"T_a693c87e_5a0b_11ea_b39f_3573e419ff83row2_col0\" class=\"data row2 col0\" >0.03</td>\n",
" <td id=\"T_a693c87e_5a0b_11ea_b39f_3573e419ff83row2_col1\" class=\"data row2 col1\" >0.00</td>\n",
" <td id=\"T_a693c87e_5a0b_11ea_b39f_3573e419ff83row2_col2\" class=\"data row2 col2\" >7.07</td>\n",
" <td id=\"T_a693c87e_5a0b_11ea_b39f_3573e419ff83row2_col3\" class=\"data row2 col3\" >0.00</td>\n",
" <td id=\"T_a693c87e_5a0b_11ea_b39f_3573e419ff83row2_col4\" class=\"data row2 col4\" >0.47</td>\n",
" <td id=\"T_a693c87e_5a0b_11ea_b39f_3573e419ff83row2_col5\" class=\"data row2 col5\" >7.18</td>\n",
" <td id=\"T_a693c87e_5a0b_11ea_b39f_3573e419ff83row2_col6\" class=\"data row2 col6\" >61.10</td>\n",
" <td id=\"T_a693c87e_5a0b_11ea_b39f_3573e419ff83row2_col7\" class=\"data row2 col7\" >4.97</td>\n",
" <td id=\"T_a693c87e_5a0b_11ea_b39f_3573e419ff83row2_col8\" class=\"data row2 col8\" >2.00</td>\n",
" <td id=\"T_a693c87e_5a0b_11ea_b39f_3573e419ff83row2_col9\" class=\"data row2 col9\" >242.00</td>\n",
" <td id=\"T_a693c87e_5a0b_11ea_b39f_3573e419ff83row2_col10\" class=\"data row2 col10\" >17.80</td>\n",
" <td id=\"T_a693c87e_5a0b_11ea_b39f_3573e419ff83row2_col11\" class=\"data row2 col11\" >392.83</td>\n",
" <td id=\"T_a693c87e_5a0b_11ea_b39f_3573e419ff83row2_col12\" class=\"data row2 col12\" >4.03</td>\n",
" <td id=\"T_a693c87e_5a0b_11ea_b39f_3573e419ff83row2_col13\" class=\"data row2 col13\" >34.70</td>\n",
" <th id=\"T_a693c87e_5a0b_11ea_b39f_3573e419ff83level0_row3\" class=\"row_heading level0 row3\" >3</th>\n",
" <td id=\"T_a693c87e_5a0b_11ea_b39f_3573e419ff83row3_col0\" class=\"data row3 col0\" >0.03</td>\n",
" <td id=\"T_a693c87e_5a0b_11ea_b39f_3573e419ff83row3_col1\" class=\"data row3 col1\" >0.00</td>\n",
" <td id=\"T_a693c87e_5a0b_11ea_b39f_3573e419ff83row3_col2\" class=\"data row3 col2\" >2.18</td>\n",
" <td id=\"T_a693c87e_5a0b_11ea_b39f_3573e419ff83row3_col3\" class=\"data row3 col3\" >0.00</td>\n",
" <td id=\"T_a693c87e_5a0b_11ea_b39f_3573e419ff83row3_col4\" class=\"data row3 col4\" >0.46</td>\n",
" <td id=\"T_a693c87e_5a0b_11ea_b39f_3573e419ff83row3_col5\" class=\"data row3 col5\" >7.00</td>\n",
" <td id=\"T_a693c87e_5a0b_11ea_b39f_3573e419ff83row3_col6\" class=\"data row3 col6\" >45.80</td>\n",
" <td id=\"T_a693c87e_5a0b_11ea_b39f_3573e419ff83row3_col7\" class=\"data row3 col7\" >6.06</td>\n",
" <td id=\"T_a693c87e_5a0b_11ea_b39f_3573e419ff83row3_col8\" class=\"data row3 col8\" >3.00</td>\n",
" <td id=\"T_a693c87e_5a0b_11ea_b39f_3573e419ff83row3_col9\" class=\"data row3 col9\" >222.00</td>\n",
" <td id=\"T_a693c87e_5a0b_11ea_b39f_3573e419ff83row3_col10\" class=\"data row3 col10\" >18.70</td>\n",
" <td id=\"T_a693c87e_5a0b_11ea_b39f_3573e419ff83row3_col11\" class=\"data row3 col11\" >394.63</td>\n",
" <td id=\"T_a693c87e_5a0b_11ea_b39f_3573e419ff83row3_col12\" class=\"data row3 col12\" >2.94</td>\n",
" <td id=\"T_a693c87e_5a0b_11ea_b39f_3573e419ff83row3_col13\" class=\"data row3 col13\" >33.40</td>\n",
" <th id=\"T_a693c87e_5a0b_11ea_b39f_3573e419ff83level0_row4\" class=\"row_heading level0 row4\" >4</th>\n",
" <td id=\"T_a693c87e_5a0b_11ea_b39f_3573e419ff83row4_col0\" class=\"data row4 col0\" >0.07</td>\n",
" <td id=\"T_a693c87e_5a0b_11ea_b39f_3573e419ff83row4_col1\" class=\"data row4 col1\" >0.00</td>\n",
" <td id=\"T_a693c87e_5a0b_11ea_b39f_3573e419ff83row4_col2\" class=\"data row4 col2\" >2.18</td>\n",
" <td id=\"T_a693c87e_5a0b_11ea_b39f_3573e419ff83row4_col3\" class=\"data row4 col3\" >0.00</td>\n",
" <td id=\"T_a693c87e_5a0b_11ea_b39f_3573e419ff83row4_col4\" class=\"data row4 col4\" >0.46</td>\n",
" <td id=\"T_a693c87e_5a0b_11ea_b39f_3573e419ff83row4_col5\" class=\"data row4 col5\" >7.15</td>\n",
" <td id=\"T_a693c87e_5a0b_11ea_b39f_3573e419ff83row4_col6\" class=\"data row4 col6\" >54.20</td>\n",
" <td id=\"T_a693c87e_5a0b_11ea_b39f_3573e419ff83row4_col7\" class=\"data row4 col7\" >6.06</td>\n",
" <td id=\"T_a693c87e_5a0b_11ea_b39f_3573e419ff83row4_col8\" class=\"data row4 col8\" >3.00</td>\n",
" <td id=\"T_a693c87e_5a0b_11ea_b39f_3573e419ff83row4_col9\" class=\"data row4 col9\" >222.00</td>\n",
" <td id=\"T_a693c87e_5a0b_11ea_b39f_3573e419ff83row4_col10\" class=\"data row4 col10\" >18.70</td>\n",
" <td id=\"T_a693c87e_5a0b_11ea_b39f_3573e419ff83row4_col11\" class=\"data row4 col11\" >396.90</td>\n",
" <td id=\"T_a693c87e_5a0b_11ea_b39f_3573e419ff83row4_col12\" class=\"data row4 col12\" >5.33</td>\n",
" <td id=\"T_a693c87e_5a0b_11ea_b39f_3573e419ff83row4_col13\" class=\"data row4 col13\" >36.20</td>\n",
" </tr>\n",
" </tbody></table>"
],
"text/plain": [
"<pandas.io.formats.style.Styler at 0x7fdca7b03c90>"
]
},
"metadata": {},
"output_type": "display_data"
},
{
"name": "stdout",
"output_type": "stream",
"text": [
"Données manquantes : 0 Shape is : (506, 14)\n"
]
}
],
"source": [
"data = pd.read_csv('./data/BostonHousing.csv', header=0)\n",
"\n",
"display(data.head(5).style.format(\"{0:.2f}\").set_caption(\"Few lines of the dataset :\"))\n",
"print('Données manquantes : ',data.isna().sum().sum(), ' Shape is : ', data.shape)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Step 3 - Preparing the data\n",
"### 3.1 - Split data\n",
"We will use 70% of the data for training and 30% for validation. \n",
"The dataset is **shuffled** and shared between **learning** and **testing**. \n",
"x will be input data and y the expected output"
]
},
{
"cell_type": "code",
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Original data shape was : (506, 14)\n",
"x_train : (354, 13) y_train : (354,)\n",
"x_test : (152, 13) y_test : (152,)\n"
]
}
],
"# ---- Suffle and Split => train, test\n",
"#\n",
"data_train = data.sample(frac=0.7, axis=0)\n",
"data_test = data.drop(data_train.index)\n",
"\n",
"# ---- Split => x,y (medv is price)\n",
"#\n",
"x_train = data_train.drop('medv', axis=1)\n",
"y_train = data_train['medv']\n",
"x_test = data_test.drop('medv', axis=1)\n",
"y_test = data_test['medv']\n",
"\n",
"print('Original data shape was : ',data.shape)\n",
"print('x_train : ',x_train.shape, 'y_train : ',y_train.shape)\n",
"print('x_test : ',x_test.shape, 'y_test : ',y_test.shape)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"**Note :** \n",
" - All input data must be normalized, train and test. \n",
" - To do this we will **subtract the mean** and **divide by the standard deviation**. \n",
" - But test data should not be used in any way, even for normalization. \n",
" - The mean and the standard deviation will therefore only be calculated with the train data."
]
},
{
"cell_type": "code",
"outputs": [
{
"data": {
"text/html": [
"<style type=\"text/css\" >\n",
"</style><table id=\"T_a8cfb882_5a0b_11ea_b39f_3573e419ff83\" ><caption>Before normalization :</caption><thead> <tr> <th class=\"blank level0\" ></th> <th class=\"col_heading level0 col0\" >crim</th> <th class=\"col_heading level0 col1\" >zn</th> <th class=\"col_heading level0 col2\" >indus</th> <th class=\"col_heading level0 col3\" >chas</th> <th class=\"col_heading level0 col4\" >nox</th> <th class=\"col_heading level0 col5\" >rm</th> <th class=\"col_heading level0 col6\" >age</th> <th class=\"col_heading level0 col7\" >dis</th> <th class=\"col_heading level0 col8\" >rad</th> <th class=\"col_heading level0 col9\" >tax</th> <th class=\"col_heading level0 col10\" >ptratio</th> <th class=\"col_heading level0 col11\" >b</th> <th class=\"col_heading level0 col12\" >lstat</th> </tr></thead><tbody>\n",
" <th id=\"T_a8cfb882_5a0b_11ea_b39f_3573e419ff83level0_row0\" class=\"row_heading level0 row0\" >count</th>\n",
" <td id=\"T_a8cfb882_5a0b_11ea_b39f_3573e419ff83row0_col0\" class=\"data row0 col0\" >354.00</td>\n",
" <td id=\"T_a8cfb882_5a0b_11ea_b39f_3573e419ff83row0_col1\" class=\"data row0 col1\" >354.00</td>\n",
" <td id=\"T_a8cfb882_5a0b_11ea_b39f_3573e419ff83row0_col2\" class=\"data row0 col2\" >354.00</td>\n",
" <td id=\"T_a8cfb882_5a0b_11ea_b39f_3573e419ff83row0_col3\" class=\"data row0 col3\" >354.00</td>\n",
" <td id=\"T_a8cfb882_5a0b_11ea_b39f_3573e419ff83row0_col4\" class=\"data row0 col4\" >354.00</td>\n",
" <td id=\"T_a8cfb882_5a0b_11ea_b39f_3573e419ff83row0_col5\" class=\"data row0 col5\" >354.00</td>\n",
" <td id=\"T_a8cfb882_5a0b_11ea_b39f_3573e419ff83row0_col6\" class=\"data row0 col6\" >354.00</td>\n",
" <td id=\"T_a8cfb882_5a0b_11ea_b39f_3573e419ff83row0_col7\" class=\"data row0 col7\" >354.00</td>\n",
" <td id=\"T_a8cfb882_5a0b_11ea_b39f_3573e419ff83row0_col8\" class=\"data row0 col8\" >354.00</td>\n",
" <td id=\"T_a8cfb882_5a0b_11ea_b39f_3573e419ff83row0_col9\" class=\"data row0 col9\" >354.00</td>\n",
" <td id=\"T_a8cfb882_5a0b_11ea_b39f_3573e419ff83row0_col10\" class=\"data row0 col10\" >354.00</td>\n",
" <td id=\"T_a8cfb882_5a0b_11ea_b39f_3573e419ff83row0_col11\" class=\"data row0 col11\" >354.00</td>\n",
" <td id=\"T_a8cfb882_5a0b_11ea_b39f_3573e419ff83row0_col12\" class=\"data row0 col12\" >354.00</td>\n",
" <th id=\"T_a8cfb882_5a0b_11ea_b39f_3573e419ff83level0_row1\" class=\"row_heading level0 row1\" >mean</th>\n",
" <td id=\"T_a8cfb882_5a0b_11ea_b39f_3573e419ff83row1_col0\" class=\"data row1 col0\" >3.90</td>\n",
" <td id=\"T_a8cfb882_5a0b_11ea_b39f_3573e419ff83row1_col1\" class=\"data row1 col1\" >10.85</td>\n",
" <td id=\"T_a8cfb882_5a0b_11ea_b39f_3573e419ff83row1_col2\" class=\"data row1 col2\" >11.45</td>\n",
" <td id=\"T_a8cfb882_5a0b_11ea_b39f_3573e419ff83row1_col3\" class=\"data row1 col3\" >0.07</td>\n",
" <td id=\"T_a8cfb882_5a0b_11ea_b39f_3573e419ff83row1_col4\" class=\"data row1 col4\" >0.56</td>\n",
" <td id=\"T_a8cfb882_5a0b_11ea_b39f_3573e419ff83row1_col5\" class=\"data row1 col5\" >6.29</td>\n",
" <td id=\"T_a8cfb882_5a0b_11ea_b39f_3573e419ff83row1_col6\" class=\"data row1 col6\" >69.43</td>\n",
" <td id=\"T_a8cfb882_5a0b_11ea_b39f_3573e419ff83row1_col7\" class=\"data row1 col7\" >3.78</td>\n",
" <td id=\"T_a8cfb882_5a0b_11ea_b39f_3573e419ff83row1_col8\" class=\"data row1 col8\" >9.97</td>\n",
" <td id=\"T_a8cfb882_5a0b_11ea_b39f_3573e419ff83row1_col9\" class=\"data row1 col9\" >418.34</td>\n",
" <td id=\"T_a8cfb882_5a0b_11ea_b39f_3573e419ff83row1_col10\" class=\"data row1 col10\" >18.50</td>\n",
" <td id=\"T_a8cfb882_5a0b_11ea_b39f_3573e419ff83row1_col11\" class=\"data row1 col11\" >352.75</td>\n",
" <td id=\"T_a8cfb882_5a0b_11ea_b39f_3573e419ff83row1_col12\" class=\"data row1 col12\" >12.70</td>\n",
" <th id=\"T_a8cfb882_5a0b_11ea_b39f_3573e419ff83level0_row2\" class=\"row_heading level0 row2\" >std</th>\n",
" <td id=\"T_a8cfb882_5a0b_11ea_b39f_3573e419ff83row2_col0\" class=\"data row2 col0\" >9.32</td>\n",
" <td id=\"T_a8cfb882_5a0b_11ea_b39f_3573e419ff83row2_col1\" class=\"data row2 col1\" >23.12</td>\n",
" <td id=\"T_a8cfb882_5a0b_11ea_b39f_3573e419ff83row2_col2\" class=\"data row2 col2\" >6.85</td>\n",
" <td id=\"T_a8cfb882_5a0b_11ea_b39f_3573e419ff83row2_col3\" class=\"data row2 col3\" >0.26</td>\n",
" <td id=\"T_a8cfb882_5a0b_11ea_b39f_3573e419ff83row2_col4\" class=\"data row2 col4\" >0.12</td>\n",
" <td id=\"T_a8cfb882_5a0b_11ea_b39f_3573e419ff83row2_col5\" class=\"data row2 col5\" >0.74</td>\n",
" <td id=\"T_a8cfb882_5a0b_11ea_b39f_3573e419ff83row2_col6\" class=\"data row2 col6\" >28.13</td>\n",
" <td id=\"T_a8cfb882_5a0b_11ea_b39f_3573e419ff83row2_col7\" class=\"data row2 col7\" >2.15</td>\n",
" <td id=\"T_a8cfb882_5a0b_11ea_b39f_3573e419ff83row2_col8\" class=\"data row2 col8\" >8.97</td>\n",
" <td id=\"T_a8cfb882_5a0b_11ea_b39f_3573e419ff83row2_col9\" class=\"data row2 col9\" >171.92</td>\n",
" <td id=\"T_a8cfb882_5a0b_11ea_b39f_3573e419ff83row2_col10\" class=\"data row2 col10\" >2.24</td>\n",
" <td id=\"T_a8cfb882_5a0b_11ea_b39f_3573e419ff83row2_col11\" class=\"data row2 col11\" >94.26</td>\n",
" <td id=\"T_a8cfb882_5a0b_11ea_b39f_3573e419ff83row2_col12\" class=\"data row2 col12\" >7.11</td>\n",
" <th id=\"T_a8cfb882_5a0b_11ea_b39f_3573e419ff83level0_row3\" class=\"row_heading level0 row3\" >min</th>\n",
" <td id=\"T_a8cfb882_5a0b_11ea_b39f_3573e419ff83row3_col0\" class=\"data row3 col0\" >0.01</td>\n",
" <td id=\"T_a8cfb882_5a0b_11ea_b39f_3573e419ff83row3_col1\" class=\"data row3 col1\" >0.00</td>\n",
" <td id=\"T_a8cfb882_5a0b_11ea_b39f_3573e419ff83row3_col2\" class=\"data row3 col2\" >0.46</td>\n",
" <td id=\"T_a8cfb882_5a0b_11ea_b39f_3573e419ff83row3_col3\" class=\"data row3 col3\" >0.00</td>\n",
" <td id=\"T_a8cfb882_5a0b_11ea_b39f_3573e419ff83row3_col4\" class=\"data row3 col4\" >0.39</td>\n",
" <td id=\"T_a8cfb882_5a0b_11ea_b39f_3573e419ff83row3_col5\" class=\"data row3 col5\" >3.56</td>\n",
" <td id=\"T_a8cfb882_5a0b_11ea_b39f_3573e419ff83row3_col6\" class=\"data row3 col6\" >6.00</td>\n",
" <td id=\"T_a8cfb882_5a0b_11ea_b39f_3573e419ff83row3_col7\" class=\"data row3 col7\" >1.13</td>\n",
" <td id=\"T_a8cfb882_5a0b_11ea_b39f_3573e419ff83row3_col8\" class=\"data row3 col8\" >1.00</td>\n",
" <td id=\"T_a8cfb882_5a0b_11ea_b39f_3573e419ff83row3_col9\" class=\"data row3 col9\" >187.00</td>\n",
" <td id=\"T_a8cfb882_5a0b_11ea_b39f_3573e419ff83row3_col10\" class=\"data row3 col10\" >12.60</td>\n",
" <td id=\"T_a8cfb882_5a0b_11ea_b39f_3573e419ff83row3_col11\" class=\"data row3 col11\" >0.32</td>\n",
" <td id=\"T_a8cfb882_5a0b_11ea_b39f_3573e419ff83row3_col12\" class=\"data row3 col12\" >1.73</td>\n",
" <th id=\"T_a8cfb882_5a0b_11ea_b39f_3573e419ff83level0_row4\" class=\"row_heading level0 row4\" >25%</th>\n",
" <td id=\"T_a8cfb882_5a0b_11ea_b39f_3573e419ff83row4_col0\" class=\"data row4 col0\" >0.08</td>\n",
" <td id=\"T_a8cfb882_5a0b_11ea_b39f_3573e419ff83row4_col1\" class=\"data row4 col1\" >0.00</td>\n",
" <td id=\"T_a8cfb882_5a0b_11ea_b39f_3573e419ff83row4_col2\" class=\"data row4 col2\" >5.19</td>\n",
" <td id=\"T_a8cfb882_5a0b_11ea_b39f_3573e419ff83row4_col3\" class=\"data row4 col3\" >0.00</td>\n",
" <td id=\"T_a8cfb882_5a0b_11ea_b39f_3573e419ff83row4_col4\" class=\"data row4 col4\" >0.45</td>\n",
" <td id=\"T_a8cfb882_5a0b_11ea_b39f_3573e419ff83row4_col5\" class=\"data row4 col5\" >5.88</td>\n",
" <td id=\"T_a8cfb882_5a0b_11ea_b39f_3573e419ff83row4_col6\" class=\"data row4 col6\" >45.62</td>\n",
" <td id=\"T_a8cfb882_5a0b_11ea_b39f_3573e419ff83row4_col7\" class=\"data row4 col7\" >2.07</td>\n",
" <td id=\"T_a8cfb882_5a0b_11ea_b39f_3573e419ff83row4_col8\" class=\"data row4 col8\" >4.00</td>\n",
" <td id=\"T_a8cfb882_5a0b_11ea_b39f_3573e419ff83row4_col9\" class=\"data row4 col9\" >281.00</td>\n",
" <td id=\"T_a8cfb882_5a0b_11ea_b39f_3573e419ff83row4_col10\" class=\"data row4 col10\" >17.00</td>\n",
" <td id=\"T_a8cfb882_5a0b_11ea_b39f_3573e419ff83row4_col11\" class=\"data row4 col11\" >371.07</td>\n",
" <td id=\"T_a8cfb882_5a0b_11ea_b39f_3573e419ff83row4_col12\" class=\"data row4 col12\" >6.97</td>\n",
" <th id=\"T_a8cfb882_5a0b_11ea_b39f_3573e419ff83level0_row5\" class=\"row_heading level0 row5\" >50%</th>\n",
" <td id=\"T_a8cfb882_5a0b_11ea_b39f_3573e419ff83row5_col0\" class=\"data row5 col0\" >0.31</td>\n",
" <td id=\"T_a8cfb882_5a0b_11ea_b39f_3573e419ff83row5_col1\" class=\"data row5 col1\" >0.00</td>\n",
" <td id=\"T_a8cfb882_5a0b_11ea_b39f_3573e419ff83row5_col2\" class=\"data row5 col2\" >9.90</td>\n",
" <td id=\"T_a8cfb882_5a0b_11ea_b39f_3573e419ff83row5_col3\" class=\"data row5 col3\" >0.00</td>\n",
" <td id=\"T_a8cfb882_5a0b_11ea_b39f_3573e419ff83row5_col4\" class=\"data row5 col4\" >0.54</td>\n",
" <td id=\"T_a8cfb882_5a0b_11ea_b39f_3573e419ff83row5_col5\" class=\"data row5 col5\" >6.22</td>\n",
" <td id=\"T_a8cfb882_5a0b_11ea_b39f_3573e419ff83row5_col6\" class=\"data row5 col6\" >79.50</td>\n",
" <td id=\"T_a8cfb882_5a0b_11ea_b39f_3573e419ff83row5_col7\" class=\"data row5 col7\" >3.08</td>\n",
" <td id=\"T_a8cfb882_5a0b_11ea_b39f_3573e419ff83row5_col8\" class=\"data row5 col8\" >5.00</td>\n",
" <td id=\"T_a8cfb882_5a0b_11ea_b39f_3573e419ff83row5_col9\" class=\"data row5 col9\" >337.00</td>\n",
" <td id=\"T_a8cfb882_5a0b_11ea_b39f_3573e419ff83row5_col10\" class=\"data row5 col10\" >19.10</td>\n",
" <td id=\"T_a8cfb882_5a0b_11ea_b39f_3573e419ff83row5_col11\" class=\"data row5 col11\" >390.84</td>\n",
" <td id=\"T_a8cfb882_5a0b_11ea_b39f_3573e419ff83row5_col12\" class=\"data row5 col12\" >11.49</td>\n",
" <th id=\"T_a8cfb882_5a0b_11ea_b39f_3573e419ff83level0_row6\" class=\"row_heading level0 row6\" >75%</th>\n",
" <td id=\"T_a8cfb882_5a0b_11ea_b39f_3573e419ff83row6_col0\" class=\"data row6 col0\" >4.33</td>\n",
" <td id=\"T_a8cfb882_5a0b_11ea_b39f_3573e419ff83row6_col1\" class=\"data row6 col1\" >12.50</td>\n",
" <td id=\"T_a8cfb882_5a0b_11ea_b39f_3573e419ff83row6_col2\" class=\"data row6 col2\" >18.10</td>\n",
" <td id=\"T_a8cfb882_5a0b_11ea_b39f_3573e419ff83row6_col3\" class=\"data row6 col3\" >0.00</td>\n",
" <td id=\"T_a8cfb882_5a0b_11ea_b39f_3573e419ff83row6_col4\" class=\"data row6 col4\" >0.63</td>\n",
" <td id=\"T_a8cfb882_5a0b_11ea_b39f_3573e419ff83row6_col5\" class=\"data row6 col5\" >6.65</td>\n",
" <td id=\"T_a8cfb882_5a0b_11ea_b39f_3573e419ff83row6_col6\" class=\"data row6 col6\" >94.47</td>\n",
" <td id=\"T_a8cfb882_5a0b_11ea_b39f_3573e419ff83row6_col7\" class=\"data row6 col7\" >5.21</td>\n",
" <td id=\"T_a8cfb882_5a0b_11ea_b39f_3573e419ff83row6_col8\" class=\"data row6 col8\" >24.00</td>\n",
" <td id=\"T_a8cfb882_5a0b_11ea_b39f_3573e419ff83row6_col9\" class=\"data row6 col9\" >666.00</td>\n",
" <td id=\"T_a8cfb882_5a0b_11ea_b39f_3573e419ff83row6_col10\" class=\"data row6 col10\" >20.20</td>\n",
" <td id=\"T_a8cfb882_5a0b_11ea_b39f_3573e419ff83row6_col11\" class=\"data row6 col11\" >395.67</td>\n",
" <td id=\"T_a8cfb882_5a0b_11ea_b39f_3573e419ff83row6_col12\" class=\"data row6 col12\" >17.07</td>\n",
" <th id=\"T_a8cfb882_5a0b_11ea_b39f_3573e419ff83level0_row7\" class=\"row_heading level0 row7\" >max</th>\n",
" <td id=\"T_a8cfb882_5a0b_11ea_b39f_3573e419ff83row7_col0\" class=\"data row7 col0\" >88.98</td>\n",
" <td id=\"T_a8cfb882_5a0b_11ea_b39f_3573e419ff83row7_col1\" class=\"data row7 col1\" >100.00</td>\n",
" <td id=\"T_a8cfb882_5a0b_11ea_b39f_3573e419ff83row7_col2\" class=\"data row7 col2\" >27.74</td>\n",
" <td id=\"T_a8cfb882_5a0b_11ea_b39f_3573e419ff83row7_col3\" class=\"data row7 col3\" >1.00</td>\n",
" <td id=\"T_a8cfb882_5a0b_11ea_b39f_3573e419ff83row7_col4\" class=\"data row7 col4\" >0.87</td>\n",
" <td id=\"T_a8cfb882_5a0b_11ea_b39f_3573e419ff83row7_col5\" class=\"data row7 col5\" >8.78</td>\n",
" <td id=\"T_a8cfb882_5a0b_11ea_b39f_3573e419ff83row7_col6\" class=\"data row7 col6\" >100.00</td>\n",
" <td id=\"T_a8cfb882_5a0b_11ea_b39f_3573e419ff83row7_col7\" class=\"data row7 col7\" >12.13</td>\n",
" <td id=\"T_a8cfb882_5a0b_11ea_b39f_3573e419ff83row7_col8\" class=\"data row7 col8\" >24.00</td>\n",
" <td id=\"T_a8cfb882_5a0b_11ea_b39f_3573e419ff83row7_col9\" class=\"data row7 col9\" >711.00</td>\n",
" <td id=\"T_a8cfb882_5a0b_11ea_b39f_3573e419ff83row7_col10\" class=\"data row7 col10\" >22.00</td>\n",
" <td id=\"T_a8cfb882_5a0b_11ea_b39f_3573e419ff83row7_col11\" class=\"data row7 col11\" >396.90</td>\n",
" <td id=\"T_a8cfb882_5a0b_11ea_b39f_3573e419ff83row7_col12\" class=\"data row7 col12\" >37.97</td>\n",
" </tr>\n",
" </tbody></table>"
],
"text/plain": [
"<pandas.io.formats.style.Styler at 0x7fdd211e0850>"
]
},
"metadata": {},
"output_type": "display_data"
},
{
"data": {
"text/html": [
"<style type=\"text/css\" >\n",
"</style><table id=\"T_a8f0d9fe_5a0b_11ea_b39f_3573e419ff83\" ><caption>After normalization :</caption><thead> <tr> <th class=\"blank level0\" ></th> <th class=\"col_heading level0 col0\" >crim</th> <th class=\"col_heading level0 col1\" >zn</th> <th class=\"col_heading level0 col2\" >indus</th> <th class=\"col_heading level0 col3\" >chas</th> <th class=\"col_heading level0 col4\" >nox</th> <th class=\"col_heading level0 col5\" >rm</th> <th class=\"col_heading level0 col6\" >age</th> <th class=\"col_heading level0 col7\" >dis</th> <th class=\"col_heading level0 col8\" >rad</th> <th class=\"col_heading level0 col9\" >tax</th> <th class=\"col_heading level0 col10\" >ptratio</th> <th class=\"col_heading level0 col11\" >b</th> <th class=\"col_heading level0 col12\" >lstat</th> </tr></thead><tbody>\n",
" <th id=\"T_a8f0d9fe_5a0b_11ea_b39f_3573e419ff83level0_row0\" class=\"row_heading level0 row0\" >count</th>\n",
" <td id=\"T_a8f0d9fe_5a0b_11ea_b39f_3573e419ff83row0_col0\" class=\"data row0 col0\" >354.00</td>\n",
" <td id=\"T_a8f0d9fe_5a0b_11ea_b39f_3573e419ff83row0_col1\" class=\"data row0 col1\" >354.00</td>\n",
" <td id=\"T_a8f0d9fe_5a0b_11ea_b39f_3573e419ff83row0_col2\" class=\"data row0 col2\" >354.00</td>\n",
" <td id=\"T_a8f0d9fe_5a0b_11ea_b39f_3573e419ff83row0_col3\" class=\"data row0 col3\" >354.00</td>\n",
" <td id=\"T_a8f0d9fe_5a0b_11ea_b39f_3573e419ff83row0_col4\" class=\"data row0 col4\" >354.00</td>\n",
" <td id=\"T_a8f0d9fe_5a0b_11ea_b39f_3573e419ff83row0_col5\" class=\"data row0 col5\" >354.00</td>\n",
" <td id=\"T_a8f0d9fe_5a0b_11ea_b39f_3573e419ff83row0_col6\" class=\"data row0 col6\" >354.00</td>\n",
" <td id=\"T_a8f0d9fe_5a0b_11ea_b39f_3573e419ff83row0_col7\" class=\"data row0 col7\" >354.00</td>\n",
" <td id=\"T_a8f0d9fe_5a0b_11ea_b39f_3573e419ff83row0_col8\" class=\"data row0 col8\" >354.00</td>\n",
" <td id=\"T_a8f0d9fe_5a0b_11ea_b39f_3573e419ff83row0_col9\" class=\"data row0 col9\" >354.00</td>\n",
" <td id=\"T_a8f0d9fe_5a0b_11ea_b39f_3573e419ff83row0_col10\" class=\"data row0 col10\" >354.00</td>\n",
" <td id=\"T_a8f0d9fe_5a0b_11ea_b39f_3573e419ff83row0_col11\" class=\"data row0 col11\" >354.00</td>\n",
" <td id=\"T_a8f0d9fe_5a0b_11ea_b39f_3573e419ff83row0_col12\" class=\"data row0 col12\" >354.00</td>\n",
" <th id=\"T_a8f0d9fe_5a0b_11ea_b39f_3573e419ff83level0_row1\" class=\"row_heading level0 row1\" >mean</th>\n",
" <td id=\"T_a8f0d9fe_5a0b_11ea_b39f_3573e419ff83row1_col0\" class=\"data row1 col0\" >0.00</td>\n",
" <td id=\"T_a8f0d9fe_5a0b_11ea_b39f_3573e419ff83row1_col1\" class=\"data row1 col1\" >-0.00</td>\n",
" <td id=\"T_a8f0d9fe_5a0b_11ea_b39f_3573e419ff83row1_col2\" class=\"data row1 col2\" >0.00</td>\n",
" <td id=\"T_a8f0d9fe_5a0b_11ea_b39f_3573e419ff83row1_col3\" class=\"data row1 col3\" >0.00</td>\n",
" <td id=\"T_a8f0d9fe_5a0b_11ea_b39f_3573e419ff83row1_col4\" class=\"data row1 col4\" >-0.00</td>\n",
" <td id=\"T_a8f0d9fe_5a0b_11ea_b39f_3573e419ff83row1_col5\" class=\"data row1 col5\" >-0.00</td>\n",
" <td id=\"T_a8f0d9fe_5a0b_11ea_b39f_3573e419ff83row1_col6\" class=\"data row1 col6\" >0.00</td>\n",
" <td id=\"T_a8f0d9fe_5a0b_11ea_b39f_3573e419ff83row1_col7\" class=\"data row1 col7\" >0.00</td>\n",
" <td id=\"T_a8f0d9fe_5a0b_11ea_b39f_3573e419ff83row1_col8\" class=\"data row1 col8\" >-0.00</td>\n",
" <td id=\"T_a8f0d9fe_5a0b_11ea_b39f_3573e419ff83row1_col9\" class=\"data row1 col9\" >0.00</td>\n",
" <td id=\"T_a8f0d9fe_5a0b_11ea_b39f_3573e419ff83row1_col10\" class=\"data row1 col10\" >0.00</td>\n",
" <td id=\"T_a8f0d9fe_5a0b_11ea_b39f_3573e419ff83row1_col11\" class=\"data row1 col11\" >0.00</td>\n",
" <td id=\"T_a8f0d9fe_5a0b_11ea_b39f_3573e419ff83row1_col12\" class=\"data row1 col12\" >-0.00</td>\n",
" <th id=\"T_a8f0d9fe_5a0b_11ea_b39f_3573e419ff83level0_row2\" class=\"row_heading level0 row2\" >std</th>\n",
" <td id=\"T_a8f0d9fe_5a0b_11ea_b39f_3573e419ff83row2_col0\" class=\"data row2 col0\" >1.00</td>\n",
" <td id=\"T_a8f0d9fe_5a0b_11ea_b39f_3573e419ff83row2_col1\" class=\"data row2 col1\" >1.00</td>\n",
" <td id=\"T_a8f0d9fe_5a0b_11ea_b39f_3573e419ff83row2_col2\" class=\"data row2 col2\" >1.00</td>\n",
" <td id=\"T_a8f0d9fe_5a0b_11ea_b39f_3573e419ff83row2_col3\" class=\"data row2 col3\" >1.00</td>\n",
" <td id=\"T_a8f0d9fe_5a0b_11ea_b39f_3573e419ff83row2_col4\" class=\"data row2 col4\" >1.00</td>\n",
" <td id=\"T_a8f0d9fe_5a0b_11ea_b39f_3573e419ff83row2_col5\" class=\"data row2 col5\" >1.00</td>\n",
" <td id=\"T_a8f0d9fe_5a0b_11ea_b39f_3573e419ff83row2_col6\" class=\"data row2 col6\" >1.00</td>\n",
" <td id=\"T_a8f0d9fe_5a0b_11ea_b39f_3573e419ff83row2_col7\" class=\"data row2 col7\" >1.00</td>\n",
" <td id=\"T_a8f0d9fe_5a0b_11ea_b39f_3573e419ff83row2_col8\" class=\"data row2 col8\" >1.00</td>\n",
" <td id=\"T_a8f0d9fe_5a0b_11ea_b39f_3573e419ff83row2_col9\" class=\"data row2 col9\" >1.00</td>\n",
" <td id=\"T_a8f0d9fe_5a0b_11ea_b39f_3573e419ff83row2_col10\" class=\"data row2 col10\" >1.00</td>\n",
" <td id=\"T_a8f0d9fe_5a0b_11ea_b39f_3573e419ff83row2_col11\" class=\"data row2 col11\" >1.00</td>\n",
" <td id=\"T_a8f0d9fe_5a0b_11ea_b39f_3573e419ff83row2_col12\" class=\"data row2 col12\" >1.00</td>\n",
" <th id=\"T_a8f0d9fe_5a0b_11ea_b39f_3573e419ff83level0_row3\" class=\"row_heading level0 row3\" >min</th>\n",
" <td id=\"T_a8f0d9fe_5a0b_11ea_b39f_3573e419ff83row3_col0\" class=\"data row3 col0\" >-0.42</td>\n",
" <td id=\"T_a8f0d9fe_5a0b_11ea_b39f_3573e419ff83row3_col1\" class=\"data row3 col1\" >-0.47</td>\n",
" <td id=\"T_a8f0d9fe_5a0b_11ea_b39f_3573e419ff83row3_col2\" class=\"data row3 col2\" >-1.60</td>\n",
" <td id=\"T_a8f0d9fe_5a0b_11ea_b39f_3573e419ff83row3_col3\" class=\"data row3 col3\" >-0.28</td>\n",
" <td id=\"T_a8f0d9fe_5a0b_11ea_b39f_3573e419ff83row3_col4\" class=\"data row3 col4\" >-1.50</td>\n",
" <td id=\"T_a8f0d9fe_5a0b_11ea_b39f_3573e419ff83row3_col5\" class=\"data row3 col5\" >-3.72</td>\n",
" <td id=\"T_a8f0d9fe_5a0b_11ea_b39f_3573e419ff83row3_col6\" class=\"data row3 col6\" >-2.25</td>\n",
" <td id=\"T_a8f0d9fe_5a0b_11ea_b39f_3573e419ff83row3_col7\" class=\"data row3 col7\" >-1.23</td>\n",
" <td id=\"T_a8f0d9fe_5a0b_11ea_b39f_3573e419ff83row3_col8\" class=\"data row3 col8\" >-1.00</td>\n",
" <td id=\"T_a8f0d9fe_5a0b_11ea_b39f_3573e419ff83row3_col9\" class=\"data row3 col9\" >-1.35</td>\n",
" <td id=\"T_a8f0d9fe_5a0b_11ea_b39f_3573e419ff83row3_col10\" class=\"data row3 col10\" >-2.63</td>\n",
" <td id=\"T_a8f0d9fe_5a0b_11ea_b39f_3573e419ff83row3_col11\" class=\"data row3 col11\" >-3.74</td>\n",
" <td id=\"T_a8f0d9fe_5a0b_11ea_b39f_3573e419ff83row3_col12\" class=\"data row3 col12\" >-1.54</td>\n",
" <th id=\"T_a8f0d9fe_5a0b_11ea_b39f_3573e419ff83level0_row4\" class=\"row_heading level0 row4\" >25%</th>\n",
" <td id=\"T_a8f0d9fe_5a0b_11ea_b39f_3573e419ff83row4_col0\" class=\"data row4 col0\" >-0.41</td>\n",
" <td id=\"T_a8f0d9fe_5a0b_11ea_b39f_3573e419ff83row4_col1\" class=\"data row4 col1\" >-0.47</td>\n",
" <td id=\"T_a8f0d9fe_5a0b_11ea_b39f_3573e419ff83row4_col2\" class=\"data row4 col2\" >-0.91</td>\n",
" <td id=\"T_a8f0d9fe_5a0b_11ea_b39f_3573e419ff83row4_col3\" class=\"data row4 col3\" >-0.28</td>\n",
" <td id=\"T_a8f0d9fe_5a0b_11ea_b39f_3573e419ff83row4_col4\" class=\"data row4 col4\" >-0.91</td>\n",
" <td id=\"T_a8f0d9fe_5a0b_11ea_b39f_3573e419ff83row4_col5\" class=\"data row4 col5\" >-0.56</td>\n",
" <td id=\"T_a8f0d9fe_5a0b_11ea_b39f_3573e419ff83row4_col6\" class=\"data row4 col6\" >-0.85</td>\n",
" <td id=\"T_a8f0d9fe_5a0b_11ea_b39f_3573e419ff83row4_col7\" class=\"data row4 col7\" >-0.80</td>\n",
" <td id=\"T_a8f0d9fe_5a0b_11ea_b39f_3573e419ff83row4_col8\" class=\"data row4 col8\" >-0.67</td>\n",
" <td id=\"T_a8f0d9fe_5a0b_11ea_b39f_3573e419ff83row4_col9\" class=\"data row4 col9\" >-0.80</td>\n",
" <td id=\"T_a8f0d9fe_5a0b_11ea_b39f_3573e419ff83row4_col10\" class=\"data row4 col10\" >-0.67</td>\n",
" <td id=\"T_a8f0d9fe_5a0b_11ea_b39f_3573e419ff83row4_col11\" class=\"data row4 col11\" >0.19</td>\n",
" <td id=\"T_a8f0d9fe_5a0b_11ea_b39f_3573e419ff83row4_col12\" class=\"data row4 col12\" >-0.81</td>\n",
" <th id=\"T_a8f0d9fe_5a0b_11ea_b39f_3573e419ff83level0_row5\" class=\"row_heading level0 row5\" >50%</th>\n",
" <td id=\"T_a8f0d9fe_5a0b_11ea_b39f_3573e419ff83row5_col0\" class=\"data row5 col0\" >-0.39</td>\n",
" <td id=\"T_a8f0d9fe_5a0b_11ea_b39f_3573e419ff83row5_col1\" class=\"data row5 col1\" >-0.47</td>\n",
" <td id=\"T_a8f0d9fe_5a0b_11ea_b39f_3573e419ff83row5_col2\" class=\"data row5 col2\" >-0.23</td>\n",
" <td id=\"T_a8f0d9fe_5a0b_11ea_b39f_3573e419ff83row5_col3\" class=\"data row5 col3\" >-0.28</td>\n",
" <td id=\"T_a8f0d9fe_5a0b_11ea_b39f_3573e419ff83row5_col4\" class=\"data row5 col4\" >-0.18</td>\n",
" <td id=\"T_a8f0d9fe_5a0b_11ea_b39f_3573e419ff83row5_col5\" class=\"data row5 col5\" >-0.10</td>\n",
" <td id=\"T_a8f0d9fe_5a0b_11ea_b39f_3573e419ff83row5_col6\" class=\"data row5 col6\" >0.36</td>\n",
" <td id=\"T_a8f0d9fe_5a0b_11ea_b39f_3573e419ff83row5_col7\" class=\"data row5 col7\" >-0.33</td>\n",
" <td id=\"T_a8f0d9fe_5a0b_11ea_b39f_3573e419ff83row5_col8\" class=\"data row5 col8\" >-0.55</td>\n",
" <td id=\"T_a8f0d9fe_5a0b_11ea_b39f_3573e419ff83row5_col9\" class=\"data row5 col9\" >-0.47</td>\n",
" <td id=\"T_a8f0d9fe_5a0b_11ea_b39f_3573e419ff83row5_col10\" class=\"data row5 col10\" >0.27</td>\n",
" <td id=\"T_a8f0d9fe_5a0b_11ea_b39f_3573e419ff83row5_col11\" class=\"data row5 col11\" >0.40</td>\n",
" <td id=\"T_a8f0d9fe_5a0b_11ea_b39f_3573e419ff83row5_col12\" class=\"data row5 col12\" >-0.17</td>\n",
" <th id=\"T_a8f0d9fe_5a0b_11ea_b39f_3573e419ff83level0_row6\" class=\"row_heading level0 row6\" >75%</th>\n",
" <td id=\"T_a8f0d9fe_5a0b_11ea_b39f_3573e419ff83row6_col0\" class=\"data row6 col0\" >0.05</td>\n",
" <td id=\"T_a8f0d9fe_5a0b_11ea_b39f_3573e419ff83row6_col1\" class=\"data row6 col1\" >0.07</td>\n",
" <td id=\"T_a8f0d9fe_5a0b_11ea_b39f_3573e419ff83row6_col2\" class=\"data row6 col2\" >0.97</td>\n",
" <td id=\"T_a8f0d9fe_5a0b_11ea_b39f_3573e419ff83row6_col3\" class=\"data row6 col3\" >-0.28</td>\n",
" <td id=\"T_a8f0d9fe_5a0b_11ea_b39f_3573e419ff83row6_col4\" class=\"data row6 col4\" >0.63</td>\n",
" <td id=\"T_a8f0d9fe_5a0b_11ea_b39f_3573e419ff83row6_col5\" class=\"data row6 col5\" >0.48</td>\n",
" <td id=\"T_a8f0d9fe_5a0b_11ea_b39f_3573e419ff83row6_col6\" class=\"data row6 col6\" >0.89</td>\n",
" <td id=\"T_a8f0d9fe_5a0b_11ea_b39f_3573e419ff83row6_col7\" class=\"data row6 col7\" >0.67</td>\n",
" <td id=\"T_a8f0d9fe_5a0b_11ea_b39f_3573e419ff83row6_col8\" class=\"data row6 col8\" >1.56</td>\n",
" <td id=\"T_a8f0d9fe_5a0b_11ea_b39f_3573e419ff83row6_col9\" class=\"data row6 col9\" >1.44</td>\n",
" <td id=\"T_a8f0d9fe_5a0b_11ea_b39f_3573e419ff83row6_col10\" class=\"data row6 col10\" >0.76</td>\n",
" <td id=\"T_a8f0d9fe_5a0b_11ea_b39f_3573e419ff83row6_col11\" class=\"data row6 col11\" >0.46</td>\n",
" <td id=\"T_a8f0d9fe_5a0b_11ea_b39f_3573e419ff83row6_col12\" class=\"data row6 col12\" >0.61</td>\n",
" <th id=\"T_a8f0d9fe_5a0b_11ea_b39f_3573e419ff83level0_row7\" class=\"row_heading level0 row7\" >max</th>\n",
" <td id=\"T_a8f0d9fe_5a0b_11ea_b39f_3573e419ff83row7_col0\" class=\"data row7 col0\" >9.13</td>\n",
" <td id=\"T_a8f0d9fe_5a0b_11ea_b39f_3573e419ff83row7_col1\" class=\"data row7 col1\" >3.86</td>\n",
" <td id=\"T_a8f0d9fe_5a0b_11ea_b39f_3573e419ff83row7_col2\" class=\"data row7 col2\" >2.38</td>\n",
" <td id=\"T_a8f0d9fe_5a0b_11ea_b39f_3573e419ff83row7_col3\" class=\"data row7 col3\" >3.62</td>\n",
" <td id=\"T_a8f0d9fe_5a0b_11ea_b39f_3573e419ff83row7_col4\" class=\"data row7 col4\" >2.70</td>\n",
" <td id=\"T_a8f0d9fe_5a0b_11ea_b39f_3573e419ff83row7_col5\" class=\"data row7 col5\" >3.38</td>\n",
" <td id=\"T_a8f0d9fe_5a0b_11ea_b39f_3573e419ff83row7_col6\" class=\"data row7 col6\" >1.09</td>\n",
" <td id=\"T_a8f0d9fe_5a0b_11ea_b39f_3573e419ff83row7_col7\" class=\"data row7 col7\" >3.89</td>\n",
" <td id=\"T_a8f0d9fe_5a0b_11ea_b39f_3573e419ff83row7_col8\" class=\"data row7 col8\" >1.56</td>\n",
" <td id=\"T_a8f0d9fe_5a0b_11ea_b39f_3573e419ff83row7_col9\" class=\"data row7 col9\" >1.70</td>\n",
" <td id=\"T_a8f0d9fe_5a0b_11ea_b39f_3573e419ff83row7_col10\" class=\"data row7 col10\" >1.57</td>\n",
" <td id=\"T_a8f0d9fe_5a0b_11ea_b39f_3573e419ff83row7_col11\" class=\"data row7 col11\" >0.47</td>\n",
" <td id=\"T_a8f0d9fe_5a0b_11ea_b39f_3573e419ff83row7_col12\" class=\"data row7 col12\" >3.55</td>\n",
" </tr>\n",
" </tbody></table>"
],
"text/plain": [
"<pandas.io.formats.style.Styler at 0x7fdca7b03890>"
]
},
"metadata": {},
"output_type": "display_data"
},
{
"data": {
"text/html": [
"<style type=\"text/css\" >\n",
"</style><table id=\"T_a8f181ce_5a0b_11ea_b39f_3573e419ff83\" ><caption>Few lines of the dataset :</caption><thead> <tr> <th class=\"blank level0\" ></th> <th class=\"col_heading level0 col0\" >crim</th> <th class=\"col_heading level0 col1\" >zn</th> <th class=\"col_heading level0 col2\" >indus</th> <th class=\"col_heading level0 col3\" >chas</th> <th class=\"col_heading level0 col4\" >nox</th> <th class=\"col_heading level0 col5\" >rm</th> <th class=\"col_heading level0 col6\" >age</th> <th class=\"col_heading level0 col7\" >dis</th> <th class=\"col_heading level0 col8\" >rad</th> <th class=\"col_heading level0 col9\" >tax</th> <th class=\"col_heading level0 col10\" >ptratio</th> <th class=\"col_heading level0 col11\" >b</th> <th class=\"col_heading level0 col12\" >lstat</th> </tr></thead><tbody>\n",
" <th id=\"T_a8f181ce_5a0b_11ea_b39f_3573e419ff83level0_row0\" class=\"row_heading level0 row0\" >338</th>\n",
" <td id=\"T_a8f181ce_5a0b_11ea_b39f_3573e419ff83row0_col0\" class=\"data row0 col0\" >-0.41</td>\n",
" <td id=\"T_a8f181ce_5a0b_11ea_b39f_3573e419ff83row0_col1\" class=\"data row0 col1\" >-0.47</td>\n",
" <td id=\"T_a8f181ce_5a0b_11ea_b39f_3573e419ff83row0_col2\" class=\"data row0 col2\" >-0.91</td>\n",
" <td id=\"T_a8f181ce_5a0b_11ea_b39f_3573e419ff83row0_col3\" class=\"data row0 col3\" >-0.28</td>\n",
" <td id=\"T_a8f181ce_5a0b_11ea_b39f_3573e419ff83row0_col4\" class=\"data row0 col4\" >-0.38</td>\n",
" <td id=\"T_a8f181ce_5a0b_11ea_b39f_3573e419ff83row0_col5\" class=\"data row0 col5\" >-0.32</td>\n",
" <td id=\"T_a8f181ce_5a0b_11ea_b39f_3573e419ff83row0_col6\" class=\"data row0 col6\" >-1.14</td>\n",
" <td id=\"T_a8f181ce_5a0b_11ea_b39f_3573e419ff83row0_col7\" class=\"data row0 col7\" >0.48</td>\n",
" <td id=\"T_a8f181ce_5a0b_11ea_b39f_3573e419ff83row0_col8\" class=\"data row0 col8\" >-0.55</td>\n",
" <td id=\"T_a8f181ce_5a0b_11ea_b39f_3573e419ff83row0_col9\" class=\"data row0 col9\" >-1.13</td>\n",
" <td id=\"T_a8f181ce_5a0b_11ea_b39f_3573e419ff83row0_col10\" class=\"data row0 col10\" >0.76</td>\n",
" <td id=\"T_a8f181ce_5a0b_11ea_b39f_3573e419ff83row0_col11\" class=\"data row0 col11\" >0.46</td>\n",
" <td id=\"T_a8f181ce_5a0b_11ea_b39f_3573e419ff83row0_col12\" class=\"data row0 col12\" >-0.59</td>\n",
" </tr>\n",
" <tr>\n",
" <th id=\"T_a8f181ce_5a0b_11ea_b39f_3573e419ff83level0_row1\" class=\"row_heading level0 row1\" >135</th>\n",
" <td id=\"T_a8f181ce_5a0b_11ea_b39f_3573e419ff83row1_col0\" class=\"data row1 col0\" >-0.36</td>\n",
" <td id=\"T_a8f181ce_5a0b_11ea_b39f_3573e419ff83row1_col1\" class=\"data row1 col1\" >-0.47</td>\n",
" <td id=\"T_a8f181ce_5a0b_11ea_b39f_3573e419ff83row1_col2\" class=\"data row1 col2\" >1.52</td>\n",
" <td id=\"T_a8f181ce_5a0b_11ea_b39f_3573e419ff83row1_col3\" class=\"data row1 col3\" >-0.28</td>\n",
" <td id=\"T_a8f181ce_5a0b_11ea_b39f_3573e419ff83row1_col4\" class=\"data row1 col4\" >0.57</td>\n",
" <td id=\"T_a8f181ce_5a0b_11ea_b39f_3573e419ff83row1_col5\" class=\"data row1 col5\" >0.05</td>\n",
" <td id=\"T_a8f181ce_5a0b_11ea_b39f_3573e419ff83row1_col6\" class=\"data row1 col6\" >1.02</td>\n",
" <td id=\"T_a8f181ce_5a0b_11ea_b39f_3573e419ff83row1_col7\" class=\"data row1 col7\" >-0.78</td>\n",
" <td id=\"T_a8f181ce_5a0b_11ea_b39f_3573e419ff83row1_col8\" class=\"data row1 col8\" >-0.67</td>\n",
" <td id=\"T_a8f181ce_5a0b_11ea_b39f_3573e419ff83row1_col9\" class=\"data row1 col9\" >0.11</td>\n",
" <td id=\"T_a8f181ce_5a0b_11ea_b39f_3573e419ff83row1_col10\" class=\"data row1 col10\" >1.21</td>\n",
" <td id=\"T_a8f181ce_5a0b_11ea_b39f_3573e419ff83row1_col11\" class=\"data row1 col11\" >0.44</td>\n",
" <td id=\"T_a8f181ce_5a0b_11ea_b39f_3573e419ff83row1_col12\" class=\"data row1 col12\" >0.60</td>\n",
" </tr>\n",
" <tr>\n",
" <th id=\"T_a8f181ce_5a0b_11ea_b39f_3573e419ff83level0_row2\" class=\"row_heading level0 row2\" >276</th>\n",
" <td id=\"T_a8f181ce_5a0b_11ea_b39f_3573e419ff83row2_col0\" class=\"data row2 col0\" >-0.41</td>\n",
" <td id=\"T_a8f181ce_5a0b_11ea_b39f_3573e419ff83row2_col1\" class=\"data row2 col1\" >1.26</td>\n",
" <td id=\"T_a8f181ce_5a0b_11ea_b39f_3573e419ff83row2_col2\" class=\"data row2 col2\" >-0.74</td>\n",
" <td id=\"T_a8f181ce_5a0b_11ea_b39f_3573e419ff83row2_col3\" class=\"data row2 col3\" >3.62</td>\n",
" <td id=\"T_a8f181ce_5a0b_11ea_b39f_3573e419ff83row2_col4\" class=\"data row2 col4\" >-0.97</td>\n",
" <td id=\"T_a8f181ce_5a0b_11ea_b39f_3573e419ff83row2_col5\" class=\"data row2 col5\" >1.32</td>\n",
" <td id=\"T_a8f181ce_5a0b_11ea_b39f_3573e419ff83row2_col6\" class=\"data row2 col6\" >-0.73</td>\n",
" <td id=\"T_a8f181ce_5a0b_11ea_b39f_3573e419ff83row2_col7\" class=\"data row2 col7\" >0.47</td>\n",
" <td id=\"T_a8f181ce_5a0b_11ea_b39f_3573e419ff83row2_col8\" class=\"data row2 col8\" >-0.67</td>\n",
" <td id=\"T_a8f181ce_5a0b_11ea_b39f_3573e419ff83row2_col9\" class=\"data row2 col9\" >-0.96</td>\n",
" <td id=\"T_a8f181ce_5a0b_11ea_b39f_3573e419ff83row2_col10\" class=\"data row2 col10\" >-0.40</td>\n",
" <td id=\"T_a8f181ce_5a0b_11ea_b39f_3573e419ff83row2_col11\" class=\"data row2 col11\" >0.39</td>\n",
" <td id=\"T_a8f181ce_5a0b_11ea_b39f_3573e419ff83row2_col12\" class=\"data row2 col12\" >-0.94</td>\n",
" </tr>\n",
" <tr>\n",
" <th id=\"T_a8f181ce_5a0b_11ea_b39f_3573e419ff83level0_row3\" class=\"row_heading level0 row3\" >410</th>\n",
" <td id=\"T_a8f181ce_5a0b_11ea_b39f_3573e419ff83row3_col0\" class=\"data row3 col0\" >5.07</td>\n",
" <td id=\"T_a8f181ce_5a0b_11ea_b39f_3573e419ff83row3_col1\" class=\"data row3 col1\" >-0.47</td>\n",
" <td id=\"T_a8f181ce_5a0b_11ea_b39f_3573e419ff83row3_col2\" class=\"data row3 col2\" >0.97</td>\n",
" <td id=\"T_a8f181ce_5a0b_11ea_b39f_3573e419ff83row3_col3\" class=\"data row3 col3\" >-0.28</td>\n",
" <td id=\"T_a8f181ce_5a0b_11ea_b39f_3573e419ff83row3_col4\" class=\"data row3 col4\" >0.33</td>\n",
" <td id=\"T_a8f181ce_5a0b_11ea_b39f_3573e419ff83row3_col5\" class=\"data row3 col5\" >-0.73</td>\n",
" <td id=\"T_a8f181ce_5a0b_11ea_b39f_3573e419ff83row3_col6\" class=\"data row3 col6\" >1.09</td>\n",
" <td id=\"T_a8f181ce_5a0b_11ea_b39f_3573e419ff83row3_col7\" class=\"data row3 col7\" >-1.10</td>\n",
" <td id=\"T_a8f181ce_5a0b_11ea_b39f_3573e419ff83row3_col8\" class=\"data row3 col8\" >1.56</td>\n",
" <td id=\"T_a8f181ce_5a0b_11ea_b39f_3573e419ff83row3_col9\" class=\"data row3 col9\" >1.44</td>\n",
" <td id=\"T_a8f181ce_5a0b_11ea_b39f_3573e419ff83row3_col10\" class=\"data row3 col10\" >0.76</td>\n",
" <td id=\"T_a8f181ce_5a0b_11ea_b39f_3573e419ff83row3_col11\" class=\"data row3 col11\" >-3.71</td>\n",
" <td id=\"T_a8f181ce_5a0b_11ea_b39f_3573e419ff83row3_col12\" class=\"data row3 col12\" >-0.36</td>\n",
" </tr>\n",
" <tr>\n",
" <th id=\"T_a8f181ce_5a0b_11ea_b39f_3573e419ff83level0_row4\" class=\"row_heading level0 row4\" >288</th>\n",
" <td id=\"T_a8f181ce_5a0b_11ea_b39f_3573e419ff83row4_col0\" class=\"data row4 col0\" >-0.41</td>\n",
" <td id=\"T_a8f181ce_5a0b_11ea_b39f_3573e419ff83row4_col1\" class=\"data row4 col1\" >1.80</td>\n",
" <td id=\"T_a8f181ce_5a0b_11ea_b39f_3573e419ff83row4_col2\" class=\"data row4 col2\" >-0.89</td>\n",
" <td id=\"T_a8f181ce_5a0b_11ea_b39f_3573e419ff83row4_col3\" class=\"data row4 col3\" >-0.28</td>\n",
" <td id=\"T_a8f181ce_5a0b_11ea_b39f_3573e419ff83row4_col4\" class=\"data row4 col4\" >-1.33</td>\n",
" <td id=\"T_a8f181ce_5a0b_11ea_b39f_3573e419ff83row4_col5\" class=\"data row4 col5\" >0.03</td>\n",
" <td id=\"T_a8f181ce_5a0b_11ea_b39f_3573e419ff83row4_col6\" class=\"data row4 col6\" >-0.85</td>\n",
" <td id=\"T_a8f181ce_5a0b_11ea_b39f_3573e419ff83row4_col7\" class=\"data row4 col7\" >1.65</td>\n",
" <td id=\"T_a8f181ce_5a0b_11ea_b39f_3573e419ff83row4_col8\" class=\"data row4 col8\" >-0.44</td>\n",
" <td id=\"T_a8f181ce_5a0b_11ea_b39f_3573e419ff83row4_col9\" class=\"data row4 col9\" >-0.73</td>\n",
" <td id=\"T_a8f181ce_5a0b_11ea_b39f_3573e419ff83row4_col10\" class=\"data row4 col10\" >-0.85</td>\n",
" <td id=\"T_a8f181ce_5a0b_11ea_b39f_3573e419ff83row4_col11\" class=\"data row4 col11\" >0.47</td>\n",
" <td id=\"T_a8f181ce_5a0b_11ea_b39f_3573e419ff83row4_col12\" class=\"data row4 col12\" >-0.72</td>\n",
" </tr>\n",
" </tbody></table>"
],
"text/plain": [
"<pandas.io.formats.style.Styler at 0x7fdca873cc10>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"display(x_train.describe().style.format(\"{0:.2f}\").set_caption(\"Before normalization :\"))\n",
"\n",
"mean = x_train.mean()\n",
"std = x_train.std()\n",
"x_train = (x_train - mean) / std\n",
"x_test = (x_test - mean) / std\n",
"\n",
"display(x_train.describe().style.format(\"{0:.2f}\").set_caption(\"After normalization :\"))\n",
"display(x_train.head(5).style.format(\"{0:.2f}\").set_caption(\"Few lines of the dataset :\"))\n",
"\n",
"x_train, y_train = np.array(x_train), np.array(y_train)\n",
"x_test, y_test = np.array(x_test), np.array(y_test)\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"About informations about : \n",
" - [Optimizer](https://www.tensorflow.org/api_docs/python/tf/keras/optimizers)\n",
" - [Activation](https://www.tensorflow.org/api_docs/python/tf/keras/activations)\n",
" - [Loss](https://www.tensorflow.org/api_docs/python/tf/keras/losses)\n",
" - [Metrics](https://www.tensorflow.org/api_docs/python/tf/keras/metrics)"
]
},
{
"cell_type": "code",
"metadata": {},
"outputs": [],
"source": [
" def get_model_v1(shape):\n",
" \n",
" model = keras.models.Sequential()\n",
" model.add(keras.layers.Input(shape, name=\"InputLayer\"))\n",
" model.add(keras.layers.Dense(64, activation='relu', name='Dense_n1'))\n",
" model.add(keras.layers.Dense(64, activation='relu', name='Dense_n2'))\n",
" model.add(keras.layers.Dense(1, name='Output'))\n",
" \n",
" model.compile(optimizer = 'rmsprop',\n",
" loss = 'mse',\n",
" metrics = ['mae', 'mse'] )\n",
" return model"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Step 5 - Train the model\n",
"### 5.1 - Get it"
]
},
{
"cell_type": "code",
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Model: \"sequential\"\n",
"_________________________________________________________________\n",
"Layer (type) Output Shape Param # \n",
"=================================================================\n",
"Dense_n1 (Dense) (None, 64) 896 \n",
"_________________________________________________________________\n",
"Dense_n2 (Dense) (None, 64) 4160 \n",
"_________________________________________________________________\n",
"Output (Dense) (None, 1) 65 \n",
"=================================================================\n",
"Total params: 5,121\n",
"Trainable params: 5,121\n",
"Non-trainable params: 0\n",
"_________________________________________________________________\n"
]
},
{
"data": {
"image/png": "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\n",
"text/plain": [
"<IPython.core.display.Image object>"
]
},
"metadata": {},
"source": [
"model=get_model_v1( (13,) )\n",
"\n",
"\n",
"img=keras.utils.plot_model( model, to_file='./run/model.png', show_shapes=True, show_layer_names=True, dpi=96)\n",
"display(img)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
]
},
{
"cell_type": "code",
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Train on 354 samples, validate on 152 samples\n",
"Epoch 1/100\n",
"354/354 [==============================] - 2s 5ms/sample - loss: 479.4495 - mae: 19.8349 - mse: 479.4495 - val_loss: 339.4690 - val_mae: 16.6718 - val_mse: 339.4690\n",
"354/354 [==============================] - 0s 286us/sample - loss: 238.3182 - mae: 13.1013 - mse: 238.3182 - val_loss: 107.0266 - val_mae: 8.6883 - val_mse: 107.0266\n",
"354/354 [==============================] - 0s 275us/sample - loss: 78.5819 - mae: 6.7526 - mse: 78.5819 - val_loss: 38.3597 - val_mae: 5.0914 - val_mse: 38.3597\n",
"354/354 [==============================] - 0s 280us/sample - loss: 40.6394 - mae: 4.6200 - mse: 40.6394 - val_loss: 21.7235 - val_mae: 3.7289 - val_mse: 21.7235\n",
"354/354 [==============================] - 0s 274us/sample - loss: 27.8613 - mae: 3.7894 - mse: 27.8613 - val_loss: 14.7727 - val_mae: 3.0663 - val_mse: 14.7727\n",
"354/354 [==============================] - 0s 268us/sample - loss: 23.6295 - mae: 3.3540 - mse: 23.6295 - val_loss: 13.9411 - val_mae: 3.0119 - val_mse: 13.9411\n",
"354/354 [==============================] - 0s 287us/sample - loss: 20.9195 - mae: 3.1125 - mse: 20.9195 - val_loss: 12.9257 - val_mae: 2.8701 - val_mse: 12.9257\n",
"354/354 [==============================] - 0s 275us/sample - loss: 18.9373 - mae: 2.9803 - mse: 18.9373 - val_loss: 12.9155 - val_mae: 2.8066 - val_mse: 12.9155\n",
"354/354 [==============================] - 0s 268us/sample - loss: 17.8669 - mae: 2.8926 - mse: 17.8669 - val_loss: 11.1356 - val_mae: 2.5916 - val_mse: 11.1356\n",
"354/354 [==============================] - 0s 286us/sample - loss: 16.5821 - mae: 2.7416 - mse: 16.5821 - val_loss: 10.5151 - val_mae: 2.4566 - val_mse: 10.5151\n",
"354/354 [==============================] - 0s 282us/sample - loss: 15.8076 - mae: 2.6922 - mse: 15.8076 - val_loss: 10.0317 - val_mae: 2.4424 - val_mse: 10.0317\n",
"354/354 [==============================] - 0s 270us/sample - loss: 15.1360 - mae: 2.6343 - mse: 15.1360 - val_loss: 9.9458 - val_mae: 2.4256 - val_mse: 9.9458\n",
"354/354 [==============================] - 0s 271us/sample - loss: 14.5077 - mae: 2.5719 - mse: 14.5077 - val_loss: 10.0280 - val_mae: 2.4453 - val_mse: 10.0280\n",
"354/354 [==============================] - 0s 275us/sample - loss: 13.9108 - mae: 2.5298 - mse: 13.9108 - val_loss: 10.5295 - val_mae: 2.5410 - val_mse: 10.5295\n",
"354/354 [==============================] - 0s 273us/sample - loss: 13.8502 - mae: 2.4858 - mse: 13.8502 - val_loss: 9.3665 - val_mae: 2.3461 - val_mse: 9.3665\n",
"354/354 [==============================] - 0s 285us/sample - loss: 13.0942 - mae: 2.4782 - mse: 13.0942 - val_loss: 9.3481 - val_mae: 2.3744 - val_mse: 9.3481\n",
"354/354 [==============================] - 0s 278us/sample - loss: 13.1690 - mae: 2.4280 - mse: 13.1690 - val_loss: 9.1439 - val_mae: 2.3094 - val_mse: 9.1439\n",
"354/354 [==============================] - 0s 276us/sample - loss: 12.7339 - mae: 2.3729 - mse: 12.7339 - val_loss: 9.5174 - val_mae: 2.4446 - val_mse: 9.5174\n",
"354/354 [==============================] - 0s 283us/sample - loss: 12.2235 - mae: 2.4115 - mse: 12.2235 - val_loss: 8.9326 - val_mae: 2.3372 - val_mse: 8.9326\n",
"354/354 [==============================] - 0s 274us/sample - loss: 12.3481 - mae: 2.3899 - mse: 12.3481 - val_loss: 8.3864 - val_mae: 2.2178 - val_mse: 8.3864\n",
"354/354 [==============================] - 0s 287us/sample - loss: 11.8008 - mae: 2.3316 - mse: 11.8008 - val_loss: 9.9560 - val_mae: 2.4258 - val_mse: 9.9560\n",
"354/354 [==============================] - 0s 285us/sample - loss: 11.7082 - mae: 2.3234 - mse: 11.7082 - val_loss: 10.0376 - val_mae: 2.4476 - val_mse: 10.0376\n",
"354/354 [==============================] - 0s 296us/sample - loss: 11.5111 - mae: 2.3072 - mse: 11.5111 - val_loss: 8.4852 - val_mae: 2.2507 - val_mse: 8.4852\n",
"354/354 [==============================] - 0s 268us/sample - loss: 11.1780 - mae: 2.2558 - mse: 11.1780 - val_loss: 9.6494 - val_mae: 2.4201 - val_mse: 9.6494\n",
"354/354 [==============================] - 0s 282us/sample - loss: 11.1300 - mae: 2.2755 - mse: 11.1300 - val_loss: 9.2204 - val_mae: 2.2981 - val_mse: 9.2204\n",
"354/354 [==============================] - 0s 266us/sample - loss: 10.9627 - mae: 2.2352 - mse: 10.9627 - val_loss: 8.7161 - val_mae: 2.3192 - val_mse: 8.7161\n",
"354/354 [==============================] - 0s 272us/sample - loss: 11.0313 - mae: 2.2303 - mse: 11.0313 - val_loss: 8.0200 - val_mae: 2.1562 - val_mse: 8.0200\n",
"354/354 [==============================] - 0s 280us/sample - loss: 10.6072 - mae: 2.1927 - mse: 10.6072 - val_loss: 8.1260 - val_mae: 2.1972 - val_mse: 8.1260\n",
"354/354 [==============================] - 0s 311us/sample - loss: 10.6402 - mae: 2.1748 - mse: 10.6402 - val_loss: 8.7967 - val_mae: 2.2503 - val_mse: 8.7967\n",
"354/354 [==============================] - 0s 286us/sample - loss: 10.2717 - mae: 2.2183 - mse: 10.2717 - val_loss: 8.1098 - val_mae: 2.1846 - val_mse: 8.1098\n",
"354/354 [==============================] - 0s 285us/sample - loss: 9.8955 - mae: 2.1371 - mse: 9.8955 - val_loss: 8.3667 - val_mae: 2.2848 - val_mse: 8.3667\n",
"354/354 [==============================] - 0s 280us/sample - loss: 10.1973 - mae: 2.1819 - mse: 10.1973 - val_loss: 8.7020 - val_mae: 2.2529 - val_mse: 8.7020\n",
"354/354 [==============================] - 0s 283us/sample - loss: 9.6211 - mae: 2.1035 - mse: 9.6211 - val_loss: 10.7199 - val_mae: 2.4891 - val_mse: 10.7199\n",
"354/354 [==============================] - 0s 286us/sample - loss: 9.8665 - mae: 2.1411 - mse: 9.8665 - val_loss: 8.0888 - val_mae: 2.1618 - val_mse: 8.0888\n",
"354/354 [==============================] - 0s 267us/sample - loss: 9.8468 - mae: 2.1415 - mse: 9.8468 - val_loss: 8.3707 - val_mae: 2.2071 - val_mse: 8.3707\n",
"354/354 [==============================] - 0s 291us/sample - loss: 9.4023 - mae: 2.0772 - mse: 9.4023 - val_loss: 8.0054 - val_mae: 2.1856 - val_mse: 8.0054\n",
"354/354 [==============================] - 0s 288us/sample - loss: 9.0075 - mae: 2.0390 - mse: 9.0075 - val_loss: 8.5155 - val_mae: 2.2363 - val_mse: 8.5155\n",
"354/354 [==============================] - 0s 285us/sample - loss: 9.1753 - mae: 2.0735 - mse: 9.1753 - val_loss: 8.2789 - val_mae: 2.1555 - val_mse: 8.2789\n",
"354/354 [==============================] - 0s 294us/sample - loss: 9.0900 - mae: 2.0347 - mse: 9.0900 - val_loss: 7.7142 - val_mae: 2.1180 - val_mse: 7.7142\n",
"354/354 [==============================] - 0s 288us/sample - loss: 9.0604 - mae: 2.0522 - mse: 9.0604 - val_loss: 10.0447 - val_mae: 2.3609 - val_mse: 10.0447\n",
"354/354 [==============================] - 0s 279us/sample - loss: 9.1029 - mae: 2.0717 - mse: 9.1029 - val_loss: 7.9920 - val_mae: 2.1557 - val_mse: 7.9920\n",
"354/354 [==============================] - 0s 290us/sample - loss: 8.7579 - mae: 2.0201 - mse: 8.7579 - val_loss: 8.0391 - val_mae: 2.1993 - val_mse: 8.0391\n",
"354/354 [==============================] - 0s 273us/sample - loss: 8.6292 - mae: 2.0033 - mse: 8.6292 - val_loss: 7.3951 - val_mae: 2.0557 - val_mse: 7.3951\n",
"354/354 [==============================] - 0s 280us/sample - loss: 8.9005 - mae: 2.0303 - mse: 8.9005 - val_loss: 7.8706 - val_mae: 2.1748 - val_mse: 7.8706\n",
"354/354 [==============================] - 0s 287us/sample - loss: 8.4258 - mae: 1.9923 - mse: 8.4258 - val_loss: 9.3014 - val_mae: 2.3212 - val_mse: 9.3013\n",
"354/354 [==============================] - 0s 283us/sample - loss: 8.5433 - mae: 1.9774 - mse: 8.5433 - val_loss: 7.8489 - val_mae: 2.1072 - val_mse: 7.8489\n",
"354/354 [==============================] - 0s 285us/sample - loss: 8.3037 - mae: 1.9583 - mse: 8.3037 - val_loss: 8.1335 - val_mae: 2.2083 - val_mse: 8.1335\n",
"354/354 [==============================] - 0s 286us/sample - loss: 8.4023 - mae: 1.9824 - mse: 8.4023 - val_loss: 7.4668 - val_mae: 2.1024 - val_mse: 7.4668\n",
"354/354 [==============================] - 0s 298us/sample - loss: 8.2544 - mae: 1.9665 - mse: 8.2544 - val_loss: 7.7913 - val_mae: 2.1179 - val_mse: 7.7913\n",
"354/354 [==============================] - 0s 272us/sample - loss: 8.2485 - mae: 1.9450 - mse: 8.2485 - val_loss: 8.2368 - val_mae: 2.1949 - val_mse: 8.2368\n",
"354/354 [==============================] - 0s 286us/sample - loss: 8.0620 - mae: 1.9246 - mse: 8.0620 - val_loss: 9.4245 - val_mae: 2.3602 - val_mse: 9.4245\n",
"354/354 [==============================] - 0s 272us/sample - loss: 7.8458 - mae: 1.8929 - mse: 7.8458 - val_loss: 7.8172 - val_mae: 2.1102 - val_mse: 7.8172\n",
"354/354 [==============================] - 0s 275us/sample - loss: 7.8529 - mae: 1.9210 - mse: 7.8529 - val_loss: 8.3722 - val_mae: 2.1895 - val_mse: 8.3722\n",
"354/354 [==============================] - 0s 267us/sample - loss: 7.8456 - mae: 1.9185 - mse: 7.8456 - val_loss: 8.6497 - val_mae: 2.2441 - val_mse: 8.6497\n",
"354/354 [==============================] - 0s 275us/sample - loss: 7.8214 - mae: 1.9440 - mse: 7.8214 - val_loss: 7.8350 - val_mae: 2.1042 - val_mse: 7.8350\n",
"354/354 [==============================] - 0s 267us/sample - loss: 7.1478 - mae: 1.8786 - mse: 7.1478 - val_loss: 9.0040 - val_mae: 2.2687 - val_mse: 9.0040\n",
"354/354 [==============================] - 0s 282us/sample - loss: 7.6740 - mae: 1.9089 - mse: 7.6740 - val_loss: 7.7027 - val_mae: 2.0962 - val_mse: 7.7027\n",
"354/354 [==============================] - 0s 284us/sample - loss: 7.6915 - mae: 1.8942 - mse: 7.6914 - val_loss: 8.1644 - val_mae: 2.1569 - val_mse: 8.1644\n",
"354/354 [==============================] - 0s 280us/sample - loss: 7.3480 - mae: 1.8529 - mse: 7.3480 - val_loss: 7.6212 - val_mae: 2.1103 - val_mse: 7.6212\n",
"354/354 [==============================] - 0s 281us/sample - loss: 7.5539 - mae: 1.8710 - mse: 7.5539 - val_loss: 8.1158 - val_mae: 2.1719 - val_mse: 8.1158\n",
"354/354 [==============================] - 0s 269us/sample - loss: 7.2977 - mae: 1.8647 - mse: 7.2977 - val_loss: 7.1379 - val_mae: 2.0242 - val_mse: 7.1379\n",
"354/354 [==============================] - 0s 272us/sample - loss: 7.3048 - mae: 1.8935 - mse: 7.3048 - val_loss: 7.8043 - val_mae: 2.1160 - val_mse: 7.8043\n",
"354/354 [==============================] - 0s 289us/sample - loss: 7.1083 - mae: 1.8641 - mse: 7.1083 - val_loss: 7.4072 - val_mae: 2.0936 - val_mse: 7.4072\n",
"354/354 [==============================] - 0s 294us/sample - loss: 7.1797 - mae: 1.8808 - mse: 7.1797 - val_loss: 7.6122 - val_mae: 2.1288 - val_mse: 7.6122\n",
"354/354 [==============================] - 0s 279us/sample - loss: 6.9043 - mae: 1.8660 - mse: 6.9043 - val_loss: 7.5638 - val_mae: 2.1205 - val_mse: 7.5638\n",
"354/354 [==============================] - 0s 284us/sample - loss: 7.2350 - mae: 1.8598 - mse: 7.2350 - val_loss: 8.0703 - val_mae: 2.1999 - val_mse: 8.0703\n",
"354/354 [==============================] - 0s 271us/sample - loss: 6.6683 - mae: 1.7366 - mse: 6.6683 - val_loss: 9.1396 - val_mae: 2.2501 - val_mse: 9.1396\n",
"354/354 [==============================] - 0s 270us/sample - loss: 6.9384 - mae: 1.8391 - mse: 6.9384 - val_loss: 7.4141 - val_mae: 2.1386 - val_mse: 7.4141\n",
"354/354 [==============================] - 0s 300us/sample - loss: 6.9351 - mae: 1.8344 - mse: 6.9351 - val_loss: 7.3261 - val_mae: 2.0522 - val_mse: 7.3261\n",
"354/354 [==============================] - 0s 284us/sample - loss: 6.7056 - mae: 1.7948 - mse: 6.7056 - val_loss: 7.3072 - val_mae: 2.1075 - val_mse: 7.3072\n",
"354/354 [==============================] - 0s 264us/sample - loss: 6.6938 - mae: 1.7974 - mse: 6.6938 - val_loss: 7.3337 - val_mae: 2.0619 - val_mse: 7.3337\n",
"354/354 [==============================] - 0s 283us/sample - loss: 6.7406 - mae: 1.7902 - mse: 6.7406 - val_loss: 7.4228 - val_mae: 2.0519 - val_mse: 7.4228\n",
"354/354 [==============================] - 0s 277us/sample - loss: 6.6023 - mae: 1.7861 - mse: 6.6023 - val_loss: 7.4967 - val_mae: 2.0789 - val_mse: 7.4967\n",
"354/354 [==============================] - 0s 280us/sample - loss: 6.5556 - mae: 1.7931 - mse: 6.5556 - val_loss: 8.8609 - val_mae: 2.2274 - val_mse: 8.8609\n",
"354/354 [==============================] - 0s 283us/sample - loss: 6.5342 - mae: 1.7615 - mse: 6.5342 - val_loss: 7.0807 - val_mae: 2.0193 - val_mse: 7.0807\n",
"354/354 [==============================] - 0s 277us/sample - loss: 6.3153 - mae: 1.7554 - mse: 6.3153 - val_loss: 10.0514 - val_mae: 2.4058 - val_mse: 10.0514\n",
"354/354 [==============================] - 0s 263us/sample - loss: 6.3406 - mae: 1.7480 - mse: 6.3406 - val_loss: 7.2677 - val_mae: 2.0915 - val_mse: 7.2677\n",
"354/354 [==============================] - 0s 263us/sample - loss: 6.3339 - mae: 1.7520 - mse: 6.3339 - val_loss: 7.4025 - val_mae: 2.0862 - val_mse: 7.4025\n",
"354/354 [==============================] - 0s 266us/sample - loss: 6.1741 - mae: 1.7241 - mse: 6.1741 - val_loss: 7.6168 - val_mae: 2.0796 - val_mse: 7.6168\n",
"354/354 [==============================] - 0s 282us/sample - loss: 6.3003 - mae: 1.7317 - mse: 6.3003 - val_loss: 8.5449 - val_mae: 2.2191 - val_mse: 8.5449\n",
"354/354 [==============================] - 0s 286us/sample - loss: 6.1985 - mae: 1.7406 - mse: 6.1985 - val_loss: 7.3762 - val_mae: 2.1128 - val_mse: 7.3762\n",
"354/354 [==============================] - 0s 292us/sample - loss: 6.2082 - mae: 1.6940 - mse: 6.2082 - val_loss: 7.7671 - val_mae: 2.1689 - val_mse: 7.7671\n",
"354/354 [==============================] - 0s 287us/sample - loss: 6.0380 - mae: 1.7192 - mse: 6.0380 - val_loss: 8.2837 - val_mae: 2.1724 - val_mse: 8.2837\n",
"354/354 [==============================] - 0s 286us/sample - loss: 5.9283 - mae: 1.6645 - mse: 5.9283 - val_loss: 7.6387 - val_mae: 2.0571 - val_mse: 7.6387\n",
"354/354 [==============================] - 0s 282us/sample - loss: 6.0571 - mae: 1.7451 - mse: 6.0570 - val_loss: 7.1951 - val_mae: 2.0476 - val_mse: 7.1951\n",
"354/354 [==============================] - 0s 277us/sample - loss: 5.9782 - mae: 1.7078 - mse: 5.9782 - val_loss: 8.0985 - val_mae: 2.2334 - val_mse: 8.0985\n",
"354/354 [==============================] - 0s 255us/sample - loss: 5.9666 - mae: 1.7308 - mse: 5.9666 - val_loss: 7.2550 - val_mae: 2.0268 - val_mse: 7.2550\n",
"354/354 [==============================] - 0s 282us/sample - loss: 5.7723 - mae: 1.6568 - mse: 5.7723 - val_loss: 7.5226 - val_mae: 2.1315 - val_mse: 7.5226\n",
"354/354 [==============================] - 0s 273us/sample - loss: 5.9548 - mae: 1.7018 - mse: 5.9548 - val_loss: 8.1623 - val_mae: 2.1547 - val_mse: 8.1623\n",
"354/354 [==============================] - 0s 305us/sample - loss: 5.7479 - mae: 1.6986 - mse: 5.7479 - val_loss: 7.5925 - val_mae: 2.1085 - val_mse: 7.5925\n",
"354/354 [==============================] - 0s 285us/sample - loss: 5.6598 - mae: 1.6206 - mse: 5.6598 - val_loss: 7.8349 - val_mae: 2.1050 - val_mse: 7.8349\n",
"354/354 [==============================] - 0s 274us/sample - loss: 5.5519 - mae: 1.6524 - mse: 5.5519 - val_loss: 7.9134 - val_mae: 2.0905 - val_mse: 7.9134\n",
"354/354 [==============================] - 0s 275us/sample - loss: 5.6195 - mae: 1.6014 - mse: 5.6195 - val_loss: 7.7187 - val_mae: 2.0785 - val_mse: 7.7187\n",
"354/354 [==============================] - 0s 267us/sample - loss: 5.7689 - mae: 1.6537 - mse: 5.7689 - val_loss: 7.2061 - val_mae: 2.0279 - val_mse: 7.2061\n",
"354/354 [==============================] - 0s 281us/sample - loss: 5.5614 - mae: 1.6297 - mse: 5.5614 - val_loss: 7.4361 - val_mae: 2.0583 - val_mse: 7.4361\n",
"354/354 [==============================] - 0s 286us/sample - loss: 5.4860 - mae: 1.6497 - mse: 5.4860 - val_loss: 7.2326 - val_mae: 2.0581 - val_mse: 7.2326\n",
"354/354 [==============================] - 0s 273us/sample - loss: 5.4502 - mae: 1.6353 - mse: 5.4502 - val_loss: 7.1318 - val_mae: 2.0564 - val_mse: 7.1318\n",
"354/354 [==============================] - 0s 271us/sample - loss: 5.3434 - mae: 1.5915 - mse: 5.3434 - val_loss: 7.2311 - val_mae: 2.0256 - val_mse: 7.2311\n",
"354/354 [==============================] - 0s 280us/sample - loss: 5.2863 - mae: 1.5807 - mse: 5.2863 - val_loss: 6.9631 - val_mae: 2.0157 - val_mse: 6.9631\n",
"354/354 [==============================] - 0s 267us/sample - loss: 5.4799 - mae: 1.6296 - mse: 5.4799 - val_loss: 7.2817 - val_mae: 2.0441 - val_mse: 7.2817\n"
"source": [
"history = model.fit(x_train,\n",
" y_train,\n",
" epochs = 100,\n",
" batch_size = 10,\n",
" validation_data = (x_test, y_test))"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Step 6 - Evaluate\n",
"### 6.1 - Model evaluation\n",
"MAE = Mean Absolute Error (between the labels and predictions) \n",
"A mae equal to 3 represents an average error in prediction of $3k."
]
},
{
"cell_type": "code",
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"x_test / loss : 7.2817\n",
"x_test / mae : 2.0441\n",
"x_test / mse : 7.2817\n"
"source": [
"score = model.evaluate(x_test, y_test, verbose=0)\n",
"\n",
"print('x_test / loss : {:5.4f}'.format(score[0]))\n",
"print('x_test / mae : {:5.4f}'.format(score[1]))\n",
"print('x_test / mse : {:5.4f}'.format(score[2]))"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"What was the best result during our training ?"
]
},
{
"cell_type": "code",
1083
1084
1085
1086
1087
1088
1089
1090
1091
1092
1093
1094
1095
1096
1097
1098
1099
1100
1101
1102
1103
1104
1105
1106
1107
1108
1109
1110
1111
1112
1113
1114
1115
1116
1117
1118
1119
1120
1121
1122
1123
1124
"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>loss</th>\n",
" <th>mae</th>\n",
" <th>mse</th>\n",
" <th>val_loss</th>\n",
" <th>val_mae</th>\n",
" <th>val_mse</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>count</th>\n",
" <td>100.000000</td>\n",
" <td>100.000000</td>\n",
" <td>100.000000</td>\n",
" <td>100.000000</td>\n",
" <td>100.000000</td>\n",
" <td>100.000000</td>\n",
" </tr>\n",
" <tr>\n",
" <th>mean</th>\n",
" <td>17.179068</td>\n",
" <td>2.400313</td>\n",
" <td>17.179068</td>\n",
" <td>13.234228</td>\n",
" <td>2.480448</td>\n",
" <td>13.234228</td>\n",
" </tr>\n",
" <tr>\n",
" <th>std</th>\n",
" <td>52.668984</td>\n",
" <td>2.178764</td>\n",
" <td>52.668981</td>\n",
" <td>34.564052</td>\n",
" <td>1.615198</td>\n",
" <td>34.564051</td>\n",
" </tr>\n",
" <tr>\n",
" <th>min</th>\n",
" <td>5.286268</td>\n",
" <td>1.580696</td>\n",
" <td>5.286269</td>\n",
" <td>6.963072</td>\n",
" <td>2.015736</td>\n",
" <td>6.963071</td>\n",
" </tr>\n",
" <tr>\n",
" <th>25%</th>\n",
" <td>6.485838</td>\n",
" <td>1.754565</td>\n",
" <td>6.485837</td>\n",
" <td>7.585306</td>\n",
" <td>2.103745</td>\n",
" <td>7.585306</td>\n",
" </tr>\n",
" <tr>\n",
" <th>50%</th>\n",
" <td>8.155239</td>\n",
" <td>1.944527</td>\n",
" <td>8.155240</td>\n",
" <td>8.112818</td>\n",
" <td>2.179680</td>\n",
" <td>8.112819</td>\n",
" </tr>\n",
" <tr>\n",
" <th>75%</th>\n",
" <td>11.055998</td>\n",
" <td>2.240327</td>\n",
" <td>11.055998</td>\n",
" <td>9.240654</td>\n",
" <td>2.325178</td>\n",
" <td>9.240653</td>\n",
" </tr>\n",
" <tr>\n",
" <th>max</th>\n",
" <td>479.449512</td>\n",
" <td>19.834858</td>\n",
" <td>479.449463</td>\n",
" <td>339.469011</td>\n",
" <td>16.671797</td>\n",
" <td>339.468994</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"text/plain": [
" loss mae mse val_loss val_mae val_mse\n",
"count 100.000000 100.000000 100.000000 100.000000 100.000000 100.000000\n",
"mean 17.179068 2.400313 17.179068 13.234228 2.480448 13.234228\n",
"std 52.668984 2.178764 52.668981 34.564052 1.615198 34.564051\n",
"min 5.286268 1.580696 5.286269 6.963072 2.015736 6.963071\n",
"25% 6.485838 1.754565 6.485837 7.585306 2.103745 7.585306\n",
"50% 8.155239 1.944527 8.155240 8.112818 2.179680 8.112819\n",
"75% 11.055998 2.240327 11.055998 9.240654 2.325178 9.240653\n",
"max 479.449512 19.834858 479.449463 339.469011 16.671797 339.468994"
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"\n",
"df=pd.DataFrame(data=history.history)\n",
"df.describe()"
]
},
{
"cell_type": "code",
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"source": [
"print(\"min( val_mae ) : {:.4f}\".format( min(history.history[\"val_mae\"]) ) )"
]
},
{
"cell_type": "code",
"image/png": "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\n",
"text/plain": [
"<Figure size 576x432 with 1 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
},
{
"data": {
"image/png": "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\n",
"text/plain": [
"<Figure size 576x432 with 1 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
},
{
"data": {
"image/png": "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\n",
"text/plain": [
"<Figure size 576x432 with 1 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"ooo.plot_history(history, plot={'MSE' :['mse', 'val_mse'],\n",
" 'MAE' :['mae', 'val_mae'],\n",
" 'LOSS':['loss','val_loss']})"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Step 7 - Make a prediction\n",
"The data must be normalized with the parameters (mean, std) previously used."
"metadata": {},
"outputs": [],
"source": [
"my_data = [ 1.26425925, -0.48522739, 1.0436489 , -0.23112788, 1.37120745,\n",
" -2.14308942, 1.13489104, -1.06802005, 1.71189006, 1.57042287,\n",
" 0.77859951, 0.14769795, 2.7585581 ]\n",
"real_price = 10.4\n",
"\n",
"my_data=np.array(my_data).reshape(1,13)"
]
},
{
"cell_type": "code",
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Reality : 10.40 K$\n"
]
}
],
"source": [
"\n",
"predictions = model.predict( my_data )\n",
"print(\"Prédiction : {:.2f} K$\".format(predictions[0][0]))\n",
"print(\"Reality : {:.2f} K$\".format(real_price))"
]
},
"<img width=\"80px\" src=\"../fidle/img/00-Fidle-logo-01.svg\"></img>"
}
],
"metadata": {
"kernelspec": {
"display_name": "Python 3",
"language": "python",
"name": "python3"
},
"language_info": {
"codemirror_mode": {
"name": "ipython",
"version": 3
},
"file_extension": ".py",
"mimetype": "text/x-python",
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
}
},
"nbformat": 4,
"nbformat_minor": 4
}