Newer
Older
{
"cells": [
{
"cell_type": "markdown",
"metadata": {},
"source": [
"<!-- <img src=\"../fidle/img/00-Fidle-header-01.svg\" style=\"width:800\" /> -->\n",
"\n",
"Deep Neural Network (DNN) - BHPD dataset\n",
"========================================\n",
"\n",
"A very simple and classic example of **regression** :\n",
"## Objectives :\n",
"Predicts **housing prices** from a set of house features. \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",
"What we're going to do:\n",
"\n",
" - Retrieve data\n",
" - Preparing the data\n",
" - Build a model\n",
" - Train the model\n",
" - Evaluate the result\n"
]
},
"outputs": [
{
"data": {
"image/svg+xml": [
"<svg viewBox=\"0 0 319.4819 36.2319\" xmlns=\"http://www.w3.org/2000/svg\"><title>00-header-01</title><g data-name=\"Calque 2\" id=\"Calque_2\"><g data-name=\"Calque 4\" id=\"Calque_4\"><path d=\"M19.6212,13.4825a5.49,5.49,0,0,0,2.2409-.7517,2.75,2.75,0,0,1,1.0037-.3925A6.2169,6.2169,0,0,0,20.4184,5.353a7.2454,7.2454,0,0,0-5.0435-.8518,10.436,10.436,0,0,0-4.3281,2.2353c-.4328.3626-5.581,5.2428-7.7283,4.27C1.8658,10.3486,4.46,7.9537,3.27,5.7652a.0949.0949,0,0,0-.1584-.0105c-.6056.817-1.1976,1.7975-2.0041,1.3573A3.7988,3.7988,0,0,1,.1729,5.89.0941.0941,0,0,0,0,5.9434a9.9185,9.9185,0,0,0,2.4932,6.0532,15.0278,15.0278,0,0,0,10.339,5.3173c2.27.2261,7.6543-.49,9.8054-4.36a5.4574,5.4574,0,0,0-.5189.2577,6.04,6.04,0,0,1-2.448.8142c-.0748.0069-.1491.01-.2234.01a4.3218,4.3218,0,0,1-2.44-.9782.4573.4573,0,1,1,.3495-.4436l-.0023.0218A3.5637,3.5637,0,0,0,19.6212,13.4825ZM12.76,15.5084a8.3323,8.3323,0,0,1-1.9609.3562c-.4428,0-.627-.1255-.7147-.314-.2306-.4961.6005-1.2133,1.3378-1.7279a.2726.2726,0,0,1,.312.4472,4.4932,4.4932,0,0,0-1.1262,1.0351,5.352,5.352,0,0,0,2.0105-.3235.2728.2728,0,0,1,.1415.5269ZM19.0763,8.863a1.0412,1.0412,0,0,1,1.0109,1.0032.68.68,0,1,0-.6023.9942.7023.7023,0,0,0,.1263-.0126.9691.9691,0,0,1-.5349.1646,1.0763,1.0763,0,0,1,0-2.1494ZM15.5649,1.8843a.5453.5453,0,0,0,.2143.7407c.2638.1453.82-.1708,1.1567.3.1751.2449-.3665-1.11-.63-1.2554A.5449.5449,0,0,0,15.5649,1.8843Zm2.7777.0584c-.68.3984-.8055,2.0455-.63,1.8007a3.1,3.1,0,0,1,1.1567-.8456.5453.5453,0,0,0-.5264-.9551ZM17.6534.1266c-.3475.402-.11,1.4443-.0473,1.2532a2.216,2.216,0,0,1,.5595-.7875.3573.3573,0,0,0-.0087-.505A.3538.3538,0,0,0,17.6534.1266Z\" style=\"fill:#e12229\"/><path d=\"M1.2153,20.5943H4.63v.41H1.6972v2.7481H4.3837v.41H1.6972v3.3428H1.2153Z\" style=\"fill:#808285\"/><path d=\"M6.4355,20.5943v6.9111H5.9536V20.5943Z\" style=\"fill:#808285\"/><path d=\"M8.1171,20.6865a11.3714,11.3714,0,0,1,1.7637-.1435,3.7468,3.7468,0,0,1,2.7891.9433,3.269,3.269,0,0,1,.8613,2.3892,3.8066,3.8066,0,0,1-.9024,2.625A3.97,3.97,0,0,1,9.645,27.5567a14.7357,14.7357,0,0,1-1.5279-.0616Zm.482,6.4087a8.7069,8.7069,0,0,0,1.1176.0513,2.96,2.96,0,0,0,3.312-3.24c.01-1.7535-.9638-2.9532-3.1787-2.9532a7.3291,7.3291,0,0,0-1.2509.1026Z\" style=\"fill:#808285\"/><path d=\"M14.7524,20.5943h.4819v6.5009h3.0864v.41H14.7524Z\" style=\"fill:#808285\"/><path d=\"M22.5976,24.07H19.829v3.0249h3.0967v.41H19.3471V20.5943h3.4146v.41H19.829V23.66h2.7686Z\" style=\"fill:#808285\"/><path d=\"M39.1845,4.6616h5.874v1.26H40.6752V9.9678h4.064V11.21h-4.064v5.4126H39.1845Z\"/><path d=\"M53.5209,12.2749c0,3.2119-2.0053,4.5249-3.8506,4.5249-2.0942,0-3.727-1.6147-3.727-4.4184,0-2.9458,1.7568-4.5254,3.8511-4.5254C51.977,7.856,53.5209,9.542,53.5209,12.2749Zm-6.0512.0708c0,1.7393.8339,3.3184,2.2714,3.3184,1.4019,0,2.254-1.5972,2.254-3.354,0-1.42-.586-3.3-2.254-3.3C48.1083,9.01,47.47,10.8018,47.47,12.3457Z\"/><path d=\"M55.3456,10.5713c0-.9229-.0356-1.7749-.0708-2.5376h1.3306l.0532,1.5791h.0537A2.4529,2.4529,0,0,1,58.93,7.856a2.6759,2.6759,0,0,1,.3906.0356V9.3467a1.864,1.864,0,0,0-.4614-.0357,2.0646,2.0646,0,0,0-1.9521,1.9346,3.2178,3.2178,0,0,0-.0708.7451v4.6319H55.3456Z\"/><path d=\"M60.7211,10.3228c0-.9229-.0356-1.58-.0708-2.2891h1.313l.0889,1.2954h.0351A2.6985,2.6985,0,0,1,64.5541,7.856a2.3122,2.3122,0,0,1,2.2364,1.5971h.0351a3.1057,3.1057,0,0,1,.9405-1.0649,2.577,2.577,0,0,1,1.6684-.5322c1.1533,0,2.6084.7807,2.6084,3.5136v5.253H70.57V11.6182c0-1.5083-.4791-2.52-1.6685-2.52a1.8267,1.8267,0,0,0-1.668,1.3667,2.683,2.683,0,0,0-.1064.7807v5.377H65.6547V11.3345c0-1.2422-.48-2.2363-1.6152-2.2363a1.917,1.917,0,0,0-1.7388,1.5083,2.6343,2.6343,0,0,0-.1064.7631v5.253H60.7211Z\"/><path d=\"M78.747,16.6226l-.1245-1.0293h-.0532a2.7825,2.7825,0,0,1-2.36,1.2065A2.36,2.36,0,0,1,73.76,14.3335c0-2.0942,1.81-3.1767,4.72-3.1592v-.2129c0-.8339-.2305-1.9873-1.792-1.97a3.6276,3.6276,0,0,0-1.9878.5859l-.3369-1.0292a5.0217,5.0217,0,0,1,2.5908-.6924c2.36,0,3.0166,1.5971,3.0166,3.39V14.6a14.2132,14.2132,0,0,0,.1245,2.023Zm-.2485-4.4009c-1.3843-.0181-3.23.23-3.23,1.9521a1.314,1.314,0,0,0,1.331,1.49A1.8735,1.8735,0,0,0,78.4453,14.28a1.5848,1.5848,0,0,0,.0532-.4971Z\"/><path d=\"M84.0322,5.62V8.0337h2.0586V9.187H84.0322v4.7559c0,1.0825.32,1.5972,1.0825,1.5972a3.0043,3.0043,0,0,0,.7988-.0889l.0708,1.1357a3.3086,3.3086,0,0,1-1.2778.1953,2.044,2.044,0,0,1-1.5791-.6211,3.1748,3.1748,0,0,1-.5855-2.2006V9.187H81.2993V8.0337h1.2426V6.0283Z\"/><path d=\"M89.3369,5.6734a.894.894,0,0,1-.9405.94.8716.8716,0,0,1-.8872-.94.9142.9142,0,1,1,1.8277,0Zm-1.668,10.9492V8.0337h1.5083v8.5889Z\"/><path d=\"M98.581,12.2749c0,3.2119-2.0054,4.5249-3.8506,4.5249-2.0942,0-3.727-1.6147-3.727-4.4184,0-2.9458,1.7568-4.5254,3.851-4.5254C97.037,7.856,98.581,9.542,98.581,12.2749Zm-6.0513.0708c0,1.7393.834,3.3184,2.2715,3.3184,1.4019,0,2.2539-1.5972,2.2539-3.354,0-1.42-.5859-3.3-2.2539-3.3C93.1684,9.01,92.53,10.8018,92.53,12.3457Z\"/><path d=\"M100.4062,10.3228c0-.9229-.0357-1.58-.0708-2.2891h1.3306l.0712,1.2954h.0533a2.8836,2.8836,0,0,1,2.5732-1.4731c1.189,0,2.7329.7632,2.7329,3.46v5.3062h-1.4907V11.4942c0-1.2779-.4258-2.396-1.7393-2.396a1.9932,1.9932,0,0,0-1.8632,1.5439,2.9542,2.9542,0,0,0-.0889.7456v5.2349h-1.5083Z\"/><path d=\"M114.4921,4.6616v11.961h-1.4907V4.6616Z\"/><path d=\"M117.0815,10.3228c0-.9229-.0357-1.58-.0708-2.2891h1.3305l.0713,1.2954h.0533A2.8835,2.8835,0,0,1,121.039,7.856c1.189,0,2.7329.7632,2.7329,3.46v5.3062h-1.4907V11.4942c0-1.2779-.4263-2.396-1.7393-2.396a1.9934,1.9934,0,0,0-1.8633,1.5439,2.9592,2.9592,0,0,0-.0888.7456v5.2349h-1.5083Z\"/><path d=\"M127.8857,5.62V8.0337h2.0586V9.187h-2.0586v4.7559c0,1.0825.32,1.5972,1.0825,1.5972a3.0043,3.0043,0,0,0,.7988-.0889l.0708,1.1357a3.3083,3.3083,0,0,1-1.2778.1953,2.044,2.044,0,0,1-1.5791-.6211,3.1748,3.1748,0,0,1-.5855-2.2006V9.187h-1.2426V8.0337h1.2426V6.0283Z\"/><path d=\"M131.5224,10.5713c0-.9229-.0356-1.7749-.0708-2.5376h1.3306l.0532,1.5791h.0537a2.4529,2.4529,0,0,1,2.2178-1.7568,2.6759,2.6759,0,0,1,.3906.0356V9.3467a1.864,1.864,0,0,0-.4614-.0357,2.0648,2.0648,0,0,0-1.9522,1.9346,3.2233,3.2233,0,0,0-.0708.7451v4.6319h-1.4907Z\"/><path d=\"M143.73,12.2749c0,3.2119-2.0054,4.5249-3.8506,4.5249-2.0942,0-3.727-1.6147-3.727-4.4184,0-2.9458,1.7568-4.5254,3.8511-4.5254C142.186,7.856,143.73,9.542,143.73,12.2749Zm-6.0513.0708c0,1.7393.834,3.3184,2.2715,3.3184,1.4019,0,2.2539-1.5972,2.2539-3.354,0-1.42-.5859-3.3-2.2539-3.3C138.3173,9.01,137.6786,10.8018,137.6786,12.3457Z\"/><path d=\"M152.2988,4.1118V14.4575c0,.71.0351,1.5972.0708,2.1651h-1.3311l-.0708-1.3662h-.0532A2.7766,2.7766,0,0,1,148.3412,16.8c-1.8989,0-3.3364-1.7036-3.3364-4.3652,0-2.9282,1.6328-4.5786,3.4785-4.5786a2.4975,2.4975,0,0,1,2.2891,1.2246h.0356V4.1118Zm-1.4908,7.3467a4.0769,4.0769,0,0,0-.0532-.6387,2.0659,2.0659,0,0,0-1.97-1.7568c-1.4732,0-2.2539,1.4727-2.2539,3.3008,0,1.7744.7451,3.2119,2.2182,3.2119a2.0694,2.0694,0,0,0,1.9874-1.7393,2.4325,2.4325,0,0,0,.0712-.6386Z\"/><path d=\"M161.24,14.28c0,.9048.0356,1.668.0713,2.3423h-1.3135l-.0889-1.26h-.0351a2.896,2.896,0,0,1-2.5376,1.437c-1.4024,0-2.6978-.8691-2.6978-3.62V8.0337h1.4907v4.8975c0,1.5439.4258,2.6264,1.6861,2.6264a1.9727,1.9727,0,0,0,1.81-1.3486,2.6964,2.6964,0,0,0,.1241-.7983V8.0337H161.24Z\"/><path d=\"M169.1869,16.3384a5.0911,5.0911,0,0,1-2.165.4438c-2.36,0-3.94-1.686-3.94-4.3652a4.2057,4.2057,0,0,1,4.2592-4.543,4.4515,4.4515,0,0,1,1.8809.39l-.3369,1.1714a3.42,3.42,0,0,0-1.5615-.355c-1.7925,0-2.7154,1.5259-2.7154,3.2651,0,2.0054,1.1182,3.2119,2.6973,3.2119a3.8408,3.8408,0,0,0,1.6328-.355Z\"/><path d=\"M172.8754,5.62V8.0337h2.0586V9.187h-2.0586v4.7559c0,1.0825.32,1.5972,1.0825,1.5972a3.0052,3.0052,0,0,0,.7989-.0889l.0708,1.1357a3.31,3.31,0,0,1-1.2774.1953,2.0446,2.0446,0,0,1-1.58-.6211,3.1748,3.1748,0,0,1-.5854-2.2006V9.187H170.143V8.0337h1.2422V6.0283Z\"/><path d=\"M178.18,5.6734a.894.894,0,0,1-.94.94.8716.8716,0,0,1-.8872-.94.9142.9142,0,1,1,1.8276,0Zm-1.6679,10.9492V8.0337H178.02v8.5889Z\"/><path d=\"M187.4238,12.2749c0,3.2119-2.0054,4.5249-3.8506,4.5249-2.0943,0-3.7271-1.6147-3.7271-4.4184,0-2.9458,1.7569-4.5254,3.8511-4.5254C185.88,7.856,187.4238,9.542,187.4238,12.2749Zm-6.0513.0708c0,1.7393.834,3.3184,2.2715,3.3184,1.4018,0,2.2539-1.5972,2.2539-3.354,0-1.42-.586-3.3-2.2539-3.3C182.0112,9.01,181.3725,10.8018,181.3725,12.3457Z\"/><path d=\"M189.249,10.3228c0-.9229-.0357-1.58-.0708-2.2891h1.3305l.0713,1.2954h.0532a2.8837,2.8837,0,0,1,2.5733-1.4731c1.1889,0,2.7329.7632,2.7329,3.46v5.3062h-1.4907V11.4942c0-1.2779-.4258-2.396-1.7393-2.396a1.9934,1.9934,0,0,0-1.8633,1.5439,2.9592,2.9592,0,0,0-.0888.7456v5.2349H189.249Z\"/><path d=\"M206.14,16.6226l-.1245-1.0293h-.0532a2.7825,2.7825,0,0,1-2.36,1.2065,2.36,2.36,0,0,1-2.4487-2.4663c0-2.0942,1.81-3.1767,4.72-3.1592v-.2129c0-.8339-.23-1.9873-1.792-1.97a3.6273,3.6273,0,0,0-1.9878.5859l-.3369-1.0292a5.0217,5.0217,0,0,1,2.5908-.6924c2.36,0,3.0166,1.5971,3.0166,3.39V14.6a14.2132,14.2132,0,0,0,.1245,2.023Zm-.2485-4.4009c-1.3843-.0181-3.23.23-3.23,1.9521a1.314,1.314,0,0,0,1.331,1.49,1.8733,1.8733,0,0,0,1.8457-1.3838,1.5819,1.5819,0,0,0,.0533-.4971Z\"/><path d=\"M216.27,14.28c0,.9048.0356,1.668.0713,2.3423h-1.3135l-.0889-1.26h-.0351a2.896,2.896,0,0,1-2.5376,1.437c-1.4024,0-2.6978-.8691-2.6978-3.62V8.0337h1.4907v4.8975c0,1.5439.4258,2.6264,1.6861,2.6264a1.9728,1.9728,0,0,0,1.81-1.3486,2.6966,2.6966,0,0,0,.124-.7983V8.0337H216.27Z\"/><path d=\"M222.21,4.8213a16.8353,16.8353,0,0,1,2.8574-.248,5.9357,5.9357,0,0,1,4.2236,1.3305,5.6509,5.6509,0,0,1,1.668,4.4546,6.55,6.55,0,0,1-1.6328,4.7734,6.464,6.464,0,0,1-4.6846,1.58,19.1885,19.1885,0,0,1-2.4316-.1245Zm1.4907,10.6123a8.7023,8.7023,0,0,0,1.2422.0708c2.7686,0,4.4546-1.6147,4.4546-5.0928.0176-2.8925-1.3843-4.6318-4.2417-4.6318a7.5156,7.5156,0,0,0-1.4551.124Z\"/><path d=\"M233.76,12.5586c.0352,2.2715,1.2773,3.0523,2.6616,3.0523a5.0482,5.0482,0,0,0,2.0943-.4083l.2661,1.0826a6.2362,6.2362,0,0,1-2.5733.497c-2.4668,0-3.9043-1.7392-3.9043-4.33,0-2.6441,1.4375-4.5962,3.709-4.5962,2.4844,0,3.1944,2.2715,3.1944,3.9575a7.0326,7.0326,0,0,1-.0357.7451Zm4.01-1.0825c.018-1.2066-.479-2.52-1.899-2.52-1.3838,0-1.9873,1.4018-2.0937,2.52Z\"/><path d=\"M241.92,12.5586c.0352,2.2715,1.2774,3.0523,2.6617,3.0523a5.0477,5.0477,0,0,0,2.0942-.4083l.2661,1.0826a6.2357,6.2357,0,0,1-2.5732.497c-2.4668,0-3.9043-1.7392-3.9043-4.33,0-2.6441,1.4375-4.5962,3.709-4.5962,2.4843,0,3.1943,2.2715,3.1943,3.9575a7.0657,7.0657,0,0,1-.0356.7451Zm4.01-1.0825c.0181-1.2066-.479-2.52-1.8989-2.52-1.3838,0-1.9873,1.4018-2.0938,2.52Z\"/><path d=\"M249.1752,10.8018c0-1.1709-.0356-2.023-.0708-2.7681h1.3487l.0708,1.3486h.0356a2.9639,2.9639,0,0,1,2.68-1.5263c1.8989,0,3.3008,1.7036,3.3008,4.3833,0,3.1235-1.7217,4.5605-3.5318,4.5605a2.5779,2.5779,0,0,1-2.3066-1.2422h-.0356v4.543h-1.4908Zm1.4908,2.4311a2.5684,2.5684,0,0,0,.0708.6568,2.0816,2.0816,0,0,0,2.0053,1.7212c1.5083,0,2.2715-1.42,2.2715-3.3184,0-1.7393-.7451-3.2119-2.2358-3.2119a2.2068,2.2068,0,0,0-2.023,1.81,2.64,2.64,0,0,0-.0888.6387Z\"/><path d=\"M261.9125,4.6616h1.4908V15.3628h4.5961v1.26h-6.0869Z\"/><path d=\"M270.1806,12.5586c.0352,2.2715,1.2773,3.0523,2.6616,3.0523a5.0482,5.0482,0,0,0,2.0943-.4083l.2661,1.0826a6.2362,6.2362,0,0,1-2.5733.497c-2.4668,0-3.9043-1.7392-3.9043-4.33,0-2.6441,1.4375-4.5962,3.709-4.5962,2.4844,0,3.1944,2.2715,3.1944,3.9575a7.0326,7.0326,0,0,1-.0357.7451Zm4.01-1.0825c.018-1.2066-.479-2.52-1.899-2.52-1.3838,0-1.9873,1.4018-2.0937,2.52Z\"/><path d=\"M281.8012,16.6226l-.1245-1.0293h-.0532a2.7825,2.7825,0,0,1-2.36,1.2065,2.36,2.36,0,0,1-2.4487-2.4663c0-2.0942,1.81-3.1767,4.72-3.1592v-.2129c0-.8339-.2305-1.9873-1.792-1.97a3.6276,3.6276,0,0,0-1.9878.5859l-.3369-1.0292a5.0217,5.0217,0,0,1,2.5908-.6924c2.36,0,3.0166,1.5971,3.0166,3.39V14.6a14.2132,14.2132,0,0,0,.1245,2.023Zm-.2485-4.4009c-1.3843-.0181-3.23.23-3.23,1.9521a1.314,1.314,0,0,0,1.331,1.49,1.8733,1.8733,0,0,0,1.8457-1.3838,1.5819,1.5819,0,0,0,.0533-.4971Z\"/><path d=\"M285.3652,10.5713c0-.9229-.0357-1.7749-.0708-2.5376h1.3305l.0533,1.5791h.0537A2.4527,2.4527,0,0,1,288.95,7.856a2.6786,2.6786,0,0,1,.3907.0356V9.3467a1.8644,1.8644,0,0,0-.4615-.0357,2.0646,2.0646,0,0,0-1.9521,1.9346,3.2233,3.2233,0,0,0-.0708.7451v4.6319h-1.4907Z\"/><path d=\"M290.7407,10.3228c0-.9229-.0357-1.58-.0708-2.2891H292l.0713,1.2954h.0532a2.8837,2.8837,0,0,1,2.5733-1.4731c1.1889,0,2.7329.7632,2.7329,3.46v5.3062H295.94V11.4942c0-1.2779-.4263-2.396-1.7393-2.396a1.9934,1.9934,0,0,0-1.8633,1.5439,2.9592,2.9592,0,0,0-.0888.7456v5.2349h-1.5083Z\"/><path d=\"M301.456,5.6734a.894.894,0,0,1-.94.94.8716.8716,0,0,1-.8872-.94.9142.9142,0,1,1,1.8276,0Zm-1.668,10.9492V8.0337h1.5083v8.5889Z\"/><path d=\"M303.6733,10.3228c0-.9229-.0357-1.58-.0708-2.2891h1.33l.0713,1.2954h.0533a2.8835,2.8835,0,0,1,2.5732-1.4731c1.189,0,2.7329.7632,2.7329,3.46v5.3062H308.873V11.4942c0-1.2779-.4263-2.396-1.7393-2.396a1.9934,1.9934,0,0,0-1.8633,1.5439,2.9592,2.9592,0,0,0-.0888.7456v5.2349h-1.5083Z\"/><path d=\"M319.4819,8.0337c-.0357.603-.0708,1.3306-.0708,2.4487V15.416c0,2.0762-.3731,3.1587-1.1006,3.8687a4.0969,4.0969,0,0,1-2.8745.9936,4.9764,4.9764,0,0,1-2.5733-.6211l.355-1.1538a4.4965,4.4965,0,0,0,2.2534.586c1.4375,0,2.4668-.7808,2.4668-2.8926v-.9229h-.0356a2.65,2.65,0,0,1-2.4131,1.313c-1.9522,0-3.3189-1.7744-3.3189-4.2055,0-2.9815,1.7569-4.5254,3.5318-4.5254a2.5523,2.5523,0,0,1,2.36,1.3667h.0357l.0532-1.189ZM317.92,11.2813a2.8123,2.8123,0,0,0-.0712-.6748,2.0058,2.0058,0,0,0-1.9165-1.5435c-1.3311,0-2.2359,1.2773-2.2359,3.2471,0,1.8281.7984,3.1235,2.2183,3.1235a1.9791,1.9791,0,0,0,1.8989-1.5083,3.0974,3.0974,0,0,0,.1064-.7988Z\"/><line style=\"fill:#58595b\" x1=\"30.9665\" x2=\"30.9665\" y1=\"4.4557\" y2=\"27.3725\"/><path d=\"M39.5317,26.3086a1.7032,1.7032,0,0,0,.9038.273A.9567.9567,0,0,0,41.5,25.6084c0-.5254-.28-.8408-.8613-1.1069-.5884-.2451-1.1138-.6372-1.1138-1.3028a1.1968,1.1968,0,0,1,1.2886-1.1836,1.5059,1.5059,0,0,1,.84.21l-.1259.2729a1.3163,1.3163,0,0,0-.7422-.21.846.846,0,0,0-.9385.84c0,.5391.3008.7915.8965,1.0713.707.3506,1.0786.7217,1.0786,1.3731a1.2716,1.2716,0,0,1-1.4009,1.2885,1.85,1.85,0,0,1-1.0088-.2871Z\"/><path d=\"M45.2382,25.0967c0,1.2471-.7495,1.772-1.4287,1.772-.7495,0-1.373-.6231-1.373-1.73,0-1.1768.68-1.772,1.4218-1.772C44.65,23.3672,45.2382,24.0044,45.2382,25.0967Zm-2.4721.0283c0,.75.4062,1.4707,1.0644,1.4707s1.0786-.7212,1.0786-1.4917c0-.5884-.2734-1.4639-1.0649-1.4639C43.0742,23.64,42.7661,24.4526,42.7661,25.125Z\"/><path d=\"M46.0273,24.3755c0-.3081-.0137-.6445-.0279-.9385h.3013l.0142.6446h.0137a.9865.9865,0,0,1,.89-.7144.5785.5785,0,0,1,.1118.0068v.3223a.6493.6493,0,0,0-.126-.0073c-.455,0-.7631.4136-.8335.9106a2.2678,2.2678,0,0,0-.021.3081v1.8911h-.3222Z\"/><path d=\"M49.5566,26.7988l-.0425-.4482h-.021a1.08,1.08,0,0,1-.9385.5181.88.88,0,0,1-.9175-.9244c0-.7841.6656-1.2255,1.8492-1.2187v-.0981c0-.4063-.07-.9874-.7774-.9874a1.3173,1.3173,0,0,0-.7353.2242l-.0982-.2383a1.6034,1.6034,0,0,1,.8824-.2588c.8125,0,1.0507.5879,1.0507,1.2534v1.3936a5.7536,5.7536,0,0,0,.042.7846Zm-.07-1.8c-.5884-.0141-1.5059.07-1.5059.9034a.6064.6064,0,0,0,.6094.6933.8715.8715,0,0,0,.8686-.6655.7406.7406,0,0,0,.0279-.2031Z\"/><path d=\"M50.6894,23.437l.77,2.15c.0913.2588.168.5249.2241.7422h.0142c.063-.21.147-.4761.2309-.7563l.7217-2.1363h.3428l-.8472,2.3184a5.9218,5.9218,0,0,1-1.0576,2.1782,2.1343,2.1343,0,0,1-.56.3921l-.126-.273a1.7412,1.7412,0,0,0,.5605-.4135,2.848,2.848,0,0,0,.49-.7915.5422.5422,0,0,0,.042-.1607.501.501,0,0,0-.0352-.14l-1.1138-3.11Z\"/><path d=\"M55.22,26.7988l-.0425-.4482h-.021a1.08,1.08,0,0,1-.9385.5181.88.88,0,0,1-.9175-.9244c0-.7841.6656-1.2255,1.8492-1.2187v-.0981c0-.4063-.07-.9874-.7774-.9874a1.3173,1.3173,0,0,0-.7353.2242l-.0982-.2383a1.6033,1.6033,0,0,1,.8823-.2588c.8125,0,1.0508.5879,1.0508,1.2534v1.3936a5.7536,5.7536,0,0,0,.042.7846Zm-.07-1.8c-.5884-.0141-1.5059.07-1.5059.9034a.6064.6064,0,0,0,.6094.6933.8715.8715,0,0,0,.8686-.6655.7406.7406,0,0,0,.0279-.2031Z\"/><path d=\"M58.4179,25.1528l-.5185,1.646H57.57l1.5268-4.7207h.3154l1.5269,4.7207h-.33l-.5322-1.646Zm1.5689-.2729-.49-1.499a7.9831,7.9831,0,0,1-.2383-.91h-.021c-.0629.3081-.14.5879-.2309.9033L58.5087,24.88Z\"/><path d=\"M61.63,24.3755c0-.3081-.0137-.6445-.0278-.9385h.3012l.0142.6446h.0137a.9865.9865,0,0,1,.89-.7144.578.578,0,0,1,.1118.0068v.3223a.6482.6482,0,0,0-.1259-.0073c-.4551,0-.7632.4136-.8335.9106a2.2518,2.2518,0,0,0-.021.3081v1.8911H61.63Z\"/><path d=\"M63.9824,22.5054a.2576.2576,0,0,1-.2662.28.2536.2536,0,0,1-.2451-.28.2624.2624,0,0,1,.252-.28A.26.26,0,0,1,63.9824,22.5054Zm-.42,4.2934V23.437h.3223v3.3618Z\"/><path d=\"M66.5805,26.7988l-.042-.4482H66.517a1.08,1.08,0,0,1-.9384.5181.88.88,0,0,1-.9175-.9244c0-.7841.6655-1.2255,1.8491-1.2187v-.0981c0-.4063-.07-.9874-.7774-.9874a1.3175,1.3175,0,0,0-.7353.2242l-.0981-.2383a1.6028,1.6028,0,0,1,.8823-.2588c.8125,0,1.0508.5879,1.0508,1.2534v1.3936a5.7538,5.7538,0,0,0,.0419.7846Zm-.07-1.8c-.5884-.0141-1.5059.07-1.5059.9034a.6064.6064,0,0,0,.6094.6933.8712.8712,0,0,0,.8687-.6655.74.74,0,0,0,.0278-.2031Z\"/><path d=\"M67.706,26.3716a1.321,1.321,0,0,0,.6792.2173.6363.6363,0,0,0,.7217-.6377c0-.3428-.1822-.5532-.63-.7632-.4976-.231-.8057-.5112-.8057-.9316a.9042.9042,0,0,1,.9737-.8892,1.1913,1.1913,0,0,1,.6865.2031l-.1333.2661a.96.96,0,0,0-.5952-.1963.5632.5632,0,0,0-.6094.5674c0,.3291.1963.4761.6162.6866.4766.2168.8193.49.8193,1.0083a.9566.9566,0,0,1-1.0644.9594,1.3761,1.3761,0,0,1-.7773-.2241Z\"/><path d=\"M69.7993,27.6812a9.6153,9.6153,0,0,0,.3637-1.4849l.4273-.07a8.7994,8.7994,0,0,1-.5391,1.52Z\"/><path d=\"M74.7841,24.4526H73.0893v2.066h1.9048v.28H72.767V22.0781h2.1221v.28h-1.8v1.814h1.6948Z\"/><path d=\"M75.707,24.3755c0-.3081-.0137-.6445-.0279-.9385H75.98l.0142.6446h.0136a.9865.9865,0,0,1,.89-.7144.5785.5785,0,0,1,.1118.0068v.3223a.65.65,0,0,0-.126-.0073c-.4551,0-.7632.4136-.8335.9106a2.2678,2.2678,0,0,0-.021.3081v1.8911H75.707Z\"/><path d=\"M78.059,22.5054a.2576.2576,0,0,1-.2661.28.2535.2535,0,0,1-.2451-.28.2624.2624,0,0,1,.2519-.28A.26.26,0,0,1,78.059,22.5054Zm-.42,4.2934V23.437h.3223v3.3618Z\"/><path d=\"M81.0771,26.6655a1.81,1.81,0,0,1-.8472.1963,1.5145,1.5145,0,0,1-1.4712-1.7158,1.6208,1.6208,0,0,1,1.5762-1.7788,1.5149,1.5149,0,0,1,.7563.1821l-.1123.273a1.3787,1.3787,0,0,0-.686-.1753c-.8125,0-1.2046.7217-1.2046,1.4848,0,.89.49,1.45,1.19,1.45a1.5933,1.5933,0,0,0,.7144-.168Z\"/><path d=\"M86.8461,24.5508c-.0425-.7144-.0981-1.541-.0844-2.0732h-.0279c-.1469.5253-.3222,1.0717-.5674,1.7651l-.9033,2.5561H85.06l-.8477-2.48c-.2519-.7353-.434-1.3027-.56-1.8417h-.021c-.0073.5673-.042,1.3515-.0913,2.1362l-.126,2.185h-.3223l.3155-4.7207h.3711l.9106,2.6338c.2031.6162.3569,1.0713.4829,1.5547h.021c.1123-.4692.2661-.9106.4834-1.5478l.9248-2.6407H87l.2945,4.7207h-.3223Z\"/><path d=\"M89.9037,26.7988l-.0419-.4482H89.84a1.08,1.08,0,0,1-.9385.5181.88.88,0,0,1-.9175-.9244c0-.7841.6655-1.2255,1.8491-1.2187v-.0981c0-.4063-.07-.9874-.7773-.9874a1.3176,1.3176,0,0,0-.7354.2242l-.0981-.2383a1.6031,1.6031,0,0,1,.8823-.2588c.8125,0,1.0508.5879,1.0508,1.2534v1.3936a5.7376,5.7376,0,0,0,.042.7846Zm-.07-1.8c-.5883-.0141-1.5058.07-1.5058.9034a.6064.6064,0,0,0,.6093.6933.8712.8712,0,0,0,.8687-.6655.74.74,0,0,0,.0278-.2031Z\"/><path d=\"M91.162,21.8613h.3223v4.9375H91.162Z\"/><path d=\"M94.9648,21.8613v4.188c0,.2173.0137.5464.0278.75h-.2939l-.021-.5815h-.021a1.1046,1.1046,0,0,1-1.0508.6514c-.7212,0-1.2959-.6372-1.2959-1.7017,0-1.1484.63-1.8,1.352-1.8a1.0329,1.0329,0,0,1,.9595.5459h.0142V21.8613Zm-.3291,2.8853a2.1051,2.1051,0,0,0-.021-.2871A.9719.9719,0,0,0,93.69,23.64c-.6724,0-1.05.6656-1.05,1.4991,0,.7563.3218,1.4565,1.0224,1.4565a.9824.9824,0,0,0,.9454-.84,1.07,1.07,0,0,0,.0283-.2661Z\"/><path d=\"M98.5488,25.0967c0,1.2471-.7495,1.772-1.4287,1.772-.75,0-1.3731-.6231-1.3731-1.73,0-1.1768.68-1.772,1.4219-1.772C97.96,23.3672,98.5488,24.0044,98.5488,25.0967Zm-2.4722.0283c0,.75.4062,1.4707,1.0645,1.4707S98.22,25.8745,98.22,25.104c0-.5884-.2735-1.4639-1.065-1.4639C96.3847,23.64,96.0766,24.4526,96.0766,25.125Z\"/><path d=\"M99.3383,24.2354c0-.3433-.0137-.5391-.0278-.7984h.3013l.021.5464h.0141a1.1256,1.1256,0,0,1,1.0293-.6162c.3364,0,1.0508.189,1.0508,1.3237v2.1079h-.3223V24.7466c0-.5742-.1889-1.1-.8193-1.1a.9326.9326,0,0,0-.8828.75.966.966,0,0,0-.042.2944v2.1079h-.3223Z\"/><path d=\"M104.4,26.7988l-.0425-.4482h-.0209a1.08,1.08,0,0,1-.9385.5181.88.88,0,0,1-.9175-.9244c0-.7841.6655-1.2255,1.8491-1.2187v-.0981c0-.4063-.07-.9874-.7773-.9874a1.3176,1.3176,0,0,0-.7354.2242l-.0981-.2383a1.6031,1.6031,0,0,1,.8823-.2588c.8125,0,1.0508.5879,1.0508,1.2534v1.3936a5.7376,5.7376,0,0,0,.042.7846Zm-.07-1.8c-.5884-.0141-1.5058.07-1.5058.9034a.6064.6064,0,0,0,.6093.6933.8717.8717,0,0,0,.8687-.6655.74.74,0,0,0,.0278-.2031Z\"/><path d=\"M108.0688,21.8613v4.188c0,.2173.0137.5464.0278.75h-.2939l-.021-.5815h-.021a1.1046,1.1046,0,0,1-1.0508.6514c-.7212,0-1.2959-.6372-1.2959-1.7017,0-1.1484.63-1.8,1.3521-1.8a1.0329,1.0329,0,0,1,.9594.5459h.0142V21.8613Zm-.3291,2.8853a2.0309,2.0309,0,0,0-.0215-.2871.9713.9713,0,0,0-.9243-.8194c-.6724,0-1.05.6656-1.05,1.4991,0,.7563.3218,1.4565,1.0225,1.4565a.9824.9824,0,0,0,.9453-.84,1.07,1.07,0,0,0,.0283-.2661Z\"/><path d=\"M111.6528,25.0967c0,1.2471-.7495,1.772-1.4287,1.772-.75,0-1.3731-.6231-1.3731-1.73,0-1.1768.68-1.772,1.4219-1.772C111.0644,23.3672,111.6528,24.0044,111.6528,25.0967Zm-2.4722.0283c0,.75.4058,1.4707,1.0645,1.4707s1.0786-.7212,1.0786-1.4917c0-.5884-.2735-1.4639-1.0645-1.4639C109.4887,23.64,109.1806,24.4526,109.1806,25.125Z\"/><path d=\"M111.9316,27.6812a9.6038,9.6038,0,0,0,.3637-1.4849l.4273-.07a8.7994,8.7994,0,0,1-.5391,1.52Z\"/><path d=\"M115.768,22.0781h.3223v3.334c0,1.1-.5044,1.4566-1.1768,1.4566a1.5443,1.5443,0,0,1-.49-.084l.063-.273a1.0852,1.0852,0,0,0,.4131.0772c.5605,0,.8686-.2525.8686-1.2329Z\"/><path d=\"M117.1879,25.0547c0,1.1626.5532,1.5269,1.149,1.5269a1.5524,1.5524,0,0,0,.8051-.1748l.084.2519a1.8851,1.8851,0,0,1-.9311.2031c-.8965,0-1.4292-.7-1.4292-1.6948,0-1.1064.5673-1.8,1.3588-1.8.9737,0,1.1695.9663,1.1695,1.4844a1.7348,1.7348,0,0,1-.0069.2031Zm1.87-.2588c.0069-.5747-.2309-1.1558-.8754-1.1558-.6373,0-.9244.63-.98,1.1558Z\"/><path d=\"M121.83,26.7988l-.0425-.4482h-.021a1.08,1.08,0,0,1-.9384.5181.88.88,0,0,1-.9175-.9244c0-.7841.6655-1.2255,1.8491-1.2187v-.0981c0-.4063-.07-.9874-.7773-.9874a1.3176,1.3176,0,0,0-.7354.2242l-.0981-.2383a1.6028,1.6028,0,0,1,.8823-.2588c.8125,0,1.0508.5879,1.0508,1.2534v1.3936a5.7376,5.7376,0,0,0,.042.7846Zm-.07-1.8c-.5884-.0141-1.5059.07-1.5059.9034a.6064.6064,0,0,0,.6094.6933.8717.8717,0,0,0,.8687-.6655.74.74,0,0,0,.0278-.2031Z\"/><path d=\"M123.0888,24.2354c0-.3433-.0137-.5391-.0278-.7984h.3012l.021.5464h.0142a1.1256,1.1256,0,0,1,1.0293-.6162c.3364,0,1.0508.189,1.0508,1.3237v2.1079h-.3223V24.7466c0-.5742-.189-1.1-.8193-1.1a.9326.9326,0,0,0-.8828.75.966.966,0,0,0-.042.2944v2.1079h-.3223Z\"/><path d=\"M127.8422,24.7818v.28h-1.6528v-.28Z\"/><path d=\"M128.5839,22.0781h.3223v4.4478h1.8911v.2729h-2.2134Z\"/><path d=\"M133.6391,25.9722c0,.3222.0142.5815.0278.8266h-.2939l-.0283-.5254h-.0137a1.1574,1.1574,0,0,1-1.0156.5953c-.4624,0-1.03-.28-1.03-1.4078V23.437h.3222v1.9541c0,.6934.1822,1.1978.7847,1.1978a.9653.9653,0,0,0,.8755-.6514,1.4313,1.4313,0,0,0,.0488-.3574V23.437h.3223Z\"/><path d=\"M136.7465,26.6655a1.81,1.81,0,0,1-.8471.1963,1.5145,1.5145,0,0,1-1.4712-1.7158,1.6208,1.6208,0,0,1,1.5761-1.7788,1.5153,1.5153,0,0,1,.7564.1821l-.1123.273a1.3794,1.3794,0,0,0-.6861-.1753c-.8125,0-1.2045.7217-1.2045,1.4848,0,.89.49,1.45,1.19,1.45a1.5925,1.5925,0,0,0,.7143-.168Z\"/><path d=\"M138.88,22.1343a4.5191,4.5191,0,0,1,.9033-.0908,1.567,1.567,0,0,1,1.1416.3847,1.24,1.24,0,0,1,.3506.9317,1.3833,1.3833,0,0,1-.2944.9175,1.6368,1.6368,0,0,1-1.2954.54,2.0535,2.0535,0,0,1-.4834-.042v2.0239H138.88Zm.3223,2.3535a1.6865,1.6865,0,0,0,.49.0557,1.1055,1.1055,0,0,0,1.2539-1.1626c0-.6792-.4414-1.0576-1.1767-1.0576a2.5523,2.5523,0,0,0-.5674.0493Z\"/><path d=\"M143.5229,26.7988l-.042-.4482h-.0215a1.08,1.08,0,0,1-.9385.5181.88.88,0,0,1-.9174-.9244c0-.7841.6655-1.2255,1.8491-1.2187v-.0981c0-.4063-.07-.9874-.7774-.9874a1.3173,1.3173,0,0,0-.7353.2242l-.0982-.2383a1.6034,1.6034,0,0,1,.8824-.2588c.8125,0,1.0507.5879,1.0507,1.2534v1.3936a5.7536,5.7536,0,0,0,.042.7846Zm-.07-1.8c-.5884-.0141-1.5059.07-1.5059.9034a.6064.6064,0,0,0,.6094.6933.871.871,0,0,0,.8686-.6655.7406.7406,0,0,0,.0279-.2031Z\"/><path d=\"M144.7812,24.3755c0-.3081-.0137-.6445-.0278-.9385h.3012l.0142.6446h.0137a.9865.9865,0,0,1,.89-.7144.578.578,0,0,1,.1118.0068v.3223a.6488.6488,0,0,0-.126-.0073c-.455,0-.7631.4136-.8335.9106a2.268,2.268,0,0,0-.0209.3081v1.8911h-.3223Z\"/><path d=\"M149.144,25.0967c0,1.2471-.75,1.772-1.4287,1.772-.75,0-1.3731-.6231-1.3731-1.73,0-1.1768.68-1.772,1.4219-1.772C148.5556,23.3672,149.144,24.0044,149.144,25.0967Zm-2.4722.0283c0,.75.4058,1.4707,1.0645,1.4707s1.0786-.7212,1.0786-1.4917c0-.5884-.2735-1.4639-1.0645-1.4639C146.98,23.64,146.6718,24.4526,146.6718,25.125Z\"/><path d=\"M152.2656,25.9722c0,.3222.0141.5815.0278.8266h-.294l-.0283-.5254h-.0136a1.1575,1.1575,0,0,1-1.0157.5953c-.4624,0-1.03-.28-1.03-1.4078V23.437h.3223v1.9541c0,.6934.1821,1.1978.7847,1.1978a.9654.9654,0,0,0,.8755-.6514,1.4313,1.4313,0,0,0,.0488-.3574V23.437h.3223Z\"/><path d=\"M153.7485,22.4917v.9453h.8618v.2661h-.8618v2.22c0,.434.1333.6655.4482.6655a.9507.9507,0,0,0,.33-.0493l.042.2524a1.0879,1.0879,0,0,1-.42.07.6636.6636,0,0,1-.5391-.2241,1.2232,1.2232,0,0,1-.1894-.7915V23.7031h-.5181V23.437h.5181v-.8335Z\"/><path d=\"M155.2739,23.437l.77,2.15c.0913.2588.1679.5249.2241.7422h.0142c.0629-.21.1469-.4761.2309-.7563l.7217-2.1363h.3428l-.8472,2.3184a5.9218,5.9218,0,0,1-1.0576,2.1782,2.1326,2.1326,0,0,1-.5606.3921l-.1259-.273a1.7423,1.7423,0,0,0,.5605-.4135,2.85,2.85,0,0,0,.49-.7915.539.539,0,0,0,.042-.1607.5.5,0,0,0-.0351-.14l-1.1138-3.11Z\"/><path d=\"M160.9238,24.7818v.28h-1.6529v-.28Z\"/><path d=\"M165.88,26.6587a2.5779,2.5779,0,0,1-1.0854.2031c-1.0225,0-2.003-.6865-2.003-2.3882a2.1666,2.1666,0,0,1,2.1363-2.4585,2.0588,2.0588,0,0,1,.9311.1753l-.105.28a1.9019,1.9019,0,0,0-.84-.1753c-1.0366,0-1.7861.7354-1.7861,2.1641,0,1.394.6933,2.1221,1.7583,2.1221a2.1036,2.1036,0,0,0,.9033-.189Z\"/><path d=\"M166.6142,26.7988V22.0781h.3081l1.5762,2.6827c.3359.5952.602,1.0927.8193,1.583l.0137-.0074c-.0488-.7143-.0557-1.2324-.0557-1.9887v-2.27h.315v4.7207h-.3081l-1.5621-2.6894a14.8094,14.8094,0,0,1-.8261-1.583l-.0142.0073c.042.6231.042,1.1343.042,1.9961v2.269Z\"/><path d=\"M170.6528,22.1411a4.1559,4.1559,0,0,1,.9033-.0976,1.572,1.572,0,0,1,1.17.3779,1.216,1.216,0,0,1,.3223.8545,1.2421,1.2421,0,0,1-.8828,1.2329v.0137c.3784.1123.6025.4692.7143,1.0434a6.0279,6.0279,0,0,0,.3223,1.2329h-.336a6.8731,6.8731,0,0,1-.2871-1.1626c-.1333-.6792-.4135-.98-1.0087-1.0014h-.5953v2.164h-.3222Zm.3222,2.2344h.6026a1.0323,1.0323,0,0,0,1.1416-1.0435c0-.6933-.4483-1.0156-1.1768-1.0156a2.4091,2.4091,0,0,0-.5674.0562Z\"/><path d=\"M173.7607,26.3086a1.7032,1.7032,0,0,0,.9038.273.9567.9567,0,0,0,1.0644-.9732c0-.5254-.28-.8408-.8613-1.1069-.5884-.2451-1.1138-.6372-1.1138-1.3028a1.1968,1.1968,0,0,1,1.2886-1.1836,1.5066,1.5066,0,0,1,.84.21l-.126.2729a1.3163,1.3163,0,0,0-.7422-.21.846.846,0,0,0-.9385.84c0,.5391.3013.7915.8965,1.0713.707.3506,1.0786.7217,1.0786,1.3731a1.2716,1.2716,0,0,1-1.4009,1.2885,1.85,1.85,0,0,1-1.0088-.2871Z\"/><path d=\"M176.3574,27.0791l1.9892-5.0708h.3218l-2.0029,5.0708Z\"/><path d=\"M179.06,26.3086a1.7035,1.7035,0,0,0,.9038.273.9568.9568,0,0,0,1.0645-.9732c0-.5254-.28-.8408-.8614-1.1069-.5883-.2451-1.1137-.6372-1.1137-1.3028a1.1968,1.1968,0,0,1,1.2885-1.1836,1.5066,1.5066,0,0,1,.84.21l-.126.2729a1.3163,1.3163,0,0,0-.7422-.21.846.846,0,0,0-.9385.84c0,.5391.3013.7915.8965,1.0713.7071.3506,1.0786.7217,1.0786,1.3731a1.2715,1.2715,0,0,1-1.4008,1.2885,1.85,1.85,0,0,1-1.0088-.2871Z\"/><path d=\"M182.7138,25.1528l-.5185,1.646h-.3292l1.5269-4.7207h.3154l1.5269,4.7207h-.33l-.5322-1.646Zm1.5689-.2729-.49-1.499a7.9831,7.9831,0,0,1-.2383-.91h-.021c-.0629.3081-.14.5879-.2309.9033l-.4976,1.5059Z\"/><path d=\"M185.94,22.1411a4.1559,4.1559,0,0,1,.9033-.0976,1.5728,1.5728,0,0,1,1.17.3779,1.216,1.216,0,0,1,.3223.8545,1.2421,1.2421,0,0,1-.8828,1.2329v.0137c.3784.1123.6025.4692.7143,1.0434a6.0279,6.0279,0,0,0,.3223,1.2329h-.336a6.9252,6.9252,0,0,1-.2871-1.1626c-.1333-.6792-.4135-.98-1.0088-1.0014h-.5952v2.164H185.94Zm.3222,2.2344h.6021a1.0324,1.0324,0,0,0,1.1421-1.0435c0-.6933-.4483-1.0156-1.1768-1.0156a2.4091,2.4091,0,0,0-.5674.0562Z\"/><path d=\"M189.5107,22.0781v4.7207h-.3223V22.0781Z\"/><path d=\"M190.0424,27.0791l1.9893-5.0708h.3218l-2.003,5.0708Z\"/><path d=\"M192.8842,22.1411a5.6723,5.6723,0,0,1,1.0225-.0976,2.2048,2.2048,0,0,1,1.625.5459,2.3036,2.3036,0,0,1,.6094,1.7231,2.6818,2.6818,0,0,1-.5884,1.8491,2.3064,2.3064,0,0,1-1.7862.6724,7.2309,7.2309,0,0,1-.8823-.042Zm.3223,4.3848a5.0466,5.0466,0,0,0,.6025.0278c1.2676,0,1.9956-.7212,1.9956-2.2134a1.7565,1.7565,0,0,0-1.9116-2.017,4.1658,4.1658,0,0,0-.6865.0561Z\"/><path d=\"M198.9472,24.4526h-1.6948v2.066h1.9048v.28H196.93V22.0781h2.1221v.28h-1.8v1.814h1.6948Z\"/><path d=\"M200.9282,26.7988l-1.4219-4.7207h.3359l.7427,2.4654c.1958.6445.3853,1.289.5039,1.8423h.021a18.4779,18.4779,0,0,1,.5327-1.8423l.8052-2.4654h.3364l-1.5552,4.7207Z\"/><path d=\"M203.3212,22.0781h.3223v4.4478h1.8911v.2729h-2.2134Z\"/><path d=\"M209.28,24.4033c0,1.6953-.8891,2.4654-1.8628,2.4654-.9946,0-1.8-.833-1.8-2.3951,0-1.604.8335-2.4653,1.87-2.4653C208.4955,22.0083,209.28,22.8486,209.28,24.4033Zm-3.3266.0635c0,1.0151.49,2.1289,1.4917,2.1289,1.0088,0,1.499-1.0854,1.499-2.1782,0-.9663-.4414-2.1362-1.4917-2.1362C206.3945,22.2813,205.9531,23.416,205.9531,24.4668Z\"/><path d=\"M213.0805,26.6167a3.1243,3.1243,0,0,1-1.19.231,1.9629,1.9629,0,0,1-1.4781-.5743,2.5344,2.5344,0,0,1-.6162-1.8,2.1931,2.1931,0,0,1,2.2129-2.4443,2.35,2.35,0,0,1,.9595.189l-.105.2734a1.9674,1.9674,0,0,0-.8681-.1753c-1.086,0-1.8633.7354-1.8633,2.1153,0,1.4287.7353,2.1289,1.8071,2.1289a1.8881,1.8881,0,0,0,.8125-.1329V24.7256h-.98V24.46h1.31Z\"/><path d=\"M299.4156,24.5166a2.34,2.34,0,0,1-.3314,1.1954,2.3729,2.3729,0,0,1-.8906.8814,2.5139,2.5139,0,0,1-1.2323.3241,2.4774,2.4774,0,0,1-2.1333-1.2055,2.4051,2.4051,0,0,1,0-2.4009,2.4778,2.4778,0,0,1,2.1333-1.2056,2.514,2.514,0,0,1,1.2323.3242,2.4238,2.4238,0,0,1,1.222,2.0869Z\" style=\"fill:#fff;fill-rule:evenodd\"/><path d=\"M296.93,21.8421a2.7039,2.7039,0,0,1,1.9469.78,2.5739,2.5739,0,0,1,.59.8611,2.8679,2.8679,0,0,1,.1968,1.0333,2.5113,2.5113,0,0,1-.7767,1.864,2.7866,2.7866,0,0,1-1.9572.8,2.7706,2.7706,0,0,1-1.0356-.2026,2.8242,2.8242,0,0,1-.8906-.5875,2.6813,2.6813,0,0,1-.59-.8611,2.6075,2.6075,0,0,1-.2071-1.0131,2.62,2.62,0,0,1,.8077-1.8944,2.6158,2.6158,0,0,1,1.9158-.78Zm.01.4863a2.1413,2.1413,0,0,0-1.5741.6382,2.2164,2.2164,0,0,0-.4971.7092,2.1379,2.1379,0,0,0-.1657.8408,2.0414,2.0414,0,0,0,.1657.8206,2.11,2.11,0,0,0,.4971.7091,2.2379,2.2379,0,0,0,.7249.4762,2.1827,2.1827,0,0,0,.8492.162,2.22,2.22,0,0,0,.8491-.162,2.5124,2.5124,0,0,0,.7456-.4762,2.0468,2.0468,0,0,0,.6317-1.53,2.0674,2.0674,0,0,0-.1657-.8408,2.151,2.151,0,0,0-.4763-.7092,2.1985,2.1985,0,0,0-1.5844-.6382Zm-.0311,1.7425-.3728.1823a.3138.3138,0,0,0-.1346-.1621.3867.3867,0,0,0-.1657-.0506c-.2382,0-.3625.1519-.3625.4761a.5374.5374,0,0,0,.0932.3343.3058.3058,0,0,0,.2693.1317.3447.3447,0,0,0,.3417-.2229l.3314.1621a.7164.7164,0,0,1-.3.3039.7261.7261,0,0,1-.4142.1115.8075.8075,0,0,1-.59-.2128.85.85,0,0,1-.2278-.6078.8329.8329,0,0,1,.2278-.6078.7813.7813,0,0,1,.58-.2229.7608.7608,0,0,1,.7249.385Zm1.5741,0-.3625.1823a.3634.3634,0,0,0-.3107-.2127c-.2381,0-.3624.1519-.3624.4761a.5374.5374,0,0,0,.0932.3343.3055.3055,0,0,0,.2692.1317.3538.3538,0,0,0,.3418-.2229l.3417.1621a.8043.8043,0,0,1-.3107.3039.7257.7257,0,0,1-.4142.1115.7462.7462,0,0,1-.8077-.8206.7933.7933,0,0,1,.2278-.6078.86.86,0,0,1,1.2945.1621Z\" style=\"fill-rule:evenodd\"/><path d=\"M305.7222,24.5369a2.2338,2.2338,0,0,1-.321,1.1751,2.394,2.394,0,0,1-.88.8712,2.5353,2.5353,0,0,1-1.2116.3141,2.4653,2.4653,0,0,1-1.2012-.3141,2.4207,2.4207,0,0,1-.8906-.8712,2.3109,2.3109,0,0,1,0-2.35,2.4207,2.4207,0,0,1,.8906-.8712,2.4664,2.4664,0,0,1,1.2012-.3141,2.5364,2.5364,0,0,1,1.2116.3141,2.394,2.394,0,0,1,.88.8712,2.2339,2.2339,0,0,1,.321,1.1752Z\" style=\"fill:#fff;fill-rule:evenodd\"/><path d=\"M303.299,21.8421a2.6954,2.6954,0,0,1,1.9365.77,2.57,2.57,0,0,1,.7974,1.9045,2.4417,2.4417,0,0,1-.7871,1.864,2.6916,2.6916,0,0,1-1.9468.8,2.6591,2.6591,0,0,1-1.9262-.79,2.5074,2.5074,0,0,1-.8077-1.8742,2.5891,2.5891,0,0,1,.8077-1.9045,2.6884,2.6884,0,0,1,1.9262-.77Zm0,.4863a2.1579,2.1579,0,0,0-1.5741.6382,2.1228,2.1228,0,0,0-.6628,1.55,2.0626,2.0626,0,0,0,.6628,1.53,2.1609,2.1609,0,0,0,1.5741.6484,2.2346,2.2346,0,0,0,1.5947-.6585,1.9734,1.9734,0,0,0,.6421-1.53,2.0814,2.0814,0,0,0-.6524-1.54,2.1817,2.1817,0,0,0-1.5844-.6382Zm.7352,1.52v1.0941h-.3107v1.2967h-.8491V24.9421h-.3107V23.848a.1659.1659,0,0,1,.0518-.1216.1732.1732,0,0,1,.1242-.0506h1.1185a.1732.1732,0,0,1,.1242.0506.1659.1659,0,0,1,.0518.1216Zm-1.1184-.6889a.3832.3832,0,1,1,.3832.3748.3364.3364,0,0,1-.3832-.3748Z\" style=\"fill-rule:evenodd\"/><path d=\"M312.0909,24.5065a2.4053,2.4053,0,0,1-.3313,1.2055,2.43,2.43,0,0,1-.9113.8814,2.4875,2.4875,0,0,1-3.3656-.8814,2.4044,2.4044,0,0,1-.3314-1.2055,2.35,2.35,0,0,1,.3314-1.2056,2.4947,2.4947,0,0,1,3.3656-.8813,2.4294,2.4294,0,0,1,.9113.8813,2.3506,2.3506,0,0,1,.3313,1.2056Z\" style=\"fill:#fff;fill-rule:evenodd\"/><path d=\"M311.6042,22.6121a2.8071,2.8071,0,0,0-3.8627,0,2.59,2.59,0,0,0-.8077,1.9045,2.54,2.54,0,0,0,.8077,1.8742,2.6593,2.6593,0,0,0,1.9262.79,2.7648,2.7648,0,0,0,1.9572-.79,2.5238,2.5238,0,0,0,.7767-1.8742,2.57,2.57,0,0,0-.7974-1.9045Zm-.3417,3.4241a2.2174,2.2174,0,0,1-1.5948.6585,2.1844,2.1844,0,0,1-1.5741-.6484,2.0684,2.0684,0,0,1-.6627-1.54,2.313,2.313,0,0,1,.1139-.7092l.7249.3141h-.0518v.3242h.2589c0,.04-.01.081-.01.1317v.0709h-.2485v.3242h.3a1.2447,1.2447,0,0,0,.2589.5774,1.3542,1.3542,0,0,0,1.1081.5065,1.6053,1.6053,0,0,0,.7145-.1621l-.1035-.4964a1.5167,1.5167,0,0,1-.5282.1115.8223.8223,0,0,1-.59-.2229.8116.8116,0,0,1-.1449-.314h.9941l1.4084.6078a1.7712,1.7712,0,0,1-.3728.466Zm-1.7708-1.398h0Zm.8491-.2026h.0414v-.3242h-.7766l-.3107-.1317a.38.38,0,0,1,.0932-.152.6984.6984,0,0,1,.5592-.2431,1.5282,1.5282,0,0,1,.5074.1013l.1347-.5065a1.8267,1.8267,0,0,0-.6939-.1317,1.4134,1.4134,0,0,0-1.0563.4558c-.0517.0608-.1035.1419-.1553.2128l-.8906-.385a2.03,2.03,0,0,1,.3-.3647,2.1673,2.1673,0,0,1,1.5741-.6483,2.1905,2.1905,0,0,1,1.5844.6483,2.0557,2.0557,0,0,1,.6524,1.55,2.5764,2.5764,0,0,1-.0621.5673l-1.5016-.6483Z\" style=\"fill-rule:evenodd\"/><path d=\"M318.5115,24.4963a2.3507,2.3507,0,0,1-.3314,1.2056,2.4563,2.4563,0,0,1-.9113.8915,2.505,2.505,0,0,1-2.4647,0,2.4563,2.4563,0,0,1-.9113-.8915,2.3507,2.3507,0,0,1-.3314-1.2056,2.3868,2.3868,0,0,1,1.2427-2.097,2.5043,2.5043,0,0,1,2.4647,0,2.3868,2.3868,0,0,1,1.2427,2.097Z\" style=\"fill:#fff;fill-rule:evenodd\"/><path d=\"M316.0261,21.8421a2.6629,2.6629,0,0,1,1.9365.78,2.6493,2.6493,0,0,1,.0207,3.7686,2.73,2.73,0,0,1-1.9572.79,2.6527,2.6527,0,0,1-1.9158-.79,2.5074,2.5074,0,0,1-.8077-1.8742,2.567,2.567,0,0,1,.8077-1.8944,2.6494,2.6494,0,0,1,1.9158-.78Zm.01.4863A2.2213,2.2213,0,0,0,313.8,24.5166a2.0469,2.0469,0,0,0,.6628,1.53,2.1443,2.1443,0,0,0,1.5741.6484,2.194,2.194,0,0,0,1.5844-.6585,1.9817,1.9817,0,0,0,.642-1.52,2.0712,2.0712,0,0,0-.6524-1.55,2.1413,2.1413,0,0,0-1.574-.6382Zm1.0252,1.55v.466h-1.978v-.466Zm0,.8611v.4559h-1.978V24.74Z\" style=\"fill-rule:evenodd\"/><line style=\"fill:none;stroke:#e6e7e8;stroke-miterlimit:10;stroke-width:0.25px\" x1=\"0.9591\" x2=\"318.4111\" y1=\"36.1069\" y2=\"36.1069\"/></g></g></svg>"
],
"text/plain": [
"<IPython.core.display.SVG object>"
]
},
"metadata": {},
"output_type": "display_data"
"from IPython.display import Image, SVG\n",
"display(SVG(filename='../fidle/img/00-Fidle-header-01.svg'))"
{
"cell_type": "markdown",
"metadata": {},
"source": [
]
},
{
"cell_type": "code",
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
{
"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",
"\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.2.9\n",
"Run time : Monday 17 February 2020, 22:08:38\n",
"TensorFlow version : 2.0.0\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",
"\n",
"from IPython.display import display, Markdown\n",
"from importlib import reload\n",
"\n",
"sys.path.append('..')\n",
"import fidle.pwk as ooo\n",
"\n",
"ooo.init()\n",
"os.makedirs('./run/models', mode=0o750, exist_ok=True)"
]
},
{
"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_aac3e7e8_51c9_11ea_b50a_1f46721d93b7\" ><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_aac3e7e8_51c9_11ea_b50a_1f46721d93b7level0_row0\" class=\"row_heading level0 row0\" >0</th>\n",
" <td id=\"T_aac3e7e8_51c9_11ea_b50a_1f46721d93b7row0_col0\" class=\"data row0 col0\" >0.01</td>\n",
" <td id=\"T_aac3e7e8_51c9_11ea_b50a_1f46721d93b7row0_col1\" class=\"data row0 col1\" >18.00</td>\n",
" <td id=\"T_aac3e7e8_51c9_11ea_b50a_1f46721d93b7row0_col2\" class=\"data row0 col2\" >2.31</td>\n",
" <td id=\"T_aac3e7e8_51c9_11ea_b50a_1f46721d93b7row0_col3\" class=\"data row0 col3\" >0.00</td>\n",
" <td id=\"T_aac3e7e8_51c9_11ea_b50a_1f46721d93b7row0_col4\" class=\"data row0 col4\" >0.54</td>\n",
" <td id=\"T_aac3e7e8_51c9_11ea_b50a_1f46721d93b7row0_col5\" class=\"data row0 col5\" >6.58</td>\n",
" <td id=\"T_aac3e7e8_51c9_11ea_b50a_1f46721d93b7row0_col6\" class=\"data row0 col6\" >65.20</td>\n",
" <td id=\"T_aac3e7e8_51c9_11ea_b50a_1f46721d93b7row0_col7\" class=\"data row0 col7\" >4.09</td>\n",
" <td id=\"T_aac3e7e8_51c9_11ea_b50a_1f46721d93b7row0_col8\" class=\"data row0 col8\" >1.00</td>\n",
" <td id=\"T_aac3e7e8_51c9_11ea_b50a_1f46721d93b7row0_col9\" class=\"data row0 col9\" >296.00</td>\n",
" <td id=\"T_aac3e7e8_51c9_11ea_b50a_1f46721d93b7row0_col10\" class=\"data row0 col10\" >15.30</td>\n",
" <td id=\"T_aac3e7e8_51c9_11ea_b50a_1f46721d93b7row0_col11\" class=\"data row0 col11\" >396.90</td>\n",
" <td id=\"T_aac3e7e8_51c9_11ea_b50a_1f46721d93b7row0_col12\" class=\"data row0 col12\" >4.98</td>\n",
" <td id=\"T_aac3e7e8_51c9_11ea_b50a_1f46721d93b7row0_col13\" class=\"data row0 col13\" >24.00</td>\n",
" <th id=\"T_aac3e7e8_51c9_11ea_b50a_1f46721d93b7level0_row1\" class=\"row_heading level0 row1\" >1</th>\n",
" <td id=\"T_aac3e7e8_51c9_11ea_b50a_1f46721d93b7row1_col0\" class=\"data row1 col0\" >0.03</td>\n",
" <td id=\"T_aac3e7e8_51c9_11ea_b50a_1f46721d93b7row1_col1\" class=\"data row1 col1\" >0.00</td>\n",
" <td id=\"T_aac3e7e8_51c9_11ea_b50a_1f46721d93b7row1_col2\" class=\"data row1 col2\" >7.07</td>\n",
" <td id=\"T_aac3e7e8_51c9_11ea_b50a_1f46721d93b7row1_col3\" class=\"data row1 col3\" >0.00</td>\n",
" <td id=\"T_aac3e7e8_51c9_11ea_b50a_1f46721d93b7row1_col4\" class=\"data row1 col4\" >0.47</td>\n",
" <td id=\"T_aac3e7e8_51c9_11ea_b50a_1f46721d93b7row1_col5\" class=\"data row1 col5\" >6.42</td>\n",
" <td id=\"T_aac3e7e8_51c9_11ea_b50a_1f46721d93b7row1_col6\" class=\"data row1 col6\" >78.90</td>\n",
" <td id=\"T_aac3e7e8_51c9_11ea_b50a_1f46721d93b7row1_col7\" class=\"data row1 col7\" >4.97</td>\n",
" <td id=\"T_aac3e7e8_51c9_11ea_b50a_1f46721d93b7row1_col8\" class=\"data row1 col8\" >2.00</td>\n",
" <td id=\"T_aac3e7e8_51c9_11ea_b50a_1f46721d93b7row1_col9\" class=\"data row1 col9\" >242.00</td>\n",
" <td id=\"T_aac3e7e8_51c9_11ea_b50a_1f46721d93b7row1_col10\" class=\"data row1 col10\" >17.80</td>\n",
" <td id=\"T_aac3e7e8_51c9_11ea_b50a_1f46721d93b7row1_col11\" class=\"data row1 col11\" >396.90</td>\n",
" <td id=\"T_aac3e7e8_51c9_11ea_b50a_1f46721d93b7row1_col12\" class=\"data row1 col12\" >9.14</td>\n",
" <td id=\"T_aac3e7e8_51c9_11ea_b50a_1f46721d93b7row1_col13\" class=\"data row1 col13\" >21.60</td>\n",
" <th id=\"T_aac3e7e8_51c9_11ea_b50a_1f46721d93b7level0_row2\" class=\"row_heading level0 row2\" >2</th>\n",
" <td id=\"T_aac3e7e8_51c9_11ea_b50a_1f46721d93b7row2_col0\" class=\"data row2 col0\" >0.03</td>\n",
" <td id=\"T_aac3e7e8_51c9_11ea_b50a_1f46721d93b7row2_col1\" class=\"data row2 col1\" >0.00</td>\n",
" <td id=\"T_aac3e7e8_51c9_11ea_b50a_1f46721d93b7row2_col2\" class=\"data row2 col2\" >7.07</td>\n",
" <td id=\"T_aac3e7e8_51c9_11ea_b50a_1f46721d93b7row2_col3\" class=\"data row2 col3\" >0.00</td>\n",
" <td id=\"T_aac3e7e8_51c9_11ea_b50a_1f46721d93b7row2_col4\" class=\"data row2 col4\" >0.47</td>\n",
" <td id=\"T_aac3e7e8_51c9_11ea_b50a_1f46721d93b7row2_col5\" class=\"data row2 col5\" >7.18</td>\n",
" <td id=\"T_aac3e7e8_51c9_11ea_b50a_1f46721d93b7row2_col6\" class=\"data row2 col6\" >61.10</td>\n",
" <td id=\"T_aac3e7e8_51c9_11ea_b50a_1f46721d93b7row2_col7\" class=\"data row2 col7\" >4.97</td>\n",
" <td id=\"T_aac3e7e8_51c9_11ea_b50a_1f46721d93b7row2_col8\" class=\"data row2 col8\" >2.00</td>\n",
" <td id=\"T_aac3e7e8_51c9_11ea_b50a_1f46721d93b7row2_col9\" class=\"data row2 col9\" >242.00</td>\n",
" <td id=\"T_aac3e7e8_51c9_11ea_b50a_1f46721d93b7row2_col10\" class=\"data row2 col10\" >17.80</td>\n",
" <td id=\"T_aac3e7e8_51c9_11ea_b50a_1f46721d93b7row2_col11\" class=\"data row2 col11\" >392.83</td>\n",
" <td id=\"T_aac3e7e8_51c9_11ea_b50a_1f46721d93b7row2_col12\" class=\"data row2 col12\" >4.03</td>\n",
" <td id=\"T_aac3e7e8_51c9_11ea_b50a_1f46721d93b7row2_col13\" class=\"data row2 col13\" >34.70</td>\n",
" <th id=\"T_aac3e7e8_51c9_11ea_b50a_1f46721d93b7level0_row3\" class=\"row_heading level0 row3\" >3</th>\n",
" <td id=\"T_aac3e7e8_51c9_11ea_b50a_1f46721d93b7row3_col0\" class=\"data row3 col0\" >0.03</td>\n",
" <td id=\"T_aac3e7e8_51c9_11ea_b50a_1f46721d93b7row3_col1\" class=\"data row3 col1\" >0.00</td>\n",
" <td id=\"T_aac3e7e8_51c9_11ea_b50a_1f46721d93b7row3_col2\" class=\"data row3 col2\" >2.18</td>\n",
" <td id=\"T_aac3e7e8_51c9_11ea_b50a_1f46721d93b7row3_col3\" class=\"data row3 col3\" >0.00</td>\n",
" <td id=\"T_aac3e7e8_51c9_11ea_b50a_1f46721d93b7row3_col4\" class=\"data row3 col4\" >0.46</td>\n",
" <td id=\"T_aac3e7e8_51c9_11ea_b50a_1f46721d93b7row3_col5\" class=\"data row3 col5\" >7.00</td>\n",
" <td id=\"T_aac3e7e8_51c9_11ea_b50a_1f46721d93b7row3_col6\" class=\"data row3 col6\" >45.80</td>\n",
" <td id=\"T_aac3e7e8_51c9_11ea_b50a_1f46721d93b7row3_col7\" class=\"data row3 col7\" >6.06</td>\n",
" <td id=\"T_aac3e7e8_51c9_11ea_b50a_1f46721d93b7row3_col8\" class=\"data row3 col8\" >3.00</td>\n",
" <td id=\"T_aac3e7e8_51c9_11ea_b50a_1f46721d93b7row3_col9\" class=\"data row3 col9\" >222.00</td>\n",
" <td id=\"T_aac3e7e8_51c9_11ea_b50a_1f46721d93b7row3_col10\" class=\"data row3 col10\" >18.70</td>\n",
" <td id=\"T_aac3e7e8_51c9_11ea_b50a_1f46721d93b7row3_col11\" class=\"data row3 col11\" >394.63</td>\n",
" <td id=\"T_aac3e7e8_51c9_11ea_b50a_1f46721d93b7row3_col12\" class=\"data row3 col12\" >2.94</td>\n",
" <td id=\"T_aac3e7e8_51c9_11ea_b50a_1f46721d93b7row3_col13\" class=\"data row3 col13\" >33.40</td>\n",
" <th id=\"T_aac3e7e8_51c9_11ea_b50a_1f46721d93b7level0_row4\" class=\"row_heading level0 row4\" >4</th>\n",
" <td id=\"T_aac3e7e8_51c9_11ea_b50a_1f46721d93b7row4_col0\" class=\"data row4 col0\" >0.07</td>\n",
" <td id=\"T_aac3e7e8_51c9_11ea_b50a_1f46721d93b7row4_col1\" class=\"data row4 col1\" >0.00</td>\n",
" <td id=\"T_aac3e7e8_51c9_11ea_b50a_1f46721d93b7row4_col2\" class=\"data row4 col2\" >2.18</td>\n",
" <td id=\"T_aac3e7e8_51c9_11ea_b50a_1f46721d93b7row4_col3\" class=\"data row4 col3\" >0.00</td>\n",
" <td id=\"T_aac3e7e8_51c9_11ea_b50a_1f46721d93b7row4_col4\" class=\"data row4 col4\" >0.46</td>\n",
" <td id=\"T_aac3e7e8_51c9_11ea_b50a_1f46721d93b7row4_col5\" class=\"data row4 col5\" >7.15</td>\n",
" <td id=\"T_aac3e7e8_51c9_11ea_b50a_1f46721d93b7row4_col6\" class=\"data row4 col6\" >54.20</td>\n",
" <td id=\"T_aac3e7e8_51c9_11ea_b50a_1f46721d93b7row4_col7\" class=\"data row4 col7\" >6.06</td>\n",
" <td id=\"T_aac3e7e8_51c9_11ea_b50a_1f46721d93b7row4_col8\" class=\"data row4 col8\" >3.00</td>\n",
" <td id=\"T_aac3e7e8_51c9_11ea_b50a_1f46721d93b7row4_col9\" class=\"data row4 col9\" >222.00</td>\n",
" <td id=\"T_aac3e7e8_51c9_11ea_b50a_1f46721d93b7row4_col10\" class=\"data row4 col10\" >18.70</td>\n",
" <td id=\"T_aac3e7e8_51c9_11ea_b50a_1f46721d93b7row4_col11\" class=\"data row4 col11\" >396.90</td>\n",
" <td id=\"T_aac3e7e8_51c9_11ea_b50a_1f46721d93b7row4_col12\" class=\"data row4 col12\" >5.33</td>\n",
" <td id=\"T_aac3e7e8_51c9_11ea_b50a_1f46721d93b7row4_col13\" class=\"data row4 col13\" >36.20</td>\n",
" </tr>\n",
" </tbody></table>"
],
"text/plain": [
"<pandas.io.formats.style.Styler at 0x7f953611fb50>"
]
},
"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}\"))\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",
"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"
]
}
],
"source": [
"# ---- 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_aaccf306_51c9_11ea_b50a_1f46721d93b7\" ><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_aaccf306_51c9_11ea_b50a_1f46721d93b7level0_row0\" class=\"row_heading level0 row0\" >count</th>\n",
" <td id=\"T_aaccf306_51c9_11ea_b50a_1f46721d93b7row0_col0\" class=\"data row0 col0\" >354.00</td>\n",
" <td id=\"T_aaccf306_51c9_11ea_b50a_1f46721d93b7row0_col1\" class=\"data row0 col1\" >354.00</td>\n",
" <td id=\"T_aaccf306_51c9_11ea_b50a_1f46721d93b7row0_col2\" class=\"data row0 col2\" >354.00</td>\n",
" <td id=\"T_aaccf306_51c9_11ea_b50a_1f46721d93b7row0_col3\" class=\"data row0 col3\" >354.00</td>\n",
" <td id=\"T_aaccf306_51c9_11ea_b50a_1f46721d93b7row0_col4\" class=\"data row0 col4\" >354.00</td>\n",
" <td id=\"T_aaccf306_51c9_11ea_b50a_1f46721d93b7row0_col5\" class=\"data row0 col5\" >354.00</td>\n",
" <td id=\"T_aaccf306_51c9_11ea_b50a_1f46721d93b7row0_col6\" class=\"data row0 col6\" >354.00</td>\n",
" <td id=\"T_aaccf306_51c9_11ea_b50a_1f46721d93b7row0_col7\" class=\"data row0 col7\" >354.00</td>\n",
" <td id=\"T_aaccf306_51c9_11ea_b50a_1f46721d93b7row0_col8\" class=\"data row0 col8\" >354.00</td>\n",
" <td id=\"T_aaccf306_51c9_11ea_b50a_1f46721d93b7row0_col9\" class=\"data row0 col9\" >354.00</td>\n",
" <td id=\"T_aaccf306_51c9_11ea_b50a_1f46721d93b7row0_col10\" class=\"data row0 col10\" >354.00</td>\n",
" <td id=\"T_aaccf306_51c9_11ea_b50a_1f46721d93b7row0_col11\" class=\"data row0 col11\" >354.00</td>\n",
" <td id=\"T_aaccf306_51c9_11ea_b50a_1f46721d93b7row0_col12\" class=\"data row0 col12\" >354.00</td>\n",
" <th id=\"T_aaccf306_51c9_11ea_b50a_1f46721d93b7level0_row1\" class=\"row_heading level0 row1\" >mean</th>\n",
" <td id=\"T_aaccf306_51c9_11ea_b50a_1f46721d93b7row1_col0\" class=\"data row1 col0\" >3.72</td>\n",
" <td id=\"T_aaccf306_51c9_11ea_b50a_1f46721d93b7row1_col1\" class=\"data row1 col1\" >11.78</td>\n",
" <td id=\"T_aaccf306_51c9_11ea_b50a_1f46721d93b7row1_col2\" class=\"data row1 col2\" >11.07</td>\n",
" <td id=\"T_aaccf306_51c9_11ea_b50a_1f46721d93b7row1_col3\" class=\"data row1 col3\" >0.06</td>\n",
" <td id=\"T_aaccf306_51c9_11ea_b50a_1f46721d93b7row1_col4\" class=\"data row1 col4\" >0.55</td>\n",
" <td id=\"T_aaccf306_51c9_11ea_b50a_1f46721d93b7row1_col5\" class=\"data row1 col5\" >6.30</td>\n",
" <td id=\"T_aaccf306_51c9_11ea_b50a_1f46721d93b7row1_col6\" class=\"data row1 col6\" >69.19</td>\n",
" <td id=\"T_aaccf306_51c9_11ea_b50a_1f46721d93b7row1_col7\" class=\"data row1 col7\" >3.78</td>\n",
" <td id=\"T_aaccf306_51c9_11ea_b50a_1f46721d93b7row1_col8\" class=\"data row1 col8\" >9.85</td>\n",
" <td id=\"T_aaccf306_51c9_11ea_b50a_1f46721d93b7row1_col9\" class=\"data row1 col9\" >412.77</td>\n",
" <td id=\"T_aaccf306_51c9_11ea_b50a_1f46721d93b7row1_col10\" class=\"data row1 col10\" >18.47</td>\n",
" <td id=\"T_aaccf306_51c9_11ea_b50a_1f46721d93b7row1_col11\" class=\"data row1 col11\" >357.65</td>\n",
" <td id=\"T_aaccf306_51c9_11ea_b50a_1f46721d93b7row1_col12\" class=\"data row1 col12\" >12.59</td>\n",
" <th id=\"T_aaccf306_51c9_11ea_b50a_1f46721d93b7level0_row2\" class=\"row_heading level0 row2\" >std</th>\n",
" <td id=\"T_aaccf306_51c9_11ea_b50a_1f46721d93b7row2_col0\" class=\"data row2 col0\" >8.30</td>\n",
" <td id=\"T_aaccf306_51c9_11ea_b50a_1f46721d93b7row2_col1\" class=\"data row2 col1\" >23.59</td>\n",
" <td id=\"T_aaccf306_51c9_11ea_b50a_1f46721d93b7row2_col2\" class=\"data row2 col2\" >6.78</td>\n",
" <td id=\"T_aaccf306_51c9_11ea_b50a_1f46721d93b7row2_col3\" class=\"data row2 col3\" >0.24</td>\n",
" <td id=\"T_aaccf306_51c9_11ea_b50a_1f46721d93b7row2_col4\" class=\"data row2 col4\" >0.11</td>\n",
" <td id=\"T_aaccf306_51c9_11ea_b50a_1f46721d93b7row2_col5\" class=\"data row2 col5\" >0.71</td>\n",
" <td id=\"T_aaccf306_51c9_11ea_b50a_1f46721d93b7row2_col6\" class=\"data row2 col6\" >27.24</td>\n",
" <td id=\"T_aaccf306_51c9_11ea_b50a_1f46721d93b7row2_col7\" class=\"data row2 col7\" >2.08</td>\n",
" <td id=\"T_aaccf306_51c9_11ea_b50a_1f46721d93b7row2_col8\" class=\"data row2 col8\" >8.88</td>\n",
" <td id=\"T_aaccf306_51c9_11ea_b50a_1f46721d93b7row2_col9\" class=\"data row2 col9\" >171.88</td>\n",
" <td id=\"T_aaccf306_51c9_11ea_b50a_1f46721d93b7row2_col10\" class=\"data row2 col10\" >2.17</td>\n",
" <td id=\"T_aaccf306_51c9_11ea_b50a_1f46721d93b7row2_col11\" class=\"data row2 col11\" >90.85</td>\n",
" <td id=\"T_aaccf306_51c9_11ea_b50a_1f46721d93b7row2_col12\" class=\"data row2 col12\" >6.82</td>\n",
" <th id=\"T_aaccf306_51c9_11ea_b50a_1f46721d93b7level0_row3\" class=\"row_heading level0 row3\" >min</th>\n",
" <td id=\"T_aaccf306_51c9_11ea_b50a_1f46721d93b7row3_col0\" class=\"data row3 col0\" >0.01</td>\n",
" <td id=\"T_aaccf306_51c9_11ea_b50a_1f46721d93b7row3_col1\" class=\"data row3 col1\" >0.00</td>\n",
" <td id=\"T_aaccf306_51c9_11ea_b50a_1f46721d93b7row3_col2\" class=\"data row3 col2\" >0.74</td>\n",
" <td id=\"T_aaccf306_51c9_11ea_b50a_1f46721d93b7row3_col3\" class=\"data row3 col3\" >0.00</td>\n",
" <td id=\"T_aaccf306_51c9_11ea_b50a_1f46721d93b7row3_col4\" class=\"data row3 col4\" >0.39</td>\n",
" <td id=\"T_aaccf306_51c9_11ea_b50a_1f46721d93b7row3_col5\" class=\"data row3 col5\" >3.86</td>\n",
" <td id=\"T_aaccf306_51c9_11ea_b50a_1f46721d93b7row3_col6\" class=\"data row3 col6\" >6.00</td>\n",
" <td id=\"T_aaccf306_51c9_11ea_b50a_1f46721d93b7row3_col7\" class=\"data row3 col7\" >1.14</td>\n",
" <td id=\"T_aaccf306_51c9_11ea_b50a_1f46721d93b7row3_col8\" class=\"data row3 col8\" >1.00</td>\n",
" <td id=\"T_aaccf306_51c9_11ea_b50a_1f46721d93b7row3_col9\" class=\"data row3 col9\" >188.00</td>\n",
" <td id=\"T_aaccf306_51c9_11ea_b50a_1f46721d93b7row3_col10\" class=\"data row3 col10\" >12.60</td>\n",
" <td id=\"T_aaccf306_51c9_11ea_b50a_1f46721d93b7row3_col11\" class=\"data row3 col11\" >0.32</td>\n",
" <td id=\"T_aaccf306_51c9_11ea_b50a_1f46721d93b7row3_col12\" class=\"data row3 col12\" >1.73</td>\n",
" <th id=\"T_aaccf306_51c9_11ea_b50a_1f46721d93b7level0_row4\" class=\"row_heading level0 row4\" >25%</th>\n",
" <td id=\"T_aaccf306_51c9_11ea_b50a_1f46721d93b7row4_col0\" class=\"data row4 col0\" >0.08</td>\n",
" <td id=\"T_aaccf306_51c9_11ea_b50a_1f46721d93b7row4_col1\" class=\"data row4 col1\" >0.00</td>\n",
" <td id=\"T_aaccf306_51c9_11ea_b50a_1f46721d93b7row4_col2\" class=\"data row4 col2\" >5.15</td>\n",
" <td id=\"T_aaccf306_51c9_11ea_b50a_1f46721d93b7row4_col3\" class=\"data row4 col3\" >0.00</td>\n",
" <td id=\"T_aaccf306_51c9_11ea_b50a_1f46721d93b7row4_col4\" class=\"data row4 col4\" >0.45</td>\n",
" <td id=\"T_aaccf306_51c9_11ea_b50a_1f46721d93b7row4_col5\" class=\"data row4 col5\" >5.89</td>\n",
" <td id=\"T_aaccf306_51c9_11ea_b50a_1f46721d93b7row4_col6\" class=\"data row4 col6\" >47.45</td>\n",
" <td id=\"T_aaccf306_51c9_11ea_b50a_1f46721d93b7row4_col7\" class=\"data row4 col7\" >2.11</td>\n",
" <td id=\"T_aaccf306_51c9_11ea_b50a_1f46721d93b7row4_col8\" class=\"data row4 col8\" >4.00</td>\n",
" <td id=\"T_aaccf306_51c9_11ea_b50a_1f46721d93b7row4_col9\" class=\"data row4 col9\" >279.00</td>\n",
" <td id=\"T_aaccf306_51c9_11ea_b50a_1f46721d93b7row4_col10\" class=\"data row4 col10\" >17.40</td>\n",
" <td id=\"T_aaccf306_51c9_11ea_b50a_1f46721d93b7row4_col11\" class=\"data row4 col11\" >375.91</td>\n",
" <td id=\"T_aaccf306_51c9_11ea_b50a_1f46721d93b7row4_col12\" class=\"data row4 col12\" >7.28</td>\n",
" <th id=\"T_aaccf306_51c9_11ea_b50a_1f46721d93b7level0_row5\" class=\"row_heading level0 row5\" >50%</th>\n",
" <td id=\"T_aaccf306_51c9_11ea_b50a_1f46721d93b7row5_col0\" class=\"data row5 col0\" >0.25</td>\n",
" <td id=\"T_aaccf306_51c9_11ea_b50a_1f46721d93b7row5_col1\" class=\"data row5 col1\" >0.00</td>\n",
" <td id=\"T_aaccf306_51c9_11ea_b50a_1f46721d93b7row5_col2\" class=\"data row5 col2\" >9.79</td>\n",
" <td id=\"T_aaccf306_51c9_11ea_b50a_1f46721d93b7row5_col3\" class=\"data row5 col3\" >0.00</td>\n",
" <td id=\"T_aaccf306_51c9_11ea_b50a_1f46721d93b7row5_col4\" class=\"data row5 col4\" >0.54</td>\n",
" <td id=\"T_aaccf306_51c9_11ea_b50a_1f46721d93b7row5_col5\" class=\"data row5 col5\" >6.23</td>\n",
" <td id=\"T_aaccf306_51c9_11ea_b50a_1f46721d93b7row5_col6\" class=\"data row5 col6\" >77.95</td>\n",
" <td id=\"T_aaccf306_51c9_11ea_b50a_1f46721d93b7row5_col7\" class=\"data row5 col7\" >3.13</td>\n",
" <td id=\"T_aaccf306_51c9_11ea_b50a_1f46721d93b7row5_col8\" class=\"data row5 col8\" >5.00</td>\n",
" <td id=\"T_aaccf306_51c9_11ea_b50a_1f46721d93b7row5_col9\" class=\"data row5 col9\" >332.00</td>\n",
" <td id=\"T_aaccf306_51c9_11ea_b50a_1f46721d93b7row5_col10\" class=\"data row5 col10\" >18.90</td>\n",
" <td id=\"T_aaccf306_51c9_11ea_b50a_1f46721d93b7row5_col11\" class=\"data row5 col11\" >392.22</td>\n",
" <td id=\"T_aaccf306_51c9_11ea_b50a_1f46721d93b7row5_col12\" class=\"data row5 col12\" >11.39</td>\n",
" <th id=\"T_aaccf306_51c9_11ea_b50a_1f46721d93b7level0_row6\" class=\"row_heading level0 row6\" >75%</th>\n",
" <td id=\"T_aaccf306_51c9_11ea_b50a_1f46721d93b7row6_col0\" class=\"data row6 col0\" >3.85</td>\n",
" <td id=\"T_aaccf306_51c9_11ea_b50a_1f46721d93b7row6_col1\" class=\"data row6 col1\" >19.50</td>\n",
" <td id=\"T_aaccf306_51c9_11ea_b50a_1f46721d93b7row6_col2\" class=\"data row6 col2\" >18.10</td>\n",
" <td id=\"T_aaccf306_51c9_11ea_b50a_1f46721d93b7row6_col3\" class=\"data row6 col3\" >0.00</td>\n",
" <td id=\"T_aaccf306_51c9_11ea_b50a_1f46721d93b7row6_col4\" class=\"data row6 col4\" >0.62</td>\n",
" <td id=\"T_aaccf306_51c9_11ea_b50a_1f46721d93b7row6_col5\" class=\"data row6 col5\" >6.64</td>\n",
" <td id=\"T_aaccf306_51c9_11ea_b50a_1f46721d93b7row6_col6\" class=\"data row6 col6\" >93.97</td>\n",
" <td id=\"T_aaccf306_51c9_11ea_b50a_1f46721d93b7row6_col7\" class=\"data row6 col7\" >5.08</td>\n",
" <td id=\"T_aaccf306_51c9_11ea_b50a_1f46721d93b7row6_col8\" class=\"data row6 col8\" >24.00</td>\n",
" <td id=\"T_aaccf306_51c9_11ea_b50a_1f46721d93b7row6_col9\" class=\"data row6 col9\" >666.00</td>\n",
" <td id=\"T_aaccf306_51c9_11ea_b50a_1f46721d93b7row6_col10\" class=\"data row6 col10\" >20.20</td>\n",
" <td id=\"T_aaccf306_51c9_11ea_b50a_1f46721d93b7row6_col11\" class=\"data row6 col11\" >396.90</td>\n",
" <td id=\"T_aaccf306_51c9_11ea_b50a_1f46721d93b7row6_col12\" class=\"data row6 col12\" >16.57</td>\n",
" <th id=\"T_aaccf306_51c9_11ea_b50a_1f46721d93b7level0_row7\" class=\"row_heading level0 row7\" >max</th>\n",
" <td id=\"T_aaccf306_51c9_11ea_b50a_1f46721d93b7row7_col0\" class=\"data row7 col0\" >73.53</td>\n",
" <td id=\"T_aaccf306_51c9_11ea_b50a_1f46721d93b7row7_col1\" class=\"data row7 col1\" >100.00</td>\n",
" <td id=\"T_aaccf306_51c9_11ea_b50a_1f46721d93b7row7_col2\" class=\"data row7 col2\" >27.74</td>\n",
" <td id=\"T_aaccf306_51c9_11ea_b50a_1f46721d93b7row7_col3\" class=\"data row7 col3\" >1.00</td>\n",
" <td id=\"T_aaccf306_51c9_11ea_b50a_1f46721d93b7row7_col4\" class=\"data row7 col4\" >0.87</td>\n",
" <td id=\"T_aaccf306_51c9_11ea_b50a_1f46721d93b7row7_col5\" class=\"data row7 col5\" >8.78</td>\n",
" <td id=\"T_aaccf306_51c9_11ea_b50a_1f46721d93b7row7_col6\" class=\"data row7 col6\" >100.00</td>\n",
" <td id=\"T_aaccf306_51c9_11ea_b50a_1f46721d93b7row7_col7\" class=\"data row7 col7\" >10.71</td>\n",
" <td id=\"T_aaccf306_51c9_11ea_b50a_1f46721d93b7row7_col8\" class=\"data row7 col8\" >24.00</td>\n",
" <td id=\"T_aaccf306_51c9_11ea_b50a_1f46721d93b7row7_col9\" class=\"data row7 col9\" >711.00</td>\n",
" <td id=\"T_aaccf306_51c9_11ea_b50a_1f46721d93b7row7_col10\" class=\"data row7 col10\" >22.00</td>\n",
" <td id=\"T_aaccf306_51c9_11ea_b50a_1f46721d93b7row7_col11\" class=\"data row7 col11\" >396.90</td>\n",
" <td id=\"T_aaccf306_51c9_11ea_b50a_1f46721d93b7row7_col12\" class=\"data row7 col12\" >37.97</td>\n",
" </tr>\n",
" </tbody></table>"
],
"text/plain": [
"<pandas.io.formats.style.Styler at 0x7f953611f5d0>"
]
},
"metadata": {},
"output_type": "display_data"
},
{
"data": {
"text/html": [
"<style type=\"text/css\" >\n",
"</style><table id=\"T_aadc40b8_51c9_11ea_b50a_1f46721d93b7\" ><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_aadc40b8_51c9_11ea_b50a_1f46721d93b7level0_row0\" class=\"row_heading level0 row0\" >count</th>\n",
" <td id=\"T_aadc40b8_51c9_11ea_b50a_1f46721d93b7row0_col0\" class=\"data row0 col0\" >354.00</td>\n",
" <td id=\"T_aadc40b8_51c9_11ea_b50a_1f46721d93b7row0_col1\" class=\"data row0 col1\" >354.00</td>\n",
" <td id=\"T_aadc40b8_51c9_11ea_b50a_1f46721d93b7row0_col2\" class=\"data row0 col2\" >354.00</td>\n",
" <td id=\"T_aadc40b8_51c9_11ea_b50a_1f46721d93b7row0_col3\" class=\"data row0 col3\" >354.00</td>\n",
" <td id=\"T_aadc40b8_51c9_11ea_b50a_1f46721d93b7row0_col4\" class=\"data row0 col4\" >354.00</td>\n",
" <td id=\"T_aadc40b8_51c9_11ea_b50a_1f46721d93b7row0_col5\" class=\"data row0 col5\" >354.00</td>\n",
" <td id=\"T_aadc40b8_51c9_11ea_b50a_1f46721d93b7row0_col6\" class=\"data row0 col6\" >354.00</td>\n",
" <td id=\"T_aadc40b8_51c9_11ea_b50a_1f46721d93b7row0_col7\" class=\"data row0 col7\" >354.00</td>\n",
" <td id=\"T_aadc40b8_51c9_11ea_b50a_1f46721d93b7row0_col8\" class=\"data row0 col8\" >354.00</td>\n",
" <td id=\"T_aadc40b8_51c9_11ea_b50a_1f46721d93b7row0_col9\" class=\"data row0 col9\" >354.00</td>\n",
" <td id=\"T_aadc40b8_51c9_11ea_b50a_1f46721d93b7row0_col10\" class=\"data row0 col10\" >354.00</td>\n",
" <td id=\"T_aadc40b8_51c9_11ea_b50a_1f46721d93b7row0_col11\" class=\"data row0 col11\" >354.00</td>\n",
" <td id=\"T_aadc40b8_51c9_11ea_b50a_1f46721d93b7row0_col12\" class=\"data row0 col12\" >354.00</td>\n",
" <th id=\"T_aadc40b8_51c9_11ea_b50a_1f46721d93b7level0_row1\" class=\"row_heading level0 row1\" >mean</th>\n",
" <td id=\"T_aadc40b8_51c9_11ea_b50a_1f46721d93b7row1_col0\" class=\"data row1 col0\" >0.00</td>\n",
" <td id=\"T_aadc40b8_51c9_11ea_b50a_1f46721d93b7row1_col1\" class=\"data row1 col1\" >-0.00</td>\n",
" <td id=\"T_aadc40b8_51c9_11ea_b50a_1f46721d93b7row1_col2\" class=\"data row1 col2\" >0.00</td>\n",
" <td id=\"T_aadc40b8_51c9_11ea_b50a_1f46721d93b7row1_col3\" class=\"data row1 col3\" >-0.00</td>\n",
" <td id=\"T_aadc40b8_51c9_11ea_b50a_1f46721d93b7row1_col4\" class=\"data row1 col4\" >-0.00</td>\n",
" <td id=\"T_aadc40b8_51c9_11ea_b50a_1f46721d93b7row1_col5\" class=\"data row1 col5\" >0.00</td>\n",
" <td id=\"T_aadc40b8_51c9_11ea_b50a_1f46721d93b7row1_col6\" class=\"data row1 col6\" >0.00</td>\n",
" <td id=\"T_aadc40b8_51c9_11ea_b50a_1f46721d93b7row1_col7\" class=\"data row1 col7\" >0.00</td>\n",
" <td id=\"T_aadc40b8_51c9_11ea_b50a_1f46721d93b7row1_col8\" class=\"data row1 col8\" >0.00</td>\n",
" <td id=\"T_aadc40b8_51c9_11ea_b50a_1f46721d93b7row1_col9\" class=\"data row1 col9\" >0.00</td>\n",
" <td id=\"T_aadc40b8_51c9_11ea_b50a_1f46721d93b7row1_col10\" class=\"data row1 col10\" >0.00</td>\n",
" <td id=\"T_aadc40b8_51c9_11ea_b50a_1f46721d93b7row1_col11\" class=\"data row1 col11\" >0.00</td>\n",
" <td id=\"T_aadc40b8_51c9_11ea_b50a_1f46721d93b7row1_col12\" class=\"data row1 col12\" >-0.00</td>\n",
" <th id=\"T_aadc40b8_51c9_11ea_b50a_1f46721d93b7level0_row2\" class=\"row_heading level0 row2\" >std</th>\n",
" <td id=\"T_aadc40b8_51c9_11ea_b50a_1f46721d93b7row2_col0\" class=\"data row2 col0\" >1.00</td>\n",
" <td id=\"T_aadc40b8_51c9_11ea_b50a_1f46721d93b7row2_col1\" class=\"data row2 col1\" >1.00</td>\n",
" <td id=\"T_aadc40b8_51c9_11ea_b50a_1f46721d93b7row2_col2\" class=\"data row2 col2\" >1.00</td>\n",
" <td id=\"T_aadc40b8_51c9_11ea_b50a_1f46721d93b7row2_col3\" class=\"data row2 col3\" >1.00</td>\n",
" <td id=\"T_aadc40b8_51c9_11ea_b50a_1f46721d93b7row2_col4\" class=\"data row2 col4\" >1.00</td>\n",
" <td id=\"T_aadc40b8_51c9_11ea_b50a_1f46721d93b7row2_col5\" class=\"data row2 col5\" >1.00</td>\n",
" <td id=\"T_aadc40b8_51c9_11ea_b50a_1f46721d93b7row2_col6\" class=\"data row2 col6\" >1.00</td>\n",
" <td id=\"T_aadc40b8_51c9_11ea_b50a_1f46721d93b7row2_col7\" class=\"data row2 col7\" >1.00</td>\n",
" <td id=\"T_aadc40b8_51c9_11ea_b50a_1f46721d93b7row2_col8\" class=\"data row2 col8\" >1.00</td>\n",
" <td id=\"T_aadc40b8_51c9_11ea_b50a_1f46721d93b7row2_col9\" class=\"data row2 col9\" >1.00</td>\n",
" <td id=\"T_aadc40b8_51c9_11ea_b50a_1f46721d93b7row2_col10\" class=\"data row2 col10\" >1.00</td>\n",
" <td id=\"T_aadc40b8_51c9_11ea_b50a_1f46721d93b7row2_col11\" class=\"data row2 col11\" >1.00</td>\n",
" <td id=\"T_aadc40b8_51c9_11ea_b50a_1f46721d93b7row2_col12\" class=\"data row2 col12\" >1.00</td>\n",
" <th id=\"T_aadc40b8_51c9_11ea_b50a_1f46721d93b7level0_row3\" class=\"row_heading level0 row3\" >min</th>\n",
" <td id=\"T_aadc40b8_51c9_11ea_b50a_1f46721d93b7row3_col0\" class=\"data row3 col0\" >-0.45</td>\n",
" <td id=\"T_aadc40b8_51c9_11ea_b50a_1f46721d93b7row3_col1\" class=\"data row3 col1\" >-0.50</td>\n",
" <td id=\"T_aadc40b8_51c9_11ea_b50a_1f46721d93b7row3_col2\" class=\"data row3 col2\" >-1.52</td>\n",
" <td id=\"T_aadc40b8_51c9_11ea_b50a_1f46721d93b7row3_col3\" class=\"data row3 col3\" >-0.26</td>\n",
" <td id=\"T_aadc40b8_51c9_11ea_b50a_1f46721d93b7row3_col4\" class=\"data row3 col4\" >-1.49</td>\n",
" <td id=\"T_aadc40b8_51c9_11ea_b50a_1f46721d93b7row3_col5\" class=\"data row3 col5\" >-3.44</td>\n",
" <td id=\"T_aadc40b8_51c9_11ea_b50a_1f46721d93b7row3_col6\" class=\"data row3 col6\" >-2.32</td>\n",
" <td id=\"T_aadc40b8_51c9_11ea_b50a_1f46721d93b7row3_col7\" class=\"data row3 col7\" >-1.27</td>\n",
" <td id=\"T_aadc40b8_51c9_11ea_b50a_1f46721d93b7row3_col8\" class=\"data row3 col8\" >-1.00</td>\n",
" <td id=\"T_aadc40b8_51c9_11ea_b50a_1f46721d93b7row3_col9\" class=\"data row3 col9\" >-1.31</td>\n",
" <td id=\"T_aadc40b8_51c9_11ea_b50a_1f46721d93b7row3_col10\" class=\"data row3 col10\" >-2.70</td>\n",
" <td id=\"T_aadc40b8_51c9_11ea_b50a_1f46721d93b7row3_col11\" class=\"data row3 col11\" >-3.93</td>\n",
" <td id=\"T_aadc40b8_51c9_11ea_b50a_1f46721d93b7row3_col12\" class=\"data row3 col12\" >-1.59</td>\n",
" <th id=\"T_aadc40b8_51c9_11ea_b50a_1f46721d93b7level0_row4\" class=\"row_heading level0 row4\" >25%</th>\n",
" <td id=\"T_aadc40b8_51c9_11ea_b50a_1f46721d93b7row4_col0\" class=\"data row4 col0\" >-0.44</td>\n",
" <td id=\"T_aadc40b8_51c9_11ea_b50a_1f46721d93b7row4_col1\" class=\"data row4 col1\" >-0.50</td>\n",
" <td id=\"T_aadc40b8_51c9_11ea_b50a_1f46721d93b7row4_col2\" class=\"data row4 col2\" >-0.87</td>\n",
" <td id=\"T_aadc40b8_51c9_11ea_b50a_1f46721d93b7row4_col3\" class=\"data row4 col3\" >-0.26</td>\n",
" <td id=\"T_aadc40b8_51c9_11ea_b50a_1f46721d93b7row4_col4\" class=\"data row4 col4\" >-0.88</td>\n",
" <td id=\"T_aadc40b8_51c9_11ea_b50a_1f46721d93b7row4_col5\" class=\"data row4 col5\" >-0.58</td>\n",
" <td id=\"T_aadc40b8_51c9_11ea_b50a_1f46721d93b7row4_col6\" class=\"data row4 col6\" >-0.80</td>\n",
" <td id=\"T_aadc40b8_51c9_11ea_b50a_1f46721d93b7row4_col7\" class=\"data row4 col7\" >-0.81</td>\n",
" <td id=\"T_aadc40b8_51c9_11ea_b50a_1f46721d93b7row4_col8\" class=\"data row4 col8\" >-0.66</td>\n",
" <td id=\"T_aadc40b8_51c9_11ea_b50a_1f46721d93b7row4_col9\" class=\"data row4 col9\" >-0.78</td>\n",
" <td id=\"T_aadc40b8_51c9_11ea_b50a_1f46721d93b7row4_col10\" class=\"data row4 col10\" >-0.49</td>\n",
" <td id=\"T_aadc40b8_51c9_11ea_b50a_1f46721d93b7row4_col11\" class=\"data row4 col11\" >0.20</td>\n",
" <td id=\"T_aadc40b8_51c9_11ea_b50a_1f46721d93b7row4_col12\" class=\"data row4 col12\" >-0.78</td>\n",
" <th id=\"T_aadc40b8_51c9_11ea_b50a_1f46721d93b7level0_row5\" class=\"row_heading level0 row5\" >50%</th>\n",
" <td id=\"T_aadc40b8_51c9_11ea_b50a_1f46721d93b7row5_col0\" class=\"data row5 col0\" >-0.42</td>\n",
" <td id=\"T_aadc40b8_51c9_11ea_b50a_1f46721d93b7row5_col1\" class=\"data row5 col1\" >-0.50</td>\n",
" <td id=\"T_aadc40b8_51c9_11ea_b50a_1f46721d93b7row5_col2\" class=\"data row5 col2\" >-0.19</td>\n",
" <td id=\"T_aadc40b8_51c9_11ea_b50a_1f46721d93b7row5_col3\" class=\"data row5 col3\" >-0.26</td>\n",
" <td id=\"T_aadc40b8_51c9_11ea_b50a_1f46721d93b7row5_col4\" class=\"data row5 col4\" >-0.13</td>\n",
" <td id=\"T_aadc40b8_51c9_11ea_b50a_1f46721d93b7row5_col5\" class=\"data row5 col5\" >-0.10</td>\n",
" <td id=\"T_aadc40b8_51c9_11ea_b50a_1f46721d93b7row5_col6\" class=\"data row5 col6\" >0.32</td>\n",
" <td id=\"T_aadc40b8_51c9_11ea_b50a_1f46721d93b7row5_col7\" class=\"data row5 col7\" >-0.31</td>\n",
" <td id=\"T_aadc40b8_51c9_11ea_b50a_1f46721d93b7row5_col8\" class=\"data row5 col8\" >-0.55</td>\n",
" <td id=\"T_aadc40b8_51c9_11ea_b50a_1f46721d93b7row5_col9\" class=\"data row5 col9\" >-0.47</td>\n",
" <td id=\"T_aadc40b8_51c9_11ea_b50a_1f46721d93b7row5_col10\" class=\"data row5 col10\" >0.20</td>\n",
" <td id=\"T_aadc40b8_51c9_11ea_b50a_1f46721d93b7row5_col11\" class=\"data row5 col11\" >0.38</td>\n",
" <td id=\"T_aadc40b8_51c9_11ea_b50a_1f46721d93b7row5_col12\" class=\"data row5 col12\" >-0.18</td>\n",
" <th id=\"T_aadc40b8_51c9_11ea_b50a_1f46721d93b7level0_row6\" class=\"row_heading level0 row6\" >75%</th>\n",
" <td id=\"T_aadc40b8_51c9_11ea_b50a_1f46721d93b7row6_col0\" class=\"data row6 col0\" >0.02</td>\n",
" <td id=\"T_aadc40b8_51c9_11ea_b50a_1f46721d93b7row6_col1\" class=\"data row6 col1\" >0.33</td>\n",
" <td id=\"T_aadc40b8_51c9_11ea_b50a_1f46721d93b7row6_col2\" class=\"data row6 col2\" >1.04</td>\n",
" <td id=\"T_aadc40b8_51c9_11ea_b50a_1f46721d93b7row6_col3\" class=\"data row6 col3\" >-0.26</td>\n",
" <td id=\"T_aadc40b8_51c9_11ea_b50a_1f46721d93b7row6_col4\" class=\"data row6 col4\" >0.63</td>\n",
" <td id=\"T_aadc40b8_51c9_11ea_b50a_1f46721d93b7row6_col5\" class=\"data row6 col5\" >0.48</td>\n",
" <td id=\"T_aadc40b8_51c9_11ea_b50a_1f46721d93b7row6_col6\" class=\"data row6 col6\" >0.91</td>\n",
" <td id=\"T_aadc40b8_51c9_11ea_b50a_1f46721d93b7row6_col7\" class=\"data row6 col7\" >0.63</td>\n",
" <td id=\"T_aadc40b8_51c9_11ea_b50a_1f46721d93b7row6_col8\" class=\"data row6 col8\" >1.59</td>\n",
" <td id=\"T_aadc40b8_51c9_11ea_b50a_1f46721d93b7row6_col9\" class=\"data row6 col9\" >1.47</td>\n",
" <td id=\"T_aadc40b8_51c9_11ea_b50a_1f46721d93b7row6_col10\" class=\"data row6 col10\" >0.80</td>\n",
" <td id=\"T_aadc40b8_51c9_11ea_b50a_1f46721d93b7row6_col11\" class=\"data row6 col11\" >0.43</td>\n",
" <td id=\"T_aadc40b8_51c9_11ea_b50a_1f46721d93b7row6_col12\" class=\"data row6 col12\" >0.58</td>\n",
" <th id=\"T_aadc40b8_51c9_11ea_b50a_1f46721d93b7level0_row7\" class=\"row_heading level0 row7\" >max</th>\n",
" <td id=\"T_aadc40b8_51c9_11ea_b50a_1f46721d93b7row7_col0\" class=\"data row7 col0\" >8.41</td>\n",
" <td id=\"T_aadc40b8_51c9_11ea_b50a_1f46721d93b7row7_col1\" class=\"data row7 col1\" >3.74</td>\n",
" <td id=\"T_aadc40b8_51c9_11ea_b50a_1f46721d93b7row7_col2\" class=\"data row7 col2\" >2.46</td>\n",
" <td id=\"T_aadc40b8_51c9_11ea_b50a_1f46721d93b7row7_col3\" class=\"data row7 col3\" >3.88</td>\n",
" <td id=\"T_aadc40b8_51c9_11ea_b50a_1f46721d93b7row7_col4\" class=\"data row7 col4\" >2.82</td>\n",
" <td id=\"T_aadc40b8_51c9_11ea_b50a_1f46721d93b7row7_col5\" class=\"data row7 col5\" >3.50</td>\n",
" <td id=\"T_aadc40b8_51c9_11ea_b50a_1f46721d93b7row7_col6\" class=\"data row7 col6\" >1.13</td>\n",
" <td id=\"T_aadc40b8_51c9_11ea_b50a_1f46721d93b7row7_col7\" class=\"data row7 col7\" >3.34</td>\n",
" <td id=\"T_aadc40b8_51c9_11ea_b50a_1f46721d93b7row7_col8\" class=\"data row7 col8\" >1.59</td>\n",
" <td id=\"T_aadc40b8_51c9_11ea_b50a_1f46721d93b7row7_col9\" class=\"data row7 col9\" >1.74</td>\n",
" <td id=\"T_aadc40b8_51c9_11ea_b50a_1f46721d93b7row7_col10\" class=\"data row7 col10\" >1.63</td>\n",
" <td id=\"T_aadc40b8_51c9_11ea_b50a_1f46721d93b7row7_col11\" class=\"data row7 col11\" >0.43</td>\n",
" <td id=\"T_aadc40b8_51c9_11ea_b50a_1f46721d93b7row7_col12\" class=\"data row7 col12\" >3.72</td>\n",
" </tr>\n",
" </tbody></table>"
],
"text/plain": [
"<pandas.io.formats.style.Styler at 0x7f952e97ff50>"
]
},
"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",
"\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",
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
"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": {},
"output_type": "execute_result"
}
],
"source": [
"model=get_model_v1( (13,) )\n",
"\n",
"model.summary()\n",
"keras.utils.plot_model( model, to_file='./run/model.png', show_shapes=True, show_layer_names=True, dpi=96)"
]
},
{
"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 [==============================] - 1s 2ms/sample - loss: 414.5603 - mae: 18.2577 - mse: 414.5602 - val_loss: 266.3728 - val_mae: 13.9913 - val_mse: 266.3728\n",
"354/354 [==============================] - 0s 190us/sample - loss: 165.4507 - mae: 10.4618 - mse: 165.4507 - val_loss: 74.4125 - val_mae: 6.0372 - val_mse: 74.4125\n",
"354/354 [==============================] - 0s 187us/sample - loss: 54.2313 - mae: 5.3763 - mse: 54.2313 - val_loss: 47.0203 - val_mae: 4.7399 - val_mse: 47.0203\n",
"354/354 [==============================] - 0s 166us/sample - loss: 32.3303 - mae: 4.2632 - mse: 32.3303 - val_loss: 38.0120 - val_mae: 4.2484 - val_mse: 38.0120\n",
"354/354 [==============================] - 0s 153us/sample - loss: 25.3763 - mae: 3.7745 - mse: 25.3763 - val_loss: 32.4707 - val_mae: 3.8465 - val_mse: 32.4707\n",
"354/354 [==============================] - 0s 153us/sample - loss: 22.2331 - mae: 3.4720 - mse: 22.2331 - val_loss: 29.6142 - val_mae: 3.4844 - val_mse: 29.6142\n",
"354/354 [==============================] - 0s 154us/sample - loss: 19.7834 - mae: 3.2245 - mse: 19.7834 - val_loss: 27.1649 - val_mae: 3.5465 - val_mse: 27.1649\n",
"354/354 [==============================] - 0s 155us/sample - loss: 18.0991 - mae: 3.0669 - mse: 18.0991 - val_loss: 26.0093 - val_mae: 3.5617 - val_mse: 26.0093\n",
"354/354 [==============================] - 0s 161us/sample - loss: 16.9247 - mae: 2.9184 - mse: 16.9247 - val_loss: 23.2549 - val_mae: 3.3243 - val_mse: 23.2549\n",
"354/354 [==============================] - 0s 150us/sample - loss: 16.0827 - mae: 2.8116 - mse: 16.0827 - val_loss: 21.1365 - val_mae: 3.0248 - val_mse: 21.1365\n",
"354/354 [==============================] - 0s 170us/sample - loss: 15.0334 - mae: 2.7214 - mse: 15.0334 - val_loss: 20.0163 - val_mae: 2.9800 - val_mse: 20.0163\n",
"354/354 [==============================] - 0s 180us/sample - loss: 14.4011 - mae: 2.6949 - mse: 14.4011 - val_loss: 19.8958 - val_mae: 2.9262 - val_mse: 19.8958\n",
"354/354 [==============================] - 0s 184us/sample - loss: 13.9168 - mae: 2.5674 - mse: 13.9168 - val_loss: 18.5729 - val_mae: 2.7302 - val_mse: 18.5729\n",
"354/354 [==============================] - 0s 161us/sample - loss: 13.5575 - mae: 2.5442 - mse: 13.5575 - val_loss: 17.8812 - val_mae: 2.6748 - val_mse: 17.8812\n",
"354/354 [==============================] - 0s 166us/sample - loss: 12.8689 - mae: 2.4779 - mse: 12.8689 - val_loss: 18.9649 - val_mae: 2.7560 - val_mse: 18.9649\n",
"354/354 [==============================] - 0s 159us/sample - loss: 12.6470 - mae: 2.4670 - mse: 12.6470 - val_loss: 16.5834 - val_mae: 2.6016 - val_mse: 16.5834\n",
"354/354 [==============================] - 0s 159us/sample - loss: 12.3566 - mae: 2.4280 - mse: 12.3566 - val_loss: 16.7371 - val_mae: 2.6670 - val_mse: 16.7371\n",
"354/354 [==============================] - 0s 158us/sample - loss: 12.3328 - mae: 2.4060 - mse: 12.3328 - val_loss: 16.3754 - val_mae: 2.6027 - val_mse: 16.3754\n",
"354/354 [==============================] - 0s 152us/sample - loss: 11.8357 - mae: 2.3106 - mse: 11.8357 - val_loss: 16.1015 - val_mae: 2.6255 - val_mse: 16.1015\n",
"354/354 [==============================] - 0s 163us/sample - loss: 11.6722 - mae: 2.3482 - mse: 11.6722 - val_loss: 16.1405 - val_mae: 2.6889 - val_mse: 16.1405\n",
"354/354 [==============================] - 0s 175us/sample - loss: 11.2774 - mae: 2.3344 - mse: 11.2774 - val_loss: 15.2110 - val_mae: 2.5038 - val_mse: 15.2110\n",
"354/354 [==============================] - 0s 180us/sample - loss: 11.2491 - mae: 2.3055 - mse: 11.2491 - val_loss: 15.4745 - val_mae: 2.4494 - val_mse: 15.4744\n",
"354/354 [==============================] - 0s 187us/sample - loss: 10.9102 - mae: 2.2171 - mse: 10.9102 - val_loss: 15.1145 - val_mae: 2.4282 - val_mse: 15.1145\n",
"354/354 [==============================] - 0s 168us/sample - loss: 10.7952 - mae: 2.2533 - mse: 10.7952 - val_loss: 14.3789 - val_mae: 2.3683 - val_mse: 14.3789\n",
"354/354 [==============================] - 0s 171us/sample - loss: 10.7250 - mae: 2.2489 - mse: 10.7250 - val_loss: 15.1102 - val_mae: 2.3422 - val_mse: 15.1102\n",
"354/354 [==============================] - 0s 158us/sample - loss: 10.4010 - mae: 2.1702 - mse: 10.4010 - val_loss: 14.3260 - val_mae: 2.3176 - val_mse: 14.3260\n",
"354/354 [==============================] - 0s 149us/sample - loss: 10.1442 - mae: 2.1797 - mse: 10.1442 - val_loss: 13.6694 - val_mae: 2.3864 - val_mse: 13.6694\n",
"354/354 [==============================] - 0s 168us/sample - loss: 10.1391 - mae: 2.1809 - mse: 10.1391 - val_loss: 14.0177 - val_mae: 2.3467 - val_mse: 14.0177\n",
"354/354 [==============================] - 0s 149us/sample - loss: 9.9119 - mae: 2.1267 - mse: 9.9119 - val_loss: 14.0739 - val_mae: 2.4617 - val_mse: 14.0739\n",
"354/354 [==============================] - 0s 164us/sample - loss: 10.0176 - mae: 2.1669 - mse: 10.0176 - val_loss: 13.5116 - val_mae: 2.3158 - val_mse: 13.5116\n",
"354/354 [==============================] - 0s 189us/sample - loss: 9.8259 - mae: 2.1407 - mse: 9.8259 - val_loss: 13.7364 - val_mae: 2.3531 - val_mse: 13.7364\n",
"354/354 [==============================] - 0s 178us/sample - loss: 9.4495 - mae: 2.0922 - mse: 9.4495 - val_loss: 14.1936 - val_mae: 2.3887 - val_mse: 14.1936\n",
"354/354 [==============================] - 0s 164us/sample - loss: 9.6721 - mae: 2.0870 - mse: 9.6721 - val_loss: 13.4267 - val_mae: 2.3508 - val_mse: 13.4267\n",
"354/354 [==============================] - 0s 167us/sample - loss: 9.1042 - mae: 2.0644 - mse: 9.1042 - val_loss: 13.3821 - val_mae: 2.4709 - val_mse: 13.3821\n",
"354/354 [==============================] - 0s 155us/sample - loss: 9.0129 - mae: 2.0482 - mse: 9.0129 - val_loss: 14.2184 - val_mae: 2.2754 - val_mse: 14.2184\n",
"354/354 [==============================] - 0s 160us/sample - loss: 9.2470 - mae: 2.0661 - mse: 9.2470 - val_loss: 14.3466 - val_mae: 2.5561 - val_mse: 14.3466\n",
"354/354 [==============================] - 0s 169us/sample - loss: 9.1695 - mae: 2.0766 - mse: 9.1695 - val_loss: 13.3818 - val_mae: 2.2373 - val_mse: 13.3818\n",
"354/354 [==============================] - 0s 165us/sample - loss: 9.1663 - mae: 2.0617 - mse: 9.1663 - val_loss: 14.7461 - val_mae: 2.5061 - val_mse: 14.7461\n",
"354/354 [==============================] - 0s 159us/sample - loss: 8.7273 - mae: 2.0208 - mse: 8.7273 - val_loss: 12.5890 - val_mae: 2.3037 - val_mse: 12.5890\n",
"354/354 [==============================] - 0s 166us/sample - loss: 8.9038 - mae: 2.0352 - mse: 8.9038 - val_loss: 12.9754 - val_mae: 2.2079 - val_mse: 12.9754\n",
"354/354 [==============================] - 0s 153us/sample - loss: 8.6155 - mae: 2.0267 - mse: 8.6155 - val_loss: 13.9239 - val_mae: 2.3525 - val_mse: 13.9239\n",
"354/354 [==============================] - 0s 163us/sample - loss: 8.5479 - mae: 2.0170 - mse: 8.5479 - val_loss: 13.6362 - val_mae: 2.2694 - val_mse: 13.6362\n",
"354/354 [==============================] - 0s 165us/sample - loss: 8.7087 - mae: 2.0062 - mse: 8.7087 - val_loss: 13.1138 - val_mae: 2.2386 - val_mse: 13.1138\n",
"354/354 [==============================] - 0s 160us/sample - loss: 8.3942 - mae: 1.9622 - mse: 8.3942 - val_loss: 12.3461 - val_mae: 2.2337 - val_mse: 12.3461\n",
"354/354 [==============================] - 0s 168us/sample - loss: 8.4101 - mae: 2.0098 - mse: 8.4101 - val_loss: 13.2116 - val_mae: 2.2682 - val_mse: 13.2116\n",
"354/354 [==============================] - 0s 156us/sample - loss: 8.3264 - mae: 1.9483 - mse: 8.3264 - val_loss: 12.5519 - val_mae: 2.4063 - val_mse: 12.5519\n",
"354/354 [==============================] - 0s 158us/sample - loss: 8.1445 - mae: 1.9549 - mse: 8.1445 - val_loss: 12.1838 - val_mae: 2.2591 - val_mse: 12.1838\n",
"354/354 [==============================] - 0s 156us/sample - loss: 8.0389 - mae: 1.9304 - mse: 8.0389 - val_loss: 12.6978 - val_mae: 2.1907 - val_mse: 12.6978\n",
"354/354 [==============================] - 0s 164us/sample - loss: 8.0705 - mae: 1.9493 - mse: 8.0705 - val_loss: 12.4833 - val_mae: 2.4720 - val_mse: 12.4833\n",
"354/354 [==============================] - 0s 158us/sample - loss: 8.1872 - mae: 1.9630 - mse: 8.1872 - val_loss: 12.0043 - val_mae: 2.2610 - val_mse: 12.0043\n",
"354/354 [==============================] - 0s 158us/sample - loss: 8.0357 - mae: 1.8946 - mse: 8.0357 - val_loss: 11.3982 - val_mae: 2.1770 - val_mse: 11.3982\n",
"354/354 [==============================] - 0s 162us/sample - loss: 7.6882 - mae: 1.8951 - mse: 7.6882 - val_loss: 13.0714 - val_mae: 2.4109 - val_mse: 13.0714\n",
"354/354 [==============================] - 0s 162us/sample - loss: 7.9639 - mae: 1.9103 - mse: 7.9639 - val_loss: 12.4297 - val_mae: 2.2996 - val_mse: 12.4297\n",
"354/354 [==============================] - 0s 183us/sample - loss: 7.7929 - mae: 1.8971 - mse: 7.7929 - val_loss: 11.9751 - val_mae: 2.2491 - val_mse: 11.9751\n",
"354/354 [==============================] - 0s 185us/sample - loss: 7.4411 - mae: 1.8631 - mse: 7.4411 - val_loss: 11.3761 - val_mae: 2.3416 - val_mse: 11.3761\n",
"354/354 [==============================] - 0s 186us/sample - loss: 7.6105 - mae: 1.9111 - mse: 7.6105 - val_loss: 12.4939 - val_mae: 2.4095 - val_mse: 12.4939\n",
"354/354 [==============================] - 0s 190us/sample - loss: 7.5013 - mae: 1.9146 - mse: 7.5013 - val_loss: 11.6668 - val_mae: 2.1468 - val_mse: 11.6668\n",
"354/354 [==============================] - 0s 195us/sample - loss: 7.4096 - mae: 1.8515 - mse: 7.4096 - val_loss: 13.8000 - val_mae: 2.5222 - val_mse: 13.8000\n",
"354/354 [==============================] - 0s 180us/sample - loss: 7.2263 - mae: 1.8241 - mse: 7.2263 - val_loss: 10.8964 - val_mae: 2.2130 - val_mse: 10.8964\n",
"354/354 [==============================] - 0s 161us/sample - loss: 7.1773 - mae: 1.8526 - mse: 7.1773 - val_loss: 10.7862 - val_mae: 2.1088 - val_mse: 10.7862\n",
"354/354 [==============================] - 0s 165us/sample - loss: 7.0812 - mae: 1.8308 - mse: 7.0812 - val_loss: 10.8147 - val_mae: 2.3209 - val_mse: 10.8147\n",
"354/354 [==============================] - 0s 155us/sample - loss: 7.2235 - mae: 1.8367 - mse: 7.2235 - val_loss: 11.0399 - val_mae: 2.2583 - val_mse: 11.0399\n",
"354/354 [==============================] - 0s 155us/sample - loss: 7.0341 - mae: 1.8172 - mse: 7.0341 - val_loss: 10.9894 - val_mae: 2.1429 - val_mse: 10.9894\n",
"354/354 [==============================] - 0s 157us/sample - loss: 6.8729 - mae: 1.7492 - mse: 6.8729 - val_loss: 10.5465 - val_mae: 2.1532 - val_mse: 10.5465\n",
"354/354 [==============================] - 0s 164us/sample - loss: 6.9345 - mae: 1.7837 - mse: 6.9345 - val_loss: 11.5379 - val_mae: 2.1963 - val_mse: 11.5379\n",
"354/354 [==============================] - 0s 166us/sample - loss: 6.8218 - mae: 1.7714 - mse: 6.8218 - val_loss: 10.1486 - val_mae: 2.1617 - val_mse: 10.1486\n",
"354/354 [==============================] - 0s 157us/sample - loss: 6.8711 - mae: 1.8045 - mse: 6.8711 - val_loss: 10.3196 - val_mae: 2.2297 - val_mse: 10.3196\n",
"354/354 [==============================] - 0s 162us/sample - loss: 6.7281 - mae: 1.7762 - mse: 6.7281 - val_loss: 11.2361 - val_mae: 2.2046 - val_mse: 11.2361\n",
"354/354 [==============================] - 0s 158us/sample - loss: 6.5518 - mae: 1.7292 - mse: 6.5518 - val_loss: 10.2378 - val_mae: 2.1494 - val_mse: 10.2378\n",
"354/354 [==============================] - 0s 161us/sample - loss: 6.6489 - mae: 1.7383 - mse: 6.6489 - val_loss: 11.1613 - val_mae: 2.2212 - val_mse: 11.1613\n",
"354/354 [==============================] - 0s 176us/sample - loss: 6.5827 - mae: 1.7564 - mse: 6.5827 - val_loss: 10.0177 - val_mae: 2.2440 - val_mse: 10.0177\n",
"354/354 [==============================] - 0s 168us/sample - loss: 6.3411 - mae: 1.7463 - mse: 6.3411 - val_loss: 10.7929 - val_mae: 2.1946 - val_mse: 10.7929\n",
"354/354 [==============================] - 0s 163us/sample - loss: 6.3621 - mae: 1.7466 - mse: 6.3621 - val_loss: 9.7344 - val_mae: 2.1441 - val_mse: 9.7344\n",
"354/354 [==============================] - 0s 158us/sample - loss: 6.2298 - mae: 1.7411 - mse: 6.2298 - val_loss: 11.2495 - val_mae: 2.1948 - val_mse: 11.2495\n",
"354/354 [==============================] - 0s 159us/sample - loss: 6.3037 - mae: 1.7169 - mse: 6.3037 - val_loss: 10.1339 - val_mae: 2.1716 - val_mse: 10.1339\n",
"354/354 [==============================] - 0s 158us/sample - loss: 6.0780 - mae: 1.6686 - mse: 6.0780 - val_loss: 11.9975 - val_mae: 2.3317 - val_mse: 11.9975\n",
"354/354 [==============================] - 0s 165us/sample - loss: 6.3311 - mae: 1.7082 - mse: 6.3311 - val_loss: 11.6433 - val_mae: 2.2756 - val_mse: 11.6433\n",
"354/354 [==============================] - 0s 155us/sample - loss: 6.0620 - mae: 1.6765 - mse: 6.0620 - val_loss: 13.0159 - val_mae: 2.5073 - val_mse: 13.0159\n",
"354/354 [==============================] - 0s 167us/sample - loss: 6.1819 - mae: 1.7157 - mse: 6.1819 - val_loss: 10.1000 - val_mae: 2.1462 - val_mse: 10.1000\n",
"354/354 [==============================] - 0s 158us/sample - loss: 5.9085 - mae: 1.6720 - mse: 5.9085 - val_loss: 11.7867 - val_mae: 2.5045 - val_mse: 11.7866\n",
"354/354 [==============================] - 0s 168us/sample - loss: 6.0201 - mae: 1.6678 - mse: 6.0201 - val_loss: 10.8789 - val_mae: 2.3031 - val_mse: 10.8789\n",
"354/354 [==============================] - 0s 159us/sample - loss: 6.1278 - mae: 1.6799 - mse: 6.1278 - val_loss: 9.8114 - val_mae: 2.1048 - val_mse: 9.8114\n",
"354/354 [==============================] - 0s 150us/sample - loss: 5.6372 - mae: 1.6280 - mse: 5.6372 - val_loss: 10.0971 - val_mae: 2.1464 - val_mse: 10.0971\n",
"354/354 [==============================] - 0s 153us/sample - loss: 5.9587 - mae: 1.6421 - mse: 5.9587 - val_loss: 9.4731 - val_mae: 2.1915 - val_mse: 9.4731\n",
"354/354 [==============================] - 0s 158us/sample - loss: 5.6189 - mae: 1.6223 - mse: 5.6189 - val_loss: 9.9788 - val_mae: 2.3332 - val_mse: 9.9788\n",
"354/354 [==============================] - 0s 158us/sample - loss: 5.8193 - mae: 1.6930 - mse: 5.8193 - val_loss: 10.4070 - val_mae: 2.1490 - val_mse: 10.4070\n",
"354/354 [==============================] - 0s 155us/sample - loss: 5.5919 - mae: 1.6152 - mse: 5.5919 - val_loss: 9.9985 - val_mae: 2.2546 - val_mse: 9.9985\n",
"354/354 [==============================] - 0s 160us/sample - loss: 5.6652 - mae: 1.6246 - mse: 5.6652 - val_loss: 9.1506 - val_mae: 2.0642 - val_mse: 9.1506\n",
"354/354 [==============================] - 0s 157us/sample - loss: 5.6349 - mae: 1.6108 - mse: 5.6349 - val_loss: 9.8522 - val_mae: 2.0813 - val_mse: 9.8522\n",
"354/354 [==============================] - 0s 159us/sample - loss: 5.6165 - mae: 1.6449 - mse: 5.6165 - val_loss: 9.1553 - val_mae: 2.0421 - val_mse: 9.1553\n",
"354/354 [==============================] - 0s 161us/sample - loss: 5.5416 - mae: 1.6153 - mse: 5.5416 - val_loss: 10.4231 - val_mae: 2.2880 - val_mse: 10.4231\n",
"354/354 [==============================] - 0s 158us/sample - loss: 5.3909 - mae: 1.5863 - mse: 5.3909 - val_loss: 8.8087 - val_mae: 2.1022 - val_mse: 8.8087\n",
"354/354 [==============================] - 0s 155us/sample - loss: 5.3540 - mae: 1.5986 - mse: 5.3540 - val_loss: 9.6963 - val_mae: 2.1931 - val_mse: 9.6963\n",
"354/354 [==============================] - 0s 161us/sample - loss: 5.3198 - mae: 1.6074 - mse: 5.3198 - val_loss: 9.1875 - val_mae: 2.1917 - val_mse: 9.1875\n",
"354/354 [==============================] - 0s 165us/sample - loss: 5.2299 - mae: 1.5638 - mse: 5.2299 - val_loss: 8.8746 - val_mae: 2.1273 - val_mse: 8.8746\n",
"354/354 [==============================] - 0s 163us/sample - loss: 5.2789 - mae: 1.5651 - mse: 5.2789 - val_loss: 9.7351 - val_mae: 2.2359 - val_mse: 9.7351\n",
"354/354 [==============================] - 0s 153us/sample - loss: 5.3399 - mae: 1.6002 - mse: 5.3399 - val_loss: 9.7185 - val_mae: 2.1080 - val_mse: 9.7185\n",
"354/354 [==============================] - 0s 159us/sample - loss: 5.0072 - mae: 1.5055 - mse: 5.0072 - val_loss: 8.3621 - val_mae: 2.0586 - val_mse: 8.3621\n",
"354/354 [==============================] - 0s 156us/sample - loss: 5.2596 - mae: 1.5557 - mse: 5.2596 - val_loss: 8.6406 - val_mae: 2.0527 - val_mse: 8.6406\n",
"354/354 [==============================] - 0s 159us/sample - loss: 5.0983 - mae: 1.5543 - mse: 5.0983 - val_loss: 8.4836 - val_mae: 2.0234 - val_mse: 8.4836\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 : 8.4836\n",
"x_test / mae : 2.0234\n",
"x_test / mse : 8.4836\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",
996
997
998
999
1000
1001
1002
1003
1004
1005
1006
1007
1008
1009
1010
1011
1012
1013
1014
1015
1016
1017
1018
1019
1020
1021
1022
1023
1024
1025
1026
1027
1028
1029
1030
1031
1032
1033
1034
1035
1036
1037
"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>15.144930</td>\n",
" <td>2.312168</td>\n",
" <td>15.144930</td>\n",
" <td>17.019036</td>\n",
" <td>2.582618</td>\n",
" <td>17.019036</td>\n",
" </tr>\n",
" <tr>\n",
" <th>std</th>\n",
" <td>43.707091</td>\n",
" <td>1.906713</td>\n",
" <td>43.707090</td>\n",
" <td>26.587745</td>\n",
" <td>1.288267</td>\n",
" <td>26.587746</td>\n",
" </tr>\n",
" <tr>\n",
" <th>min</th>\n",
" <td>5.007155</td>\n",
" <td>1.505515</td>\n",
" <td>5.007155</td>\n",
" <td>8.362053</td>\n",
" <td>2.023406</td>\n",
" <td>8.362053</td>\n",
" </tr>\n",
" <tr>\n",
" <th>25%</th>\n",
" <td>6.285225</td>\n",
" <td>1.716563</td>\n",
" <td>6.285225</td>\n",
" <td>10.419040</td>\n",
" <td>2.192718</td>\n",
" <td>10.419040</td>\n",
" </tr>\n",
" <tr>\n",
" <th>50%</th>\n",
" <td>8.037316</td>\n",
" <td>1.922454</td>\n",
" <td>8.037317</td>\n",
" <td>12.488579</td>\n",
" <td>2.301342</td>\n",
" <td>12.488580</td>\n",
" </tr>\n",
" <tr>\n",
" <th>75%</th>\n",
" <td>10.482029</td>\n",
" <td>2.189933</td>\n",
" <td>10.482029</td>\n",
" <td>14.470699</td>\n",
" <td>2.503943</td>\n",
" <td>14.470701</td>\n",
" </tr>\n",
" <tr>\n",
" <th>max</th>\n",
" <td>414.560260</td>\n",
" <td>18.257650</td>\n",
" <td>414.560242</td>\n",
" <td>266.372801</td>\n",
" <td>13.991282</td>\n",
" <td>266.372803</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 15.144930 2.312168 15.144930 17.019036 2.582618 17.019036\n",
"std 43.707091 1.906713 43.707090 26.587745 1.288267 26.587746\n",
"min 5.007155 1.505515 5.007155 8.362053 2.023406 8.362053\n",
"25% 6.285225 1.716563 6.285225 10.419040 2.192718 10.419040\n",
"50% 8.037316 1.922454 8.037317 12.488579 2.301342 12.488580\n",
"75% 10.482029 2.189933 10.482029 14.470699 2.503943 14.470701\n",
"max 414.560260 18.257650 414.560242 266.372801 13.991282 266.372803"
"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": "iVBORw0KGgoAAAANSUhEUgAAAg0AAAGdCAYAAACRlkBKAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADh0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uMy4xLjMsIGh0dHA6Ly9tYXRwbG90bGliLm9yZy+AADFEAAAgAElEQVR4nOzdeZxcVZ3//9enlt7SSWffIQlrEKKAoEHHCIgoOMC4A8IIM4BaCuj4dcMRUfmKIyPqIAWC/kAccQC3wR8IyiibgBAwCAwQIAtkIXs66aW6tvP949xK3+5Ud6qT7qq6nffz8Shu973n3j51SVLvPts15xwiIiIiuxKrdQVEREQkGhQaREREpCIKDSIiIlIRhQYRERGpiEKDiIiIVEShQURERCqi0CAiIiIVUWgQkUGZ2U1m5szsvt0418zs/Wb2X2a23My6zKzdzJ4zs2vNbGGF1znKzH5sZi+YWaeZdZvZCjN72My+a2anmdmYAc6daGZfDspuNrOcma0zs6fM7Odm9jEz22+o701kb2Ra3ElEBmNmNwEfBe53zh07hPPmALcDR4d2bweSQFNo30+BC5xzmQGu8zXgK4AFu4rAVmBscK2S9zrnftPv3DcDdwBTQ7u3AXEgHDL+2zn3D5W9M5G9l1oaRGTYmdlc4BF8YNgG/B9gunNunHOuGZgPXI0PAGcDd5tZssx1zgAuxQeG24CjgEbn3CSgGVgAfB54psy54+kNDC8CHwHGOufanHOtwAzgdOBXQG643rvIaKaWBhEZ1FBbGswsDjwELAQ2AMc65/53gLIfAn6O/wXmSufc5/sdfxR4M3Cnc+7vd/Fzm8KtFWb2ceBaoAc4wDm3apBzm51z3bt6byJ7O7U0iMhwex8+MACkBgoMAM6524Drgm8vNrOZ/YosCLb//65+aJnujdK5SwYLDMG5CgwiFVBoEJHhdkGwfcE594sKyn8L303RAJwzQJlZe1CfGWZmuy4mIrui0CAiwyYYl/CW4Nv/ruQc59yrwBPBt8f2O7w42F5oZm8bYnVK5+4L/F8zaxzi+SLSj0KDiAynuUBL8PVTQzjvb8H2kH77v4FvhWgDHgimal5nZv9sZoftogXh58ALwddfAl4zs1+a2efN7DgzaxnkXBEpQ6FBRIbTxNDXm4Zw3sZgOym80zl3L/APwMpg13zgY8CPgKeBtWZ2pZn1OS84NwMcD9wZ7BqPH2/xb8Afga1mdoeZHTOEeors1RQaRGQ47e7YgQHPc879FjgAeA/wfeBRoDRwcRp+OudTZja/zLlrglkXh+BbG+4E1gaHk8ApwJ/N7OLdrLfIXkWhQUSGU7h1Yaff/gdRKru53EHnXN45d5dz7tPOuWPwrQbvpHdWxSzgloG6K5xzzzvnvuWc+3vn3Ex8iPga0IUPLFeZ2ZFDqK/IXkmhQUSG0wr8BzHAG4Zw3uuD7YDTM8Occ1nn3L3OuVOAHwe7jwAOr/D8551zlwEnAQ7/b+FHh1Bfkb2SQoOIDBvnXA54OPj2tErOMbN9gDcG396/Gz/2x6GvDxrKic65B/CrRQ75XJG9kUKDiAy364PtwWb2gQrKfxH/b1EOuHE3fl5n6OvsHpy/O+eK7FUUGkRkuP0KeDz4Om1mrxuoYLCM9MeDb//DObem3/ETKliY6czQ10tC5x5tZm2DnWhmh9LbjbJksLIiotAgIpVLmtnkXbySzrkC/kFQ64ApwMNm9i9mtuNJk2Z2kJl9H7gF/+/QQ8AlZX7mfwFPm9nnzGyBmcWC8+Nm9jozuw7/wCqA3zrnlofO/TCwMngE9wlmNjb08yeZ2SeAe4Of34mfxikig9ADq0RkUKEHVlXiOOfcfcF58/CPxn5j6Pg2/FTH5tC+W4Dzyj3/wczWAtNDuwpAO36xp3ho/5+BU51zm0PnXoHv+gjbBiToXYAK/GO2T3fO3VPB+xPZqyVqXQERGZ2cc8vN7GjgA8AH8U+rnArkgaXAfcBNzrlHBrnMwcDJwHH4x2LPwweGHuA14En8I7N/4Xb+DegS/JTMdwPH4BeGmoKfYrkBeA64B7jBObdhD9+uyF5BLQ0iIiJSEY1pEBERkYooNIiIiEhFFBpERESkIgoNIiIiUhGFhgGkUimXSqU0SlRERCSgKZe7puAgIiJ7kwFXYVVLg4iIiFREoUFEREQqotAgIiIiFVFoEBERkYpoIOQQ5XI5Vq1aRSaTqXVV6lpTUxOzZ88mmUzWuioiIjJMFBqGaNWqVYwdO5a5c+diNuAA072ac45NmzaxatUq5s2bV+vqiIjIMFH3xBBlMhkmTZqkwDAIM2PSpElqjRERGWUUGnaDAsOu6R6JiIw+Cg0R1NraWusqiIjIXkihQURERCqi0BBhzjk+97nPcdhhh7FgwQJuvfVWANauXcuiRYs4/PDDOeyww3jwwQcpFAqcc845O8p+97vfrXHtRUQkajR7Yg+86xt3jti17/nKe3ZZ5le/+hVLlizhqaeeYuPGjRx99NEsWrSIW265hXe96118+ctfplAo0NXVxZIlS1i9ejXPPPMMAFu3bh2xuouIyOikloYIe+ihhzjjjDOIx+NMmzaNt7/97Tz++OMcffTR3HjjjVx22WU8/fTTjB07lv32249ly5Zx4YUXcvfddzNu3LhaV19ERCJGoSHCnCv/AM5FixbxwAMPMGvWLM4++2xuvvlmJkyYwFNPPcWxxx7LNddcw3nnnVfl2oqISNSpe2IPVNKFULJ0TW93wIEz2oZlSuKiRYv44Q9/yEc/+lE2b97MAw88wJVXXsnKlSuZNWsW559/Pp2dnTz55JOcfPLJNDQ08P73v5/999+fc845Z49/voiI7F0UGqrEzHa0DDgHw7GMwXvf+14eeeQR3vCGN2BmfPvb32b69On85Cc/4corrySZTNLa2srNN9/M6tWrOffccykWiwBcccUVe14BERHZq9hATdx7u1Qq5QDS6XSf/c899xyHHHLIkK/30mvtFIv+Xu8/fRzx2OjvGdrdeyUiIjU14K+1o/+Tq06E/w8op4mISBQpNFRJeAyDMoOIiERR3YUGM2sxs+Vm5szsB2WOH2xmvzGzLWbWaWYPmtnxA1yrzcyuNrPVZpYxs2fN7BNWgwcj9PmBamoQEZEIqseBkF8HJpc7YGb7Aw8DeeDbQDtwPnCPmZ3knLs3VLYB+ANwBHA18BxwEpAGpgGXjdxbKFv3HV8rMoiISBTVVUuDmR0JfBr46gBFrgDGA+9yzl3hnEsDbwPWANf0a0E4Dzga+Bfn3L84525wzr0P+BVwiZnNGbE3sgtqaBARkSiqm9BgZnHgBuBu/Ad7/+NjgFOB+5xzS0r7nXMdwI+Ag/AhoeRMoCu4Ztj3gCTw4eGs/66E44xmrIiISBTVTWgAPgPMBz41wPHXA43AI2WOPRpsjwYwsxhwJPBX51ymX9nHgCJ9A8aIM9Q9ISIi0VYXocHM5gFfA77unFsxQLGZwXZ1mWOlfbOC7QSguVxZ51wPsClUtn9dLjCzxZXVvHJ9WxqG++oDa21tHfDYihUrOOyww6pXGRERibS6CA3AtcBy4KpByrQE254yxzL9ygxWtlS+pdwB59z1zrmjBqnHbukTGtTWICIiEVTz2RNmdhZwIrDIOZcbpGhXsG0sc6ypX5nBypbKdw1wrHLnvbviorOHeu0f3V129xe+8AXmzJlDKpUC4LLLLsPMeOCBB9iyZQu5XI7LL7+c0047bUg/LpPJ8IlPfILFixeTSCS46qqrOO6443j22Wc599xzyWazFItFfvnLXzJz5kw+9KEPsWrVKgqFAl/5ylf48IerOkRERERqoKahwcwa8a0LdwGvmdkBwaFS10FbsG8jfoZE+FhYaV+pO2IL0F2ubPAzJwH37/EbqIHTTz+dT3/60ztCw2233cbdd9/NZz7zGcaNG8fGjRtZuHAhp5566pAeinXNNdcA8PTTT/P8889z4oknsnTpUq677jouvvhiPvKRj5DNZikUCtx1113MnDmTO++8E4D29vbhf6MiIlJ3at090QxMAd4DvBh63RccPyv4/jzgaXx3wzFlrrMw2C4GcM4VgSeBI4KQEPYm/Pse9nEL1XDEEUewfv161qxZw1NPPcWECROYMWMGl1xyCa9//es54YQTWL16NevWrRvSdR966CHOPvtsAObPn8+cOXNYunQpxxxzDN/85jf5t3/7N1auXElzczMLFizg3nvv5Qtf+AIPPvggbW1tI/FWRUSkztS6e6IT+GCZ/VPwizDdDfwY+JtzrsPMfgu8z8ze4Jx7CsDMWvGh4kX8zIiSnwNvBS7AL+5U8mn84lC37XHtB+hCKGftli62d2cBmD6+hXEtDbv9Yz/wgQ/wi1/8gtdee43TTz+dn/3sZ2zYsIEnnniCZDLJ3LlzyWT6TxoZ3EDTQM8880ze/OY3c+edd/Kud72LH/3oRxx//PE88cQT3HXXXXzpS1/ixBNP5NJLL93t9yMiItFQ09AQjGH4Rf/9ZjY3+PJl51z4+JeAdwC/N7PvAtvwK0LOAt7j+n7y3QCcC1wVXO854GTgvcDlzrnlw/ledqXvQMg9c/rpp3P++eezceNG7r//fm677TamTp1KMpnkT3/6EytXrhzyNRctWsTPfvYzjj/+eJYuXcorr7zCwQcfzLJly9hvv/246KKLWLZsGX/729+YP38+EydO5KyzzqK1tZWbbrppD9+RiIhEQa1bGobEOfeSmb0V+BbwRaAB3w3x7vAS0kHZrJmdAFwOnIEfx/AycCFwTVUrzvA+e+LQQw9l+/btzJo1ixkzZvCRj3yEU045haOOOorDDz+c+fPnD/maqVSKj3/84yxYsIBEIsFNN91EY2Mjt956K//5n/9JMplk+vTpXHrppTz++ON87nOfIxaLkUwmufbaa/fo/YiISDSYVicsL5VKOYB0Ot1n/3PPPcchhxwy5Outb+9ma6efATq1rZnxYwaa2DF67O69EhGRmhpwFH2tB0LulZTTREQkiiLVPRFltVzc6emnn94xM6KksbGRv/zlL1Wth4iIRJtCQ5X0efZElVsaFixYwJIlS3ZdUEREZBDqntgNuzMOpFbPnqgVjZURERl9FBqGqKmpiU2bNg35Q3FvevaEc45NmzbR1NS068IiIhIZ6p4YotmzZ7Nq1So2bNgwpPO6evJs7/aP1tjamGBjc3Ikqlc3mpqamD17yE/cEBGROqbQMETJZJJ58+YN+bz/fnwF6XufBeCUo+bwqZM0FVFERKJF3RNVkoz33upcoVjDmoiIiOwehYYqScR7BzXkFRpERCSCFBqqJBHrvdX5wugeCCkiIqOTQkOVhLsn1NIgIiJRpNBQJXF1T4iISMQpNFRJn4GQRXVPiIhI9Cg0VElC3RMiIhJxCg1VotAgIiJRp9BQJck+YxrUPSEiItGj0FAlfadcqqVBRESiR6GhShJaEVJERCJOoaFK+qwIWVRoEBGR6FFoqJK+AyE1pkFERKJHoaFKtCKkiIhEnUJDlWjKpYiIRJ1CQ5UkYppyKSIi0abQUCWaPSEiIlGn0FAl/bsnnFNrg4iIRItCQ5XEY0aph8IBRYUGERGJGIWGKtK0SxERiTKFhirSDAoREYkyhYYqCs+g0GBIERGJGoWGKlL3hIiIRJlCQxVpVUgREYkyhYYq6tPSoIdWiYhIxCg0VFGfJ12qe0JERCJGoaGKEjGtCikiItGl0FBFmnIpIiJRptBQRX27JxQaREQkWhQaqijZ56FVGtMgIiLRotBQReHuiYJmT4iISMQoNFSRHo8tIiJRptBQReFlpDXlUkREokahoYo0e0JERKJMoaGKkuqeEBGRCFNoqKLwlMtCUd0TIiISLQoNVaSBkCIiEmUKDVWkMQ0iIhJlCg1V1Hf2hEKDiIhEi0JDFWlFSBERiTKFhipS94SIiESZQkMVKTSIiEiUKTRUUTL8lEtNuRQRkYhRaKiiuFoaREQkwhQaqkgrQoqISJQpNFRReEVItTSIiEjUKDRUUSIW7p7QmAYREYkWhYYqSmpMg4iIRJhCQxXF1T0hIiIRptBQRX0GQmrKpYiIRIxCQxVpcScREYmymocGMzvYzH5mZs+ZWbuZdZnZ82Z2lZnNGKD8b8xsi5l1mtmDZnb8ANduM7OrzWy1mWXM7Fkz+4SZWbnyI02hQUREoixR6woAs4EZwK+BVUAeWABcAJxuZoc759YDmNn+wMNBmW8D7cD5wD1mdpJz7t7SRc2sAfgDcARwNfAccBKQBqYBl1XjzYX1WRFSsydERCRiah4anHP/A/xP//1m9gBwG3AOPiAAXAGMB97onFsSlLsZeBa4xszmO+dKn8bnAUcDFznnrg723WBmvwQuMbMbnXMrR+htldV3yqVaGkREJFpq3j0xiNIH+gQAMxsDnArcVwoMAM65DuBHwEH4kFByJtAF3NDvut8DksCHR6baA0toRUgREYmwugkNZtZkZpPNbLaZnQj8MDh0V7B9PdAIPFLm9EeD7dHBtWLAkcBfnXOZfmUfA4r0DRhV0WdFyKJCg4iIREvdhAZ8d8IG4FXgHnw3xFnOuQeD4zOD7eoy55b2zQq2E4DmcmWdcz3AplDZPszsAjNbvDtvYFf6DoTUmAYREYmWegoNvwHeCbwX+DqwFZgSOt4SbHvKnJvpV2awsqXyLeUOOOeud84dVWGdh0QrQoqISJTVfCBkiXNuFX72BMBvggGLj5tZs3PuCvz4BPBdFP01BduufttyZUvluwY4NmI05VJERKKsnloa+nDO/Q34K5AKdq0JtuW6FUr7St0RW4DucmXNrBGYRPlujhGViGnKpYiIRFfdhoZAMzAx+PppfHfDMWXKLQy2iwGcc0XgSeCIICSEvQn/vkdk3MJgNHtCRESirOahwcymD7D/OOAwgpkRwdTK3wLHmtkbQuVa8YMoX8TPjCj5OX7cwgX9Lv1p/OJQtw3TW6hY/+6J3iUlRERE6l89jGm4Nlgu+o/4tRmagDcCpwPbgc+Gyn4JeAfwezP7LrANvyLkLOA9ru+n8A3AucBVZjYXvyLkyfiBlpc755aP4HsqKx4zYgZFBw4oOke8Nitai4iIDFk9hIafAx8FzsbPlnD48PBD4Ern3Culgs65l8zsrcC3gC8CDfhuiHeHl5AOymbN7ATgcuAM/DiGl4ELgWtG+k0NJBGPkc37rol8wRGveVuPiIhIZWoeGpxztzGErgLn3HPAaRWW3Qp8KnjVhb6hoUhjMl7jGomIiFRGv+dWWXgGhQZDiohIlCg0VJlWhRQRkahSaKgyrQopIiJRpdBQZX1aGvTQKhERiRCFhirr86RLdU+IiEiEKDRUWSKmVSFFRCSaFBqqTA+tEhGRqFJoqLK+3RMKDSIiEh0KDVWW7PPQKo1pEBGR6FBoqLJw90RBsydERCRCFBqqTCtCiohIVCk0VJlWhBQRkahSaKgyzZ4QEZGoUmiosr4DIRUaREQkOmr+aOy9Qi4LP7gMcjk+vLmTP4x5DwCForonREQkOhQaqsFi8OyTAMy0GIzxu9XSICIiUaLuiWqIx31wAOKuSMz5sKAxDSIiEiUKDdVgBsnkjm+TrgAoNIiISLQoNFRLojc0NAShQStCiohIlCg0VEuyofdLlwfU0iAiItGi0FAt6p4QEZGIU2iolkRvS0MDQWjQlEsREYkQhYZqUUuDiIhEnEJDtYTGNPQOhFRoEBGR6FBoqJaEWhpERCTaFBqqJRmeclmaPaExDSIiEh0KDdVSZp0GtTSIiEiUKDRUS591GhQaREQkehQaqiWxc/dETlMuRUQkQhQaqkUtDSIiEnEKDdWi0CAiIhGn0FAtZQdCqntCRESiQ6GhWrQipIiIRJxCQ7WEF3dCK0KKiEj0JIbjIqlUKgEcBhjwTDqdzg3HdUeVPstIB4s7FRUaREQkOipqaUilUvNSqdQ/pVKpg8ocOxlYBTwBLAbWpFKp9w9vNUcBjWkQEZGIq7R74p+BG4BseGcqlZoH3A5MBV4FngcmArekUqlDh7Ge0afZEyIiEnGVhoa/A55Op9Mr+u2/CGjGB4p56XT6UODDQBK4cLgqOSqUWdxJoUFERKKk0tAwD3imzP53A3ngC+l02gGk0+lfAI8Abx+WGo4WZVsa1D0hIiLRUWlomAK8Et6RSqXGAgcBi9Pp9NZ+5Z8EZu959UaR5M5jGjR7QkREoqTS0OCAtn77DsfPlniyTPl2hmlmxqgxwJgG59TaICIi0VBpaFgBvLXfvuPwYeIvZcpPAdbtfrVGoTKzJxxQVGgQEZGIqLQ14PfARalU6l+B/8B3S3wCP57h7jLlj6Jfd8ZeL9w9ESzuBH5cQ1xLbImISARU+nH1bWAr8DVgC751YRpwYzqd3hAumEql5gBHAPcPYz2jL7y4U5/QoHENIiISDRWFhnQ6vRZYBPwJyACrge/gp1z291H8mIbfDVMdR4cy3ROgwZAiIhIdFQ9WTKfTzwInVFDu68DX96RSo1KZgZCgaZciIhId6k2vljKLO4G6J0REJDqG64FVb8DPpjDgwXQ6vXg4rjuqDNDSoO4JERGJikofWLUolUrdnEqlFpY5dhl+rYbvAP8O/CWVSl01rLUcDcKPxg6FhkJR3RMiIhINlXZPfBD4EPBceGcqlXobcClQBH4GXAdsAi4Onn4pJaGWhkSxt3tCLQ0iIhIVlYaGY4C/pNPp9n77P4Zfo+iidDr9j+l0+pP4WRZ54Nzhq+YoEI+D+dsdxxFzPixoTIOIiERFpaFhJvBimf3HA534p1wCkE6nnwfuAY7e49qNNsmduygUGkREJCoqDQ2T6LcsdCqVmg5MBx5Op9P5fuVfxC/+JGHhBZ6CGRQ5TbkUEZGIqDQ0dLNzCDgy2P61TPkefBeFhJUZDFkoqqVBRESiodLQ8DxwUiqVCk/RfA9+PMPDZcrvA6zdw7qNPn1aGvR4bBERiZZK12n4Bf75E3ekUqnr8A+s+mf8ctF/KFP+rfSbaSGUXUpaK0KKiEhUVBoargbOAN4NvCvYZ8D/SafTmXDBVCr1ZmBucI6EhRd4QgMhRUQkWip9YFUPfirlpfhHYf8MOCWdTv+gTPHDgf8GfjtclRw1kjsvJa3uCRERiYqhPLCqE7i8gnI/BH5Y6XXN7CDgLOBEYH+gCXgZuB34nnOus1/5g4F/A94ONOBXo/yqc+6PZa7dFtT5ffgZIC8DPwCuc85Vv1+gzEBItTSIiEhUDMuzJ/bQPwGfBO7At2Dk8M+xuBz4kJktdM51A5jZ/viBl3n8GIt24HzgHjM7yTl3b+miZtaAH29xBL6r5DngJCCNnwlyWTXeXB/JMmMatIy0iIhExJBDQyqVGgN8AD/YcSZ+BsVa4M/AL4IWiaH4BXCFcy682uR1ZvYi8GX8gMtSN8gVwHjgjc65JQBmdjPwLHCNmc0PtSCch19g6iLnXGl8xQ1m9kvgEjO70Tm3coh13TNlHlqllgYREYmKIT0aO5VKnQWsAP4//Ifyyfipl+cF+1akUqmPDOWazrnF/QJDya3B9jAAMxsDnArcVwoMwfkdwI/wMzrCq1CeCXQRWq0y8D0gCXx4KPUcFmUej63QICIiUVFxaEilUhcCP8GPDVgMfBP4BJAKvn48OHZzKpX61DDUbXawLa1E+XqgEXikTNlHg+3RAGYWwy8+9VfnXKZf2cfwD9iq/jLXZVoatCKkiIhERUXdE6lU6iDgKmAL8JF0On1PmWL/mkql3gncAlyVSqV+n06nl+5Opcwsjp+pkQ+uB74rBGB1mVNK+2YF2wlAc7myzrkeM9sUKls96p4QEZEIq7Sl4WL8ugynDRAYAEin038ATgPiwEV7UK/vAQuBS51zLwT7WoJtT5nymX5lBitbKt9S7oCZXWBmi4dW3QqVXdxJoUFERKKh0tDwDuC+dDr9510VTKfTDwN/Ak7YnQqZ2TeATwHXO+euCB3qCraNZU5r6ldmsLKl8l3lDjjnrnfOHVV5jYeg3FMuNXtCREQiotLQMBt4YgjXfYLeMQkVM7PLgH8FbgQ+3u/wmmBbrluhtK/UHbEF/5CtncqaWSN+7EW5bo6RpYGQIiISYZWGBofvnqjUUMr6E8y+CnwVuBk4r8ziS0/juxuOKXP6wmC7GMA5V8Qv+nREEBLC3oR/3yPTBTGYsgMhFRpERCQaKg0Nq4ChNNm/EXi10sJmdil+saWfAucGH/p9BFMrfwsca2ZvCJ3bip/y+SJ+ZkTJz/HjFi7od6lP4wdY3lZp/YZNuKVBz54QEZGIqTQ0/BFYlEql3rqrgqlU6i3AscE5u2RmnwS+BrwC3AucaWZnhV7vDBX/En4VyN+b2RfNLAU8iO+GuLBf68QN+G6Sq8zsO2Z2npn9Cr+k9Lecc8srqd+wKjt7QmMaREQkGioNDd/Dd1H8OpVKDTjAMZVKvQP4DVAAvl/htUvrJeyLXwfip/1eXy4VdM69hF+J8lHgi8C/A53Au51zfWZ1OOey+MGYP8Q/ofMaYD5wIX46Z/VpTIOIiERYRes0pNPpF1Op1Gfx4eGeVCr1GL5V4FV8mNgX/wH9Jvx4hn+pdI0G59w5wDmVVtg59xx+WmclZbfiZ2IMx2JTe07rNIiISIQN5SmX/5FKpbbig8Ob8QEhzICtwGfT6fSNw1fFUaTMOg05TbkUEZGIGNKzJ9Lp9M34VoV/wk+LvBu4B7gJ/2CpOQoMg1BLg4iIRNiQn3KZTqc78CHhpoHKpFKpJqAhnU5v2+2ajUblFndSaBARkYgYUkvDEFwLbB6ha0dX2YGQ6p4QEZFoGKnQALuxwNOop+4JERGJsJEMDdJfssxASIUGERGJCIWGakqUaWkoKjSIiEg0KDRUU5mWBo1pEBGRqFBoqKbwmAY9e0JERCJGoaGatIy0iIhEWEXrNKRSqcJIV2SvoAdWiYhIhFW6uNPuTJ/Up2F/iX6LOzmn2RMiIhIZlT6wSt0YwyEeh1gMikXiOOIUyRcM5xxmWtZCRETqm8JAtfXronBA0alRRkRE6p9CQ7WVedKlxjWIiEgUKDRUm5aSFhGRiFJoqLYyLQ0aDCkiIlGg0FBtZVoaMlnNaBURkfqn0FBtZRZ46uFGk1EAACAASURBVMrma1UbERGRiik0VFuZ5090KzSIiEgEKDRUW3iBp+D5E109Cg0iIlL/FBqqrc+YBh8WujWmQUREIkChodqS/ZaSRt0TIiISDQoN1ZbobWkojWlQ94SIiESBQkO1lZlyqZYGERGJAoWGaisze0ItDSIiEgUKDdXW//HYqKVBRESiQaGh2pI7L+6k2RMiIhIFCg3VVmZMg7onREQkChQaqq3MA6vUPSEiIlGg0FBtyfCUSz17QkREokOhodrKLCPdre4JERGJAIWGaiu7ToMGQoqISP1TaKi2MlMu1T0hIiJRoNBQbcmdl5HOZPM452pVIxERkYooNFRbaJ2GxmBMQ9FBT05dFCIiUt8UGqot1D3RZMUdX6uLQkRE6p1CQ7WFuica6Q0N3T1qaRARkfqm0FBtiZ27J0AtDSIiUv8UGqot3NLgekODVoUUEZF6p9BQbWUWdwI9f0JEROqfQkO19VncqTcoqKVBRETqnUJDtYWmXCaL4e4JDYQUEZH6ptBQbYneloZEsbd1Qd0TIiJS7xQaqi3U0hAvqntCRESiQ6Gh2kIDIeOFPATLR2vKpYiI1DuFhmqLx/0LMBzxYIEndU+IiEi9U2iohVBrQ+mhVd0KDSIiUucUGmqhzJMuNaZBRETqnUJDLYQXeApCQ5emXIqISJ1TaKiFPi0NvoVB3RMiIlLvFBpqoWxLg0KDiIjUN4WGWkjuHBo0pkFEROqdQkMtaPaEiIhEkEJDLZQZ09CTL1IoFmtVIxERkV1SaKiFUEtDa6J3tx5aJSIi9UyhoRZCLQ1jEm7H11oVUkRE6plCQy2EQ0OsNzRoMKSIiNQzhYZaCHVPKDSIiEhU1Dw0mNmXzOx2M1tmZs7MVuyi/JvN7F4z225m28zsbjM7fICyM83sZjPbYGbdZrbYzD44Im9kKEJTLlvivYMfu3o0pkFEROpXzUMD8E3geOBlYMtgBc1sIXA/MA+4FPgqcCDwoJkt6Fd2IvAQ8D7gWuBioAO4zczOHeb3MDShloZmtTSIiEhEJHZdZMTt75xbBmBmzwCtg5T9DyALLHLOrQ7OuQ14DvgOcGKo7Bfx4eJU59xvg7I/Bh4B/t3MbnfOdQz3m6lIaExDs4VbGhQaRESkftW8paEUGHbFzA4AjgZuLwWG4PzVwO3ACWY2PXTKmcDLpcAQlC0AVwMTgZOHofq7J9Q90RQKDWppEBGRelbz0DAERwfbR8ocexQw4I0AZjYDmBXsL1c2fL3qS/S2NDSh0CAiItEQpdAwM9iuLnOstG/WbpTtw8wuMLPFu1XDSoVaGhqtd/CjuidERKSeRSk0tATbnjLHMv3KDKVsH865651zR+1WDSsVXkaa3tCgFSFFRKSeRSk0dAXbxjLHmvqVGUrZ6uvzwKrQQEh1T4iISB2LUmhYE2zLdSuU9q3ejbLVlwyHht6goCddiohIPYtSaHg82B5T5thCwAFPADjn1uJDwcIBygKM7LiFwYS6J5Iu3D2h0CAiIvUrMqHBOfcS/oP+g2ZWGuhI8PUHgT86514LnfJzYH8zOyVUNg5cCGwF7qpKxcsJdU8kir1BQd0TIiJSz2q+uJOZnQ3MCb6dAjSY2b8G3690zv00VPxi4E/4FSCvDvZdiA8/n+136W/hw8QtZnYVvuXhDPxUy/Occ9uH/c1UKtTSEA4N3VpGWkRE6ljNQwPwz8Db++37RrC9H9gRGpxzD5vZscDlwcsBDwMfdM49Fb6Ac26Tmb0VHx4+iV9p8n+B051zt47A+6hcqKUhXlT3hIiIREPNQ4Nz7tghln8EeEeFZVcDZ+9GtUZWqKUhXsj5ZalQ94SIiNS3yIxpGFVCLQ2xgmZPiIhINCg01EKopcHyWeIx39SQLzqyeY1rEBGR+qTQUAuhlgbL52hu6O0l0qqQIiJSrxQaaiG0uBO5HC2NodCgLgoREalTCg21EOqeIJeluSG+41sNhhQRkXql0FALoe4J8jla+nRPKDSIiEh9UmiohT7dE/1aGtQ9ISIidUqhoRZicYj3BoXWpO34WqFBRETqlUJDrSR6xzWMDS2xpe4JERGpVwoNtRIaDDku1jvNsktTLkVEpE4pNNTKlOk7vpzZuW7H15pyKSIi9UqhoVbmHrTjyxntq3Z8re4JERGpVwoNtRIKDVM2v7rja63TICIi9UqhoVbm9YaGCRtWgnOAuidERKR+KTTUyvTZ0NgEQGNXO5MLnYAGQoqISP1SaKiVWBzmHLjj24OyfjCkxjSIiEi9UmiopdC4hoN61gPqnhARkfql0FBL4dAQtDRoIKSIiNQrhYZamhcODevBOXVPiIhI3VJoqKXJ06F1HABjiz3MzLfT3aOBkCIiUp8UGmrJrN9gyPV0Z/O4YPqliIhIPVFoqLVwF0XPOhyQyam1QURE6o9CQ62FBkMeXBoMqRkUIiJShxQaai0UGg7IbiDmihoMKSIidUmhodbGT/IvoMnl2Te3mbVbumpcKRERkZ0pNNSDuX2nXj61YlMNKyMiIlKeQkM96Lcy5BKFBhERqUMKDfVgXt+VIV9a28727lwNKyQiIrIzhYZ6MKc3NOyX3UjCFXh6pVobRESkvig01IPWsTB1JgBJipy0/Rn+umJjjSslIiLSl0JDvXjLO3d8ec7WR1jxwora1UVERKQMhYZ68a73U5w+G4AxLsdpL93F5o5MjSslIiLSS6GhXiQbiP3jxTu+/bvuZaz+n3trWCEREZG+FBrqyUELeOmAY3Z8O/fen0JGCz2JiEh9UGioM7n3nsuWWDMAY7vb4dc/qXGNREREPIWGOnPAAbP58ZS37/je/fEOePSPNayRiIiIp9BQZ5LxGJtfdwyLm/YFwJyDH18Jf/5DjWsmIiJ7O4WGOnT4vMl8e/I7WZ70D7LCObjpKnjgd7WtmIiI7NUUGurQ4XMn0R5v4fPT3suKpql+p3Nw8/fhj3f4r0VERKpMoaEO7T+9jdamBNvizfyfyafRPWNe78Fb0nDFZ+DZJxQeRESkqhQa6lA8ZhwxbwoA2+NNXDTh78mHnk/Bsufhu1+Gb30Wnn1S4UFERKpCoaFOnXvcwYxpTADwSid8ZcZ7KRx7CiSSvYVe/l/47iXwtRQ8eDdke2pUWxER2RsoNNSpWZPG8KX3HUHM/PdPru3i6vFvw/3fH8Oxfw/xRG/hVcvhJ9+Dz58Nt90Af30EtmxUC4SIiAwrc/pgKSuVSjmAdDpd03rc/vDL/Oh/nt/x/adOOpRTjpoLm9bD3bfDn38/cAtD2wTY7xA4/hSYfziYVafSIiISZQN+WCg0DKBeQoNzjm//Zgl/fGYNADGDdx+xL//49oOY0NoIXR3w4D3wpztg47qBL7T/IfCeM2DB0QoPIiIyGIWGoaqX0ADQkyvw2Z88wotr23fsa26I86G37M/7Fu5HUzIOxQI8vRhe+BusWAorX4Ke7p0vtu8BcNzfw1Fvg+YxVXwXIiISEQoNQ1VPoQFgc0eGK//7KZ5ctrHP/omtjZxy1BxOPnJfxo9p7D1QLMLaV+CPv/VdGPlc3ws2NMKRb4VjToADD/Xfi4iIKDQMXb2FBvBdFYtf3sD1f3iOVzZ29DmWjMc4fsFMTj1qLvtPH4eFuyA2b4Df/xLuvwty2Z0vHIvBzDkw50DYZz/fApFIQDwOiQaYNQcmT1e3hojI3kGhYajqMTSUFIpF7lmyip/ev5TNHTsPgpw2vpk3HziVhQdOY8GciTQk4v7Atq3w6P/451isXjG0H9o20bdIHHCoDxGTpsHEKX4KaC7rZ3C88jKsWQnjJ8Ex7/BbERGJGoWGoarn0FCSKxR54Nk1/OaxFSwNjXcIa0zE2H96GwfNbOPgmeM5cEYbMyc0E1+9HB76vV9Zct3q3auAGYwdDx3tvjskLB6HI//Oz9w44NDeVopSuZhm+4qI1CmFhqGKQmgocc7x3Oqt3PH4Cv6ydD1d2fyg5eMxY8aEFmZPHMPsya3s35ZgfmET09pXE1+3CnI5KOSgUPCzM1Yshe6u3a9g8xgfFvI5KOR9gGgeAy1joKXVf93UDI3Nfpts6F1jwhUhFodps2DGvjBzXxg3wV+jUICeDOR6oLHJn68uFBGRPTXgP6SJgQ5IdJgZr5s9gdfNnkCuUOSZVzbzlxfX8+jSdazdsvOHfaHoWLWpk1WbOuHF9Tv2J2LN7DvlSKaPb2bKuGYmj2tiyrgmJjQnmdKxjglrX6Jp1UvENr3mp3du3dT74T5tlh8PMXMOPLcEXnym9wd2d/atgHM+jHR1AINMEx1IY7OfLdJ/fEYs1htCJkz24zCmTPddKZku2PAabHzNr3GRbICpM2DqTJgyw5ebMAXGT/Qhpc8NK0A244OPc34bi8OY1l2HlHwOOrZBV6dfN2PM2F2/v1zW39/uLh/e8nkftprH+NAUnvWSz8HKF+HFZ309D18Is+ZWdBtFRIZKLQ0DiFJLw2A2bc/w4tp2XlizlaVr2lm2blvZcRCVMmBMU5LWpgRtDTFmxDI0trUxfvIEprU1M218C20tDbRueJXxj/2epifvx6K0vHU87sdiNDb7sNPVWX7qKvjxHOMm+KDROs630GR7fMDIdPuw0D8wtbT2hpRSy0ipq2bzBt9VtHGdb2EZyMSpflxJLgfLntt5ca+5B8JbT/TdQ8UCdG73AW3rJj/mZM0rflsKT01BC09TC4xt8+NXxo33723SNF/XydP9DJtiATZtgHWrYP0af78mTvXjWyZN9dcYSE/GvxoaoaFh53C2K5vWwfKlPjRNnOJfjU1Du8ZAMl2w+CE/5qerA44/1c8sig+xjuJD7qsv+3u3z/5q/YsmdU8M1WgJDeV09eRZs7mTVZs7eWVDB8vWbWPZum2sax/gw3EPJFyBMcUshVicRGMDycZGmhMxmos9tOYztBR7GOuyTEw6JiSKtMULjIk54okY8XiMWCxOYzFH27Z1jNm8hsYNq4kFH+LOzH9oJBogm4lWOImitgnQ2bHz9N2whkYfjFpaffeTc34A7rYtPjCEJZL+/9/YNj82Ztx4vx0/CSZM8q1Fsbgfd/O3x8oP3m1p9SGndZy/Tus4//2Eyf464yfClk2+NeaVl+CVZYCDqbN869jUmbB6OTzx0M71mzoTTj0L3vT2oQecSmW64LVVvWGykg9Y5/xrJMcFlT4X+tfHOb8GzFOP+rqXWvaax8Dm9bD0Gf9MnNLfxX0PgH/4x76LyuXz8NKzPnROnua7HcdPUrioLwoNQzWaQ8NAOjI5Vm7YzoZtGTZuy7BhWzcbt2XY2pVla2cP7V1ZtncP8oFRDc4xtthD1uL0WGLHPzQxg3ENxuREgSmxHFMLHUzJbmVyz1YmZbeRTTSytXkC7S0TaG+ZSIsVmNazlcmZzYzv2szYrs20dGyhoXv7zj/SjGKy0f8jHYthFsPyOWygFogwi0HrWP8bePvmyh4qZua7SsaN988YSST8tn0zvPaq74YImzwdDjoMsllY8sjgH+oydJOnQdsk/5tzPJiKXPrgds63CmV7el+lbjOL+T+Ysbj/UG0d518trf4DdvWKvqu4jp8EBy2AgxfA5Bn+/2Mu619bNsLaV2HtSli7yh+bPhtmz/PdUWPbfPhY+4pvSerY5ruy5h7kp1LP2Me3NG1YC+vX+j9Lk6f5LsV99vcB6pWX4H//6l/Ln/f13PcA/9pnnp8d9cRDvotvqPabDwuP96Hi2cU7j5FqavF13Ge/3jrNmgMOH04y3f7ejhnrA2X4wX3gg8j2rf59d7RDx3bfwmbmz2kd57dtE/29KhdQSv8vywXEzu2w/AXfOjcnuCejezC3QsNQ7Y2hoRL5QpHOnjwdmRydmRzbu3Ns3J5h3dZu1rd3s669i66ePJlcgZ5cgUyuQCZbIFcYpLm9jjQU80wudNDg8nTGGumMNdJtSd+q0U9jMcfEQheTCh20FnvIWoKMJeiJJemxBD2NY2DMWFqbGxjTlCSfL9DU1c64zs2Mz2yhNQGtDQlam+K0NiQotLbROX4a3W1TsYYG8oVi7z3MFSg6R8IVmdi1kUnb1mFmrJ88l66W8QAk4jEmxXIc9MqTzH7hEZo3raHQ0ES+aQzZxjHkmlvJTp5BYdq+MHMO8RmziVMkns0Q7+km1tOF27YV174F2rcQ27aZhq0baNiyjtiWjVipy2TseP+BNW2W/4d283rftbJp/eCBpdSykMvu3hNZE0k/7bdQ8D9vy0Y/1mO4zNzXd+vkcn5dk66OXZ8j5U2aCtvbR+7Ju+Mm+JCV7fGtWEP5f9U8xv/ZnT7bdxFuWu+7vjat8382x0/yXW6Tp/mQuPwFH8bCxo6Hw94IB78BOrf5QPfaqz4ENjb1du+NG+/DSlMLNLf4n9e+xXfvvbbKbzNBC5eZ/6geOx4OeB0ceJh/TZvl/15lun1XaT7vf5FIJH0razLpX8PbGqbQMFQKDcMrVyjS3ZOnK5snm/cDCh3+M6cnX2BrZw9bO7Ns7cyyvTtLrlAkmy+SyxfJ5Ap0ZHJs787SkcnRkcnjnPO/GOAoFJ2/poyYuCswJd9Bd6KJ7bEm/K+AfhBuzIx4zIgbtFqBCZZlPFnayBKPx+hsbKWraRy5hibisRhFB84ViRfzNOYyNGY6GNPTQXO2i7HZ7UzMdzAxt53xuQ6aCz28NmEfVs06lM2z59MwZsyOINWVyRLv3EZrvou2fDethW5ac12Mz25nXHY7rd1baeraRqGphW1T5rB18r5snrQPxViccdvWM6Z9Pa3b1uOSTWye/ya6Zu5HIhEnETMa891M+8vdjH/krh3dYSNzY+MwZSa0b9qzGUrV1NwChx/jWzhK4366OvwH44GH+g+6SVN9y8Zdt8IDv9s5TE6c6p+Hs3m9/8BVQBuYxQYf4wS+i+cb1w/rTx3wgEJDeQoN0ZIvFOnqydPZk6czkyNXKJIvOgqFIrlCkaLz4aJYdBQdZHJ5Xz6Tp7MnR3fWt4x0Z/N0Zwvk+7WM5ItFenKl3/zz5PJFEvEY8ZiRiMcwY0fI6QlaWfQ3K/qai1n2zW0m4YokKBJ3ReIUcZgPvcG2x5JkYgl6LEHW/KS0GA5zjgRF2sgxkQwTXA9tLkN7cgwrGyazqmECORcjhuOA3EYO7V7FwZ2raS70kI0lyFucrMXpSDSzvnky61qmsHHsVEg0sE/PRmZ3b2Bm1zqacxk2tUxiXcsUXhszhc54MzM61zF7+2pmbVvDhMwWuprGsX3sZLrappBtGc+4jvVM2LyaiVtWM7ZjEx2tE1k38xA2zp7PltnziWczjNuwkrYNrzB2yxpyzeNYf8CRdMw9lIbmJpyD7pz/+5LJ+i6z5oY4zQ0JmhviJOIx8oUi8a0bmfXEPTS3b6Rz9gF0HnwkNmsuDYk4BefI5wvYti00rF9F49oVNK1bScu6V2je8houkcQ1NmPNzcQamnzrxbbNWL/PLWexHeNa3JixFFrGUmhuBRyJ7g7iXR1Y53bfqrA7ITAW810mk6b6LpaO8uvi1Mw++8NXrxnOK+6docHMYsDFwMeAucAG4DbgUudc5yCnKjTIHik6R3dPnu2ZHB3dObqyeRLxGI2JOE3JOMlEjO3dWTZt72FTR4bN23vI5gsUio6CcxQKjkTcaEzGaUomaErGiMWMYtFRcH5V0P5/dbO5Atu6c7R3ZdnWnaU7m6chEachEaMh7s/vzvpgVOpCKgY/r1j0LTeJuJFMxEjGYyRiMXryBbp6esvL6BRzRYoWjT76uCswsdDFxEInPZZgS7zFt37FYkHrY3nJeIyYQVuukxnZzczMbqHR5VmXGMv6xDjWJ8bRE0sypdDBtPw2pue30+xyLG+awvLm6eQTDcRjRjJmHJhdz+Hbl7NvZj3bkq2sb5nMuuZJbGqeSIPL05brpDXXybhcJy2FHpqKWZoLPTQVeuhOtrChZTIbmiexoXkS2xMtOFfEFR3OFZmR2czBnavYr30ls7espDHXTcFiZBON9MQbKFicuCuSKOZ3vLZO2ofJV1w7nLd5rw0N3wcuAn4N/A44BLgQeBA4wbmB23wUGkT6KhQdpX8v/BAPw5VacJwjX3AUir6lJZsPupcKRQrFIvmCI18sUiw6YmaYme/CNf+PeTwWIxn3+/NB61AuX9wRWjoyvgWpK5unMRGnudH/NtuUjFMsOrJBd1Y2KN+Z6R13gxkNQRBKJmIYkA9anfKlFqmio1gsUii6HT87G/z8XKEIDgrOv/9i0Ye2QtHtuE4yHtsRuOKx2I7xKKV7ILJbnCNJkZwNPl5h3tSxXPexRcP5k/e+xZ3M7FB8QPiVc+79of3Lgf8ATgduqVH1RCInHjN2/rfESGgpg0H5QNU7RqcUImJmfkKOGc75LrB8we3oGosFwSpmtuMauUKRXMGRyxfIhsJNvtDbXRaP2Y5zikErUr7o+gxM7glajUpj74AdgSlf9Ne3YKxKLGbEzcgVerveMjl/vBTcmhr8R0kmW+quyJMrOpIxIx6PkYj5n9KdLfgujZ4C2XxhR/deaZsIlTdgeybH1s4sWzp72N6dIxmP0dKYYExTguZkglyhSGdPjs5Mb0tYMh6jIRGjMRmn6IL3nY1od6EZOXb9FywZr14r0agNDcAZ+L8P3+u3/wbgW8BZKDSIyAiLmQXdREpXe6LofCvVQArFImBBuO3LOR+IikVHLAhVsSCYlAZkg9vRvVFqUSs6gnFQPnztaIkq9A2AxVIrlKN3kHbwfXg8Vb5YxOgNg35tt6A+QZ1yeR+EuoLxWYWio6kh6KZsiJMIWrL8YHHfEja2uWG4b/eARnNoOBooAo+FdzrnMma2JDguIiIRMFhgAIgPsm6CBcGt7LG+/5FdiMbIl90zE9jonCs3UXg1MNnMqhfPREREIm40h4YWYKCVRTKhMn2Y2QVmtnjEaiUiIhJRozk0dAGNAxxrCpXpwzl3vXPuqBGrlYiISESN5tCwBt8FUS44zMJ3XWTLHBMREZEyRnNoeBz//t4U3mlmTcDhgLogREREhmA0h4Zb8bNnPt1v//n4sQw/q3qNREREImzUTrl0zj1tZtcAnzKzXwF34VeEvAi4H63RICIiMiSjNjQEPg2sAC4A3gNsBK7GP3tCa7uKiIgMwagODc65AvCd4CUiIiJ7YDSPaRAREZFhpNAgIiIiFRnV3RPDIZVK1boKIiIi1eTS6XTZh3GopUFEREQqYqVHgMrIM7PFWqJ6z+k+Dg/dx+Gh+zg8dB+Hx0jfR7U0iIiISEUUGkRERKQiCg3VdX2tKzBK6D4OD93H4aH7ODx0H4fHiN5HjWkQERGRiqilQURERCqi0CAiIiIVUWgYYWYWM7PPmNnzZpYxs1fN7DtmNqbWdas3ZnaQmX3dzB41sw1mtt3MlpjZl8vdLzM72Mx+Y2ZbzKzTzB40s+NrUfd6Z2YtZrbczJyZ/aDMcd3LAZjZRDP7dzN7Kfg7vMHM/mRmb+tX7s1mdm/w53abmd1tZofXqt71xMxazewSM3s6uD8bzexhMzvHzKxf2b3+PprZl8zsdjNbFvydXbGL8hXfMzObaWY3B3+Ou81ssZl9sOK6aUzDyDKz7+Mfx/1r4Hf4x3NfCDwInKCnbfYys28BnwTuAB4FcsBxwIeAvwELnXPdQdn9gceAPPA9oB04HzgMOMk5d2/V30AdM7N/Bz4GtALXOOc+FTqmezkAM5sD3Ie/bz8GlgJtwOuBe5xz/xWUWxiUWw2UQtmngKnAW5xzT1e14nXEzGLA/cBbgJ/g/263AGcAbwK+7Zz7QlBW9xEwMwdsBp4E3ghsc87NHaBsxffMzCYCi4NjVwGrgDOBtwP/5Jy7cZeVc87pNUIv4FCgCPyy3/4LAQecWes61tMLOApoK7P/8uB+fSq07zagABwe2tcKrAReIAjEejmAI/GB4F+C+/iDfsd1Lwe+dw8CrwIzdlHuMWAbMCu0b1aw7/e1fh81vofHBH/uvttvfwOwDNiq+7jTPdsv9PUzwIpBylZ8z4BvB/8vTgntiwfX2AS07qpu6p4YWWcAhv/tLewGoAs4q+o1qmPOucXOufYyh24NtocBBF0VpwL3OeeWhM7vAH4EHAQcPcLVjQQzi+P/vN0N/KrMcd3LAZjZIuDv8L8JrzWzpJm1lCl3AP4e3e6cW13aH3x9O3CCmU2vVr3r0Lhguya80zmXBTYCnaD7GOacW1ZJud24Z2cCLzvnfhsqWwCuBiYCJ+/qZyo0jKyj8S0Nj4V3OucywBL20n+Md8PsYLsu2L4eaAQeKVP20WCre+t9BpiPb64sR/dyYKV/QF8xs98C3UCnmS01s3DgL92fge6h4ZuY91aPAVuBz5vZB81s32AMzRX4+3JZUE73cegqvmdmNgPfAvHoAGXD1xuQQsPImglsdM71lDm2GphsZg1VrlOkBL8pX4pvXr8l2D0z2K4uc0pp36wRrlrdM7N5wNeArzvnVgxQTPdyYAcH2xvwv4V9FPhnIAv81MzODY7rHg7CObcF35q1Gd8VthJ4Hj9+6f3OuRuCorqPQzeUezYs91ePxh5ZLUC5wACQCZXJVqc6kfQ9YCFwiXPuhWBfqYm43L3N9CuzN7sWWI4f8DQQ3cuBjQ2224HjguZ0zOzX+L74b5rZT9A9rEQHvm/+DuBhfAj7JHCLmZ3mnPsDuo+7Yyj3bFjur0LDyOrCj1ItpylURsows2/gm9Wvd85dETpUumeNZU7TfQWC5vMTgUXOudwgRXUvB9YdbH9eCgzgf3M2szuAf8S3RugeDsLMFuCDwmecc9eF9v8cHyRuCGbw6D4O3VDu2bDcX3VPjKw1+C6Icv+TZuG7LtTKUIaZXQb8K3Aj8PF+h0sDqso1pZX2lWuC2ysEf96uAu4CXjOzA4IBU3OCIm3BvvHoXg5mVbB9rcyxtcF2ArqHu/IZ/IfS7eGdzrku4E78n8u56D7ujqHcs2G5vwoN4RXLBwAABjtJREFUI+tx/D1+U3inmTUBh+Pny0o/ZvZV4KvAzcB5LpgXFPI0vontmDKnLwy2e/O9bQamAO8BXgy97guOnxV8fx66l4MpDWCeXeZYad96/N9zGPgeOuCJ4a1apJQ+kOJljiVCW93Hoav4njnn1uJDwcIBykIlf9drPR91NL+ABQy+TsNZta5jvb3wgx4dPjDEBil3O35tgTeE9pXWFljK3r22QBL4QJnXJ4J7+7vg+4N0Lwe9jxPwc91X/b/27j5kzykO4Pj3aiJ/MCyNabWSmCRbRlg2L4kQFi0v25KII0UiLdoj/0xeJnKQSGab7Z9ZVoxh1kZsMSHMP/MyjMK8bsLlj9/1zNXtvvdct3l2z7Pvp66unnOf+9q5zp7d92/nOud3qK1fBw4mntGvr5WtqeqOqpWNqsqW9/peetyPc6rfu5tbyvtHur4F9rAfO/bfQHkaGvcZcBed8zR8B+wzUHvMCDnIiqJ4gHguv5gYLh5LZIhcDZxamhFym6IoriUymn0K3EYEXHWbypgw1b8++U0ia+Qc4h/IlUSgdnZZlst2Vrv/L4qiGENMjGzNCGlfdlAUxVXAI8D7wONEQqJriMDhnLIsX6jqnQi8QgQYD1Rvvw4YCZxUluU7O7npu4wqq+ZbRBA2j/jsO4D4HRsDXFuWZa7q2o9AURTT+Ptx4nXE79091c+flGU5t1a3cZ8VRTGCGHkYQTzC3EjkE5pMjOo+NmDjeh1FDfWDiOJuJDLrba3+ku6lQeat3e0AniCi4E7Hipb6Y4ElxBrwX4BVRGrunt/LrngQH9D/yAhpXw7Yb1OIdew/EyspXqg+jFvrnQC8RIxC/AgsA8b3uv27wgEcSqSQ/pwITn8AVgJT7Me2/bWi6edgt31GPC6aSyTW2kIEdFObts2RBkmS1IgTISVJUiMGDZIkqRGDBkmS1IhBgyRJasSgQZIkNWLQIEmSGjFokCRJjbjLpaQhL6XUR+xnckrOeUVvWyP9fxk0SBpQSqlJFji/kKUhzqBBUjdu385rG3ZWIyT1hkGDpMZyzn29boOk3jFokPSfq88hIHbrux44gthMZykwM+f8VZv3HUbscHoacCCxqc5y4I6c88dt6g8jdkucBhxF7Aa4kdjw584O77kQuLmqv4XYgOrGnPPGHblnaXfg6glJg+kG4GHgHeA+YrfXy4HXUkoH1iumlCYAa4HLgDXA3cTukpcCa1NKx7bU3xN4HngIGA3MB+4ntv69ADipTXsS8BTxKOVB4D1gKrA8pbTXDt+tNMQ50iCpsWoEoZ0tOefZbcrPAo7POb9du8YcYuRhNnBFVVYATwL7ApflnOfV6k8FngaeSikdmXP+s3qpDzgdeBa4KOe8tfaevaprtToTmJBzfrdWdz5wMXAesKjjzUtypEFSV2Z1OG7pUH9uPWCo9AGbgUtq/7s/kXh88Xo9YADIOS8EVgGHAxNh22OJBPwKXF0PGKr3bM05f9OmPffXA4bKo9X5uA73IKniSIOkxnLORZdvebXNNTanlNYBk4CxwDpgfPXyyx2u8zIRMIwDVhIBxnDgjZzzF120Z22bss+q8/5dXEfaLTnSIGkwbepQ3j8JcnjL+csO9fvL92s5dzt58fs2Zb9X52FdXkva7Rg0SBpMIzuUH1SdN7ecD2pTF+Dglnr9X/6H/PumSeqWQYOkwTSptSClNBw4hlju+EFV3D/vYXKH6/SXv1WdPyQCh6NTSqP+i4ZKGphBg6TBNC2lNK6lrI94HLGgNoFxNbEcc2KVR2Gb6ueTgfXEhEhyzn8AGdgbeLh1uWRKac/WJZ2SdpwTISU1tp0llwDP5JzXtZQ9B6xOKS0i5iVMrI4N1FZc5JzLlNIM4EVgYUppCTGacDhwPpEUanptuSVESuvjgXOB9SmlpVW90cAZwE3AE//qRiW1ZdAgqRuztvPaBmIlRN0cYDGRl2Eq8BPxRT4z5/x1vWLO+Y0qwdOtRP6Fc4mMkAuIjJAftdT/LaV0JnA1MB2YARTAF9Wfuar725O0PUVZNtm8TpKacytqaWhyToMkSWrEoEGSJDVi0CBJkhpxToMkSWrEkQZJktSIQYMkSWrEoEGSJDVi0CBJkhoxaJAkSY0YNEiSpEb+Anl3oOpj6HztAAAAAElFTkSuQmCC\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"
]
},
{
"cell_type": "code",
"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))"
]
},
"<div style=\"text-align: left\">\n",
" <img src=\"../fidle/img/00-Fidle-logo-01.svg\" style=\"width:80px\"/>\n",
"</div>"
}
],
"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
}