Files
CVML-MachineLearning/exercises/Jupyter notebook CVML.ipynb

2653 lines
302 KiB
Plaintext
Raw Blame History

This file contains ambiguous Unicode characters

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

{
"cells": [
{
"cell_type": "markdown",
"id": "ab021475",
"metadata": {},
"source": [
"## Jupyter notebook Lars Rook & Sem van der Hoeven"
]
},
{
"cell_type": "markdown",
"id": "ffa039c8",
"metadata": {},
"source": [
"# Week 4"
]
},
{
"cell_type": "markdown",
"id": "239c1156",
"metadata": {},
"source": [
"## 4.1: ZTDL 1 - First Deep Learning Model\n",
"We hebben bij elk code blok comments gezet die uitleggen wat de code doet."
]
},
{
"cell_type": "code",
"execution_count": 1,
"id": "155b55bd",
"metadata": {},
"outputs": [],
"source": [
"import numpy as np # import the numpy library and assign the name np to it\n",
"\n",
"# magic function that sets the backend of matplotlib to the inline backend\n",
"# source: https://stackoverflow.com/questions/43027980/purpose-of-matplotlib-inline\n",
"%matplotlib inline \n",
"import matplotlib.pyplot as plt # import the matplotlib.pyplot and assign the name plt to it"
]
},
{
"cell_type": "code",
"execution_count": 2,
"id": "feeaffc8",
"metadata": {},
"outputs": [],
"source": [
"from sklearn.datasets import make_circles # import the make_circles module from the sklearn.datasets module"
]
},
{
"cell_type": "code",
"execution_count": 3,
"id": "c1db0180",
"metadata": {},
"outputs": [],
"source": [
"\"\"\"\n",
"roept de make_circles functie aan van de sklearn.datasets module\n",
"de make_circles functie maakt een cirkel met een kleinere cirkel hier binnen in.\n",
"- de n_samples staat voor hoeveel points gegenereerd moeten worden.\n",
"- de noise variabele staat voor hoeveel noise eraan toegeoegd moet worden\n",
"- de factor staat voor de schaling tussen de binnenste en buitenste cirkel\n",
"- de random_state variabele wordt gebruikt voor het genereren van een random nummer die gebruikt wordt voor het shufflen van de dataset en de noise.\n",
"\"\"\"\n",
"\n",
"X, y = make_circles(n_samples=1000,\n",
" noise=0.1,\n",
" factor=0.2,\n",
" random_state=0)"
]
},
{
"cell_type": "code",
"execution_count": 4,
"id": "46267e93",
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"array([[ 0.24265541, 0.0383196 ],\n",
" [ 0.04433036, -0.05667334],\n",
" [-0.78677748, -0.75718576],\n",
" ...,\n",
" [ 0.0161236 , -0.00548034],\n",
" [ 0.20624715, 0.09769677],\n",
" [-0.19186631, 0.08916672]])"
]
},
"execution_count": 4,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"# X bevat de gegenereerde samples van de make_circles methode.\n",
"\n",
"X"
]
},
{
"cell_type": "code",
"execution_count": 5,
"id": "34c5864c",
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"(1000, 2)"
]
},
"execution_count": 5,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"# aangezien x de array of shape [n_samples, 2] bevat, geeft dit de gegeven aantal samples en 2.\n",
"X.shape"
]
},
{
"cell_type": "code",
"execution_count": 6,
"id": "fa762402",
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"Text(0.5, 1.0, 'Blue circles and Red crosses')"
]
},
"execution_count": 6,
"metadata": {},
"output_type": "execute_result"
},
{
"data": {
"image/png": "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\n",
"text/plain": [
"<Figure size 360x360 with 1 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"\"\"\"\n",
"Hier wordt met matplotlib een grafiek van de samples getekend.\n",
"allereerst wordt er een figuur aangemaakt, daarna worden de waarden die zijn gegenereerd getekend op deze figuur.\n",
"Hierna worden de limits van de x en y assen gezet.\n",
"Daarna wordt de legenda aangemaakt, hierbij zijn de bolletjes een 0 en de kruisjes een 1.\n",
"Als laatst wordt de titel van de figuur aangemaakt.\n",
"\"\"\"\n",
"\n",
"plt.figure(figsize=(5, 5))\n",
"plt.plot(X[y==0, 0], X[y==0, 1], 'ob', alpha=0.5)\n",
"plt.plot(X[y==1, 0], X[y==1, 1], 'xr', alpha=0.5)\n",
"plt.xlim(-1.5, 1.5)\n",
"plt.ylim(-1.5, 1.5)\n",
"plt.legend(['0', '1'])\n",
"plt.title(\"Blue circles and Red crosses\")"
]
},
{
"cell_type": "code",
"execution_count": 7,
"id": "9efb32c3",
"metadata": {},
"outputs": [],
"source": [
"# importeer modules van tensorflow\n",
"from tensorflow.keras.models import Sequential\n",
"from tensorflow.keras.layers import Dense\n",
"from tensorflow.keras.optimizers import SGD"
]
},
{
"cell_type": "code",
"execution_count": 8,
"id": "43c0a1d3",
"metadata": {},
"outputs": [],
"source": [
"# Maak een sequentieel model aan\n",
"model = Sequential()"
]
},
{
"cell_type": "code",
"execution_count": 9,
"id": "585aa0e2",
"metadata": {},
"outputs": [],
"source": [
"# voeg een laag aan het model toe met 4 output neurons en 2 input neurons. Deze laag gebruikt de hyperbolic tangent activation functie.\n",
"model.add(Dense(4, input_shape=(2,), activation='tanh'))"
]
},
{
"cell_type": "code",
"execution_count": 10,
"id": "84e68325",
"metadata": {},
"outputs": [],
"source": [
"# voeg nog een laag toe met 1 output neuron. Deze laag gebruikt de Sigmoid activation function, sigmoid(x) = 1 / (1 + exp(-x))\n",
"model.add(Dense(1, activation='sigmoid'))"
]
},
{
"cell_type": "code",
"execution_count": 11,
"id": "fef8e12a",
"metadata": {},
"outputs": [],
"source": [
"\"\"\"\n",
"compile configureert het model voor het trainen.\n",
"- als optimizer wordt de gradient descent optimizer gebruikt met een learning rate van 0.5\n",
"- als loss wordt binary cross entropy gebruikt. \n",
"- bij de metrics parameter wordt een lijst van attributen gezet waarop het model wordt geëvalueerd. In dit geval is het alleen de nauwkeurigheid\n",
"\"\"\" \n",
"model.compile(SGD(learning_rate=0.5), 'binary_crossentropy', metrics=['accuracy'])"
]
},
{
"cell_type": "code",
"execution_count": 12,
"id": "0e1bcf7b",
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Epoch 1/20\n",
"32/32 [==============================] - 0s 579us/step - loss: 0.6674 - accuracy: 0.6450\n",
"Epoch 2/20\n",
"32/32 [==============================] - 0s 579us/step - loss: 0.5857 - accuracy: 0.7630\n",
"Epoch 3/20\n",
"32/32 [==============================] - 0s 516us/step - loss: 0.4744 - accuracy: 0.8540\n",
"Epoch 4/20\n",
"32/32 [==============================] - 0s 579us/step - loss: 0.3558 - accuracy: 0.9190\n",
"Epoch 5/20\n",
"32/32 [==============================] - 0s 579us/step - loss: 0.2594 - accuracy: 0.9960\n",
"Epoch 6/20\n",
"32/32 [==============================] - 0s 579us/step - loss: 0.1930 - accuracy: 1.0000\n",
"Epoch 7/20\n",
"32/32 [==============================] - 0s 579us/step - loss: 0.1507 - accuracy: 1.0000\n",
"Epoch 8/20\n",
"32/32 [==============================] - 0s 579us/step - loss: 0.1224 - accuracy: 1.0000\n",
"Epoch 9/20\n",
"32/32 [==============================] - 0s 578us/step - loss: 0.1030 - accuracy: 1.0000\n",
"Epoch 10/20\n",
"32/32 [==============================] - 0s 580us/step - loss: 0.0887 - accuracy: 1.0000\n",
"Epoch 11/20\n",
"32/32 [==============================] - 0s 547us/step - loss: 0.0778 - accuracy: 1.0000\n",
"Epoch 12/20\n",
"32/32 [==============================] - 0s 579us/step - loss: 0.0691 - accuracy: 1.0000\n",
"Epoch 13/20\n",
"32/32 [==============================] - 0s 483us/step - loss: 0.0622 - accuracy: 1.0000\n",
"Epoch 14/20\n",
"32/32 [==============================] - 0s 579us/step - loss: 0.0566 - accuracy: 1.0000\n",
"Epoch 15/20\n",
"32/32 [==============================] - 0s 579us/step - loss: 0.0519 - accuracy: 1.0000\n",
"Epoch 16/20\n",
"32/32 [==============================] - 0s 515us/step - loss: 0.0480 - accuracy: 1.0000\n",
"Epoch 17/20\n",
"32/32 [==============================] - 0s 547us/step - loss: 0.0446 - accuracy: 1.0000\n",
"Epoch 18/20\n",
"32/32 [==============================] - 0s 515us/step - loss: 0.0416 - accuracy: 1.0000\n",
"Epoch 19/20\n",
"32/32 [==============================] - 0s 483us/step - loss: 0.0390 - accuracy: 1.0000\n",
"Epoch 20/20\n",
"32/32 [==============================] - 0s 515us/step - loss: 0.0368 - accuracy: 1.0000\n"
]
},
{
"data": {
"text/plain": [
"<tensorflow.python.keras.callbacks.History at 0x22d8c7c8308>"
]
},
"execution_count": 12,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"\"\"\"\n",
"fit traint het model voor het aantal gegeven epochs.\n",
"- X staat voor de input samples.\n",
"- y staat voor de target data (tensors)\n",
"- epochs staat voor hoe vaak het model getrained wordt.\n",
"\"\"\"\n",
"model.fit(X, y, epochs=20)"
]
},
{
"cell_type": "code",
"execution_count": 13,
"id": "20f9bb50",
"metadata": {},
"outputs": [],
"source": [
"\"\"\"\n",
"met de linspace functies worden nummers gegenereerd over een gelijk interval.\n",
"met de meshgrid functies worden coordinate matrices gemaakt van coordinate vectors.\n",
"met de c_ functie wordt een matrix gemaakt van de genenereerde arrays.\n",
"met de predict functie worden output predictions gegenereerd voor de input samples.\n",
"met de reshape functie wordt de shape aangepast naar die van de meshgrid.\n",
"\"\"\"\n",
"hticks = np.linspace(-1.5, 1.5, 101)\n",
"vticks = np.linspace(-1.5, 1.5, 101)\n",
"aa, bb = np.meshgrid(hticks, vticks)\n",
"ab = np.c_[aa.ravel(), bb.ravel()]\n",
"c = model.predict(ab)\n",
"cc = c.reshape(aa.shape)"
]
},
{
"cell_type": "code",
"execution_count": 14,
"id": "a2e4f082",
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"array([[-1.5 , -1.5 ],\n",
" [-1.47, -1.5 ],\n",
" [-1.44, -1.5 ],\n",
" ...,\n",
" [ 1.44, 1.5 ],\n",
" [ 1.47, 1.5 ],\n",
" [ 1.5 , 1.5 ]])"
]
},
"execution_count": 14,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"ab"
]
},
{
"cell_type": "code",
"execution_count": 15,
"id": "1e5b54db",
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"Text(0.5, 1.0, 'Blue circles and Red crosses')"
]
},
"execution_count": 15,
"metadata": {},
"output_type": "execute_result"
},
{
"data": {
"image/png": "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\n",
"text/plain": [
"<Figure size 360x360 with 1 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"\"\"\"\n",
"Hier wordt met matplotlib een grafiek van de samples getekend.\n",
"allereerst wordt er een figuur aangemaakt\n",
"Daarna wordt de contour getekend aan de hand van de output van het model.\n",
"Daarna worden de waarden die zijn gegenereerd getekend op deze figuur.\n",
"Hierna worden de limits van de x en y assen gezet.\n",
"Daarna wordt de legenda aangemaakt, hierbij zijn de bolletjes een 0 en de kruisjes een 1.\n",
"Als laatst wordt de titel van de figuur aangemaakt.\n",
"\"\"\"\n",
"plt.figure(figsize=(5, 5))\n",
"plt.contourf(aa, bb, cc, cmap='bwr', alpha=0.2)\n",
"plt.plot(X[y==0, 0], X[y==0, 1], 'ob', alpha=0.5)\n",
"plt.plot(X[y==1, 0], X[y==1, 1], 'xr', alpha=0.5)\n",
"plt.xlim(-1.5, 1.5)\n",
"plt.ylim(-1.5, 1.5)\n",
"plt.legend(['0', '1'])\n",
"plt.title(\"Blue circles and Red crosses\")"
]
},
{
"cell_type": "markdown",
"id": "9267f151",
"metadata": {},
"source": [
"## 4.2 : ZTDL 2 - Data"
]
},
{
"cell_type": "markdown",
"id": "20cea62e",
"metadata": {},
"source": [
"a. we hebben allebei het notebook bestudeerd.\n",
"b. we hebben een spreadsheet gevonden over heart attack analysis and predictions.\n",
"c. Hieronder zijn een aantal technieken en plots te zien die wij op de data hebben uitgevoerd. Om het beter te begrijpen hebben wij allebei samen de technieken en plots uitgevoerd."
]
},
{
"cell_type": "markdown",
"id": "eaab705e",
"metadata": {},
"source": [
"### Standaard info\n",
"We hebben eerst de standaard gegevens van de dataset verkend."
]
},
{
"cell_type": "code",
"execution_count": 16,
"id": "4deee696",
"metadata": {},
"outputs": [],
"source": [
"%matplotlib inline\n",
"import matplotlib.pyplot as plt\n",
"import pandas as pd\n",
"import numpy as np"
]
},
{
"cell_type": "code",
"execution_count": 17,
"id": "6b792675",
"metadata": {},
"outputs": [],
"source": [
"df = pd.read_csv('../data/heart.csv')"
]
},
{
"cell_type": "code",
"execution_count": 18,
"id": "81faf37f",
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"pandas.core.frame.DataFrame"
]
},
"execution_count": 18,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"type(df)"
]
},
{
"cell_type": "code",
"execution_count": 19,
"id": "6417b5c6",
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"<div>\n",
"<style scoped>\n",
" .dataframe tbody tr th:only-of-type {\n",
" vertical-align: middle;\n",
" }\n",
"\n",
" .dataframe tbody tr th {\n",
" vertical-align: top;\n",
" }\n",
"\n",
" .dataframe thead th {\n",
" text-align: right;\n",
" }\n",
"</style>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>age</th>\n",
" <th>sex</th>\n",
" <th>cp</th>\n",
" <th>trtbps</th>\n",
" <th>chol</th>\n",
" <th>fbs</th>\n",
" <th>restecg</th>\n",
" <th>thalachh</th>\n",
" <th>exng</th>\n",
" <th>oldpeak</th>\n",
" <th>slp</th>\n",
" <th>caa</th>\n",
" <th>thall</th>\n",
" <th>output</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>0</th>\n",
" <td>63</td>\n",
" <td>1</td>\n",
" <td>3</td>\n",
" <td>145</td>\n",
" <td>233</td>\n",
" <td>1</td>\n",
" <td>0</td>\n",
" <td>150</td>\n",
" <td>0</td>\n",
" <td>2.3</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>1</td>\n",
" <td>1</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1</th>\n",
" <td>37</td>\n",
" <td>1</td>\n",
" <td>2</td>\n",
" <td>130</td>\n",
" <td>250</td>\n",
" <td>0</td>\n",
" <td>1</td>\n",
" <td>187</td>\n",
" <td>0</td>\n",
" <td>3.5</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>2</td>\n",
" <td>1</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2</th>\n",
" <td>41</td>\n",
" <td>0</td>\n",
" <td>1</td>\n",
" <td>130</td>\n",
" <td>204</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>172</td>\n",
" <td>0</td>\n",
" <td>1.4</td>\n",
" <td>2</td>\n",
" <td>0</td>\n",
" <td>2</td>\n",
" <td>1</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3</th>\n",
" <td>56</td>\n",
" <td>1</td>\n",
" <td>1</td>\n",
" <td>120</td>\n",
" <td>236</td>\n",
" <td>0</td>\n",
" <td>1</td>\n",
" <td>178</td>\n",
" <td>0</td>\n",
" <td>0.8</td>\n",
" <td>2</td>\n",
" <td>0</td>\n",
" <td>2</td>\n",
" <td>1</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4</th>\n",
" <td>57</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>120</td>\n",
" <td>354</td>\n",
" <td>0</td>\n",
" <td>1</td>\n",
" <td>163</td>\n",
" <td>1</td>\n",
" <td>0.6</td>\n",
" <td>2</td>\n",
" <td>0</td>\n",
" <td>2</td>\n",
" <td>1</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"text/plain": [
" age sex cp trtbps chol fbs restecg thalachh exng oldpeak slp \\\n",
"0 63 1 3 145 233 1 0 150 0 2.3 0 \n",
"1 37 1 2 130 250 0 1 187 0 3.5 0 \n",
"2 41 0 1 130 204 0 0 172 0 1.4 2 \n",
"3 56 1 1 120 236 0 1 178 0 0.8 2 \n",
"4 57 0 0 120 354 0 1 163 1 0.6 2 \n",
"\n",
" caa thall output \n",
"0 0 1 1 \n",
"1 0 2 1 \n",
"2 0 2 1 \n",
"3 0 2 1 \n",
"4 0 2 1 "
]
},
"execution_count": 19,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"df.head()"
]
},
{
"cell_type": "code",
"execution_count": 20,
"id": "202237c5",
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"<class 'pandas.core.frame.DataFrame'>\n",
"RangeIndex: 303 entries, 0 to 302\n",
"Data columns (total 14 columns):\n",
" # Column Non-Null Count Dtype \n",
"--- ------ -------------- ----- \n",
" 0 age 303 non-null int64 \n",
" 1 sex 303 non-null int64 \n",
" 2 cp 303 non-null int64 \n",
" 3 trtbps 303 non-null int64 \n",
" 4 chol 303 non-null int64 \n",
" 5 fbs 303 non-null int64 \n",
" 6 restecg 303 non-null int64 \n",
" 7 thalachh 303 non-null int64 \n",
" 8 exng 303 non-null int64 \n",
" 9 oldpeak 303 non-null float64\n",
" 10 slp 303 non-null int64 \n",
" 11 caa 303 non-null int64 \n",
" 12 thall 303 non-null int64 \n",
" 13 output 303 non-null int64 \n",
"dtypes: float64(1), int64(13)\n",
"memory usage: 33.3 KB\n"
]
}
],
"source": [
"df.info()"
]
},
{
"cell_type": "code",
"execution_count": 21,
"id": "9a94370a",
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"<div>\n",
"<style scoped>\n",
" .dataframe tbody tr th:only-of-type {\n",
" vertical-align: middle;\n",
" }\n",
"\n",
" .dataframe tbody tr th {\n",
" vertical-align: top;\n",
" }\n",
"\n",
" .dataframe thead th {\n",
" text-align: right;\n",
" }\n",
"</style>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>age</th>\n",
" <th>sex</th>\n",
" <th>cp</th>\n",
" <th>trtbps</th>\n",
" <th>chol</th>\n",
" <th>fbs</th>\n",
" <th>restecg</th>\n",
" <th>thalachh</th>\n",
" <th>exng</th>\n",
" <th>oldpeak</th>\n",
" <th>slp</th>\n",
" <th>caa</th>\n",
" <th>thall</th>\n",
" <th>output</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>count</th>\n",
" <td>303.000000</td>\n",
" <td>303.000000</td>\n",
" <td>303.000000</td>\n",
" <td>303.000000</td>\n",
" <td>303.000000</td>\n",
" <td>303.000000</td>\n",
" <td>303.000000</td>\n",
" <td>303.000000</td>\n",
" <td>303.000000</td>\n",
" <td>303.000000</td>\n",
" <td>303.000000</td>\n",
" <td>303.000000</td>\n",
" <td>303.000000</td>\n",
" <td>303.000000</td>\n",
" </tr>\n",
" <tr>\n",
" <th>mean</th>\n",
" <td>54.366337</td>\n",
" <td>0.683168</td>\n",
" <td>0.966997</td>\n",
" <td>131.623762</td>\n",
" <td>246.264026</td>\n",
" <td>0.148515</td>\n",
" <td>0.528053</td>\n",
" <td>149.646865</td>\n",
" <td>0.326733</td>\n",
" <td>1.039604</td>\n",
" <td>1.399340</td>\n",
" <td>0.729373</td>\n",
" <td>2.313531</td>\n",
" <td>0.544554</td>\n",
" </tr>\n",
" <tr>\n",
" <th>std</th>\n",
" <td>9.082101</td>\n",
" <td>0.466011</td>\n",
" <td>1.032052</td>\n",
" <td>17.538143</td>\n",
" <td>51.830751</td>\n",
" <td>0.356198</td>\n",
" <td>0.525860</td>\n",
" <td>22.905161</td>\n",
" <td>0.469794</td>\n",
" <td>1.161075</td>\n",
" <td>0.616226</td>\n",
" <td>1.022606</td>\n",
" <td>0.612277</td>\n",
" <td>0.498835</td>\n",
" </tr>\n",
" <tr>\n",
" <th>min</th>\n",
" <td>29.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>94.000000</td>\n",
" <td>126.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>71.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" </tr>\n",
" <tr>\n",
" <th>25%</th>\n",
" <td>47.500000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>120.000000</td>\n",
" <td>211.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>133.500000</td>\n",
" <td>0.000000</td>\n",
" <td>0.000000</td>\n",
" <td>1.000000</td>\n",
" <td>0.000000</td>\n",
" <td>2.000000</td>\n",
" <td>0.000000</td>\n",
" </tr>\n",
" <tr>\n",
" <th>50%</th>\n",
" <td>55.000000</td>\n",
" <td>1.000000</td>\n",
" <td>1.000000</td>\n",
" <td>130.000000</td>\n",
" <td>240.000000</td>\n",
" <td>0.000000</td>\n",
" <td>1.000000</td>\n",
" <td>153.000000</td>\n",
" <td>0.000000</td>\n",
" <td>0.800000</td>\n",
" <td>1.000000</td>\n",
" <td>0.000000</td>\n",
" <td>2.000000</td>\n",
" <td>1.000000</td>\n",
" </tr>\n",
" <tr>\n",
" <th>75%</th>\n",
" <td>61.000000</td>\n",
" <td>1.000000</td>\n",
" <td>2.000000</td>\n",
" <td>140.000000</td>\n",
" <td>274.500000</td>\n",
" <td>0.000000</td>\n",
" <td>1.000000</td>\n",
" <td>166.000000</td>\n",
" <td>1.000000</td>\n",
" <td>1.600000</td>\n",
" <td>2.000000</td>\n",
" <td>1.000000</td>\n",
" <td>3.000000</td>\n",
" <td>1.000000</td>\n",
" </tr>\n",
" <tr>\n",
" <th>max</th>\n",
" <td>77.000000</td>\n",
" <td>1.000000</td>\n",
" <td>3.000000</td>\n",
" <td>200.000000</td>\n",
" <td>564.000000</td>\n",
" <td>1.000000</td>\n",
" <td>2.000000</td>\n",
" <td>202.000000</td>\n",
" <td>1.000000</td>\n",
" <td>6.200000</td>\n",
" <td>2.000000</td>\n",
" <td>4.000000</td>\n",
" <td>3.000000</td>\n",
" <td>1.000000</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"text/plain": [
" age sex cp trtbps chol fbs \\\n",
"count 303.000000 303.000000 303.000000 303.000000 303.000000 303.000000 \n",
"mean 54.366337 0.683168 0.966997 131.623762 246.264026 0.148515 \n",
"std 9.082101 0.466011 1.032052 17.538143 51.830751 0.356198 \n",
"min 29.000000 0.000000 0.000000 94.000000 126.000000 0.000000 \n",
"25% 47.500000 0.000000 0.000000 120.000000 211.000000 0.000000 \n",
"50% 55.000000 1.000000 1.000000 130.000000 240.000000 0.000000 \n",
"75% 61.000000 1.000000 2.000000 140.000000 274.500000 0.000000 \n",
"max 77.000000 1.000000 3.000000 200.000000 564.000000 1.000000 \n",
"\n",
" restecg thalachh exng oldpeak slp caa \\\n",
"count 303.000000 303.000000 303.000000 303.000000 303.000000 303.000000 \n",
"mean 0.528053 149.646865 0.326733 1.039604 1.399340 0.729373 \n",
"std 0.525860 22.905161 0.469794 1.161075 0.616226 1.022606 \n",
"min 0.000000 71.000000 0.000000 0.000000 0.000000 0.000000 \n",
"25% 0.000000 133.500000 0.000000 0.000000 1.000000 0.000000 \n",
"50% 1.000000 153.000000 0.000000 0.800000 1.000000 0.000000 \n",
"75% 1.000000 166.000000 1.000000 1.600000 2.000000 1.000000 \n",
"max 2.000000 202.000000 1.000000 6.200000 2.000000 4.000000 \n",
"\n",
" thall output \n",
"count 303.000000 303.000000 \n",
"mean 2.313531 0.544554 \n",
"std 0.612277 0.498835 \n",
"min 0.000000 0.000000 \n",
"25% 2.000000 0.000000 \n",
"50% 2.000000 1.000000 \n",
"75% 3.000000 1.000000 \n",
"max 3.000000 1.000000 "
]
},
"execution_count": 21,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"df.describe()"
]
},
{
"cell_type": "markdown",
"id": "345b68bd",
"metadata": {},
"source": [
"### indexing\n",
"We zullen nu verschillende items in de dataset indexeren"
]
},
{
"cell_type": "code",
"execution_count": 22,
"id": "ce906842",
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"age 54.0\n",
"sex 1.0\n",
"cp 0.0\n",
"trtbps 140.0\n",
"chol 239.0\n",
"fbs 0.0\n",
"restecg 1.0\n",
"thalachh 160.0\n",
"exng 0.0\n",
"oldpeak 1.2\n",
"slp 2.0\n",
"caa 0.0\n",
"thall 2.0\n",
"output 1.0\n",
"Name: 10, dtype: float64"
]
},
"execution_count": 22,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"# het 10de element ophalen uit de dataset\n",
"df.iloc[10]"
]
},
{
"cell_type": "code",
"execution_count": 23,
"id": "5f8d9afe",
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"<div>\n",
"<style scoped>\n",
" .dataframe tbody tr th:only-of-type {\n",
" vertical-align: middle;\n",
" }\n",
"\n",
" .dataframe tbody tr th {\n",
" vertical-align: top;\n",
" }\n",
"\n",
" .dataframe thead th {\n",
" text-align: right;\n",
" }\n",
"</style>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>age</th>\n",
" <th>sex</th>\n",
" <th>oldpeak</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>0</th>\n",
" <td>63</td>\n",
" <td>1</td>\n",
" <td>2.3</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1</th>\n",
" <td>37</td>\n",
" <td>1</td>\n",
" <td>3.5</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2</th>\n",
" <td>41</td>\n",
" <td>0</td>\n",
" <td>1.4</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3</th>\n",
" <td>56</td>\n",
" <td>1</td>\n",
" <td>0.8</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4</th>\n",
" <td>57</td>\n",
" <td>0</td>\n",
" <td>0.6</td>\n",
" </tr>\n",
" <tr>\n",
" <th>5</th>\n",
" <td>57</td>\n",
" <td>1</td>\n",
" <td>0.4</td>\n",
" </tr>\n",
" <tr>\n",
" <th>6</th>\n",
" <td>56</td>\n",
" <td>0</td>\n",
" <td>1.3</td>\n",
" </tr>\n",
" <tr>\n",
" <th>7</th>\n",
" <td>44</td>\n",
" <td>1</td>\n",
" <td>0.0</td>\n",
" </tr>\n",
" <tr>\n",
" <th>8</th>\n",
" <td>52</td>\n",
" <td>1</td>\n",
" <td>0.5</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"text/plain": [
" age sex oldpeak\n",
"0 63 1 2.3\n",
"1 37 1 3.5\n",
"2 41 0 1.4\n",
"3 56 1 0.8\n",
"4 57 0 0.6\n",
"5 57 1 0.4\n",
"6 56 0 1.3\n",
"7 44 1 0.0\n",
"8 52 1 0.5"
]
},
"execution_count": 23,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"# de age, sex en oldpeak van de eerste 9 elementen ophalen\n",
"df.loc[0:8,['age','sex','oldpeak']]"
]
},
{
"cell_type": "code",
"execution_count": 24,
"id": "ce4a5f85",
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"0 1\n",
"1 1\n",
"2 0\n",
"3 1\n",
"4 0\n",
"Name: sex, dtype: int64"
]
},
"execution_count": 24,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"# de head opvragen van de elementen met het sex attribuut\n",
"df['sex'].head()"
]
},
{
"cell_type": "code",
"execution_count": 25,
"id": "d129b322",
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"array([1, 0], dtype=int64)"
]
},
"execution_count": 25,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"# unieke element van sex ophalen\n",
"df['sex'].unique()"
]
},
{
"cell_type": "code",
"execution_count": 26,
"id": "37d36915",
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"<div>\n",
"<style scoped>\n",
" .dataframe tbody tr th:only-of-type {\n",
" vertical-align: middle;\n",
" }\n",
"\n",
" .dataframe tbody tr th {\n",
" vertical-align: top;\n",
" }\n",
"\n",
" .dataframe thead th {\n",
" text-align: right;\n",
" }\n",
"</style>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>age</th>\n",
" <th>sex</th>\n",
" <th>cp</th>\n",
" <th>trtbps</th>\n",
" <th>chol</th>\n",
" <th>fbs</th>\n",
" <th>restecg</th>\n",
" <th>thalachh</th>\n",
" <th>exng</th>\n",
" <th>oldpeak</th>\n",
" <th>slp</th>\n",
" <th>caa</th>\n",
" <th>thall</th>\n",
" <th>output</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>72</th>\n",
" <td>29</td>\n",
" <td>1</td>\n",
" <td>1</td>\n",
" <td>130</td>\n",
" <td>204</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>202</td>\n",
" <td>0</td>\n",
" <td>0.0</td>\n",
" <td>2</td>\n",
" <td>0</td>\n",
" <td>2</td>\n",
" <td>1</td>\n",
" </tr>\n",
" <tr>\n",
" <th>58</th>\n",
" <td>34</td>\n",
" <td>1</td>\n",
" <td>3</td>\n",
" <td>118</td>\n",
" <td>182</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>174</td>\n",
" <td>0</td>\n",
" <td>0.0</td>\n",
" <td>2</td>\n",
" <td>0</td>\n",
" <td>2</td>\n",
" <td>1</td>\n",
" </tr>\n",
" <tr>\n",
" <th>125</th>\n",
" <td>34</td>\n",
" <td>0</td>\n",
" <td>1</td>\n",
" <td>118</td>\n",
" <td>210</td>\n",
" <td>0</td>\n",
" <td>1</td>\n",
" <td>192</td>\n",
" <td>0</td>\n",
" <td>0.7</td>\n",
" <td>2</td>\n",
" <td>0</td>\n",
" <td>2</td>\n",
" <td>1</td>\n",
" </tr>\n",
" <tr>\n",
" <th>239</th>\n",
" <td>35</td>\n",
" <td>1</td>\n",
" <td>0</td>\n",
" <td>126</td>\n",
" <td>282</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>156</td>\n",
" <td>1</td>\n",
" <td>0.0</td>\n",
" <td>2</td>\n",
" <td>0</td>\n",
" <td>3</td>\n",
" <td>0</td>\n",
" </tr>\n",
" <tr>\n",
" <th>65</th>\n",
" <td>35</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>138</td>\n",
" <td>183</td>\n",
" <td>0</td>\n",
" <td>1</td>\n",
" <td>182</td>\n",
" <td>0</td>\n",
" <td>1.4</td>\n",
" <td>2</td>\n",
" <td>0</td>\n",
" <td>2</td>\n",
" <td>1</td>\n",
" </tr>\n",
" <tr>\n",
" <th>...</th>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" </tr>\n",
" <tr>\n",
" <th>60</th>\n",
" <td>71</td>\n",
" <td>0</td>\n",
" <td>2</td>\n",
" <td>110</td>\n",
" <td>265</td>\n",
" <td>1</td>\n",
" <td>0</td>\n",
" <td>130</td>\n",
" <td>0</td>\n",
" <td>0.0</td>\n",
" <td>2</td>\n",
" <td>1</td>\n",
" <td>2</td>\n",
" <td>1</td>\n",
" </tr>\n",
" <tr>\n",
" <th>151</th>\n",
" <td>71</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>112</td>\n",
" <td>149</td>\n",
" <td>0</td>\n",
" <td>1</td>\n",
" <td>125</td>\n",
" <td>0</td>\n",
" <td>1.6</td>\n",
" <td>1</td>\n",
" <td>0</td>\n",
" <td>2</td>\n",
" <td>1</td>\n",
" </tr>\n",
" <tr>\n",
" <th>129</th>\n",
" <td>74</td>\n",
" <td>0</td>\n",
" <td>1</td>\n",
" <td>120</td>\n",
" <td>269</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>121</td>\n",
" <td>1</td>\n",
" <td>0.2</td>\n",
" <td>2</td>\n",
" <td>1</td>\n",
" <td>2</td>\n",
" <td>1</td>\n",
" </tr>\n",
" <tr>\n",
" <th>144</th>\n",
" <td>76</td>\n",
" <td>0</td>\n",
" <td>2</td>\n",
" <td>140</td>\n",
" <td>197</td>\n",
" <td>0</td>\n",
" <td>2</td>\n",
" <td>116</td>\n",
" <td>0</td>\n",
" <td>1.1</td>\n",
" <td>1</td>\n",
" <td>0</td>\n",
" <td>2</td>\n",
" <td>1</td>\n",
" </tr>\n",
" <tr>\n",
" <th>238</th>\n",
" <td>77</td>\n",
" <td>1</td>\n",
" <td>0</td>\n",
" <td>125</td>\n",
" <td>304</td>\n",
" <td>0</td>\n",
" <td>0</td>\n",
" <td>162</td>\n",
" <td>1</td>\n",
" <td>0.0</td>\n",
" <td>2</td>\n",
" <td>3</td>\n",
" <td>2</td>\n",
" <td>0</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"<p>303 rows × 14 columns</p>\n",
"</div>"
],
"text/plain": [
" age sex cp trtbps chol fbs restecg thalachh exng oldpeak slp \\\n",
"72 29 1 1 130 204 0 0 202 0 0.0 2 \n",
"58 34 1 3 118 182 0 0 174 0 0.0 2 \n",
"125 34 0 1 118 210 0 1 192 0 0.7 2 \n",
"239 35 1 0 126 282 0 0 156 1 0.0 2 \n",
"65 35 0 0 138 183 0 1 182 0 1.4 2 \n",
".. ... ... .. ... ... ... ... ... ... ... ... \n",
"60 71 0 2 110 265 1 0 130 0 0.0 2 \n",
"151 71 0 0 112 149 0 1 125 0 1.6 1 \n",
"129 74 0 1 120 269 0 0 121 1 0.2 2 \n",
"144 76 0 2 140 197 0 2 116 0 1.1 1 \n",
"238 77 1 0 125 304 0 0 162 1 0.0 2 \n",
"\n",
" caa thall output \n",
"72 0 2 1 \n",
"58 0 2 1 \n",
"125 0 2 1 \n",
"239 0 3 0 \n",
"65 0 2 1 \n",
".. ... ... ... \n",
"60 1 2 1 \n",
"151 0 2 1 \n",
"129 1 2 1 \n",
"144 0 2 1 \n",
"238 3 2 0 \n",
"\n",
"[303 rows x 14 columns]"
]
},
"execution_count": 26,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"# sorteer de values van attribuut age op optellende manier\n",
"df.sort_values('age', ascending = True)"
]
},
{
"cell_type": "code",
"execution_count": 27,
"id": "c379d785",
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"<AxesSubplot:title={'center':'age chol relation'}>"
]
},
"execution_count": 27,
"metadata": {},
"output_type": "execute_result"
},
{
"data": {
"image/png": "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\n",
"text/plain": [
"<Figure size 432x288 with 1 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"dfplot = df[['age','chol']]\n",
"dfplot.plot(title='age chol relation')"
]
},
{
"cell_type": "code",
"execution_count": 28,
"id": "601da936",
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"True 207\n",
"False 96\n",
"Name: sex, dtype: int64"
]
},
"execution_count": 28,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"amountMale = df['sex'] > 0 # assuming male = 1\n",
"piecounts = amountMale.value_counts()\n",
"piecounts"
]
},
{
"cell_type": "code",
"execution_count": 29,
"id": "a128aabd",
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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\n",
"text/plain": [
"<Figure size 360x360 with 1 Axes>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"piecounts.plot(kind='pie',\n",
" figsize=(5, 5),\n",
" explode=[0, 0.12],\n",
" labels=['male', 'female'],\n",
" autopct='%1.1f%%',\n",
" shadow=True,\n",
" startangle=60,\n",
" fontsize=16);"
]
},
{
"cell_type": "markdown",
"id": "95e144df",
"metadata": {},
"source": [
"## 4.3 : ZTDL 3 Machine Learning"
]
},
{
"cell_type": "markdown",
"id": "79972227",
"metadata": {},
"source": [
"### Linear regression\n",
"Deze code blokken zijn nodig als setup voor de linear regression met keras\n",
"We hebben gekozen voor een dataset die gebruikt kan worden voor linear regression. De dataset heeft geen bepaalde betekenis."
]
},
{
"cell_type": "code",
"execution_count": 30,
"id": "09ee5be2",
"metadata": {},
"outputs": [],
"source": [
"%matplotlib inline\n",
"import matplotlib.pyplot as plt\n",
"import pandas as pd\n",
"import numpy as np"
]
},
{
"cell_type": "code",
"execution_count": 31,
"id": "37389405",
"metadata": {},
"outputs": [],
"source": [
"# read the csv file into the df variable\n",
"df = pd.read_csv('../data/test.csv')"
]
},
{
"cell_type": "code",
"execution_count": 32,
"id": "a7ea6eb2",
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"<div>\n",
"<style scoped>\n",
" .dataframe tbody tr th:only-of-type {\n",
" vertical-align: middle;\n",
" }\n",
"\n",
" .dataframe tbody tr th {\n",
" vertical-align: top;\n",
" }\n",
"\n",
" .dataframe thead th {\n",
" text-align: right;\n",
" }\n",
"</style>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>x</th>\n",
" <th>y</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>0</th>\n",
" <td>77</td>\n",
" <td>79.775152</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1</th>\n",
" <td>21</td>\n",
" <td>23.177279</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2</th>\n",
" <td>22</td>\n",
" <td>25.609262</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3</th>\n",
" <td>20</td>\n",
" <td>17.857388</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4</th>\n",
" <td>36</td>\n",
" <td>41.849864</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"text/plain": [
" x y\n",
"0 77 79.775152\n",
"1 21 23.177279\n",
"2 22 25.609262\n",
"3 20 17.857388\n",
"4 36 41.849864"
]
},
"execution_count": 32,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"# check out what is in the first few lines\n",
"df.head()"
]
},
{
"cell_type": "code",
"execution_count": 33,
"id": "952802ba",
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"<AxesSubplot:title={'center':'x and y in the dataset'}, xlabel='x', ylabel='y'>"
]
},
"execution_count": 33,
"metadata": {},
"output_type": "execute_result"
},
{
"data": {
"image/png": "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\n",
"text/plain": [
"<Figure size 432x288 with 1 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"# plot the points in the dataset\n",
"df.plot(kind='scatter',\n",
" x='x',\n",
" y='y',\n",
" title='x and y in the dataset')"
]
},
{
"cell_type": "code",
"execution_count": 34,
"id": "8e9d0f89",
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"[<matplotlib.lines.Line2D at 0x22d8ddab408>]"
]
},
"execution_count": 34,
"metadata": {},
"output_type": "execute_result"
},
{
"data": {
"image/png": "iVBORw0KGgoAAAANSUhEUgAAAYUAAAEWCAYAAACJ0YulAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjMuNCwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8QVMy6AAAACXBIWXMAAAsTAAALEwEAmpwYAAAv80lEQVR4nO3deZwcdZ3/8denu+dIJhBygTlNIERIkAScBSKYRfAA5Fg1IIgEd1HQH6wgSAAxgYRTAllkRRDwQBEhgJyy+xMBRfwhGCCJCWfkyAkJIeQimaP78/ujqnu6Z7pnepLuqZ6Z9/PxmMdUVVdXf2oI9envbe6OiIgIQCzqAEREpHIoKYiISIaSgoiIZCgpiIhIhpKCiIhkKCmIiEiGkoJ0e2Z2qZndUYLrfMrMXi1FTOH1fmlml5fqeq2uXZJ7FmlNSUEk5O5/cfePbc97zezrZvZ0qWMqhXImpw4+909m9o2u/lzZMUoKIiKSoaQgJWFm55vZfa2O/beZXV/g/AvN7J9mtsnMXjKzL2a99nUze9rMrjWz9Wb2ppkdmfX6GDP7c/jex4DB7cR1gZn9zcwS4f63zWyJmdXmOfdQM1uRtf+WmX3PzBaZ2QYzu7vA+/YGbgYmm9lmM/sg6+UBZvb7MNZnzWyPrPftZWaPmdn7ZvaqmZ3Qzn20e89mdo+ZvRPG+ZSZTQiPnw6cDEwPY3u4o79/ns8+wMzmm9lGM3vXzOZmvXaQmf0/M/vAzBaa2aHh8SuATwE/Dj/3x4WuLxXG3fWjnx3+AYYCW4Bdwv0EsAb4RIHzjweGEXwx+Ur43qHha18HmoBvAnHg28AqwMLXnwHmAjXAFGATcEeBz4kBTwGXAnsC64H9Cpx7KLAia/8t4LkwzoHAy8C3Crz368DTrY79EngfOCD8e/wGuCt8rQ5YDvx7+Nr+wHvAhALXb/eegf8Adgpfvx5Y0CqOy4v9+xf47FPC7X7AQeH2cGAdcFR4nc+G+0PC1/8EfCPqf5v66dyPSgpSEu6+muDhe3x46AjgPXd/vsD597j7KndPufvdwOsED8+0t939VndPArcTJJ3dzGwU8C/ADHdvcPengIfbiSsFTAO+AzwEXOPuL3bi1m4I43w//JxJnXgvwO/c/Tl3byZICun3Hw285e6/cPdmd38BuA+Y2voCxdyzu//c3Te5ewNBApxoZv0LBVXE3z9bEzDWzAa7+2Z3/1t4/GvAo+7+aHidx4D5BElCuiklBSml2wkeFIS/f13oRDObZmYLwmqHD4B9yK0SeSe94e4fhpv9CL7drnf3LVnnvt1eUO7+FvAkMBq4sZgbyRcH8GEYQyne/1HgwPT9h3+Dk4GP5LlGu/dsZnEzuzqsDtpIUMKB9qvVOvr7ZzsNGAe8YmZ/N7Ojs+7h+Fb3cAhBApduKhF1ANKjPADcZGb7EHwTnp7vJDP7KHArcDjwjLsnzWwBYEV8xmqCevq6rIfkKKDgdL9mdhQwGXgcmAOcUdTddE5npxteDvzZ3T9bxLkd3fNXgeOAzxAkhP4E1WTpv2dObJ39+7v768BJZhYDvgTca2aDwnv4tbt/s0DcmoK5G1JJQUrG3bcB9wJ3As+5+7ICp9YRPDDWApjZvxN8Uy3mM94mqKKYZWbVZnYIcEyh881sMPAz4BvAqcAxYZIotXeBEWZWXeT5jwDjzOwUM6sKf/4lbLTOUcQ97wQ0ENTn9wWuzBPb7ln7nfr7m9nXzGxIWBX3QXg4CdxB8Pf8fFhaqQ0b60cU+FzpBpQUpNRuBz5OO1VH7v4ScB1BA+a74fl/7cRnfBU4kKAR9xLgV+2cewvwYFjvvY6gKuS28JtuKT0BLAHeMbP3OjrZ3TcBnwNOJGhEfwf4IUFDcT7t3fOvCKqTVgIvAX9r9d6fAePDKp4HtuPvfwSwxMw2Az8CTnT3be6+nKCE8n2CBLMcOJ+W58qPgKkW9CC7oZ3rSwVJ9+YQKYmwUfQV4CPuvjHqeESkc1RSkJIJ65zPJeh2qYQg0g2poVlKwszqCKoi3iaobhCRbkjVRyIikqHqIxERyejW1UeDBw/20aNHRx2GiEi38vzzz7/n7kPyvdatk8Lo0aOZP39+1GGIiHQrZlZwFgBVH4mISIaSgoiIZCgpiIhIhpKCiIhkKCmIiEhG2ZKCmY00syfN7GULlj88Ozx+qZmtDOdyX5A9Y6WZXWRmS8OlCT9frthERCS/cpYUmoHz3H1v4CDgTDMbH772X+4+Kfx5FCB87URgAsE0CT8xs3gZ4xOR7iKZhLPPhsWLo46kxytbUnD31eESg+lpgl8mWNO1kOMIJlJrcPc3gaUUXh5QRHqTO++EG26AffeFb3876mh6tC5pUzCz0cB+wLPhobPMbJGZ/dzMBoTHhhPMx562gjxJxMxON7P5ZjZ/7dq15QxbRCpBUxPMmhVsu8Nuu0UbTw9X9qRgZv0IFiQ/J5xO+SZgD4IFzFcTLPYB+ZcCbDNbn7vf4u717l4/ZEjeUdoi0pP86lfwz38G2wMGwHe/G208PVxZk4KZVREkhN+4++8A3P1dd0+GS/vdSksV0QpgZNbbRxCsSCUivVVDA8ye3bJ//vnQv3908fQC5ex9ZATLAL7s7nOzjg/NOu2LQLrl6CHgRDOrMbMxwJ7Ac+WKT0S6gZ/9DJaFS30PGQL/+Z/RxtMLlHNCvIOBU4B/mNmC8Nj3gZPMbBJB1dBbwBkA7r7EzOYRrDHbDJzp7skyxicilWzrVrjiipb9Cy6Afv2ii6eXKFtScPenyd9O8Gg777kCuKLQ6yLSi/z0p7AqrEEeOlS9jrqIRjSLSOXZsgWuuqpl//vfh759o4unF1FSEJHK8+Mfw5o1wfbIkfDNb0YbTy+ipCAilWXjRrjmmpb9GTOgpia6eHoZJQURqSzXXw/vvx9s7747fP3rUUbT6ygpiEjlWL8e5s5t2Z85E6qqoounF1JSEJHKcd11sGFDsP2xj8HJJ0cbTy+kpCAilWHt2qDqKO3SSyFRzqFUko+SgohUhmuuCbqiAuyzD5xwQrTx9FJKCiISvXfegRtvbNmfNQtiejxFQX91EYneVVcF01oA7LcffPGL0cbTiykpiEi0li+Hm29u2b/sMrB8M+RIV1BSEJFoXXEFNDYG2wceCEcd1f75UlZKCiISnTffDKbHTrv8cpUSIqakICLRmT0bmpuD7SlT4PDDo41HlBREJCKvvRYstZmmtoSKoKQgItGYNQtSqWD7s58NSgoSOSUFEel6ixfDb3/bsn/ZZdHFIjmUFESk6116KbgH21/4QtDrSCqCkoKIdK0XX4T77mvZnz07ulikDSUFEelaM2e2bH/pS7D//tHFIm0oKYhI13n2WXjkkWDbLGhsloqipCAiXSe7lPCVrwSzoUpFUVIQka7xl7/AH/4QbMdiQWOzVBwlBREpP3eYMaNl/5RTgpXVpOIoKYhI+T3xBPz5z8F2IpFbjSQVRUlBRMqrdSnhP/4Ddt89unikXUoKIlJe//M/8MwzwXZ1NfzgB9HGI+1SUhCR8nHPrSo6/XQYOTK6eKRDSgoiUj4PPgjPPx9s19bC978fbTzSISUFESmPVCq3LeHMM2Ho0OjikaKULSmY2Ugze9LMXjazJWZ2dnh8oJk9Zmavh78HZL3nIjNbamavmtnnyxWbiHSBe+4JZkMFqKuDCy6INh4pSjlLCs3Aee6+N3AQcKaZjQcuBB539z2Bx8N9wtdOBCYARwA/MbN4GeMTkXJJJnMHp33nOzBkSGThSPHKlhTcfbW7vxBubwJeBoYDxwG3h6fdDvxbuH0ccJe7N7j7m8BS4IByxSciZXTnnfDKK8H2zjvD974XbTxStC5pUzCz0cB+wLPAbu6+GoLEAewanjYcWJ71thXhsdbXOt3M5pvZ/LVr15Y1bhHZDk1NuaWEc8+FgQMjC0c6p+xJwcz6AfcB57j7xvZOzXPM2xxwv8Xd6929foiKoyKV5/bb4Y03gu0BA+CccyINRzqnrEnBzKoIEsJv3P134eF3zWxo+PpQYE14fAWQ3YF5BLCqnPGJSIk1NOQurTl9OvTvH1080mnl7H1kwM+Al919btZLDwGnhtunAg9mHT/RzGrMbAywJ/BcueITkTK47TZYtizYHjIEzjor2nik0xJlvPbBwCnAP8xsQXjs+8DVwDwzOw1YBhwP4O5LzGwe8BJBz6Uz3T1ZxvhEpJS2boUrrmjZv/BC6Ncvunhku5QtKbj70+RvJwA4vMB7rgCuyPeaiFS4m2+G1auD7aFD4dvfjjYe2S4a0SwiO27zZrjqqpb9iy+GPn2ii0e2m5KCiOy4H/8Y0l3ER46Eb3wj2nhkuykpiMiO2bABrrmmZX/mTKipiS4e2SFKCiKyY66/HtavD7Z33x1OPbXd06WyKSmIyPZ7/32Ym9Xj/JJLoKoqunhkhykpiMj2u+462BhOVPCxj8HJJ0cbj+wwJQUR2T5r18KPftSyP2sWxDWxcXenpCAi2+eHP4QtW4Ltj38cjj8+2nikJJQURKTzVq+GG29s2Z81C2J6nPQE+q8oIp131VWwbVuwvf/+8G//Fmk4UjpKCiLSOcuWwU9/2rJ/2WVghWa0ke5GSUFEOueKK6CxMdg+6CA48sho45GSUlIQkeK98Qb8/Oct+5dfrlJCD6OkICLFmz0bmpuD7X/9VzjssGjjkZJTUhCR4rz6Kvz61y37akvokZQURKQ4s2ZBKhVsf/az8KlPRRuPlIWSgoh0bPFiuOuulv3sdZilR1FSEJGOXXIJuAfbRx8NBx4YbTxSNkoKItK+F1+E3/2uZX/27OhikbJTUhCR9s2c2bL95S/DfvtFF4uUnZKCiBT2t7/BI48E22ZBY7P0aEoKIlJYdinhxBNhwoToYpEuoaQgIvk99RQ89liwHYvBpZdGGo50DSUFEWnLHWbMaNmfNg3GjYsuHukySgoi0tbjjwclBYBEIrcaSXo0JQURydW6lHDaaTBmTHTxSJdSUhCRXI8+GvQ6AqiuhosvjjYe6VJKCiLSwj23quiMM2DkyOjikS6npCAiLR54AF54IdiurYWLLoo0HOl6SgoiEkilcksJZ50FQ4dGF49EomxJwcx+bmZrzGxx1rFLzWylmS0If47Keu0iM1tqZq+a2efLFZeIFDBvXjAbKkBdHUyfHm08EolylhR+CRyR5/h/ufuk8OdRADMbD5wITAjf8xMzi5cxNhHJ1tycOzjt7LNhyJDIwpHolC0puPtTwPtFnn4ccJe7N7j7m8BS4IByxSYirdx5Z7CyGkD//vC970Ubj0QmijaFs8xsUVi9NCA8NhxYnnXOivBYG2Z2upnNN7P5a9euLXesIj1fU1PuRHfnngsDBhQ+X3q0rk4KNwF7AJOA1cB14fF8C716vgu4+y3uXu/u9UNUvBXZcb/8JbzxRrA9cCCcc06U0UjEujQpuPu77p509xRwKy1VRCuA7M7QI4BVXRmbSK/U0JC7tOb06bDzztHFI5Hr0qRgZtn9274IpHsmPQScaGY1ZjYG2BN4ritjE+mVbr0Vloc1t7vuGnRDlV4tUa4Lm9lvgUOBwWa2ArgEONTMJhFUDb0FnAHg7kvMbB7wEtAMnOnuyXLFJiLA1q1w5ZUt+xdeGHRFlV6tbEnB3U/Kc/hn7Zx/BXBFueIRkVZuuglWrw62hw2Db30r2nikImhEs0hvtHkzXHVVy/7FF0OfPtHFIxVDSUGkN/rv/4b33gu2R40KpscWQUlBpPfZsAHmzGnZnzEDamqii0cqipKCSG9z/fWwfn2wvccecOqpkYYjlUVJQaQ3ef99mDu3Zf+SS6CqKrp4pOIoKYj0JtdeCxs3Btt77QVf/Wq08UjFUVIQ6S3WrIEbbmjZnzUL4pqMWHIpKYj0Fj/8IWzZEmzvuy9MnRptPFKRlBREeoNVq+AnP2nZnzULYvrfX9rSvwqR3uCqq2DbtmD7E5+A446LNh6pWEoKIj3dsmVwyy0t+5ddBpZvtnoRJQWRnu/yy6GxMdiePBmOyLdKrkhASUGkJ/vnP+EXv2jZv/xylRKkXUoKIj3Z7NnQ3BxsH3ooHHZYpOFI5eswKZjZWVlrKYtId/HKK3DHHS372SusiRRQTEnhI8DfzWyemR1hprKnSLcwaxakUsH25z4HhxwSbTzSLXSYFNz9BwTLY/4M+DrwupldaWZ7lDk2Edle//gH3H13y75KCVKkotoU3N2Bd8KfZmAAcK+ZXVPG2ERke11yCbgH28ccAwccEG080m10uBynmX0HOBV4D7gNON/dm8wsBrwOTC9viCLSKS+8APff37I/e3Z0sUi3U8wazYOBL7n729kH3T1lZkeXJywR2W4zZ7ZsT50KkyZFFop0Px0mBXef2c5rL5c2HBHZIc88A7//fbBtBpdeGmk40v1onIJIT5JdSjjpJJgwIbpYpFtSUhDpKf78Z/jjH4PteDxobBbpJCUFkZ7AHWbMaNmfNg3GjYsuHum2lBREeoI//hH+8pdgO5HITRAinaCkINLdtS4lnHYajBkTXTzSrSkpiHR3v/89PPtssF1TAz/4QbTxSNktfXcT985fztJ3N5X82sWMUxCRSuWe2+PojDNgxIjo4pGym/nAP/jV35Zl9qdNHsXs4z5esuurpCDSnd1/P7z4YrDdpw9cdFG08UhZLX13U05CAPjVM8tKWmJQUhDprpLJ3FLCWWfBRz4SXTxSEus2N7Bw+Qes29zQ5rWnl76X9z2Fjm+PsiUFM/u5ma0xs8VZxwaa2WNm9nr4e0DWaxeZ2VIze9XMPl+uuER6jHnzYMmSYLtfP5iuaci6uwcXrOTgHz7B1257loN/+AQPLViZeW3d5ga2NDTlfd/gftUli6GcJYVfAq0Xg70QeNzd9wQeD/cxs/HAicCE8D0/MbN4GWMT6d6am3OnsDj7bBg8OLJwpLD2vvm3Pu+C+xaxrSnFpoZmtjWlmH7fItZtbsgki5/86Y287528R+n+25etodndnzKz0a0OHwccGm7fDvwJuCA8fpe7NwBvmtlS4ADgmXLFJ9Kt/eY38NprwXb//nDeedHG0wut29zAivVbGTGgD4P61eQ958EFK7ngvkVUxWI0pVJc8+V9OXbScCBoH1iw/AMmjdyFAXXVPPnKGhKx3DXMqmIxlqzamEkW+VTFS7vuWVf3PtrN3VcDuPtqM9s1PD4c+FvWeSvCY22Y2enA6QCjRo0qY6giFaqpKVhVLe2882CAVsztSu097NOyv/lvI3ign3/vIt7f0siLy9bz4MLVmXMNqEnE2Nac++Df0tgMOMmUF4ylNhFnxfqtBRNTZ1VKl9R8qS7vX8HdbwFuAaivry/8lxLpqX7xC3jzzWB74MCg6ki6TL6H/fT7FjF+6M5saUwyYkAfAJ58ZQ3xVqsXNzSnuPThl9pc06FNQgBIOfz19fdoShZ+1DWlUpnPLIWuTgrvmtnQsJQwFFgTHl8BjMw6bwSwqotjE6l827blLq15wQWw887RxdMLrVi/FW/1zb05meKoG/5CTSLO1qZmzIyaRIwtjckd/rzbnn4z7/GaRAwzuObL+5aslABdnxQeIljF7erw94NZx+80s7nAMII1oZ/r4thEKt+tt8KKFcH2rrvCmWdGG08vs/TdTTz9+loaWn1zD77kO43J5vCI05Tc8YQAUKiQcN3xE5m8x6CSJgQoY1Iws98SNCoPNrMVwCUEyWCemZ0GLAOOB3D3JWY2D3iJYA3oM929NH9RkZ7iww/hyitb9i+6COrqoounl2k9kjhK0yaP4uiJw8py7XL2PjqpwEuHFzj/CuCKcsUj0u3ddBO8806wPWwYfOtb0cbTg7XuWZRvJHE5Td1/GA8tXE1jVjGhOm58/6i9OWTsYMbutlPZPrtSGppFpD2bN8PVV7fs/+AHUFsbXTzdQDFdRvN5cMFKpt+7kLjFSHqKOVMn8v6WxpLFlYilq5vyS89lNGXcrkzvoIdTOSgpiHQHN9wA74VTGXz0o8H02FJQMV1G81m3uYHz5i0IH9pBDfY5dy3gCx/frSRx1SSMi47ci2v/8BqbG1pqyPtWx/jGIbtz7MRhmVLAsZOGc/DYwduV2HaE5j4SqXQbNsC117bsz5gB1aWb1qCnaW9kcEeWrNrY5lt8Cnj4H+/uUEx9EjFqq2LMmTqRYyYOp7lV76WUw6mfHN2mWmhQvxomjtylyxICqKQgUvn+679g/fpge+zYYKlNKWjF+q1UxWKZMQQQjAxOD/Bqv1qp9EOf4gY/nVbPhGE7Zz7vmi/v26ZqqCsf/O1RUhCpZOvWwdy5LfuXXAJVVdHF0w2MGNCHbc25nRe3NQeDyoL2gkXEY0Yy5cyZmlutNGFYf6ri1u5gsWx9q+MkU05jc6pNOqmtiuHuzJk6kSnjhuS8FlXVUDGUFEQq2bXXwqZwrvy994aTCnXqk2zu3mZ//ZZGvnfPwpwH/nn3LOTgsYNzShBf3G8Y8+avbH3JNmoSxs1f258Jw/rz16XvcX5W4/TMoyewz/D+7T7wB/WrqahkkKakIFKp1qwJGpjTZs2CeO+aPDi7qgco6pv1ivVb6VOVYFNDc+ZYn6oETy9tO11EU9JZsmoD6z9s4oL7FpGIWU4DcGsxg7rqRKbKZ8q4YPq2Sv7m31lKCiKV6uqrgwFrAPvuC1/+crTxdJF0Ili8cgOzHl6CmdGcTBGLGbWJeJveRK3bCEYM6MPWpuaca25tai645sDGrc3tzkKa3TNoQF11wQd/pX7z7ywlBZFKtGpVMFgtbfZsiHXPzoKdGS+QrvOPmbG1Kf2NPfh2n0w6TeE0EunZRhuaU8x97LVMG8HMY8YzMs/kcGbGXh/Zuc0YgUQMdu6TaNMwnS3dMygde0948LdHSUGkEl15ZTD5HUB9PRx7bLTxFNDRA78z4wXWbW5oU+dfSKHZRi++fzF9qmJtupXWJuJsaUwy94RJOXX/c6ZOZMKw/jSl2iaEuuo4SfeK6hnUFZQURCrN22/DLbe07F92GVhpF1IphY4e+IXWE9ilbzUThgUzu2YnlCWrNhTd66c9W/NUA6Wnl544cpe8df+tu4jOOHo8+wxrv6G4p1JSEKk0l18eLKQD8MlPwucrb8nyQmsKpHvyQP7xAg3NKb716+dpSqVIpZyaRDzTW6cp2c7cD9upb1WcFLnf9vPV/fekhuIdpaQgUkn++c9gEZ20Ci0l5FtTwFOeswJYvvECAB82JdtsX/zAYmripW0zqUnEuPmUT+QMGmtPT2ko3lHds+VKpKeaPRvS8/B/+tNw2GHRxlNAXXW8zZoCDUmnrjq3y2zr8QLtachTUqiOG9/81Jh2H1RGUCJo7Sv/MoIp44boQd9JSgoilSKVgsas2TizV1irIOs2N7Bg+QfUJHJLMLVVLSuNrdvcwJOvrKE2z8O6M2Ix41N7DqauJrdSo291nO8cNpY/fncK83/wGW4+5RPUJHIfZ/PmryhqviPJpeojkUoRi8FvfxsssfnQQ3DwwV368cUMFEs3LidiRkNzbikgmfLMVBIX3LeIuNl2L0dZm4hBuNRkvt5BKfecbqL9+1RRHY/R0Jx/viMpnpKCSKWZNCn46QLZA8Uu+/1LVMVimTWG0wPFZnxhPPsM709ddbzdQV7JVDCVRHvnFKMqbtzSyQnkRgzo0yZxlHpB+95CSUGkl8o3UKylp1DLQLGLH1hMn6pg4jdrZxbRlMPd85fR1N4KMq1UxYMqqFTKqQk/Y87UfTs9gdygfjUVPfNod2KdaQiqNPX19T5//vyowxDpdtZtbuCgqx4vybiAbNUxaOxEIeHHJ01i8h6DgeLmNerI9q621tuY2fPuXp/vNZUURHqhUg0Ua60zCSFYfL5lsFspHuLqVrrjlBREepBC35RbNyK/sXZLyT6zKmY0pYpPMOd/bk8+P2FoWRefl+2npCDSzeVrLM6ediJ7YZmmZDCSuKqEA8VmHzeBSx9+KafnTyHTJo/izMPGleyzpfSUFEQiUkz9dzETzk2/d2HYWBw8lFvmGVpIzMg7yVyyE43B7amJG+OH9WfO1NxG3nM/O46BfauZNHIXABYs/4BJI3dR6aAbUFIQiUDryeTO/cw4BtZV5zw4i5lw7rx5C8IZQdtW3zQ0O2ffvYDtmVKoJhHjO4eN5YYnlrZbArCYtTvRXJqSQfehpCDSxfJNJnfl/7ySeX3a5FGcffi4diecW7e5gYcXrmozRXRrnU0IfavjpMLpoo+dNJyRA/vmlABOqB/BvPkr8nb7VCNvz6CkIFJmrauA8s0emu1XzyzjgNGD2pwTjxlPvrKGhuYUsx95iZSXdlbRE+qHc/KBo3O+6ecbH3D24ePU7bMHU1IQKaN8VUAHjx2cd1GXbH98+V0+bMxdUnJLQ5KZDy7mwx0YLdxaVRy+/a9jOXbisIJVPK1LACoR9GyaEE+kTLKriTY1NLOtKcX59y5iyaqNzDh6PDWJGLWJ/NNiP7BgFfmGEZQyIQDEYzFO/eRo1flLhkoKIp1UzFiAQtVE+RaZMZLtTB7ReVVxoznpOdc0oF9Nos28RpoKQlpTUhApQvZYgNmPvJRZKH7O1JaxAK17E1UnYjTmaenNt8hMqdQkjFun1TNhWH/Wb2nMdAUdUFfd4QyoIhBRUjCzt4BNQBJodvd6MxsI3A2MBt4CTnD39VHEJ5KtZeK4tuv/nndPMEZg+r2LaGjO35soHjNqEjE+3M5ppIuRPdX0lHG7AkHdf3a1UOt2AZF8omxT+LS7T8qalOlC4HF33xN4PNwXKat1mxtYuPyDgouxrNvcwPfuWUhDcyr/gvBJ57x5C9rty59MOed+Zs+Sxdxaeqrpv15wWM44BpHtUUnVR8cBh4bbtwN/Ai6IKhjpnopZKCato8FhUNzEca2Xpcxn47ZmaqtiO7TOQGvplcbyTTUtsr2iSgoO/MHMHPipu98C7ObuqwHcfbWZ7ZrvjWZ2OnA6wKhRo7oqXukGsh/y+RpUW48Gbj047Px7F7JL3yomDOuflUTy9w4qpNCDf2j/Wko5S30iBrdO+0SrWEV2XFTVRwe7+/7AkcCZZjal2De6+y3uXu/u9UOG6NuRBFp3/2xOBVU72V1Bn3ptbaaaKN0zKFtDs/OtO17g4B8+wUMLVrJucwMr13/YqTiunbovJ9TnljYMuPLRV0imUlTFjbqatusWV8fh0mP25hOj+rd7/T5VMWoSMeaeMIkp43ZVQpCSi6Sk4O6rwt9rzOx+4ADgXTMbGpYShgJroohNuqeORgmnu4Km8HYHkKUbg8+dt4B4LEZnFqGqrYoxcmAd10wdzumf2oOnl67lykdfpjEJmxqCgWg1Cbjp5P1Z/v7WvDOafv3g3Zn/5jqeev09zOCnT72ROSe9LKZ6DUk5dXlSMLM6IObum8LtzwGzgYeAU4Grw98PdnVs0n3lW6O3tXT3z+/ds5DvH7U3nxu/Gw8tXJ333OYUNHdwvUJxQDAB3JbGJDWJBI3JlpHJ1fE4/ftUM+WgXTlin4/kbfOoHzOI+jGDAJg2ebS6j0qXiqKksBtwv5mlP/9Od/9fM/s7MM/MTgOWAcdHEJtUsPamkW69Rm+6TSFm1qZnUGPSufThl0oWV11NsLZwZxeTL2a6CE0pIV2ty5OCu78BTMxzfB1weFfHI91Det2AuMVIeorzPvuxNlNNZ0/eFgwyW9LJZuKgzj7lTnMq6EqaT8ygrjrRYZWOFpOX7qiSuqSK5JW7bkBQBZQ9OOyE+hGcfOBHcx7MX7nlGRqanex1Box8qw7kuuCIj3HI2CEc8aOnco7HDWYcPZ5Dxg7OGR3c0QM+3yyjIpVMSUEiU8zKYwBLVm1sd92AefNX8OCLK8Fg5tETqEnkbyDuKCFUxY3dh+zEqg3b6FOVyDQOA/StTrDfqAGZUklnHu6qApLuRElBItG6OmjmMRPYZ1j+apiNWxs7vF56ANnFDyymJh4rakBZWm1VjGTKcXfO/M0LNCZTJNtpCxDpyZQUpMvlqw66+P7FYX0+zDy6pZ5+/ZZGFq74oFPXb+jEcmPVMbjwiL246n9epiGr62hV3KhJBL2F1BYgvYmSgpTMjlYHpecWuviBxfSribO1KVWwsbdUYvEYuw+pozoep6G5pbqoNhHnxpP3o3+farUFSK+ipCAlUcw8QhAkjjfWbu7wepsb8s8oWh3PPx11IbWJGNtaZaD02gLpOCcM65+366imkJDeSElBitLewjJLVm1g+r0LaWj2vIvMp6WnoLYdWFLmhPrh3PHs8jbHaxKxvDOVXnv8RCbvMYg3127mqdffY8qegxkzpF+be1HXUZGAkoJ0qFApIH08GCCW+6D3lLNi/dbMgzU9BXVHM4525KDdB3PvCytzJp2rSRhnTNmdm/+0lMasvFATN0YO7Jvp/ZMeJQxtew+p66hIQGs0S7vyrTM8/b5FLH13U+Z4vsVjGpJOXXXLxG/FTEGdra4mTjyWO/Rs2uRRTN5jUJtzzYxjJw4jFs/952wx61SPoUH9apg4chclBOnVVFKQduWbaK4qFmPB8g/anYAOYNWGbVkrfxU/triuOs6sYybw6b12zVlSMn2tfFU9Y3fbSVVAIiWgpCAFF6YB2LC1qU3DbmMyRW1VML9Qe/6xYj0Thu0c7jlxg2IKC0l3Pr3Xrplqn+wlJaFwVY+qgER2nHVmauBKU19f7/Pnz486jG4t38I0VfEYTckU7k6fqkTOgjXbmpO4O7VV8YI9hNJqE0ZzynPem0w6VXHLO7gse2K5dM+lYru5ikjxzOz5rKWQc6ik0AulH7R11fE2q4+B05RsedhnrwNw1Zc+znn3LKAhWbjLaLZtmcZnpylr+uhYLEYVLUmn0MRyxXZzFZHSUVLoJdKJYPHKDZnFXRqak8RixdX1V8fjbGtKthnktT22husa1CRi3Hjy/kwYtnObUkC+5TLzdXMVkdJSUuimiqlWaZ0IEjHLfMPPlAyK7BHUmExSW9XxwLGaAlVD+VTHY/TvU5U3/kIN3NndXEWk9JQUuqFiqlXSA8Vi1jJ9RD41ccPNiEGbkb8QjAhuTqVIOVz0u8WZdYYTMct73YuO2ouqRJzLHnkpp52iOh5jS6uuq+1NMtfRAjUiUh5KCt1MR9UqwQjjjUUPFGtIOveecSCLV23k8t+/THPWXENVcePa4ydy3j0LaWhOZdoFahJw1qfHMucPr7W53u5DdmLKuCEcMeEjbXo0LV61IZMsOuoyqgVqRKKhpFCBCnURHdSvpt1qlaeXvscF9y0Cp1MDxU669W/UViXaTD530gEjGTmwL9Xx3CkkquNxPj6iP4kYORPbJWJkuqC2XkMgPTAsO1logRqRyqOkUGGyq4a2NSdJpZyaRJykp5gzdSIHjx2cs/gLBD2EsnsSdVZTCpoa2jYez5u/gmkHjS44WdzcEyZxftaaCHOmTiz5msNaoEakaykpVJB8VUMAH4a9db579wIuPHKvvO+9/8UVxK2zKxK3ryoWtAMUqsbRN3mRnkdJoUKs29zAk6+sybuMZFrS4apHX8n72s1PvUEnZpQuSrphd+LIXQo+/PVNXqRnUVLYQaUYcfvggpWcf88CwGjsoC2g0HM/OyHUJmBbJ4YSVMeNmkQ8Z+Ry64ZdPfxFegclhR3QumvojKPH511nuL3EsW5zA+fctSBcYaA0U46cMnkMv/jrWzk9iRIx4/8cugdvr9vCgwtXZ45PmzyKsw8fV7BhW0R6FyWFIrXuEbRk1Uam37uIhuaW+v+L719Mn0SMFM7Moyewz/D+OSOIW48pWLe5gbueW1aiVNBi4ohdSMQtNynEjVM/OZpB/Wr4z8M2tZl5tHWVkIj0TkoKRQgGggW9bBrDeYGC6R7aVuZsbW5ZZ7iuOp4ZsNV6TEG6+2ip5yNMxGDyHoPa7eM/dred2sw8KiICSgodWre5gfPmLQj747eMyG1OdTwhXOsRvBD06FmyauN2dx8tJF1CSXcLVc8gEdkeSgq0X+e/ZNVG8hQIchRaHzifoM+/d7hATTHX71sdJ+VesC1DjcMi0lm9Pil0NI/Qxq1N7b4/bnDd8RM55+4X200eddVxkh6sFTBhWP82A8IKScSC6593z4KcdZBrEsbNX9ufCcP668EvIiXTq9doLrT+8LrNDVlntV/pbwY790kw69h9qEnE6FPV9k9aFTdu+ton+OsFh3HspOGZeX1qq2LU1cTzXBX6VMWoScSYe8Ikjp44jDlTJ1JbFWOnmgS1VTHmTJ3IlHG7KiGISEn16pJCMdMz79ynut1rNKfgW3e8QMqdmceMpyYe49KHl+QsQlObiLeZIjq7zn/xyg3MfmRJZrqImcdMaFMdpDYCEekKFZcUzOwI4EdAHLjN3a8u12cVMz3zsP61HV7nw7BB+bJHXuKRsw7J6Qqa75pp6Tr/iSN34Yh9Op4oTm0EIlJuFVV9ZGZx4EbgSGA8cJKZjS/HZ6Ubl4+dOCzn+LETh7Fi/dZMFdKWxiQ18eLmFMqeKyi7qqeYKZ/TyUEPfRGJUqWVFA4Alrr7GwBmdhdwHPBSKT8kPe7AsDYLy8ybv4KHFqzCw+6dB48djMWsqBXKipkrSESkklVUSQEYDizP2l8RHssws9PNbL6ZzV+7dm2nPyA97qCh2fOuNAbBCmQNzc658xYAZL75963K3yjctzrepkSgb/4i0h1VWkkhXz1Nzld0d78FuAWgvr6+0+OBixl3kNacCs5PN/IuWbWRb/5qfs6YAXUNFZGepNJKCiuAkVn7I4BVpfyAjVsbO/mOIO8M6lfDlHFDmDN1X3UNFZEeq9JKCn8H9jSzMcBK4ETgq6X8gJ37VBV9blXcmDCsf84xdQ0VkZ6sopKCuzeb2VnA/yXokvpzd19Sys+YMKw/VXFrs4ZxXU2cxuZUsPxlVZxkypkzNX+vIXUNFZGeqqKSAoC7Pwo8Wq7rD+pXw3XHT+T8excRjxnJlDPz6PHsM7y/1hMQkV6v4pJCV+ioCkjJQER6q16ZFEBVQCIi+VRa7yMREYmQkoKIiGQoKYiISIaSgoiIZCgpiIhIhrl3evqgimFma4G3d+ASg4H3ShROd9Db7hd0z72F7rlzPuruQ/K90K2Two4ys/nuXh91HF2lt90v6J57C91z6aj6SEREMpQUREQko7cnhVuiDqCL9bb7Bd1zb6F7LpFe3aYgIiK5entJQUREsigpiIhIRq9MCmZ2hJm9amZLzezCqOMpBzMbaWZPmtnLZrbEzM4Ojw80s8fM7PXw94CoYy0lM4ub2Ytm9ki436PvF8DMdjGze83slfC/9+SefN9m9t3w3/RiM/utmdX2tPs1s5+b2RozW5x1rOA9mtlF4fPsVTP7/I58dq9LCmYWB24EjgTGAyeZ2fhooyqLZuA8d98bOAg4M7zPC4HH3X1P4PFwvyc5G3g5a7+n3y/Aj4D/dfe9gIkE998j79vMhgPfAerdfR+CFRpPpOfd7y+BI1ody3uP4f/XJwITwvf8JHzObZdelxSAA4Cl7v6GuzcCdwHHRRxTybn7and/IdzeRPCgGE5wr7eHp90O/FskAZaBmY0AvgDclnW4x94vgJntDEwBfgbg7o3u/gE9+74TQB8zSwB9gVX0sPt196eA91sdLnSPxwF3uXuDu78JLCV4zm2X3pgUhgPLs/ZXhMd6LDMbDewHPAvs5u6rIUgcwK4RhlZq1wPTgVTWsZ58vwC7A2uBX4TVZreZWR099L7dfSVwLbAMWA1scPc/0EPvt5VC91jSZ1pvTAqW51iP7ZdrZv2A+4Bz3H1j1PGUi5kdDaxx9+ejjqWLJYD9gZvcfT9gC92/6qSgsB79OGAMMAyoM7OvRRtV5Er6TOuNSWEFMDJrfwRB8bPHMbMqgoTwG3f/XXj4XTMbGr4+FFgTVXwldjBwrJm9RVAleJiZ3UHPvd+0FcAKd3823L+XIEn01Pv+DPCmu6919ybgd8An6bn3m63QPZb0mdYbk8LfgT3NbIyZVRM00DwUcUwlZ2ZGUM/8srvPzXrpIeDUcPtU4MGujq0c3P0idx/h7qMJ/ps+4e5fo4feb5q7vwMsN7OPhYcOB16i5973MuAgM+sb/hs/nKC9rKfeb7ZC9/gQcKKZ1ZjZGGBP4Lnt/hR373U/wFHAa8A/gYujjqdM93gIQRFyEbAg/DkKGETQc+H18PfAqGMtw70fCjwSbveG+50EzA//Wz8ADOjJ9w3MAl4BFgO/Bmp62v0CvyVoM2kiKAmc1t49AheHz7NXgSN35LM1zYWIiGT0xuojEREpQElBREQylBRERCRDSUFERDKUFEREJENJQUREMpQUREQkQ0lBpITM7F/MbFE4x39dOO//PlHHJVIsDV4TKTEzuxyoBfoQzEt0VcQhiRRNSUGkxMI5tf4ObAM+6e7JiEMSKZqqj0RKbyDQD9iJoMQg0m2opCBSYmb2EMH03WOAoe5+VsQhiRQtEXUAIj2JmU0Dmt39znCd3P9nZoe5+xNRxyZSDJUUREQkQ20KIiKSoaQgIiIZSgoiIpKhpCAiIhlKCiIikqGkICIiGUoKIiKS8f8BoZgsJ3QXgqMAAAAASUVORK5CYII=\n",
"text/plain": [
"<Figure size 432x288 with 1 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"# plot the points again\n",
"df.plot(kind='scatter',\n",
" x='x',\n",
" y='y',\n",
" title='y and x in the data set')\n",
"\n",
"# Here we're plotting the red line 'by hand' with fixed values\n",
"# We'll try to learn this line with an algorithm below\n",
"plt.plot([55, 78], [75, 250], color='red', linewidth=3)"
]
},
{
"cell_type": "code",
"execution_count": 35,
"id": "bf4cd5b6",
"metadata": {},
"outputs": [],
"source": [
"# define a method to calculate a point for a line given the input values\n",
"def line(x, w=0, b=0):\n",
" return x * w + b"
]
},
{
"cell_type": "code",
"execution_count": 36,
"id": "b4842e99",
"metadata": {},
"outputs": [],
"source": [
"# generate evenly spaced numbers \n",
"x = np.linspace(55, 80, 100)"
]
},
{
"cell_type": "code",
"execution_count": 37,
"id": "479278e7",
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"array([55. , 55.25252525, 55.50505051, 55.75757576, 56.01010101,\n",
" 56.26262626, 56.51515152, 56.76767677, 57.02020202, 57.27272727,\n",
" 57.52525253, 57.77777778, 58.03030303, 58.28282828, 58.53535354,\n",
" 58.78787879, 59.04040404, 59.29292929, 59.54545455, 59.7979798 ,\n",
" 60.05050505, 60.3030303 , 60.55555556, 60.80808081, 61.06060606,\n",
" 61.31313131, 61.56565657, 61.81818182, 62.07070707, 62.32323232,\n",
" 62.57575758, 62.82828283, 63.08080808, 63.33333333, 63.58585859,\n",
" 63.83838384, 64.09090909, 64.34343434, 64.5959596 , 64.84848485,\n",
" 65.1010101 , 65.35353535, 65.60606061, 65.85858586, 66.11111111,\n",
" 66.36363636, 66.61616162, 66.86868687, 67.12121212, 67.37373737,\n",
" 67.62626263, 67.87878788, 68.13131313, 68.38383838, 68.63636364,\n",
" 68.88888889, 69.14141414, 69.39393939, 69.64646465, 69.8989899 ,\n",
" 70.15151515, 70.4040404 , 70.65656566, 70.90909091, 71.16161616,\n",
" 71.41414141, 71.66666667, 71.91919192, 72.17171717, 72.42424242,\n",
" 72.67676768, 72.92929293, 73.18181818, 73.43434343, 73.68686869,\n",
" 73.93939394, 74.19191919, 74.44444444, 74.6969697 , 74.94949495,\n",
" 75.2020202 , 75.45454545, 75.70707071, 75.95959596, 76.21212121,\n",
" 76.46464646, 76.71717172, 76.96969697, 77.22222222, 77.47474747,\n",
" 77.72727273, 77.97979798, 78.23232323, 78.48484848, 78.73737374,\n",
" 78.98989899, 79.24242424, 79.49494949, 79.74747475, 80. ])"
]
},
"execution_count": 37,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"x"
]
},
{
"cell_type": "code",
"execution_count": 38,
"id": "56cd60cd",
"metadata": {},
"outputs": [],
"source": [
"# generate line points\n",
"yhat = line(x, w=0, b=0)"
]
},
{
"cell_type": "code",
"execution_count": 39,
"id": "bd73d23f",
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"array([0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0.,\n",
" 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0.,\n",
" 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0.,\n",
" 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0.,\n",
" 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0.,\n",
" 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0.])"
]
},
"execution_count": 39,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"yhat"
]
},
{
"cell_type": "code",
"execution_count": 40,
"id": "7af98bd1",
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"[<matplotlib.lines.Line2D at 0x22d8dc975c8>]"
]
},
"execution_count": 40,
"metadata": {},
"output_type": "execute_result"
},
{
"data": {
"image/png": "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\n",
"text/plain": [
"<Figure size 432x288 with 1 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"# draw the points again, now with the line\n",
"df.plot(kind='scatter',\n",
" x='x',\n",
" y='y',\n",
" title='y en x in the data set')\n",
"plt.plot(x, yhat, color='red', linewidth=3)"
]
},
{
"cell_type": "markdown",
"id": "077d7978",
"metadata": {},
"source": [
"### Cost function"
]
},
{
"cell_type": "code",
"execution_count": 41,
"id": "62838ac9",
"metadata": {},
"outputs": [],
"source": [
"# calculate the mean squared error given the input parameters.\n",
"def mean_squared_error(y_true, y_pred):\n",
" s = (y_true - y_pred)**2\n",
" return s.mean()"
]
},
{
"cell_type": "code",
"execution_count": 42,
"id": "4bea9b4a",
"metadata": {},
"outputs": [],
"source": [
"# get the x and y values from the dataset\n",
"X = df[['x']].values\n",
"y_true = df['y'].values"
]
},
{
"cell_type": "code",
"execution_count": 43,
"id": "392f50b2",
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"array([ 79.77515201, 23.17727887, 25.60926156, 17.85738813,\n",
" 41.84986439, 9.80523488, 58.87465933, 97.61793701,\n",
" 18.39512747, 8.74674765, 2.81141583, 17.09537241,\n",
" 95.14907176, 61.38800663, 40.24701716, 14.82248589,\n",
" 66.95806869, 16.63507984, 90.65513736, 77.22982636,\n",
" 92.11906278, 46.91387709, 89.82634442, 21.71380347,\n",
" 97.41206981, 57.01631363, 78.31056542, 19.1315097 ,\n",
" 93.03483388, 26.59112396, 97.55155344, 31.43524822,\n",
" 35.12724777, 78.61042432, 33.07112825, 51.69967172,\n",
" 53.62235225, 69.46306072, 27.42497237, 36.34644189,\n",
" 95.06140858, 68.16724757, 50.96155532, 78.04237454,\n",
" 5.60766487, 36.11334779, 67.2352155 , 65.01324035,\n",
" 38.14753871, 34.31141446, 95.28503937, 87.84749912,\n",
" 54.08170635, 31.93063515, 59.61247085, -1.04011421,\n",
" 47.49374765, 62.60089773, 70.9146434 , 56.14834113,\n",
" 14.05572877, 68.11367147, 75.59701346, 59.225745 ,\n",
" 85.45504157, 17.76197116, 38.68888682, 50.96343637,\n",
" 51.83503872, 17.0761107 , 46.56141773, 10.34754461,\n",
" 77.91032969, 50.17008622, 13.25690647, 31.32274932,\n",
" 73.9308764 , 74.45114379, 52.01932286, 83.68820499,\n",
" 70.3698748 , 23.44479161, 49.83051801, 49.88226593,\n",
" 41.04525583, 33.37834391, 81.29750133, 105.5918375 ,\n",
" 56.82457013, 48.67252645, 67.02150613, 38.43076389,\n",
" 58.61466887, 89.12377509, 60.9105427 , 13.83959878,\n",
" 16.89085185, 84.06676818, 70.34969772, 33.38474138,\n",
" -1.63296825, 88.54475895, 17.44047622, 75.69298554,\n",
" 41.97607107, 12.59244741, 0.27530726, 98.13258005,\n",
" 87.45721555, -2.34473854, 39.3294153 , 16.68715211,\n",
" 96.58888601, 97.70342201, 67.01715955, 25.63476257,\n",
" 13.41310757, 95.15647284, 9.74416426, -3.46788379,\n",
" 62.82816355, 97.27405461, 95.58017185, 7.46850184,\n",
" 45.44599591, 46.69013968, 74.4993599 , 21.63500655,\n",
" 91.59548851, 26.49487961, 67.38654703, 74.25362837,\n",
" 12.07991648, 21.32273728, 29.31770045, 26.48713683,\n",
" 68.94699774, 59.10598995, 64.37521087, 60.20758349,\n",
" 70.34329706, 97.1082562 , 75.7584178 , 10.80462727,\n",
" 12.11219941, 63.28312382, 98.03017721, 63.19354354,\n",
" 34.8534823 , -2.81991397, 59.8313966 , 29.38505024,\n",
" 97.00148372, 85.18657275, 61.74063192, 18.84798163,\n",
" 78.79008525, 95.12400481, 30.48881287, 10.41468095,\n",
" 38.98317436, 46.11021062, 52.45103628, 21.16523945,\n",
" 52.28620611, 44.18863945, 97.13832018, 67.22008001,\n",
" 18.98322306, 24.3884599 , 79.44769523, 40.03504862,\n",
" 53.32005764, 54.55446979, -2.7611826 , 37.80182795,\n",
" 57.48741435, 36.06292994, 49.83538167, 74.68953276,\n",
" 14.86159401, 101.0697879 , 99.43577876, 91.69240746,\n",
" 34.12473248, 6.07939007, 59.07247174, 56.43046022,\n",
" 30.49412933, 48.35172635, 89.73153611, 72.86282528,\n",
" 80.97144285, 91.36566374, 60.07137496, 99.87382707,\n",
" 8.65571417, 69.39858505, 19.38780134, 53.11628433,\n",
" 78.39683006, 25.75612514, 75.07484683, 92.88772282,\n",
" 69.45498498, 13.12109842, 48.09843134, 79.3142548 ,\n",
" 68.48820749, 73.2300846 , 24.68362712, 41.90368917,\n",
" 62.22635684, 45.96396877, 23.52647153, 51.80035866,\n",
" 51.10774273, 95.79747345, 9.24113898, 7.64652976,\n",
" 9.28169975, 103.5266162 , 47.41006725, 42.03835773,\n",
" 96.11982476, 38.05766408, 105.4503788 , 88.80306911,\n",
" 15.49301141, 12.42624606, 40.00709598, 5.6340309 ,\n",
" 87.36938931, 89.73951993, 66.61499643, 72.9138853 ,\n",
" 57.19103506, 11.21710477, 0.67607675, 28.15668543,\n",
" 95.3958003 , 52.05490703, 59.70864577, 36.79224762,\n",
" 37.08457698, 24.18437976, 67.28725332, 82.870594 ,\n",
" 89.899991 , 36.94173178, 19.87562242, 90.71481654,\n",
" 61.09367762, 60.11134958, 64.83296316, 81.40381769,\n",
" 92.40217686, 2.57662538, 63.80768172, 38.67780759,\n",
" 16.82839701, 99.78687252, 44.68913433, 71.00377824,\n",
" 51.57326718, 19.87846479, 79.50341495, 34.58876491,\n",
" 55.7383467 , 68.19721905, 55.81628509, 9.3914168 ,\n",
" 56.01448111, 77.9969477 , 55.37049953, 11.89457829,\n",
" 94.79081712, 25.69041546, 53.52042319, 18.31396758,\n",
" 21.42637785, 30.41303282, 67.68142149, 17.0854783 ,\n",
" 60.91792707, 14.99514319, 16.74923937, 41.46923883,\n",
" 42.84526108, 59.12912974, 91.30863673, 8.67333636,\n",
" 39.31485292, 5.3136862 , 5.40522052, 68.5458879 ,\n",
" 47.33487629, 54.09063686, 63.29717058, 52.45946688])"
]
},
"execution_count": 43,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"y_true"
]
},
{
"cell_type": "code",
"execution_count": 44,
"id": "0806d238",
"metadata": {},
"outputs": [],
"source": [
"# convert the points of the y values to line points\n",
"y_pred = line(X)"
]
},
{
"cell_type": "code",
"execution_count": 45,
"id": "aa0ef0f8",
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"array([[0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0],\n",
" [0]], dtype=int64)"
]
},
"execution_count": 45,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"y_pred"
]
},
{
"cell_type": "code",
"execution_count": 46,
"id": "55ff0a77",
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"3464.291087139079"
]
},
"execution_count": 46,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"# calculate the mean square error for the points\n",
"mean_squared_error(y_true, y_pred.ravel())"
]
},
{
"cell_type": "markdown",
"id": "a60e5104",
"metadata": {},
"source": [
"### Linear regression with keras"
]
},
{
"cell_type": "code",
"execution_count": 47,
"id": "ccde02ca",
"metadata": {},
"outputs": [],
"source": [
"from tensorflow.keras.models import Sequential\n",
"from tensorflow.keras.layers import Dense\n",
"from tensorflow.keras.optimizers import Adam, SGD"
]
},
{
"cell_type": "code",
"execution_count": 48,
"id": "3c2b554a",
"metadata": {},
"outputs": [],
"source": [
"model = Sequential()"
]
},
{
"cell_type": "code",
"execution_count": 49,
"id": "4da8d3b5",
"metadata": {},
"outputs": [],
"source": [
"# make a model with 1 layer, 1 output node and 1 input node\n",
"model.add(Dense(1, input_shape=(1,)))"
]
},
{
"cell_type": "code",
"execution_count": 50,
"id": "afbf17ff",
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Model: \"sequential_1\"\n",
"_________________________________________________________________\n",
"Layer (type) Output Shape Param # \n",
"=================================================================\n",
"dense_2 (Dense) (None, 1) 2 \n",
"=================================================================\n",
"Total params: 2\n",
"Trainable params: 2\n",
"Non-trainable params: 0\n",
"_________________________________________________________________\n"
]
}
],
"source": [
"model.summary()"
]
},
{
"cell_type": "code",
"execution_count": 51,
"id": "35dda627",
"metadata": {},
"outputs": [],
"source": [
"# get the model ready for training\n",
"model.compile(Adam(learning_rate=0.8), 'mean_squared_error')"
]
},
{
"cell_type": "code",
"execution_count": 52,
"id": "fe11b9d0",
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Epoch 1/40\n",
"10/10 [==============================] - 0s 508us/step - loss: 6149.2983\n",
"Epoch 2/40\n",
"10/10 [==============================] - 0s 554us/step - loss: 1049.6282\n",
"Epoch 3/40\n",
"10/10 [==============================] - 0s 554us/step - loss: 455.6070\n",
"Epoch 4/40\n",
"10/10 [==============================] - 0s 554us/step - loss: 202.8622\n",
"Epoch 5/40\n",
"10/10 [==============================] - 0s 668us/step - loss: 91.5324\n",
"Epoch 6/40\n",
"10/10 [==============================] - 0s 665us/step - loss: 33.6845\n",
"Epoch 7/40\n",
"10/10 [==============================] - 0s 665us/step - loss: 20.1020\n",
"Epoch 8/40\n",
"10/10 [==============================] - 0s 665us/step - loss: 13.5234\n",
"Epoch 9/40\n",
"10/10 [==============================] - 0s 665us/step - loss: 11.9283\n",
"Epoch 10/40\n",
"10/10 [==============================] - 0s 554us/step - loss: 11.6073\n",
"Epoch 11/40\n",
"10/10 [==============================] - 0s 554us/step - loss: 10.5410\n",
"Epoch 12/40\n",
"10/10 [==============================] - 0s 554us/step - loss: 10.4354\n",
"Epoch 13/40\n",
"10/10 [==============================] - 0s 554us/step - loss: 10.1968\n",
"Epoch 14/40\n",
"10/10 [==============================] - 0s 665us/step - loss: 9.7576\n",
"Epoch 15/40\n",
"10/10 [==============================] - 0s 554us/step - loss: 9.6691\n",
"Epoch 16/40\n",
"10/10 [==============================] - 0s 665us/step - loss: 9.5777\n",
"Epoch 17/40\n",
"10/10 [==============================] - 0s 667us/step - loss: 9.6235\n",
"Epoch 18/40\n",
"10/10 [==============================] - 0s 554us/step - loss: 9.4145\n",
"Epoch 19/40\n",
"10/10 [==============================] - 0s 554us/step - loss: 10.7170\n",
"Epoch 20/40\n",
"10/10 [==============================] - 0s 554us/step - loss: 10.7544\n",
"Epoch 21/40\n",
"10/10 [==============================] - 0s 665us/step - loss: 9.7636\n",
"Epoch 22/40\n",
"10/10 [==============================] - 0s 554us/step - loss: 9.4378\n",
"Epoch 23/40\n",
"10/10 [==============================] - 0s 554us/step - loss: 9.5914\n",
"Epoch 24/40\n",
"10/10 [==============================] - 0s 554us/step - loss: 9.4083\n",
"Epoch 25/40\n",
"10/10 [==============================] - 0s 665us/step - loss: 9.5226\n",
"Epoch 26/40\n",
"10/10 [==============================] - 0s 665us/step - loss: 9.9660\n",
"Epoch 27/40\n",
"10/10 [==============================] - 0s 554us/step - loss: 10.0456\n",
"Epoch 28/40\n",
"10/10 [==============================] - 0s 665us/step - loss: 9.2983\n",
"Epoch 29/40\n",
"10/10 [==============================] - 0s 554us/step - loss: 9.5830\n",
"Epoch 30/40\n",
"10/10 [==============================] - 0s 665us/step - loss: 10.5801\n",
"Epoch 31/40\n",
"10/10 [==============================] - 0s 665us/step - loss: 10.0829\n",
"Epoch 32/40\n",
"10/10 [==============================] - 0s 554us/step - loss: 9.4324\n",
"Epoch 33/40\n",
"10/10 [==============================] - 0s 665us/step - loss: 9.3277\n",
"Epoch 34/40\n",
"10/10 [==============================] - 0s 554us/step - loss: 9.1831\n",
"Epoch 35/40\n",
"10/10 [==============================] - 0s 554us/step - loss: 9.8164\n",
"Epoch 36/40\n",
"10/10 [==============================] - 0s 554us/step - loss: 10.3315\n",
"Epoch 37/40\n",
"10/10 [==============================] - 0s 554us/step - loss: 10.1487\n",
"Epoch 38/40\n",
"10/10 [==============================] - 0s 443us/step - loss: 9.5550\n",
"Epoch 39/40\n",
"10/10 [==============================] - 0s 554us/step - loss: 9.2581\n",
"Epoch 40/40\n",
"10/10 [==============================] - 0s 554us/step - loss: 9.5368\n"
]
},
{
"data": {
"text/plain": [
"<tensorflow.python.keras.callbacks.History at 0x22d8c83fac8>"
]
},
"execution_count": 52,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"# start training the model for 40 epochs\n",
"model.fit(X, y_true, epochs=40)"
]
},
{
"cell_type": "code",
"execution_count": 53,
"id": "a22c9fb1",
"metadata": {},
"outputs": [],
"source": [
"y_pred = model.predict(X)"
]
},
{
"cell_type": "code",
"execution_count": 54,
"id": "9787ea0d",
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"[<matplotlib.lines.Line2D at 0x22d8dc97c48>]"
]
},
"execution_count": 54,
"metadata": {},
"output_type": "execute_result"
},
{
"data": {
"image/png": "iVBORw0KGgoAAAANSUhEUgAAAYUAAAEWCAYAAACJ0YulAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjMuNCwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8QVMy6AAAACXBIWXMAAAsTAAALEwEAmpwYAAA/FElEQVR4nO3dd3hUZfrw8e89k55QgyIQMK5YKAIq6irKq2AvYMFeUFHXih1Q17LoriA28Oeui4qCYkFwBXFtKyiCFZUgIAoqQugECATCJDPzvH+cMyfTM4Ekk0zuz3UhOc9pz5nguefpYoxBKaWUAnAlOwNKKaUaDg0KSimlHBoUlFJKOTQoKKWUcmhQUEop5dCgoJRSyqFBQTlE5CERebUWrnOciPxcG3myr/eyiDxSW9cLu3atPHNjICKXishHcfYfLyLF9ZmneETkUxG5xv45bt6ruc77IjK4dnOXujQoqFpnjPncGHPQ7pwrIleKyNzazlNtqMvgVB/3McZMNsacHHQfIyKda/s+dSE877FEC/LGmNOMMRPrLnepRYOCUqrOiUhasvOgEqNBoYERkf1FZLOIHGZvtxeRTSJyfIzjR4jIryKyXUSWiMg5QfuuFJG5IvK4iGwRkd9F5LSg/fuJyGf2uR8DbeLka5GInBW0nW7nq1eUY0OqIURkhYjcJSILRaRURN4Ukawo53UBngOOFpEyEdkatLuViLxn5/VrEdk/6LyDReRj+3P7WUQuiPMccZ9ZRN4SkXV2PueISDc7/TrgUmCYnbd37fR4n39n+16l9mf1ZnV5jnWfeOx7nGf/fKxdAjjd3j5RRBbYPzulMBGZY59eZN/nwqDr3SkiG0RkrYhcFee+n4rIoyLyjf2M00Wktb2v0M7HEBFZCcyy068WkZ/sf48fisi+Qdc7SUSW2tf6P0CC9oWUIEWkW9Dnt15E7hWRU4F7gQvtZyoKymegGsolIn8VkT/sZ5wkIi3C8jxYRFbav7P7qvv8U44xRv80sD/AtcBPQA7wIfB4nGPPB9pjBfgLgR1AO3vflUClfT03cAOwBhB7/5fAk0Am0BfYDrwa4z7DgDeDtgcCP8Y49nigOGh7BfCNnc/W9rNdH+PcK4G5YWkvA5uBI4E0YDLwhr0vF1gFXGXvOwzYBHSLcf24zwxcDTSz9z8NLAjLxyM1+PxfB+6z92UBxyaS52j3qebfy0jgGfvne4FfgdFB+8ZG+2wBA3QO+7157XPSgdOBnUCrGPf9FFgNdLefaVrgswQK7etPsvdlA2cDy4Eu9nP/FfjCPr4NsA0YZN/7djsv14Tn3f79rAXutD/XZsBR9r6HCPs3bOczcJ2r7Tz8CcgD3gZeCcvz83Z+ewIeoEuy3wn1+SfpGdA/MX4xMAP4EVgIZNbgvAXAQPvnK4HlQfty7H/0+wCd7P/pcoP2vxb+P1TQvvZYL9Dm9vZUYFiMY48nMihcFrT9GPBcjHNDXlx22svAC0HbpwNL7Z8vBD4PO/7fwINRrl3TZ25pf14tgvIR92Ud9vlPAsYDBWHHxM1zIvcJO7c/sND++QPgGuAre/sz4Nxony3Rg0I5kBaUtgH4c4z7fgqMCtruClRgfQEptK//p6D97wNDgrZdWEFnX+CKQJ7tfQIUEz0oXAz8ECNPD4X/PgkNCp8ANwbtOwjri1NaUJ4LgvZ/A1yU6O8iFf5o9VHD9TzWN7BnjDGeWAeJyBUiskBEttrVLd0JrRJZF/jBGLPT/jEP6yW/xRizI+jYP2LdxxizBpgHnCciLYHTsL6xJ2pd0M877TzURKzz9wWOCjy//RlcihX4wsV9ZhFxi8gouzpoG1Ywg/jVavE+/2FYL7dvRGSxiFy9G3lOxJfAgSLSFuiFFYw6ikgbrNLVnDjnhisxxniDtqv7Xa0K+vkPrG/5bWLs3xcYG/TMm7E+nw5YvxvnWGO9kYPPDdYRqzS0O9oT+u/8D6yA0DYobU//rTZq2vjTAIlIHlbVxYvAQyIyzRizOcpx+2IFj/7Al8YYn11/LOHHRrEWq54+N+gl2Qnrm1IsE7G+habZ91ud4CPVRE2n7V0FfGaMOSmBY6t75kuwqsVOxAoILYAtVH2eIXmr7vM3xqzDqrpDRI4F/mfX5VeX5xp9BsaYnSLyHXArsMgYUyEiXwB3AL8aYzbV5Ho11DHo505Y37o3BaUHP8sq4O/GmIgvEyJyQPC1RETCrh1sFVZpIZrqPrs1WMEpOM9eYD1QUM25TYKWFBqmscB3xphrgPewGl+jycX6n2AjgN0o2D2RGxhj/gDmA38TkQz7pXVWNae9g1X/fSvWt9G6sB4oEJGMBI+fifUt+XKxGr/TReQIsRqtQyTwzM2w6pBLsKra/hElb38K2o77+YvI+SISeNFssY/1JZDn8PsEuqm+HOdz+Ay42f4brCqT4O1oIu6zGy4Tka4ikoPVFjHVGOOLcexzwD1S1XjfQkTOt/e9B3QTkXPF6qk0lNglp5nAPiJym4hkikgzETkq6JkKRSTWu+114HaxOhzkYf2O3wwrHTVpGhQaGBEZCJwKXG8n3QEcJiKXhh9rjFkCPIFVfbAeOASriidRlwBHYRXjH6SaF70xphyrMXE/rAa6ujALWAysE5Fqv+EaY7YDJwMXYX0LXAeMxmoojibeM0/Cqk5YDSwBvgo790Wgq1398U4Cn/8RwNciUobVRnSrMeb3BPIcch87rSPxf7efYQW1OTG2o3kImGjfJ2aPrWq8gtUGsg6r0XdorAONMf/Bes437Oq5RVjVkNilmfOBUVhB+QBiPK/9+Z2EFdDXAcuAE+zdb9l/l4jI91FOn2DneQ7wO7ALuCWhJ20iAr1QlEqIiDwAHGiMuSzZeWkq7FJTEdDDGFOZ7PwEiMinWI26LyQ7L6r2aJuCSphYfdCHAJcnOy9NiTGmAqsbp1J1TquPVEJE5FqsBr73jTE16c2ilGpEtPpIKaWUQ0sKSimlHI26TaFNmzamsLAw2dlQSqlG5bvvvttkjNkr2r5GHRQKCwuZP39+srOhlFKNiojEnL1Aq4+UUko5NCgopZRyaFBQSinl0KCglFLKoUFBKaWUQ4OCUko1MiVlHopWbaWkLOZSK7utUXdJVUqppmb6gtUMm1qEW1z4jJ8xg3oyoFeHWru+lhSUUqqRKCnzcOeUBXi8hp2VPjxewx1TFtRqiUGDglJKNRKL12zD6w9N8/qt9NqiQUEppRqNWBOY1t7EphoUlFKqkejWvgVuV+gS7G6X0K19i1q7hwYFpZRqRCSsVBC+vac0KCilVCNRvKWc7PTQTqPZ6WkUbymvtXtoUFBKqQYk3hiEglbZVPpDW5or/X4KWmXX2v11nIJSSjUQ0xesZvi0haS7XFT6/Tx2Xo+QMQj5eZk8dl4PhoUdk5+XWWt5qLOSgohMEJENIrIoKK21iHwsIsvsv1sF7btHRJaLyM8ickpd5UsppRqikjIPw6ctZFeln+0eL7sq/QybtjCixDCgUzYLvxnH2z0N84b3q9WBa1C31UcvA6eGpY0APjHGHAB8Ym8jIl2Bi4Bu9jn/FBF3HeZNKaXqRaJTUhRvKSfdFfpKTne5nPaCkjIPmy6/GvLzyfjoA5rNmVUn+a2zoGCMmQNsDkseCEy0f54InB2U/oYxxmOM+R1YDhxZV3lTSqn6MH3BavqMnsVlL3xNn9GzmLFgdcxj47UXzH3hLfKbZdHm1ZcAGHvcpZzUon+119wd9d3Q3NYYsxbA/ntvO70DsCrouGI7LYKIXCci80Vk/saNG+s0s0optbsSrQ4KCLQXZKW7aJaZRla6iydP2Y/WbVtz7LUXALAxpyVdbp/KU8dcnNA1d0dDaWiWKGlRO98aY8YD4wF69+5dux10lVIqQSVlHoq3lFPQKjtqQ2+gOmgXVd/+A9VBsRqGB/TqQJ/ObSjeUs6BTzxM9nFPOvvOvWwM33foEnFOddesqfoOCutFpJ0xZq2ItAM22OnFQMeg4wqANfWcN6WUSkh1vYSg+u6jwUEFcH7e+fk8ep7e3zmn/OZb6dH8ZCp90b8DN/YuqTOAwcAo++/pQemviciTQHvgAOCbes6bUkpVK7haKFAKGDZtIX06twn5th6t++j9Z3aleEs5Hyxax8iZi3GLC4/Xh8sltDSVvDfuKjru2ALArrQMnpj0KdefdRi+v/8vIh+5mW58flPrXVLrLCiIyOvA8UAbESkGHsQKBlNEZAiwEjgfwBizWESmAEsAL3CTMcZXV3lTSqndVZNqoeDqoEWrSxn57hJcAuWVgXOt19yNc17jzrmTnfMuvugffLlvDyjazP5/Woc/SiHh7pMP5KyeHWo1IEAdBgVjzMUxdvWPlmiM+Tvw97rKj1JK1YaajioOvLQHPfdFRBVQlw2/8f5LQ53t13qewr2n3hJyzKe/bCCaP+3VrNYDAjSchmallGoUAtVCdwetfvbYeT0AKFq1NaKNAODdotUhASHDW8n7L93M/purupP2GvoaW7ObR9xv9tJNEWlpLujWPvLY2qBBQSmlash6vYvVb9II8//Y7LQdlFd6ERGy0tzs8vowxpDurhqLO+Tbd7h/1gvO9lWDHmT2/kfEvJfHV1UqyUpzYTCMGdSzTkoJoEFBKaVqJNDQ7AlaAm3SlysBgtoZDJU+r7Pf6/fxp5JiZr1wvZM2o0tfhp51N0hkj/w0FxErrOVmuvnbWd044eC96ywggAYFpZSqkWgNzfG4/T7efuUueq5b5qQdcdMkNua1jnnO7SceyLhZy/B4q6qcfH5T5wEBdOpspZSqkWgNzbFctOADfh0z0AkINw4cQeHwmU5AyEyL/go+pKAFYwb1DBndXNtdT2PRkoJSSiUoMOBsQI92TPmuqpH4uM75fPvHFqdNoWPpemb/c4izf9afejNk0AOIy0WzjDRrzMIZXenYOochE78NaYROd1vLa+bnZTrdWWONmq4LGhSUUioB0xesZtjUhbhEKK8MHUb17R9bePXqI1mxsYzT7xxMztzPnH3H3DCBNc2tad4y3MKzlx7qvPQBnji/J3dPXYjbJfj8hjGDqkoE+XmZ9RYMAjQoKKVUNUrKPNz1VlHMqSYAXrt9FE9Of9zZ/vaBJ7jSdGVHRVUAyXC7aZGdEfKiDx7gVp8lglg0KCilVJjwye4WrymNGRDabt/E1/+80tme36ELF1wyimyTERIQIPbcR8koEcSiQUEppYJEm+zOFaXbKMbw/Dv/4KRfvnSSjr/236xobU2MFxwQcjPc+EzVPEWJTKiXLBoUlFLKFmuyu8cH9Qw57uRfvmT8f6pm5bn/pOt55bAzo14zfHxBohPqJYsGBaWUssWa7K55djpul9CibCvfP3Ops+/ntvtx7lVj2WFi9+6v8PpDxhfszjoL9UmDglIqJVW3CE40sSa7a988kzHvPsG5i6rWRT7p6mdZtte+MZYDq2JM6AE1nVCvvungNaVUyqnJ2sjB8vMyueDwgpC0O1lB53YtnIAw+v8NpnD4TCsgJCA7PY3iLeUh9whfdrO+BqYlQksKSqmUsid19iVlHqZ8VwxA811lLBx7kbOvuPle9L/233jSMmqUn2ilgIbWDTWYBgWlVErZkzr7wLkjPv4nV34/00k/c/DTLNqnc8ixbpeQk+6mwuenwuuPqEWqbmW0htQNNZgGBaVUStmTOvvCJd/x48hTne1njr6QJ/peHvXYNBfO6OR5yzeFrK/wwJnd6N6hRYMrBSRCg4JSKqVEWxu52jr7sjLo0IEW27YBUJqVxwlDJ7JZYp8TPDq5IVcH1ZQGBaVUyhnQqwNd2zVnwaqt9OrYks5tmzn7Inol3XsvPPpo1cmff4631xE8vWZbxGR1wcJLHw21OqimNCgopVJOrBHDwekHFS9l6oTbqk665RYYNw6AfKDvgXuFTFZX6fNjjCE7PS2x0kcjpUFBKZVSYvU+6tquOcOnLcTsLOfD5/9C++3W2sfG7UY2bYKWLUOuUbylnD6d2/DFiH4h6y2nQhVRPBoUlFIpJVbvowWrtnL9F1O4bdbLTvp1l/6Dmx69gZ5BAaG6eYlSNRgEaFBQSqWUaL2P9lv3K4OOqOpV9Fb3E7n79FtJT3PxaNCspYvXlDJsahEer2mQ8xLVBw0KSqmUEtz7KNv4mPLvmzhg00pn/2G3TGZzTgugagqKQOnAJRKyLjI0rHmJ6oMGBaVUyhnQqwP9/zeF3LvvcNJ+f2EyA1bms93jddKy09NYvGab0wYRTUOal6g+6NxHSqlGoaTMQ9GqrZSUeeIfuGwZiDgBwTPgbPD7aX7heVEHtYEh3RX5KsxJdze4eYnqg5YUlFINVqAX0KLVpTz83pL4i9J4vXDccfDVV05Sv9snsya3FY8VrWFArw5RB7V1a98iIlhkprl47vLD6da+eZMKCAASPq1rvdxU5HbgGqxJZ38ErgJygDeBQmAFcIExZku86/Tu3dvMnz+/TvOqlEqOQD2/WyRiWcusdBfzhveremFPmABDhjj77zx7GNMO6hv1+GhTas9YsDoiWDSUldDqgoh8Z4zpHW1fvZcURKQDMBToaowpF5EpwEVAV+ATY8woERkBjACG13f+lFLJFzzWIBqn8bdkHRQWVu048USKXniTjyZ8C0FtB8GNxdFGHqfSNBV7KlltCmlAtoikYZUQ1gADgYn2/onA2cnJmlIqmUrKPMxeuiFicZpgXp+XLledHxIQtixaCh9/TEF+7m5NiJefl0nPji2bdECAJJQUjDGrReRxYCVQDnxkjPlIRNoaY9bax6wVkb3rO29KqeQKrjIK7xoKkJPh5uTFn/H026OctPtOH8p/Dj8N3+u/8cBZWXRv34L7z+ga0QbR1F/2iUpG9VErrFLBfsBW4C0RuawG518HXAfQqVOnusiiUqoWJbosZnVVRnuVbebbZ69wtjd26cmxAx7GgwvsNof7/rOI3Aw3PmO4/8yudG/fOKevTqZk9D46EfjdGLMRQETeBo4B1otIO7uU0A7YEO1kY8x4YDxYDc31lGel1G6obsqIYMFLVoYwhmenj+KMn+c5Sf2ueY7f8guiHh5olH545pLQxmiVkGS0KawE/iwiOSIiQH/gJ2AGMNg+ZjAwPQl5U0rVQLyxA8Hf/Ld7vOyq9DNs2sKY4wxyM9wRpYRrvnmbFY+d5QSEkf2upXD4zJgBIVigcVnVTDLaFL4WkanA94AX+AHrm38eMEVEhmAFjvPrO29KqcRVVwqo6bKYOyp8ZLoFj8/QftsGvvjX1c6+5a0LOO3qZ6h0pyecv6Y2Erm2JGXwmjHmQeDBsGQPVqlBKdXAxZqeOnjiuGgT01X4/JSWVzqlheC2hoJW2YjA9+MuoXX5Nuecr/71OoOLm1MZpeE5IDNN8PoMLpeQlebWxuU9oCOalVI1lkgpIHxZzF1eHz6/n5smf88ury9iwZoB3/6XpX+/zrne5386jC3TZjCgVwfGBA0u21npw+evChAX9C7g0qP2bTLrHdQ1DQpKqRqLVgqIVl0TWBZz7vKN/OO/P1HpJ2RCuu0eL212bGHAoaFtBEcMm8q29BzGBF0neHDZlh0VUZfahNRf76CuaVBQStVYoBRw99Qi3OLCZ6JX1wRPSR02UwUA/3v+ejpvLna2bzrvPt7rfLS14fXHXMugc9tmEcFA1Q4NCkqp3WJV4AgIYCRif7xxB2ct+Yxn3h3jbC/cpzMXDBnHLm/osYEqqbnLNyXUtTXRMREqNg0KSqkaC7zwPUEv8fBv9dHaHZrvKmPh2ItCrtVr6GtszW4O3sjgUen3k5vhrrZRG2o2JkLFpkFBKVVjiTQ0h7c7TJk8jCOLlzjbd5xxO293j97hMCfdjR/DY+f1YEeFr9p7JdIbSiVGg4JSqsYSaWgOtDu8N+oF/v3mQ076mhZ7c8z1E+Je/7FBPTh6/3xnquvq7lXTMREqNg0KSqkaC+9uGnVcQFkZAw4tYEDQeUfeOJENzfLjXjsr3UXH1jkxu7ZGu1eivaFU9TQoKKV2S6C7adSuoWefDdOrZqopHjma07w9Q7qjxhOta2u89Q4SClIqIRoUlFI1EneJzNLlcPzxzrEmJwcpKyN7RwXl//hfxLVyM91UeP0RA9mivcyjLY4TTBfKqR0aFJRSCQv08ElzCWUea+DBLvxkeCsjBqCdesvLrGixN48VraFP5zYYq++qs98twr8utdZBhtoZiVxd4FDV06CglIoQrb9/rHEHj/33aS74saoU8NTxVzD2qAusjUo/d08tYmi/A0KmpgDwGQOYkLYDlXwaFJRSQOxqofvP6Er3Di0oLa8M6eHTY+0vzJh0R8g15vy0lgmvF4Wsj+zxGsZ9sizGXSMHvank0qCglApZBjOwSE3g5X/fO4vIy3RT6TP4/H7cfh+/jhkYcv6JQ/7Jir078UGrXMorIxuTPb7IGU7TXDhVR6rh0KCgVBO2fP125i7fxD/++xMVUV7cAYH2g/tnv8iQb/7jpD935LmMOsFa96BZehprSndFtB2Ey3S7QAxjBvXUKqMGSIOCUk3UA+/8yKSvViZ07AEb/+DjCTeFpHUZMZ1y43a2K3w+fizeGtF2EO6hAV05uds+GhAaKA0KSjVBy9dvTyggiPHz+2MDQtLOvXosywoOwuv1kWZ3JS2v9OI38H+zl1d7zXS3SwNCA5aMNZqVUkm2YNXWao+5Zd7rIQHh9R4nUzh8Jt/vtT/bPV4qfQa3y8Wj5x6C2+Wi0mcojzIjarheHVvuQc5VXdOSglJNULwXc6cta5kz/tqQtAPv/A8VaZHrI2e4Xeyq9JHhdoXMmApW24HHF5p2xdGddB2EBk6DglJNUOe2zbji6E5M+jKoCskYfnn8HDL8Vb2HLrhkFN907B7zOpV+P706toyYdygzzcXzV/SmW/vmcVdJUw2PBgWlmqiRAw9hQI/2fLhkPZVPjeWhT8Y7+94/8BhuOOdewBpJkJdpTUFxxL6t+Hx5iXPcBb0L6Ny2WdR5h/oeuBdgDUrTYNB4aFBQqomavmA1T7w0iznjrghJ73L7VCqzsnnojC4c27kNYLVBFObncNmEb0KOnTK/mFv7H6jzDqUQDQpKpZBYy1EGpwMsXlPKUX17Mmd71bf+Kwc9xKf79wagWbqbQzu1YvHabc5qZh6fHzGh3U2D1yzQeYdSgwYFpVJErOUog9N3eX2cU/Qxj733tHPeVx27c9Elo0KuFWsZzHC6ZkHq0aCgVCNXUuZh8ZpShk0twuM1IctRdm3X3HmxZ+/cwrJnLg05t8etb7AtK8/Zzs104/PHXgYzK92F32/ITHPrmgUpSoOCUo1YoBTgEsHjjazaWbBqK+kuF2+/dBNdN/zu7Ltx4Aj+e/CxEdcbfW78ZTAB/jv0OHZU+LTtIEVpUFCqAYvVRhDYF20q64BKv58+RZ/x48jLnbSlbfbl1CHPxrzfrkpftctgak+i1KZBQakGKlYbQUDxlnJMjHmGmnl28OPoC0PSDrtlMptzWsS9Z/igNu1V1PQkJSiISEvgBaA71nSKVwM/A28ChcAK4AJjzJZk5E+p+hDeIyj4xRtcCghuI+jTuY3zYs7NcEedkvrVN+7j2D+KnO37z7yNV7qdWG1+Yo021l5FTUuySgpjgQ+MMYNEJAPIAe4FPjHGjBKREcAIYHiS8qdUnQouBZRXehERsoIab/fNz41o5A3u/gmwo8JHVrrLqT7q+9t3THrrQef4Dbmt6HPrq1TGmRI7M83FPacdzLGd22i1kAKSEBREpDnQF7gSwBhTAVSIyEDgePuwicCnaFBQKShaKQAMlT5reolh0xYy8+ZjIxp5w7t/FrTKxuc3ZFXuYumTg0KO/fMNL7OueRsICgjZ6S4qvH5cLiHd7cLnN4wZFFolpVQyZkn9E7AReElEfhCRF0QkF2hrjFkLYP+9d7STReQ6EZkvIvM3btxYf7lWqpYUbykn3RX/f70dFT4eO68HWekummWmkZXuitr98+lpj4YEhJH9rqVw+EwrIITx2ZPTGWPsNXDir3ugmqZkVB+lAYcBtxhjvhaRsVhVRQkxxowHxgP07t1b/1WrRqegVXbUrp4BuyqtgWPxGnlLP5pF/in9OcPe9oqLzndPB4m95nFFVaEEr99aSS28nUKpZJQUioFiY8zX9vZUrCCxXkTaAdh/b0hC3pSqc4GunlnpLnLS3RH7M91V6yRHqKgAEVqc0t9J+n/XjafzsBlxA0IsgXYKpQLqvaRgjFknIqtE5CBjzM9Af2CJ/WcwMMr+e3p9502puhBtrEGgFLB4zTaunTQ/ZC0CcQkFrbIjuqR+8NNkCqdNdo57qs8ljD32kpB7uQXuP7MLP6zcyvSitdXmTaepUOHEmPqvgRGRXlhdUjOA34CrsEotU4BOwErgfGPM5njX6d27t5k/f37dZlapPVDdWAOAGQtWhwwQu/+MrnRsnW0HC0O3dct5b+JtIefsN2wGRiIL+lcc3YmRAw8BrCU3F6zayuYdFTz5v19i9nTShuamR0S+M8b0jrovGUGhtmhQUA1ZSZmHPqNnhYw4zkp3MW94v6ijk4u3lLNodSkjZy5BgIqKSn4bMzDkuDOveZZF+fvGvGd11482JkI1PfGCgo5oVqqOBHoZxRtrEBDYHvTcF1T6DMM/fZkbvp7q7J9w+ABGnnhdtfeMd/3gNA0GKhYNCkrVkWi9jOLV4S9eU0qn9Sv55MUbQtI73/UOXndi/6tqG4HaUxoUlKoj0SaUu//MriG9fZxqnJx0+h7Ulk+Czj/78idY0P6ghO6Vk+7Gj9GprNUe06CgVB0KHmuwaHUpD89c4ix2Y4whOz2Nqz5/nTtmT3TOmdq9P3edcXvU62W6JWK+o8w0F89dfjjd2jfXgKD2mAYFpepY4EV94fgvQ6a2KChdz9znhoQce9Cdb+NJy4h5LRFBMCFjkS88ooC+B+5V6/lWTZMGBaUSkEjvnXhrH4Q0OhvDoqcvIK+iqhrp4ov+wZf79qg2H7u8kSOhp8wv5tb+B2opQdUKDQpKVSPajKbhE8pVNx6hoFU25ZVeLvv+PR75+F9O+if7H8GQQQ9Gu60jO81FeZRgEBCrx5FSu0ODglJxxJ7R1JqG4s63ikLWQQ4cc/fUhWzeUeFMSS3r1rL80TNDrt319rcwOTngjT1W6M/7teLGEw7gqpe+IdYM2NrjSNWmZMx9pFSjUd2MppU+w9zlGyOO8Xj9PPTuEk58ag6b9ymg9QH7OfuGnHc/hcNnIs3yuLbv/mS6Y89Z9NXvW8hJd+FyRR6Tm+mOOXuqUrur2pKCiNwMTNZV0FRTVN2MpgA7PD4qfJHHnL14Nk/PfMLZ/qGgC+dcOsbZ9voMB7ZtZk9kF7u08MpXK8lMczmlE7BWXfvbWd044eC9NSCoWpVI9dE+wLci8j0wAfjQNOa5MZSqgfy8TC7oXcCkL1fGPOZfn/2Kz+8n3S24RMjaXkrRuItDjpn+v4VIfmuy7HaHXV4fPr+fe97+Mehc8ESpSvpg0Ro8YZOm+ozRgKDqRLXVR8aYvwIHAC9irZa2TET+ISL713HelKpzJWUeilZtpaTME3P/lPnFEenBVT5lHh9eP7gEvvjPPSEBYehZd1E4fCbduhcyoFcH5g3vx7OXHopLwOuH7R6vc+4T5/fEHWX66+CAoFVGqq4l1NBsjDEisg5YB3iBVsBUEfnYGDOsLjOo1O6K10UUEpvBNNr8RbmZbob02Y8J836nzH5jn7TsK55/+xHnmN9ataffdeMBa+bSwPrH+XmZtMjOIMPtxuP1OsdnuN10bJ3LUxf25O6pCzHGUBHWsqxVRqo+JNKmMBRrfYNNWNNd322MqRQRF7AM0KCgGpzqXvjRehVFW4Us0JU0mKfSx4Ce7Rn/+W/kenay+OkLQm++di1+yeXxVVvp1bGlExCCrxlrTqSeHVva6yyUOlNnB2iVkaoPifQ+agOca4w5xRjzljGmEsAY4wfOjH+qUvWrpMzDnF82Mmyq9cLf7vGyq9LPsGkLQ6qIovUqirUKmYRV6YgIrXIz+Gz2mJCAUHTfKDAG9tmHzm2bMah3x4iAAKErr0Vbfzk/L5O+B+7NmEE9q12jWanaVm1JwRjzQJx9P9VudpTafYHSgQsJWckMIgd4JTqDafGW8ohvTsf8voD8Zmc426VZeRx5x5uMGdSTnlHyFW/ltXjVW4kco1Rt08FrKiUEVwdFE/7CjzqD6RlVM5gGXsC5GW5nArp0XyXLHj8n5Lp9rp/A6hZ7g89ErX6KV40VvsZBNIkco1Rt0qCgUkK0BmGAnAw3fmNCpqyO9m190epSHn5vScTLe02pdc7g797lb//7t3PdR4+/kn8fNSjkXuGlkUTbLZRqSDQoqJQQrTooM0147rLDWLW53JmyOtq3dYicwTTw8vYt/YUVo6uazt4/8BhuOPsee8BZqPDSSE1WXlOqodBpLlRKiNZ4O2ZQT7q1b8HD7y2pcaNzFob04/pwwsDjnLQjb5zIDefcGxEQYo0dqOnKa0o1BFpSUCkjWsNs0aqtcb+tl5R5KC2vDJmm4vyFHzHm/XHO9tCz7mZG1/8Xcq/cDDc+Y7j/jK5079AiakNwtHYL7UGkGjoNCiqlhDfMxvu2HtwI7PP72bdsI589e5Vz3Of79uKKC0dixCpFZKe78Bt44KyudG8fPRCE0x5EqrHRoKBSWqxv64DTCOwxXiZOeZC+K35wzjtl6Mv8nN3G2c7N3P3RxNqDSDUmGhRUygv/tg4we+kG/H7DmT/N4f9mPOYcu2r0WHJu/At/jJ4FQd1bfX4dTayaBg0KqtGobi6jeALf1qcvWM3dbxWx1/bN/PLM5c7+Be0O5LzLxvDh4BPoaJcu7p66ELdL8PmNtgWoJkODgmoUEpm8Llx4ECkp83D7Gz/wzDujOOPnec5x/a55jt/yC8hKd7GjwprgzgT+a+KvdaBUqtGgoBq83RkEFi2I7DPnY34bXdWQPLLftUw4YmDIeQWtsp37WZPR+RK6n1KpImlBQUTcwHxgtTHmTBFpDbwJFAIrgAt0tTcF0QeBuYCJX6xgQM/2EZPOhQeRVjtLGXBogbN/eesCTrv6GSrd6QBkprkQwakiqq4bq1KpLJklhVuBn4Dm9vYI4BNjzCgRGWFvD09W5lTDEW366p2VfsbNWs64Wcu54uhOjBx4iLPPCSLGx6gPnuGihR85+0696hmW7r1fyLWeOL8nR++fX+PJ8pRKRUkZ0SwiBcAZWOszBAwEJto/TwTOrudsqQYsfPrqYJO+XMny9dud7YJW2Rz+6/eseOwsJyCMOe5yCofPjAgIVxzdiTN7tg8pAVQ3tbVSqSxZJYWnsRbnCS73tzXGrAUwxqwVkb2jnSgi1wHXAXTq1KmOs6kaguIt5WSluan0eWMeM6NoDYOPKSTft4v8Nm142V7VbH1ePn2vG48nPfSFnuESEOi9b+uo19NBZ6qpqveSgoicCWwwxny3O+cbY8YbY3obY3rvtddetZw7VZ+qWx85IFr1UbgXPv+Nd/tfBC1bgh0QBl35JMfeMikiIABU+K3lLsPnQQqWn5dJz44tNSCoJiUZJYU+wAAROR3IApqLyKvAehFpZ5cS2gEbkpA3VU9q2sXUqj6K3jX0sOKfeHvy3c72C8eczyPHDbY2/PG7k4bPg6QlA9XU1XtQMMbcA9wDICLHA3cZYy4TkTFYa0GPsv+eXt95U/Wjpl1Mo1Uf5WS4OffAltx53Sm0Kt8GQFlGNkfdOJEdmTkJ5yXaPEiJjoNQKhU1pKmzRwEnicgy4CR7W6WgaFNVu13C7KUbolblROsNdNPsSTxy+dFOQLjw4kfpfvtbCQeE4OmuoWoepFjTayvVVCR18Jox5lPgU/vnEqB/MvOj6ke0NoIdHh8PzljMX6cviviWHjypXY/1vzLl+Vucfa8cejr3n3xjzHvlpLuo8PkREau0YS+7GTzdtY5LUKqKjmhWSRGtjSAwxURwVVKgnr9PQR6LX7kB9x9/OMf3uPUNtmXlxbxHZpqLkQO7c8LBVke2WO0FOi5BqSoaFFS9q66LqTGG2Us34PH6GTlzCdd+NY27PnnR2X/9JY/wQcde1d5HhJCZTWN969fFcJSqokFB1bto38yDebyGB6Yvpv3a3/n5xaqqoXe6n0D3j9/h02fnhUxrDVYbQYXXjzGG7PS0Gr/YdVyCUhYNCqre5QdNTQ3g8Ya+4NN8XqZNuJkuG1c4aYff/ColuS2ZtG0XFxxewKSvVjr7LujdgUuPKqSgVTZbdlSwYNVWenVsGTEnUiL50mCgmjoNCqrW1KSff2BqalfY9BWX/fBfHvnon872X86+lw8POsbZ3lbuZcp3xSHnzChay/BTuzB3+SbtVqrUHtKgoGpFTfr5h05NbYWHTlvWMmf8tc4xH3c+imvP/avVMGBLc0Hz7LSoPYUWrymt8fTaSqlIGhTUHqvJYLSSMg+zl24gzWW97F1+H2+8fg9HFi9xjvl/QyexueXepHt9+P2GzDQ3PuNnzKCedGvfImpPIRDtVqpULdCgoPZYtPUOor2Qpy9YzbCpC3EJlFf6OXfRJzz53lPO/u3PT6DZNVfxdlA1VOD6wVVS0XoKdWvfXLuVKlULNCioPVJS5qG0vIKdFaHdS8srvSEv5JIyD3e9VUSlz9Bu20Z++lfVCmhf79uDXyf/h26dWlNQ5olo8A3/ph+rp5B2K1Vqz2lQUAmJ1ogcaEdIcwm+sHnnwtc/WLymFK/Xx4SpI+n323wnfeqbs/F02o+H31tSowbiaD2FtFupUntOg4KqVrRG5D6d2zjtCNFkpblDqo/afDiT3x8b4uy/95SbeK3XadzdpgPjZi7B462dBmLtVqrUntGgoOKK1Yg8/vLeEe0IwZzqo/XrYZ996Gqn/9h2f865/Am8buuf3v/NXh4xTkEbiJVKnoY0S6pqgKLNaGptm7ijkgXIu/oK2GcfJ23WtNkMumYc6ZkZTlp5lJKGNhArlTwaFFRcsSaL69a+hbOOcU6GO2T/8b/OZ9mjZ5L51hQr4fHHwRj6nXs8X4zoz8NndycvM/QcsNZI0PWQlUourT5SccWbLC7QsLt4TSlXvfQteTu3UzTuYudc3/774168GDJDexKdcPDe/HX6opD7ZKYJz112GN3at9CAoFQSaVBQ1aq+V4/w8AfPcsmC952Us64ax8vjriM/M/IFHyvQ9D1w7zp+EqVUdTQoqIRE69UzfcFqpj3xKpNeHeGkPdXnEsYeewkA7xat5qyeVtfS8ICi3UeVapjEmPgLmzdkvXv3NvPnz6/+QBVXSYwRxME/B7+0S8o8LP2lmMOO6ka211qycmNOS/r+5QXKM7Kc47LTXVSGrXqmk9QplXwi8p0xpne0fVpSaOKCxyCUV3qdF/gury9ibYIBvTowfcFqNt54K9d8Oc25xrmXjeH7Dl0irl3Vs8g4C+roJHVKNWwaFJqwaGMQgl/gANs9VS/zQ9f+zMDTq5bRfv6Is/l7v2tCrpnhFirChzcHqekYhJpMx62U2nMaFJqwaBPZRZNVuYu5/3ctbR7ZAsCutAx63/wqZZk5AOSku/FjuP+MrnRsncO1k+ZHDEgLqPD5KC2voMSe4yiemkzHrZSqHRoUmrDqlsUEGDrvde6YO9nZHnzZo3zW4RBnOzPNxbBTD+LYzm2clc7GDKrqWRRcJVVe6cVv4KbJPyS85oKuj6BU/dKg0AQFV8kEuoa6EHZW+pxjumz4jfdfGupsrzj3EgqnTea8Bav52n7h7/L68Pn9PPHRL4z6YKnzkg/vWQSweM02pwSRSPtCotNxK6VqlwaFJiZalcy84f348tcSbn79BzK8lbz/0s3sv3m1c87mFasp3Lc9QMiAtWsnzcfjC213CLzkw7uwtshOJ8PtCqlWiveSjzWSWqe/UKpu6TQXTURJmYc5v2xg2NQidlX62e7xsqvSz7BpCwHo2DqHv3w/nV+eOMcJCH+58CGKVm6htR0QAvLzMmmRnUGGO3SqisBLPpqavuQDA9yy0l00y0zT6S+UqidaUmikEumVEzhm0epSHn5vCS4Re13kKukuFxu/LaJnv6PoaafN6NKXoWfdTVaGm3/YL+3w+xW0ymaX1xdyrV1eX7Uv+ZosgqMD3JSqfxoUGqFEeuUEL4BT5vFFvY7b7+P152/j4JHLnbRjb3uV0uZtyAp6acdaTyF84GN1AyF35yWv6yMoVb/qPSiISEdgErAP4AfGG2PGikhr4E2gEFgBXGCM2VLf+WvoEumVE3xMLFf8+BEj/zuuKmHKFDj/fKaHlQjiraeQnZ7mtCcAZKenVdsQrC95pRq2ZJQUvMCdxpjvRaQZ8J2IfAxcCXxijBklIiOAEcDwJOSvQUukV0688QcFW9cx999BA85OPx3efRfsNRPCX9qx7hdtPQVtCFaq8av3hmZjzFpjzPf2z9uBn4AOwEBgon3YRODs+s5bY5BIg220+n4xfia/cW9IQDj+5peZ8ffxlOyspGjVVkrKPAnfL3g9BW0IVip1JLVNQUQKgUOBr4G2xpi1YAUOEYk6j7KIXAdcB9CpU6d6ymnDkWiDbXD9/sDFsxk78wln+67Tb2PqIScCcNubC0h3Cxlua8K6+8/oSvcOLZzqo0TWU9CGYKVSR9JmSRWRPOAz4O/GmLdFZKsxpmXQ/i3GmFbxrtGUZ0mN1fuopMzD7KUbeOjdxeRuWs/X/7zS2fdNQVcuuvhR/K7IVc+C5WW68fpNSAO2zkGkVOpocLOkikg6MA2YbIx5205eLyLt7FJCO2BDMvLWWMRa32D4tIW4gSffHMkpy75y9h1/7b9Z0TqxeYMCvZXiDUZTSqWmZPQ+EuBF4CdjzJNBu2YAg4FR9t/T6ztvDUWs9Q2CX8rzfy9hzrJN9D2gDb33y3d6CfVdPI/x//m7c9z9J13PK4eduVv50GkllGp6klFS6ANcDvwoIgvstHuxgsEUERkCrATOT0Leki54TECsNQ0ue+Er5i4vAWDcrOUc1zmf4b3bsPSR053r/LRXIWcNfhqvO/6vuF3zDLaUe3GLsKMitHFaexMp1fTUe1AwxswFJMbu/jHSm4To6xuEzi2Um+F2AgIAxnD20/fSffFsJ+mkq59l2V77JnTPtdsqmPqXP5Oe5mbRmlIenrkk4RHHSqnUoyOaG5Dq1jdId7n4aMl6Z/u437/nlSkPONtLbhnBuS36WhE3ysA1NxBtbPOKkp0M6t2Rnh1bcmq3fbRBWakmTINCA1Ld+gY7K7x03juP5rvKWDj2Iie9uPlezHv3c048rJB5wOI1pQye8C3B/coEeOSc7tzzn0UR1+3VsaXzszYoK9W06SypDUhgTEBmmovs9Mhfjc9Azl23hwSEMwc/zbE3vMQjn6ygz+hZzFu+iW7tW5DmDq2hS3MLJ3fbhyuODh3bccXRnZzFcZRSSksKDYyx/+v3h77Uj1i1iLdeG+FsP3vMhay96z5+/nYl+EPbHcZffjhZae6QtZaz0twUbyln5MBDuOLPhSxYtZVeHVtqQFBKhdCg0IAEGpqt6a2t8JBTUc5Xzw6mecVOALZm5XHMDS/hbtaMBzu2ZOr3xVGqnCTuVBid2zbTYKCUikqrjxqIwEhkv7+qJeDuzyay5KnznYAw6NLR9Lr1DXZmZFNe6aUwPydiJtRdlX7at8jSeYmUUrtFSwp7qDamf5i+YDV3v7UADFT4ocfaX5gx6Q5n/0uHn8XfTvxLyDki1prKmW7B46sKJJlua7yBzkuklNodGhT2QCKL3VSnpMzDbW8swACZlR6+eP4vtN++CQCvuDhs6Gtsy8qLOC/D7eK3jTsiRnyIS5xqIu1JpJSqKQ0KuymRxW6Cj431jf3LX0swwI1fTmHYnElO+qUXPsK8wl4x77+jwsfjH/2M30Cai5BRzxoIlFK7S4PCboo20MztEmYv3cAJB+/tvJirK014i4pYMbpqbqIph5zIsNNutbqURhmykJPuYqfdjhCYuC4zzcWzlx5Gt/bNNSAopfaIBoXdFG2g2Q6PjwdnLOav0xc56xjHLE1kCBx6KGcvWeKcf9gtk9mc0wKwegC4BVwusbqX+v3cceKBlHm8vDj395B5ijLcLlpkp2tAUErtMQ0Kuyl48Rm3S9hhf2sPvKzvnlrEPad1wS2hlf7pLhe7nhwLD1atNPraPWO5179/yHEVgXjjNzx76aGs2lzOw+8t0YnrlFJ1SoNCgqJNZ92ncxvmDe/H7KUbuPfthVUvcsDjNYz+YCnlQV1GCzev5tPnq3oReQaczdJnJmDWbCNz5hL8xlDpC130yGdgW3klD7+3JKL7aW6mG5+9GI6WEpRStUGDQgKqm866V8eWIQEhIBAQ3H4f014bTq/VS519H344n1s/30Dai187bQOxbCqriGi/yM1w87ezuoW0Xyil1J7SwWvVCO5ltN3jpdJn8NrTSuyq9DNs2kLWlJaTFWWuIoDzF37Er2MGVgWE116jZPsubv18A7sq/dUGhHS3cGznNhHtFz5jNCAopWqdlhSqUbylHOOPvY51ustFtOUhOpRuYN5zVzvbFSf0I+N/H4PLRfGqrXGnyAbITnfhNzBmUA86t23mtF/oWgdKqbqkQaEauRnukBHD4Sr9frq1b+68tDMEnn31Po77/QfnmI/f+5KTTv+zs13dFNlugX9f3juki6mOUFZK1QetPqrGjgpf1KqhTLeLzDRxvrEP6NWBbzuXsPDh052AsGr0WEq27woJCFDVcykr3UVOhjvi2jkZaVG7mObnZdKzY0sNCEqpOqMlBeKPOC5olR3RIwis8QNOrdLatdC+Pc68o0ceScmHs9i8vZKcGPcMfPNfvKaUayfNt2dGtWgXU6VUsjT5oFDdiOMtOyrwRWlTKK/0gTFkXHIR/DS3asfSpUwvz2P4E3OqnRMpPy+TvgfuzZhBPbW9QCnVIDTpoJDI/EULVm2Nem7/5V/z4rSHqxKeegpuu8265uhZCc2JFKDtBUqphqJJB4Vo8xelu1wUbyl3XszB6xcDtNpZyg/PXOps/5rfkZa/LCa/dbOErxmNzmiqlGoImnRDc7ReQOH1+Z3bNnPWNR71/riQgDDg2mdZ/L8vnYCQ6DWVUqqhatJBIbgXULwVykbmbWDF6DO5aOFHAOx84CGKVm7hpSeH0KdzG4pWbaWkzFOjayqlVEPUpKuPoJr6/NJSaNMGvF4A1jfL5+QbX+Dhc45gQMeWMRuptY1AKdVYNfmgADHq82+/HZ5+2tkcePkTFLU/CLAajru2ax63kVrbCJRSjZEGhXBffAF9+jibG264lf57ncZ2j9dJc4swo2gNaa7IabGra1BWSqmGrMG1KYjIqSLys4gsF5ER9XHPkjIPP/68Gn9+m6qAkJcH27bhfmx05GI6FT5enPtbxGR22qCslGrsGlRQEBE38CxwGtAVuFhEutblPacvWM0bp13FIQcX4NpcYiV++ils3w7NmoU0HOcGTUmxI2iu7NxMtzYoK6VSQkOrPjoSWG6M+Q1ARN4ABgJL4p61m7bO/YqBxx3tbL9y6On8/YybmXf4n8kPOi7QcDx76QYeendxSAlB1zVQSqWSBlVSADoAq4K2i+20Wuft0ZOWQQGhx61vcP/JNzrtAuHy8zI54eC98frDV0bTdQ2UUqmjoQWFyIUJIOQtLCLXich8EZm/cePG3brJ+7N/JO3HhQAMPv9vFA6fybasPAAqfH5KyyudcQfBdAyCUirViTGx1wqobyJyNPCQMeYUe/seAGPMo9GO7927t5k/f36N7lFS5qHP6Fmkl21ne0YOiBWHcjPdVHj9EUttRpvILt6sqkop1dCJyHfGmN7R9jW0ksK3wAEisp+IZAAXATNq8waBldS2Z+Y6ASHdBZcc2QkhcqnNWCUGXddAKZWKGlRQMMZ4gZuBD4GfgCnGmMW1eY9oK6lV+uGVr/6gImy5ZOM3UdsXlFIqVTW03kcYY/4L/Leurr+jwkeaC7xhq2HuqoxcHtPjMyHdUJVSKtU1qJJCfcjNcEcEhFiy0l3sCC8+KKVUCmtyQSHWmsux6AhlpVRT0uCqj+parJd8rN5H2pislGpKmlxQCIw1CF4T+f4zutK9QwsnYGh3U6VUU9XkggJUvyayBgOlVFPVJIMC6JrISikVTZNraFZKKRWbBgWllFIODQpKKaUcGhSUUko5NCgopZRyNKips2tKRDYCf+zBJdoAm2opO41BU3te0GduKvSZa2ZfY8xe0XY06qCwp0Rkfqw5xVNRU3te0GduKvSZa49WHymllHJoUFBKKeVo6kFhfLIzUM+a2vOCPnNToc9cS5p0m4JSSqlQTb2koJRSKogGBaWUUo4mGRRE5FQR+VlElovIiGTnpy6ISEcRmS0iP4nIYhG51U5vLSIfi8gy++9Wyc5rbRIRt4j8ICIz7e2Ufl4AEWkpIlNFZKn9+z46lZ9bRG63/00vEpHXRSQr1Z5XRCaIyAYRWRSUFvMZReQe+332s4icsif3bnJBQUTcwLPAaUBX4GIR6ZrcXNUJL3CnMaYL8GfgJvs5RwCfGGMOAD6xt1PJrcBPQdup/rwAY4EPjDEHAz2xnj8ln1tEOgBDgd7GmO6AG7iI1Hvel4FTw9KiPqP9//VFQDf7nH/a77nd0uSCAnAksNwY85sxpgJ4AxiY5DzVOmPMWmPM9/bP27FeFB2wnnWifdhE4OykZLAOiEgBcAbwQlByyj4vgIg0B/oCLwIYYyqMMVtJ7edOA7JFJA3IAdaQYs9rjJkDbA5LjvWMA4E3jDEeY8zvwHKs99xuaYpBoQOwKmi72E5LWSJSCBwKfA20NcasBStwAHsnMWu17WlgGOAPSkvl5wX4E7AReMmuNntBRHJJ0ec2xqwGHgdWAmuBUmPMR6To84aJ9Yy1+k5rikFBoqSlbL9cEckDpgG3GWO2JTs/dUVEzgQ2GGO+S3Ze6lkacBjwL2PMocAOGn/VSUx2PfpAYD+gPZArIpclN1dJV6vvtKYYFIqBjkHbBVjFz5QjIulYAWGyMeZtO3m9iLSz97cDNiQrf7WsDzBARFZgVQn2E5FXSd3nDSgGio0xX9vbU7GCRKo+94nA78aYjcaYSuBt4BhS93mDxXrGWn2nNcWg8C1wgIjsJyIZWA00M5Kcp1onIoJVz/yTMebJoF0zgMH2z4OB6fWdt7pgjLnHGFNgjCnE+p3OMsZcRoo+b4AxZh2wSkQOspP6A0tI3edeCfxZRHLsf+P9sdrLUvV5g8V6xhnARSKSKSL7AQcA3+z2XYwxTe4PcDrwC/ArcF+y81NHz3gsVhFyIbDA/nM6kI/Vc2GZ/XfrZOe1Dp79eGCm/XNTeN5ewHz7d/0O0CqVnxv4G7AUWAS8AmSm2vMCr2O1mVRilQSGxHtG4D77ffYzcNqe3FunuVBKKeVoitVHSimlYtCgoJRSyqFBQSmllEODglJKKYcGBaWUUg4NCkoppRwaFJRSSjk0KChVi0TkCBFZaM/xn2vP+9892flSKlE6eE2pWiYijwBZQDbWvESPJjlLSiVMg4JStcyeU+tbYBdwjDHGl+QsKZUwrT5Sqva1BvKAZlglBqUaDS0pKFXLRGQG1vTd+wHtjDE3JzlLSiUsLdkZUCqViMgVgNcY85q9Tu4XItLPGDMr2XlTKhFaUlBKKeXQNgWllFIODQpKKaUcGhSUUko5NCgopZRyaFBQSinl0KCglFLKoUFBKaWU4/8DGMGHm9nqEhUAAAAASUVORK5CYII=\n",
"text/plain": [
"<Figure size 432x288 with 1 Axes>"
]
},
"metadata": {
"needs_background": "light"
},
"output_type": "display_data"
}
],
"source": [
"df.plot(kind='scatter',\n",
" x='x',\n",
" y='y',\n",
" title='x and y in the dataset, with prediction')\n",
"plt.plot(X, y_pred, color='red')"
]
},
{
"cell_type": "code",
"execution_count": 55,
"id": "ccaf0068",
"metadata": {},
"outputs": [],
"source": [
"W, B = model.get_weights()"
]
},
{
"cell_type": "code",
"execution_count": 56,
"id": "5e966641",
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"array([[1.0167854]], dtype=float32)"
]
},
"execution_count": 56,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"W"
]
},
{
"cell_type": "code",
"execution_count": 57,
"id": "d7d8eb87",
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"array([-0.43452635], dtype=float32)"
]
},
"execution_count": 57,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"B"
]
},
{
"cell_type": "code",
"execution_count": null,
"id": "18ef5e31",
"metadata": {},
"outputs": [],
"source": []
},
{
"cell_type": "markdown",
"id": "bf431404",
"metadata": {},
"source": [
"# Week 5"
]
},
{
"cell_type": "markdown",
"id": "22d4d753",
"metadata": {},
"source": [
"## Opdracht 5.1: ZTSL 4: Deep Learning Intro - shallow model"
]
},
{
"cell_type": "code",
"execution_count": null,
"id": "7687f6bf",
"metadata": {},
"outputs": [],
"source": []
},
{
"cell_type": "markdown",
"id": "6042b086",
"metadata": {},
"source": [
"# Week 6"
]
},
{
"cell_type": "markdown",
"id": "ea5be5e2",
"metadata": {},
"source": [
"## Opdracht 6.1: ZTDL6: Conolutional Neural Networks - MNIST"
]
},
{
"cell_type": "code",
"execution_count": null,
"id": "03a13811",
"metadata": {},
"outputs": [],
"source": []
}
],
"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",
"version": "3.7.10"
}
},
"nbformat": 4,
"nbformat_minor": 5
}