{ "cells": [ { "cell_type": "code", "execution_count": 1, "id": "scientific-peace", "metadata": {}, "outputs": [], "source": [ "from library.exercise import Exercise\n", "from library.dataset import DataSet, TrainTestData\n", "from library.GanExamples import StupidToyListGan\n", "from library.SimpleGan import SimpleGan" ] }, { "cell_type": "code", "execution_count": 2, "id": "optimum-intake", "metadata": {}, "outputs": [], "source": [ "import numpy as np\n", "import random\n", "from imblearn.datasets import fetch_datasets" ] }, { "cell_type": "markdown", "id": "average-grocery", "metadata": {}, "source": [ "# Load the dataset." ] }, { "cell_type": "code", "execution_count": 3, "id": "stuffed-picking", "metadata": {}, "outputs": [], "source": [ "datasetName = \"yeast_me2\"\n", "\n", "def loadDataset():\n", " data = fetch_datasets()['yeast_me2']\n", " labels = data.target\n", " features = data.data\n", " label_1 = list(np.where(labels == 1)[0])\n", " label_0 = list(np.where(labels == -1)[0])\n", " features_1 = features[label_1]\n", " features_0 = features[label_0]\n", " \n", " data0 = np.array(range(100)).reshape((25,4))\n", " return DataSet(data0=features_0, data1=features_1)" ] }, { "cell_type": "code", "execution_count": 4, "id": "hollow-intensity", "metadata": {}, "outputs": [], "source": [ "data = loadDataset()" ] }, { "cell_type": "code", "execution_count": 5, "id": "excellent-garage", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "(1433, 8)" ] }, "execution_count": 5, "metadata": {}, "output_type": "execute_result" } ], "source": [ "data.data0.shape" ] }, { "cell_type": "code", "execution_count": 6, "id": "timely-magazine", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "(51, 8)" ] }, "execution_count": 6, "metadata": {}, "output_type": "execute_result" } ], "source": [ "data.data1.shape" ] }, { "cell_type": "markdown", "id": "intended-oregon", "metadata": {}, "source": [ "# Initialize the random number generator" ] }, { "cell_type": "code", "execution_count": 7, "id": "healthy-secretariat", "metadata": {}, "outputs": [], "source": [ "def getRandGen(initValue, incValue=257, multValue=101, modulus=65537):\n", " value = initValue\n", " while True:\n", " value = ((multValue * value) + incValue) % modulus\n", " yield value\n", " \n", "randGen = getRandGen(2021)\n", "random.seed(2021)" ] }, { "cell_type": "markdown", "id": "future-family", "metadata": {}, "source": [ "# Create a shuffle function using the random number generator" ] }, { "cell_type": "code", "execution_count": 8, "id": "lasting-button", "metadata": {}, "outputs": [], "source": [ "def shuffler(data):\n", " data = list(data)\n", " size = len(data)\n", " shuffled = []\n", " while size > 0:\n", " p = next(randGen) % size\n", " size -= 1\n", " shuffled.append(data[p])\n", " data = data[0:p] + data[(p + 1):]\n", " return np.array(shuffled)" ] }, { "cell_type": "markdown", "id": "sensitive-harvard", "metadata": {}, "source": [ "# Create the Generative Adversarial Network." ] }, { "cell_type": "code", "execution_count": 9, "id": "civilian-forty", "metadata": {}, "outputs": [], "source": [ "ganName = \"SimpleGAN\"\n", "gan = SimpleGan(numOfFeatures=data.data1.shape[1])" ] }, { "cell_type": "markdown", "id": "korean-neighbor", "metadata": {}, "source": [ "# Test the Network with the loaded data." ] }, { "cell_type": "code", "execution_count": 10, "id": "listed-siemens", "metadata": { "scrolled": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "-> Shuffling data\n", "### Start exercise for synthetic point generator\n", "\n", "====== Step 1/2 =======\n", "-> Shuffling data\n", "-> Spliting data to slices\n", "\n", "------ Step 1/2: Slice 1/2 -------\n", "-> Reset the GAN\n", "-> Train generator for synthetic samples\n", "Epoch 1/3\n", "Epoch 2/3\n", "Epoch 3/3\n", "-> create 691 synthetic samples\n" ] }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "-> test with 'LR'\n", "LR tn, fp: 710, 3\n", "LR fn, tp: 23, 3LR f1 score: 0.167\n", "LR balanced accuracy: 0.553\n", "LR cohens kappa score: 0.150\n", "LR average precision score: 0.310\n", "\n", "-> test with 'SVM'\n", "SVM tn, fp: 717, 0\n", "SVM fn, tp: 26, 0SVM f1 score: 0.000\n", "SVM balanced accuracy: 0.500\n", "SVM cohens kappa score: 0.000\n", "\n", "-> test with 'GB'\n", "GB tn, fp: 709, 6\n", "GB fn, tp: 20, 6GB f1 score: 0.300\n", "GB balanced accuracy: 0.610\n", "GB cohens kappa score: 0.282\n", "\n", "-> test with 'KNN'\n", "KNN tn, fp: 717, 1\n", "KNN fn, tp: 25, 1KNN f1 score: 0.074\n", "KNN balanced accuracy: 0.519\n", "KNN cohens kappa score: 0.072\n", "\n", "\n", "------ Step 1/2: Slice 2/2 -------\n", "-> Reset the GAN\n", "-> Train generator for synthetic samples\n", "Epoch 1/3\n", "Epoch 2/3\n", "Epoch 3/3\n", "-> create 691 synthetic samples\n" ] }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "-> test with 'LR'\n", "LR tn, fp: 709, 6\n", "LR fn, tp: 19, 6LR f1 score: 0.316\n", "LR balanced accuracy: 0.615\n", "LR cohens kappa score: 0.300\n", "LR average precision score: 0.281\n", "\n", "-> test with 'SVM'\n", "SVM tn, fp: 716, 0\n", "SVM fn, tp: 25, 0SVM f1 score: 0.000\n", "SVM balanced accuracy: 0.500\n", "SVM cohens kappa score: 0.000\n", "\n", "-> test with 'GB'\n", "GB tn, fp: 713, 6\n", "GB fn, tp: 19, 6GB f1 score: 0.353\n", "GB balanced accuracy: 0.618\n", "GB cohens kappa score: 0.341\n", "\n", "-> test with 'KNN'\n", "KNN tn, fp: 716, 0\n", "KNN fn, tp: 25, 0KNN f1 score: 0.000\n", "KNN balanced accuracy: 0.500\n", "KNN cohens kappa score: 0.000\n", "\n", "\n", "====== Step 2/2 =======\n", "-> Shuffling data\n", "-> Spliting data to slices\n", "\n", "------ Step 2/2: Slice 1/2 -------\n", "-> Reset the GAN\n", "-> Train generator for synthetic samples\n", "Epoch 1/3\n", "Epoch 2/3\n", "Epoch 3/3\n", "-> create 691 synthetic samples\n" ] }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "-> test with 'LR'\n", "LR tn, fp: 704, 7\n", "LR fn, tp: 19, 7LR f1 score: 0.304\n", "LR balanced accuracy: 0.626\n", "LR cohens kappa score: 0.283\n", "LR average precision score: 0.302\n", "\n", "-> test with 'SVM'\n", "SVM tn, fp: 717, 0\n", "SVM fn, tp: 26, 0SVM f1 score: 0.000\n", "SVM balanced accuracy: 0.500\n", "SVM cohens kappa score: 0.000\n", "\n", "-> test with 'GB'\n", "GB tn, fp: 703, 10\n", "GB fn, tp: 16, 10GB f1 score: 0.400\n", "GB balanced accuracy: 0.683\n", "GB cohens kappa score: 0.379\n", "\n", "-> test with 'KNN'\n", "KNN tn, fp: 717, 2\n", "KNN fn, tp: 24, 2KNN f1 score: 0.143\n", "KNN balanced accuracy: 0.538\n", "KNN cohens kappa score: 0.139\n", "\n", "\n", "------ Step 2/2: Slice 2/2 -------\n", "-> Reset the GAN\n", "-> Train generator for synthetic samples\n", "Epoch 1/3\n", "Epoch 2/3\n", "Epoch 3/3\n", "-> create 691 synthetic samples\n" ] }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "-> test with 'LR'\n", "LR tn, fp: 715, 3\n", "LR fn, tp: 22, 3LR f1 score: 0.207\n", "LR balanced accuracy: 0.559\n", "LR cohens kappa score: 0.199\n", "LR average precision score: 0.497\n", "\n", "-> test with 'SVM'\n", "SVM tn, fp: 716, 0\n", "SVM fn, tp: 25, 0SVM f1 score: 0.000\n", "SVM balanced accuracy: 0.500\n", "SVM cohens kappa score: 0.000\n", "\n", "-> test with 'GB'\n", "GB tn, fp: 713, 4\n", "GB fn, tp: 21, 4GB f1 score: 0.250\n", "GB balanced accuracy: 0.578\n", "GB cohens kappa score: 0.239\n", "\n", "-> test with 'KNN'\n", "KNN tn, fp: 716, 0\n", "KNN fn, tp: 25, 0KNN f1 score: 0.000\n", "KNN balanced accuracy: 0.500\n", "KNN cohens kappa score: 0.000\n", "\n", "### Exercise is done.\n", "\n", "-----[ LR ]-----\n", "maximum:\n", "LR tn, fp: 715, 7\n", "LR fn, tp: 23, 7LR f1 score: 0.316\n", "LR balanced accuracy: 0.626\n", "LR cohens kappa score: 0.300\n", "LR average precision score: 0.497\n", "\n", "\n", "average:\n", "LR tn, fp: 709.5, 4.75\n", "LR fn, tp: 20.75, 4.75LR f1 score: 0.248\n", "LR balanced accuracy: 0.588\n", "LR cohens kappa score: 0.233\n", "LR average precision score: 0.348\n", "\n", "\n", "minimum:\n", "LR tn, fp: 704, 3\n", "LR fn, tp: 19, 3LR f1 score: 0.167\n", "LR balanced accuracy: 0.553\n", "LR cohens kappa score: 0.150\n", "LR average precision score: 0.281\n", "\n", "\n", "-----[ SVM ]-----\n", "maximum:\n", "SVM tn, fp: 717, 0\n", "SVM fn, tp: 26, 0SVM f1 score: 0.000\n", "SVM balanced accuracy: 0.500\n", "SVM cohens kappa score: 0.000\n", "\n", "\n", "average:\n", "SVM tn, fp: 716.5, 0.0\n", "SVM fn, tp: 25.5, 0.0SVM f1 score: 0.000\n", "SVM balanced accuracy: 0.500\n", "SVM cohens kappa score: 0.000\n", "\n", "\n", "minimum:\n", "SVM tn, fp: 716, 0\n", "SVM fn, tp: 25, 0SVM f1 score: 0.000\n", "SVM balanced accuracy: 0.500\n", "SVM cohens kappa score: 0.000\n", "\n", "\n", "-----[ GB ]-----\n", "maximum:\n", "GB tn, fp: 713, 10\n", "GB fn, tp: 21, 10GB f1 score: 0.400\n", "GB balanced accuracy: 0.683\n", "GB cohens kappa score: 0.379\n", "\n", "\n", "average:\n", "GB tn, fp: 709.5, 6.5\n", "GB fn, tp: 19.0, 6.5GB f1 score: 0.326\n", "GB balanced accuracy: 0.622\n", "GB cohens kappa score: 0.310\n", "\n", "\n", "minimum:\n", "GB tn, fp: 703, 4\n", "GB fn, tp: 16, 4GB f1 score: 0.250\n", "GB balanced accuracy: 0.578\n", "GB cohens kappa score: 0.239\n", "\n", "\n", "-----[ KNN ]-----\n", "maximum:\n", "KNN tn, fp: 717, 2\n", "KNN fn, tp: 25, 2KNN f1 score: 0.143\n", "KNN balanced accuracy: 0.538\n", "KNN cohens kappa score: 0.139\n", "\n", "\n", "average:\n", "KNN tn, fp: 716.5, 0.75\n", "KNN fn, tp: 24.75, 0.75KNN f1 score: 0.054\n", "KNN balanced accuracy: 0.514\n", "KNN cohens kappa score: 0.053\n", "\n", "\n", "minimum:\n", "KNN tn, fp: 716, 0\n", "KNN fn, tp: 24, 0KNN f1 score: 0.000\n", "KNN balanced accuracy: 0.500\n", "KNN cohens kappa score: 0.000\n", "\n" ] } ], "source": [ "exercise = Exercise(shuffleFunction=shuffler, numOfShuffles=2, numOfSlices=2)\n", "exercise.run(gan, data)\n", "exercise.saveResultsTo(f\"{datasetName}-{ganName}.csv\")" ] }, { "cell_type": "markdown", "id": "identical-verification", "metadata": {}, "source": [ "# Test also with the \"train data repeating\" generator\n", "Hope your GAN performes better." ] }, { "cell_type": "code", "execution_count": 11, "id": "progressive-activity", "metadata": { "scrolled": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "-> Shuffling data\n", "### Start exercise for synthetic point generator\n", "\n", "====== Step 1/2 =======\n", "-> Shuffling data\n", "-> Spliting data to slices\n", "\n", "------ Step 1/2: Slice 1/2 -------\n", "-> Reset the GAN\n", "-> Train generator for synthetic samples\n", "-> create 691 synthetic samples\n" ] }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "-> test with 'LR'\n", "LR tn, fp: 622, 18\n", "LR fn, tp: 8, 18LR f1 score: 0.259\n", "LR balanced accuracy: 0.780\n", "LR cohens kappa score: 0.214\n", "LR average precision score: 0.215\n", "\n", "-> test with 'SVM'\n", "SVM tn, fp: 639, 18\n", "SVM fn, tp: 8, 18SVM f1 score: 0.295\n", "SVM balanced accuracy: 0.792\n", "SVM cohens kappa score: 0.254\n", "\n", "-> test with 'GB'\n", "GB tn, fp: 690, 8\n", "GB fn, tp: 18, 8GB f1 score: 0.262\n", "GB balanced accuracy: 0.635\n", "GB cohens kappa score: 0.231\n", "\n", "-> test with 'KNN'\n", "KNN tn, fp: 662, 14\n", "KNN fn, tp: 12, 14KNN f1 score: 0.295\n", "KNN balanced accuracy: 0.731\n", "KNN cohens kappa score: 0.257\n", "\n", "\n", "------ Step 1/2: Slice 2/2 -------\n", "-> Reset the GAN\n", "-> Train generator for synthetic samples\n", "-> create 691 synthetic samples\n" ] }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "-> test with 'LR'\n", "LR tn, fp: 546, 21\n", "LR fn, tp: 4, 21LR f1 score: 0.194\n", "LR balanced accuracy: 0.801\n", "LR cohens kappa score: 0.143\n", "LR average precision score: 0.301\n", "\n", "-> test with 'SVM'\n", "SVM tn, fp: 588, 21\n", "SVM fn, tp: 4, 21SVM f1 score: 0.241\n", "SVM balanced accuracy: 0.831\n", "SVM cohens kappa score: 0.195\n", "\n", "-> test with 'GB'\n", "GB tn, fp: 693, 15\n", "GB fn, tp: 10, 15GB f1 score: 0.476\n", "GB balanced accuracy: 0.784\n", "GB cohens kappa score: 0.454\n", "\n", "-> test with 'KNN'\n", "KNN tn, fp: 654, 13\n", "KNN fn, tp: 12, 13KNN f1 score: 0.260\n", "KNN balanced accuracy: 0.717\n", "KNN cohens kappa score: 0.221\n", "\n", "\n", "====== Step 2/2 =======\n", "-> Shuffling data\n", "-> Spliting data to slices\n", "\n", "------ Step 2/2: Slice 1/2 -------\n", "-> Reset the GAN\n", "-> Train generator for synthetic samples\n", "-> create 691 synthetic samples\n" ] }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "-> test with 'LR'\n", "LR tn, fp: 562, 21\n", "LR fn, tp: 5, 21LR f1 score: 0.208\n", "LR balanced accuracy: 0.796\n", "LR cohens kappa score: 0.156\n", "LR average precision score: 0.293\n", "\n", "-> test with 'SVM'\n", "SVM tn, fp: 600, 21\n", "SVM fn, tp: 5, 21SVM f1 score: 0.256\n", "SVM balanced accuracy: 0.822\n", "SVM cohens kappa score: 0.210\n", "\n", "-> test with 'GB'\n", "GB tn, fp: 694, 10\n", "GB fn, tp: 16, 10GB f1 score: 0.339\n", "GB balanced accuracy: 0.676\n", "GB cohens kappa score: 0.312\n", "\n", "-> test with 'KNN'\n", "KNN tn, fp: 663, 12\n", "KNN fn, tp: 14, 12KNN f1 score: 0.261\n", "KNN balanced accuracy: 0.693\n", "KNN cohens kappa score: 0.222\n", "\n", "\n", "------ Step 2/2: Slice 2/2 -------\n", "-> Reset the GAN\n", "-> Train generator for synthetic samples\n", "-> create 691 synthetic samples\n" ] }, { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAWkAAAFpCAYAAABee9lOAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjMuMiwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8vihELAAAACXBIWXMAAAsTAAALEwEAmpwYAAA8IElEQVR4nO3dfXwU1b0/8M/sJjGYBwgQUQigaAMqJUABwcanUnoFTSGgXoxGxfCSXrFYLBUVEW0DCsXyg0rxCa6alkYgyKUvpfdyY6+VXg1VuShS8XpRokEghIU8ENjN7vz+mOwwuzu7O7s7u3N29/N+vXxhNtmZM2dnv3PmO+dBkmVZBhERCclmdQGIiCg4BmkiIoExSBMRCYxBmohIYAzSREQCY5AmIhJYhtUFiKeWlnZ4POL3MCwoOB8Ox2mri5EUWFfGsa6Ms7quCgvzgv6OLWkBZGTYrS5C0mBdGce6Mk7kumKQJiISGIM0EZHAGKSJiATGIE1EJDAGaSIigaV0F7xg3O4uOBzN6OpyWl0UAMCxYzZ4PJ6Yt2Oz2dGjRy5yc3tCkiQTSkZEVkvLIO1wNCM7+3zk5FwoRDDLyLChqyu2IC3LMtzuLrS1nYTD0YzevS8wqXREZKW0THd0dTmRk5MvRIA2iyRJyMjIRK9efeB0nrG6OERkkrQM0gBSKkBrSZINgPijLInImLQN0kREyYBBmohIYAzSSaKm5l8xdeqNmDjx+3j00Z/D4ThhdZEozbjrd8JVdRfc9TutLkpaYZBOAm++uR2vvfaveOihhXj++Q1oa2vDk08usrpYlGY8G2sgf34A7iWLGKgTiEE6CdTVvY6ZM+/AddfdgO98ZygeffQJfPjh33Hw4BdWF43SiK2iEpBlQLLBs7HG6uKkDQZpwTmdTnzxxf9i9Ogx6msDBhThoov6Y//+fRaWjNKNfeIk2J9aCqm4WAnYlBBpOZglmbS2noLH40FBQW+f13v16gWHw2FRqShd2SdOgn3iJKuLkVbYko5Soh6iyDL7PBOlMwbpKHk21kA+dCjuubmePXvBZrMF9OY4efIkCgoK4rpvIrIeg3SUbBWVkAYPjntuLisrC5dd9h189NEH6muHDzfh228P44orhsd130RkPeako5TI3Nz06bdhzZrfoLh4KC68sD9++9vfYPToMRgy5LKE7J+IrMMgnQRuvnkqHI4TWLnyabS3t2Ps2Kvw8MPsJ02UDhikk0Rl5SxUVs6yuhhElGDMSRMRCYxBmohIYAzSREQCY5AmIhIYgzQRkcAYpImIBMYgTUQkMAZpIiKBMUgTEQmMQZqISGAcFi64d955G1u3bsZnn+1HR0cHdu36IPybiChlsCUtuDNnzmD06DG48857rC4KEVmALWnB/dM/TQEAn/mkicgYd/1OeDbWwFZRmbTLfrElTUQpK1ErKMUTgzQRpaxEraAUTwzSUXrv/1rw6NZ9eO//WqwuCpFwErVQczj2iZOQuf61pE11AAzSUdu+91s0nezE9r3fWl0UIuGkQppBFAzSUfpxyUUY0KsHflxykdVFIRJOKqQZRMHeHVGacGkfTLi0T9z309p6CkePHkFT0zcAgP/93wMAgIsvHoLMzMy4758oGolcqDnVMUgLbteuv2LZsqfUn2fNugMAsHnzdlx0UX+rikVECcIgLbgpU8owZUqZ1cUgIoswJ01EJDAGaSIigTFIE6UJUfouU2QYpInSBPsuJ6ekCNJz587F0KFD0dDQYHVRiJIW+y4nJ+F7d2zbtg2dnZ1WF4Mo6bHvcnISuiV99OhRrF69GtXV1VYXhYjIEkIH6UWLFmHOnDno35+DNogoPQmb7qitrUVXVxdmzpwZ9Tb69MnVff3YMRsyMsS6PplZHpvNhsLCPNO2J5pUPjazsa6ME7WuhAzShw8fxnPPPYfa2tqYttPS0g6PRw543ePxoKvLE9O2zZSRYQtanldfXY+//KUe33zTiLy8fFx33Q247765OP/884Nuz+PxoLm5LV7FtVRhYV7KHpvZWFfGeevKqpVcQl0ghAzS+/fvx/Hjx/GjH/3I5/V77rkH5eXlWLZsmUUlS7x9+z5GRcVdGDZsGE6cOIEVK5bi9OnTeOyxJVYXjSjlaLspivKQVcggPX78eGzfvt3ntbKyMlRXV6O0tNSiUlnj179erf7/oEEXY/bsf8Gvf50+FymiRLJVVKotaVEIGaRzc3NRXFwc8HpRURH69etnQYnEcerUSeTmipk7I0p2InZTFOvpGYXU3t6OP/6xBjfdxFnxiNKFkC1pPQcOHLC6CJZyOp1YtOhh9O8/AHfeeY/VxSGiBGFLOkoftuzG8k+ewoctu+O+r66uLixZ8hhOn+7AsmUrkZGRNNfWtMCJiyieGKSj9J+Hd+Bo57f4z8M74rofj8eD6uolaGr6Gs8+uyZk1zuyBicuonhikI7SD/tPRr8eF+GH/SfHdT8rVizFnj0fYvHiX8LlcqGl5ThaWo7D7XbHdb9kHCcuoniSZFkOHO2RIoINZjly5BAuvHCwBSXSF2owS2npGN3XQ61xKNrxmYkDNIxjXRlndV0l3WAWOmfXrg+sLgIlmFWj3kIRsUzpgukOIsGIlONWH4quXSNMmdINgzSRYETKcXsvGACEKVO6YbqDSDAijXrTDpMWpUzphkGaiIIS6YKRrpjuICISWNoG6VTteSjLHgCS1cUgIpOkZZDOyMhCR0drSgVqWZbR1eXCyZPHkZWVbXVxyAQcbk5AmuakCwoK4XA0o739pNVFAaAsd+XxxL5SjM1mR48eucjN7WlCqchqIk5AT4mXlkHabs9A374XWV0MldWjnUhMIk5AT4mXlkGaKBn496zgqL/0lJY5aaJkJNJIREocBmmiJCHSSERKHKY7iJIEB5akJ7akiZIcu+qlNgZpoiTHXHVqY5AmSnLMVac2BmkiAcSSsrBPnITM9a8Jna9mSiZ6DNJEAkj1lEWqH188MUgTCSDVUxapfnzxlJYL0YqGw8KNY10Zx7oyzuq6CrUQLVvSREQCY5AmIhIYgzQRkcAYpIkixO5klEgM0kQRimd3Ml4AyB+DNFGE4tmdjP2JyR+DNJEB2hZuPEf4pUp/Yt4RmIdBmsiARLVwk2GItxG8IzAPgzSRASK0cJOpdSpCfaUKjjgUgNWjnZJJstaVGesTuqrugnzoEKTBg5G5/rWwf5+sdWUFq+uKIw6JLGbG7T9bp+mJQZqSgvdWv3PHDquLEhUzAmyq5KsjlUxpnnhgkKak4G2Jtr+8weqiRCVdA6wZ0v0hJIM0JQVvSzR39r2mbjfdW2nhiFA/6Z7m4YNDAVj90CKZGK0r7YM6AEEf2nkfxiE/H1JBQUwP9kRjxnkV6cPKZGX1d5APDintaG+RQ90ue1tpANL6ljqYdG/FioBBmlKSNriECjRqrnjuPAYjDW+aAwBz6RZjukMAVt9qJRPWlXGx1FW6pDm8rD6vmO4googwzSGODKsLQETisU+cFHGKw4xRlRRIyJb0unXrMHXqVIwcORLXXnstqqur0dHRYXWxiCiEdO/PHC9CBuk9e/Zg9uzZ2Lp1K5599lns2rUL1dXVVheLiEIwM0UiQv9sUSTFg8MdO3ZgyZIl2L17d0Tv44PD1MO6Mi6Z6yrRDy6trqukf3DocDiQlxf8ICg+2Johq/DB5TnCt6Tb2tpQXl6O6dOn4/7777e6OGmlecYt6Dr4JTKGDEFh3Wari0OUloQO0k6nE/fddx8kScJLL72EjIzIOqMw3REbEZ/Wi1pXImJdGWd1XYVKdwjbBa+rqwvz589HR0cHXnnllYgDNMUumm5YlLpEvGinAyFz0h6PBwsXLkRjYyNeeukl5OTkWF0kSiPu+p1wTi+Dc3oZ8/Ea7GJnDSGD9OLFi9HQ0IAVK1bA5XKhubkZzc3NcLvdVhctaVj50C8R+67620xU7ZqJqr/NNH3bno01QOMhoDE1ApJZn4f2YR4fKieOkEF6y5YtaG5uxrRp01BaWqr+9+2331pdtKRhZasnIfuWAbn7X7PZKiqBQYOBQYnpXRDvgGfW56FduICt6sQRMtF74MABq4uQ9GwVlT7zKafcviVAkpV/zZboXLw24MVjv7F+Hnq5aCvPr3QjdO+OWLF3R+pJxbqK5oGckfeYVVfpMCOe1edV0g9mIUpl0ax/mMh0QyQDS5irNh+DNFGScdfvhOxwAPn5wPARcQ+KkVxEmKs2H4M0UZLxbKwBWlshFRQA+z62NCj6t5w5nNt8DNJEScbo0mCJ4N9ytk+cpD5UZMrDHAzSlBCpmqu04ri06Ydo8tlm0rtIMOVhLgZpSohU/eJqj8vMgJ0sFzW9i4TVrftUwyBNCZGqX1ztcUV7IdILyMl8UbO6dZ9qGKQpIVL1i6s9rlAXolAtY/faNZD3/g/ca9eor0VzUfPfR+eOHUnRGqfQGKSJTBLqQhRpy9iMvtPtL68P2Gci0ijJkqpJFgzSRAkQqmVsnzsPUslI2OfOM3UfubOrLHmoF2wfDN7RYZAmCsLMoOLfMtZuO1irOdr9ez7eC1fVXQBgyUO9YPtI5jy7lTh3hwCsnjcgmSSyruI5Z4WRbbuq7oL86T7A6YRUeQ8y5y8wtE2c6QSyeyDrskuB5zeYWu5YiLxogNXfQc7dkeJ4Gxkf8Wx1Gtm2raIScDoBjwdy3SbD28SYccCZTmSOHhlTGc0+r1L14XG8MUibxMpAydvI+IgmqPifB9qf9VIcAIKeN/aJkyBV3gPk5kKacZvh8kptrUB2D5z5z7djOid5XomB6Y4YeW/hZIdDmU8hilvjWG+1RL6NNJvVt6VaevWuphzy8yEVFPicFwACUhyuqrsgf/45IHtgf2qpKZ+ft1z2tlPoOnEy6nQNz6vE7j8YtqRj5G1tALBssEYst5Hpliox83j1WppqygEIOC/0Uhy2ikrA5QROn/bpJx1Lub3nQ/7Dv4jpnGR6QgxsScfIjNaGlVfxZJvQPda6MvN4Q332kZwXzullwFdfAllZsC9dDgBBW+iRlDted2ip2MIWuSXNIC0AK0+QZPvCRVJXesemfQ2A7v/Hux78y+Wu3wn3kkWAZINUXAwgMC0SzeeU+8EuONa9GNWKLxg+QnlY2V0m7YUh0Rf2RJyjDNIWYZBODpF8CSOpq3DBRPt72eFQVggfNBhZW/8U1XH4c9fvVFMY0jXXAfs+9pnjI1gQBqC+zz53XvSB6Sez4PziYETB1KcbnyQBshyQK0/0hT0RFwWrv4PMSZPQ4tWLIFw3t3h2sVNbx199CTQegly3ST1Gvf36Tz8qFRQAra0h6yRcnlpvxGE43rJJM26DVDxU92FmonPVqTo5l1FsSQsg3FW86m8zge6Vsdd/vzZxBUuQeLWk41UGI9ReGy4n0H+AT0vam+IItT8j5QnXwtSrq2RLbyVKyrekT58+jb///e9mbIr0yEqMhvjXm6BCtfri3TIz0jPC7DLYKiohFRfDvnQ5srb+CZnzF/hsP9zdg5Hy2Coqgfx8yA6H4d4qZt+1pFvvICuYEqQbGxtx1113mbEp0iMBUve/kTD7CxTL9qwcGGHFvsMFWTNu4Y2mRXwMH6Hkm4ePiHq/WhzwEn/MSSeB9d+vxfrS2ohTHWZ/gWLZnpV5Rb19WzFlp5FJlSKl9ss2umr4vo+B7B7Kv1HgwrOJZygnPXz48LAbcrvd+Mc//mFKocySKjnpaJmdfzSyvXjnz8PVldFj9s/nhnqfa9VKyHWbIM24DZnzFxjax7ludRKk4qHIXP9awidsikdOOtn61Rslck46w8gGMjIycPvtt6O4uw+nv6amJqxduza60lHceHsKJHR73flzyaJro7a1Hy6f699HOtj75LpNQEeH8u/8BYb24dlYA0g2wHkWssOhBHqHA8jPV/fpH/xj4X88wcR6ThjdD5nHUJAuLi5G//79UV5ervv7zz77jEE6Rinz1F3qDtAR5s/N4h9EgtWrf7AKGXzGjAP++l/Kv35/G2z7an/o7rk75LpNSpohP19NF/kHf69ozgWzL8hG643iz1BOeuTIkTjUPQ+BnvPPPx9jxowxrVDpKBkewBjJ40abPzeLf67X6CohoXLEUlsr0LsPpLbWgODl2VgD+fPP4V6yyKde1BnprrkOaGsF7BmAzQYcboL8+QF4NtYoM9vl5ATMcOdfZit6UCTD+ZguDAXpxx57DI8//njQ3w8aNAg1NfwwY5EMD2BE/eJ6g1jVX2eiatdMJS/eLZZVQrzbxfARQVcEt1VUArIHkCTdbcnvvgOcPQu0tQGnO4DMLECWYauoROb8BcjatTsg1eFfZu8+3WvXJCxYJ8P5mC4MpTuMaGxsxKBBg8zaXNpJhttIUfOR6kyEtovUfLi2xav3gMt7LN5eEXqpBXX4NuCzDffaNWrfZG2LPXi9SEogHzMOUltr2AEt2nPBXb9TzWUDUFvt3r+LF73zMWVSckkmpi54XV1deOutt3D33XfjxhtvNKtMFEK8bn2923WtWmnZoBOjgnUDg+dcf3Kjg0Ww7+Ogf+ffvc21auW5v9P0TQ61RiEAIPs8ZeL+7gDt2Vhzbh5ynRay9vg8G2uU+agLCpSFakO02v117tgR87niXxYuMJt4UQ0L/+qrr7Bp0yZs27YNXV1duOGGGzBlyhRcd9118Shj1FKxC168ukD5r49ndPvx6HIXqsVWWJiHwz8uD1sHRlt9kQy/Rlsr4HYr+emBA8Nu2zm9TJm0SfP32smV1J+/+QZoOa5O7qT9jLV3L0aGk/uIYoKlYMeuVxa9v0nWbnkid8Ez3JJ2uVx48803UVlZiZtvvhlffPEFTp48id///vdYvny5cAE6VcUrV+gzsU4k24/DkPVwrWAjdWC01R9sGStt61BtUWf3ALq6AEmK7I4iN9cnveJtnaspkpwc37/XjAq0T5zk0/qO5G4mmgmWgh27NzDr7TvY58EWtjkMtaSXL1+Obdu2oU+fPpg2bRqmTp2KwsJCXHnllfi3f/s3XHbZZYkoa8RSsSUdjFX5Qita0vFo8fi3Bv2XwbJVVCrThwaZzlSvz7N2qlIAPsur+bdQtVOT+k9lGm1LNdq6MqtlnEwt7KRvSb/66qu4/fbbsX37dsyePRuFhYWmFY7MEar1Gc8WjZEud5Hu3+zct5H9+7cG1dYzcG7gytx5kEpGKrlhP2qf59c3+gz99s6tgY4Onzkz/Fuo2jk4/HPh2t4l0R5fJH9v1t0ae4iYw1BLev369di8eTPa29tRVlaG8vJyFBcXsyUdJf+WYrxb0la3aMzcv7aujC7vpNcqjnSlkrDDzLtb0jg/B+g8rU6WD8BnUIt/btf7ewwf4TOVKWC83oL9XbBh4dpVYERv4SZK0rekq6qq8Oc//xkrV67E0aNHMWPGDJSXl0OWZZw+fdq0gqaLePQ3DtX6tLpFE6/9B6tHvb7M/q1ivdaktoeLc3qZ8uAPMNSq9/Z5ti98DHC5gNOdcK9dc+5zmTtPt6+12n1w38cB+7FVVAI2G+RP98G1amXAPr3llfPy1VZ6qONSe4tISpdAtnCTQ1S9O06cOIG6ujps2bIFTU1NGDt2LKZMmYJbb701HmWMWjq1pJNNtJPeR9OS9n8dw0dAfn0j4HQBffsG9LxAextw5owyQvDiSwy1vrX7DJW7VvPUHR3KA8NBg4EPdgODLwYOfRUwj4ezdJz6t1m7dvtsS+09kpEB5Ob5XIikwYPRf/sbaG5u82lpe9cujHW+kFTrM231dzCuaxy+9957qK2txdtvv41PPvkklk2ZTtQg7c/qEyQe/L/E/g8Yw3XtUgOQX6ALVVfu+p24L3O9cn8Y4kGmq+ouyHs+AjweIDv7XIDzLr7qdgOdnUrwGzTY54FfsGP0Dg+H7FGGeXenLgDfgS7emfEgy0pvEe9agm3dx5SbqwZjd/1OuFc8DZx0ABO+r/az9m5T/vpr4ESLTxc/7f4unDkdzc1tug8wo0n9BNRhkjwUNMLq72BcV2aZMGECVq9ejXfeeSfWTaUckbogVf2te8j0X2cmpEwBqQi/rnraFIhZ6R/PxhrAFrpLoDqCr/ACYMilkP65wjdASzYlgHYHaG2awv/z1JZbOzxcm7rwT214t+/t6ijNuE1Jj0BSpjXVzOPh2VgDuN2Qhn8XUltrYIokNxdSyUhIk29S36OX9vJ5gAkEpH6iYXUKLZ0YCtL79+/HnXfeiba2wCtNa2srKisr0dzcbHrhkl0i5rpQg69mvgpd3iBpi+3LaVTAl9hvdRlt/2T/KTwBhOxJoeXfp1c76lD3772piJwcn2WtsO9jNVeLSy9TWtPHjwOAb8D9/IA6mZL3GOW8fKWFPPhiwOmE/M03gaMhh4/ovjgUwv7UUnW/mfMXAP0HADYJyMqCbUSJbh3q/b997rygoybd9TvRPOOWgHJ436O9+ERDlNGn6cBQuuMXv/gFioqK8OCDD+r+/re//S2amprwzDPPmF7AWFid7jCat4vlVqtq10xvFgHrS4N3g1PTDR7g+VezTM8lRpujjPS22b+uIn2/80c3AMeOAhf0g33hYwG9LGwVlUrAbW8HAEjfG6NuN1jPCDVvLElKHhuAVDLSpzyhepjE2uNCr+5dVXdB/niv0kq//gfI+n/PRbTNWPefbEROdxiaYGnv3r245557gv5+4sSJQQN4OkvIpEkG52/2yc9ee+5/zfqCae8aItrO8BHAgc/U/sPa8ni3q/3/k1eNgavhA7XLGoaPUA49xERJPnJzlTxubq7P3BlSQYHSO2LtGmVa0YwMoHcf39Z9kMmUpBm3KamSMeOA/Z8CracCjsdbTtnh8Kkn7++1eWxtDtk+d55PMDf8WQ0fAXz4gfL/7/zFWN3oMLLPqD97MsRQkD5y5Ah69eoV9Pc9e/bE0aNHzSoTRSDaUX7qhDnd/Xf9v2CRjiSMdIY8n/1r1tzzTxH5/P/nB9Cx5yOlV8SBz5Q5Rrr37W2Jev9WL8gBgHTNdUrvhmuug21EifoATm48BOz9H2XYt80OadQowy3azPkL1En7lRazJ+B4vDPp6V2E/Gfac1XdpaRkuo/D5+GkTjD0PrT0mR1v38dAVhbgdCoriutcGIwEbSMBONxnnwotbSsZyknn5eWhsbEx6O8bGxuRlxe8uR6tF154AaWlpSgpKcH999+PlpYW0/dhtaq/zcSP37gpfE7ZIKMPK9WHT4B+bjLCOTn855gI577M9fjJLCf+5Wc5uiP99PKwSo+IbJ8Hb+qcGJKkLlWl5p0bdXLvmoVY1by4JCnBWZaVdEVWps/CrgEzwelM8u8VarSgXrDSewBnq6hUepX07tO9SMDnPiMR/T8r7UNLbd/wrNGjYX92NexP/FJ3fmojzyXMmCclEc9mUpmhlvTo0aOxZcsWTJgwQff3mzdvxqhRo0wtWF1dHZ5//nmsWLECRUVFWLZsGR566CG8+uqrpu7HciavCWj01lOv25uPKJbBCrdvbevc2wtDsvnO1ayXIlLL+dRSSC+sRVeXG7YRJbB3t149H+9VWta9CtTuZRg0GGhvD5j3WQ3qmvQIcnKU9Mb5OYDHraQv3n0HaDwEt8MBqaBATYsAAFxOANCd19lbfjUH3f3+YPWje7wf71Xy5ufnAJmZ6sCTkOmzC/qpx+fdbmF3Fzzvzz6LGGj+NhQz5pWO9C6LfBlqSd97773485//jKeeesonrXH06FE8+eST+Pd//3fce++9phbs97//PWbNmoVJkybh8ssvx7Jly/D+++/j888/N3U/lpNC90aIlNGuUeFavtEsgxV239rWeYheGNqWq3vtGsh7/0cdvWfrrQRinzmYva3jnBy1B0PW1j9BGjgw4G+9xy3XbVKXsfL2JEHfvj6pF//jAqBcBHr2UtIIbnfQ1qHeKEcMHwG0t0H++uuQdxveeUDQegpS8VDYn1oaMhh6NtYAzc3A4Sa4f/kEnONH645QDDW6MRKRtozZEyQ2hoL0qFGj8Mtf/hJ1dXW4/vrrMXbsWIwdOxbXX389tm7diieffBKjR482rVBOpxOfffYZxo8fr742cOBADBgwAHv37jVtPyJY//1abC9/M+YZ5NRWEowNYwbgEwDNEPbL6L0geYB1D+3Hut904PkNWfophSBBIHd2ldJS1kkDYNBgyJ/ug3v5Mt8pRuGb29b2V/a2Br3d0pCfD9nhUNYmHDRY3a964cnPV1reOTmA3Q5bRaUyjLx0nE9g1BsOLr/7jjKS8XhzQHc5bYpKXfvwnysMfZZqusPpBE6dAs6cUQK9hnaFl1hbtNqLcbhh6BS7iEYcHj16FHV1dWhuboYsy7jkkktw4403ol+/fqYW6ujRo7j22mvx1ltv4dJLL1Vfv+WWWzBp0iTMmTPH1P1Z6cfbblJTANunvRn1dppn3IKug18iY8gQFNZtNr5fD/Dic2dw4V/qo963VueOHWh/eT1yZ1ehx+TJur8/tWIlJACetjZ4jh+H/ZJLYO9doJY/d/a9aH95A3JnK3dnrStWQoaMng//Aj0mT0bzjFvg3P8PSLKMglXPqvtpuuw7QOcZAEDW+PFqPShlUrbXY/Jkn58B+JT32zHj4Pn2WyAzE/ZLLobn6DHIZ88qV5fMLGRdcQVyZ9/bfQwy8h/+BRzzfw65vR3IzkZWyYiAY/fWSdehRniOHQMyM9H7uTVqWRzzfw7YbMi8/HKfzy5UXfqfN956dTcfA86cRc6su9Fr0SL174PVWSSfnR698y7Sc5FCM5STPnnyJB555BG8++678Hg8KCkpwcqVK1FUVBTv8sUk3v2ktTnWF89URfcEW5OTjqWfpvvWCsgba+C+9XZj25HP5YQxZ27Ae7T9ql90VRk+Jte6FyEfOoQTy5ZDWvdiYH2MKYV9UykAoGt6GSDLcJ9qhbvLDeTmwX3r7WgfUwr3qU44ut/vycuH/PnnOPGzh9C7+1il7rpuH1OK9uY2pRXbHaBhs8F5rBlHarcqudhTnfC4unDqVCfam9uAMaXAmFK049zw8xPHjiNrTCk8Dkf3gbjg7vIog1qcTijrFALOY804daqzu0wHcOJnDyld7z7YDZyfA+cXB+FY96JyDNoeLM3HlD7Lgy+Gfe68c+Ve96KSAnK7Az47b116t6f7+XnPm+56tXvf2/2vOs/JrRXAkkWQJZvu9s711Zb09xeE3nkX8bkoAJH7SRtKd6xatQp79+7FT3/6Uzz88MNoaWnBkiVLTCugv4KCAthstoDeHCdOnEDv3r3jtt+IaXKsUT/BNiknHXHeT7Nf3fdoRiiGOqag6w0i+MhG73uka65TcsE5OefW8dP0RdYbct3+8gbd1VTU2/vuSZG0axBq0zrhbsWlf64AzjsP6Heh0n3vqaXK9s47T0lVNDZqyiQrA1DaWtUZ8PR6USiVISsrhXe/7k3xyA4H0ON89cGfl2vVSsj7PgHsdp+eJt76Czey0p994iTlWAoL1YepWmoKyOXS/X2o7eoNQ0/0fODR/G2yMBSk3333XSxduhQ/+clPMGvWLKxbtw7vvfceXC5X+DdHISsrC8OGDUNDQ4P62tdff42mpiaUlJSEeGeCaQJdtHMZmJWTNsp7Er94pir0g0FN/lh7TP75V/+Lk14u1l/AAyxNLtg/2Ku9Gp5aCql4qJqi0G7HvXaN0hPCZlOC2qDBPjlTHG5SJlPyvkfThc5/+Hnm/AWwL1sBSXOXKBUUKHNEA0CXy69MxT49Knz6Og8foa7yjTHjlAtNe7vvXB6trcDpDp+LCtD98NDpBDraA4Z9ezbWYN0vv8Xz/5oV8rzxX4jWf3EBLVtFJaTiYmWIus7vrRRJAygVu/sZSnccPXoUV155pfrzZZddhszMTDQ3N6N///5xKdgdd9yBZcuW4fLLL1e74F111VUoLi6Oy/5ilZDRhYh9YIDRLnrBvvzqCiR1m4D5C4J2rwrVdcu/C5j/RETe9+p1betRmAfHY0vUEX7S4MFKa7TztBKIPR7gg93I7J5JzlV1l9KCzchQA7F70ULA6YR77Rpkbf1TwIg+JT3RrNz+X9BPCaQ2m7Lt/J5hpyx1L1kEnDkL7PkI6FuolgnZPZRJkbqHhXs/D+2E/17eUYzSjNvUQTc+fa+BsKMs219eHzDIxf/z0p5PeoNtRBBJF75U7O5n6MHhsGHD8N///d8+qYZRo0Zh+/btGDhwYNwK98ILL6CmpgZtbW24+uqr8atf/Qp9+/Y1/P6456QNzpsRjtmrhYcK5EaDfLC/01vLzyi96Um1w7v9VybRU1iYh6ahl/vMsexatRJyzSvq30iV9/isM+h/HP7ToPqPvkR+vtJPuatL2WB+z3MFyM1Ven7s+9jn772BV2mpHzg39Wh2ttI6PfItcPo0YLdDuvPugLoz8rkEW4cx2LmQ+8EunHhgntIiv/iSgLmt9baZrkTOSRsO0mPHjkVmZqb6WkNDA0pKSpCdna2+tmHDhhiLaq5EPjiMJV0RyQmibY0GC2pmfPHi8eUNmH/50CFlPuXsHhFNsHS4uyXtvVC4qu5S53L29ikOdTHxr0P1wV73RP/SzDtgG1GiDjVXpyDt6FBy02fPKnn0wguUgS7a4O7VPZm/d04O2TuPBgDk5sL+1FKfoByqvoN95sHm+NDWVdM11wddgMD/M4lk8YVUk/RB+tFHHzW0o6efftp4qRLA6lnwjIrmBDHypY7lixXvL6f/CiV6QUZP7ge71F4foSYeCrWiiZd2ZjocOwq0dwCQgSGXqi1stYynTgJQhp4j6zwgw65eEPxb4v53CvKON4GW40pPkcxMSBWVap7Z+/npHYPedv0/61DnQWFhHo7Ubo3pc0yXlrbIQdpQTlq04Euhc29m5Mf9t2F2i0vNQ3f36gCgm1/13+6pFb+GfPBLuB0On6HVwLleKPaJk3xyunrc9TuVlU3a2yDdVKa0nBctVJbU0ikj+g9QWs15+edayJoyewOte+0a5QHoiqeVwPzpPiVtIkmQvjfGJ3j75+X9j0G928jPVx+sulat9GlNhzoPOnfsiCrtpf1dKuZ4k03My2eJLJVb0mYykrbRSykAxlp7WsGmIvUGJP/3+7fkPLdNRdfBL9VVU7zvD7WuoPNnDwB//S/g2uvVeZVdVXdB/uhDpWtcvwthf/jRkNOD+qRGuo8TQECZ1db5SYcSnPN7KsPN29uVaVIBnzw2ho9QRiJ6aeow5vTQT2bB+cXBiFvgkbaeUyElYvV3MK7LZ1EKMDDjnd5Ma0Dw2fSC9Vf178Xh7U8bcoY3bSsS8AnQ4bpbuet3Av/1ttLD4p2/+B1P9wGfdKjd4bR9tQFNt7ru9IT2OIPNYCcNHgz06QvY7IDzrNLNb+BAZX6Npm+UniKHmyB/fgBy7R+Ag/8HfPWlum21Fwc0Q/yHj1ACdHePFv++03pyZ1cF7QYZqstouO6koZYRI/MxSJOhATXavsp6QUldlklnMIqWGsT8gkywARDavr1y3SZ4Tp5SA6k2mEjXXAdkZyv/aij77z6wvHyf7eL6HygBc8L3wwYmveMMOZDj4UeB83sAmZnn7hycZ5VRh62nlG6BsqzM3Gezqyu62DT5ap+6655ESmprDbpklr8ekydHNagk0qlHox0jQMYYykmnC7N6ayRbOYzuI5I8dbj+095b6nD9tb3bUlZMsUPqma88eIMypad84DNlak/NPNGApg7vBtY5hij79vaT9qYwHA5lpe22Vp9j0zsu7++9rUj1jmHtGjWV4U2TaFdbkd99R0mRAMCAIiUlk99TaVl7Ux05OcrvuweR6NVdwGt+K9pEymh/eT3+ZUnUGIF0xSCtZfLczl4RB904lSNS4XKNob7o4b64kTyQUh+iNR+D53SHevunHVij7dKm/PLc3CT+OeqAB3LffAPn9DI1yPq3FLV1EHCH0HhIyT2faFHrQc2vA+pc1J6NNT45dO+FSp3TI7+nOkOdXt0FvLbvY8DthlzzClxAxH3WY3kgaFVQToXcdzSY7tAyeW5nVYSrnMStHBHSDrvWy3+Gus0NN4dCpPM7qDlkm7JElrt+pzIU/LzzIM24Tc3bupcsUh4Ueue28CCgHN5yS9dcp3S9a25WV3Hxn9Iz1K29raJ7BZUL+gGDwq8u43/M6jE5XcCJloB8uH8d+vw8fATQ2Ql4PAHTkhph9vwaiZCuuW/27kiAcC1pq58sBxNpzw2teA2GsW/+I9y33q7bG8Rn1e6cXOVB5wX9lNaqLAdMnq/0WDngM4jFSP/lWI9Bu71QA1Kc08uAr74CsjJhX7rc55gBQN7/KXD2rM8ISy1Rz6toxbMlbXVdxTyYJVnFM0ibecJYfYKEY+RY/buqGR3mHSlvXemVyTvKUJ06VJKAwguU1rJkg1Rc7HPBCDUIJdph8+FEcvFyTi9Ten7YbJBGjVb6aHd3JbSXTQ078jTceZWu6QM9Vn8HGaTjwMyWohknSDy+cJFsU+0fHOEw70gZrSvtRUN+952gIxvDDa0OJli/caPlMlKn/mVzL1kUMIoy3IjDUHUl2mhCKy8aIgdp5qSjJFq3o3jk6yLapl8/XluF79JKiZ7nV9u/Ga2typSfOlNwBusfreWu3wnn9DI4p5f5TKWq12/caLmMjsrM2vondaY+dVktzSjKWM7DdDiHUwGDdJREe/Bi9AsXSbCM5Eusrt/XeEitF+2XLhFfQL1jUx8SzrhNt3+2kWP0bKxRenE0+s6brddvPFx5YpE5fwGydu32yT9rh4Zr9+NatRKHh12huyCt9r3JeA6nG6Y7BJDIW6143eL6T/8JBB8CHktQCFVXemXwF+74g010FHVKxKSHkKHeq3dM6kPU886DdOXwhKUQkjXPzXQHCUM7zNrM1IP/CieAb0stVKtNL52gx12/E80zbomp3OFaa/4tfm/Qsc+d57NAQDT7iuVuIth7/bsMekkzboOUmwvk90xICkG9a1i7hikLkzFIpxntMGszv0jR3jqrK5l89ZVPOsH7O/85IroOfhm03HoXikjLaVZg1etqpxdMjQp2cdHm1IFzfcIz5y9A/8/2B6y7GK9nA8HmcKHYMUinoVhyf9F8yUO9x7OxRukql5XpMyDE+zv/gSQZQ4YELbcZOVa9ASd6D0LD0Ru1GO4BZbhy6eWeteXTu6D4H4/Zzwa8dYLhI3TncKHYMUinIb1gZjQA6X3Jw703VGCwVVRCKh4K+9LlgekEb4+R7vkp7BMnobBuc0IDgLauourt0l12Mx6K6Y0ANTKToFYk5TByTqgtaO+iwgzOpmOQTmJm3roaDUB6X/Jw7w0VGEK2fv0mTTKakzb7ll7bWjScz/cre6St/FA9VQDoXiiNPLALdYF2rVrp82zAyDnBHhnxxyCdxMy8dTX6ZdP7kod7b7RpCL38cKictFcs9aIXHD0blcVl1TkyDOTzYw1eIVMXc+dFfKEMl3KSDx1Sjk/T1dDIMYjWjS8VsQueAKLt/hNNd6dk7SIF+M7dEeuQ7WB/E2xFc7lukzKlXmGhujJ4POs80vfo/b32vDK60K13lZhIuhqmApG74DFICyAV+kknill1Fawe9Jas8g6CCbb6eLT7CsWMi6m2rpL54pwIIgdppjvSDHOIimD1EPRBnF+OOZhQueRI6jySlI2RHDzTEsmLLWkBWH0VN0qE1phVdWX02M24U4l0hKM6uVX34rbeMoaqKxE+S5FY/R1kSzqJxHsioli2n+wT4ER67Nq/N9oSNaurXSR9qkP1+gi1j2T+LNMJg7Rg4v3liWX7yZ4qifTYo6krM9IKkdZzqF4fZu2DrMN0hwAifcATy0K1yX6bG8ttaSw9JgBzJoiKtUyRsPoWPplYXVfs3SG4SE+Qql0zvTEa60utW9U8mFQMPPHqFRPP3jZWB55kYnVdMSedagRZqDaYVMx3xis9kOh5VCj5sCUtALOv4lanNFKxJS2icK1w1pVxVtcVW9Jpxuw+tpFin9zEiLYVrveZu1athLN0XMiVXMgaDNIpKJIvbyqmJtKF9mIYyzSqAJRh7x0d5+YnIWEwSKegSFqy7IqVGiK52Op95nqL3JIYmJMWgNX5sGTCutKnN0qRdWWc1XXFnHQS4xN8MiJey6KR9RikBceccfyk2gWQqavUxCAtOH7x4ifVLoDsVZOaGKQFxy9e/MTzAihiK13EMlF4DNKUtsy4AAYLfNpWuijBMdXuHNIFgzRRDIIFPm0rXZTgyNRZbKy62GYkdG9EKcYbhPVWeNG20PX+Jl68w/I7/+U+YExp0DJRZLQX20TWI1vS5EOUW/NkYSRlEq/nCuFSLe0vbzB1fyKw8vy06k6EQZp8iHJrTuGFS7Xkzr7XopLFj5Xnp1UP8RmkU1ykLQ/mLZNHuMV0e0yebFHJ4icdz08OCxdAPIekxnNSeStYPXw3mbCujLO6rpJuWPi6deswdepUjBw5Etdeey2qq6vR0dFhdbGSUqq0PLx3BJ07dlhdlITgswHyErJ3x549ezB79mxceeWVaGlpweLFi9HR0YGnn37a6qIlnVR5ou/zMEzTYyFVWdWTgMQjZEv6xRdfRFlZGYYMGYKxY8fiwQcfRH19vdXFSmmit9xS+WGYnlS5A6LYCdmS9udwOJCXFzxnQ7ETveXmvSPoUZiHdhNyh1YvMRZOqtwBUeyEf3DY1taG8vJyTJ8+Hffff7/VxUlZnTt2oP3lDcidfW9K9grw1zzjFnQd/BIZQ4agsG6z1cUheM/B9cidXZUW56BRCQ3SjzzyCN54442gvy8vL8czzzyj/ux0OnHfffdBkiS89NJLyMiIrOHP3h2px6y6Er0lbYZkO6+s7IlkdV2F6t2R0CDd1taGM2fOBP19dna2mtbo6urCgw8+iGPHjuGVV15BTk5OxPtjkE49rCvjkq2urLxwWl1XoYJ0QnPSeXl5hnLLHo8HCxcuRGNjI2pqaqIK0ESUXJiH1yfkg8PFixejoaEBL730ElwuF5qbmwEAvXv3ht1ut7h0RESJI2SQ3rJlCwBg2rRpPq/X19ejqKjIghIREVlDyCB94MABq4tARCQEIQezEFFyca1aCWfpOLhWrbS6KCmHQZqIVNGOPJXrNgEdHcq/ZCoGaSJSRTtfszTjNiAnR/mXTCVkTpqIrBFsObBwMucvAOYviFOp0huDNFGSisfgD/ZVFg/THURJikudpQcGaaIkpTedqehTzlLkmO4gSlJ6qQmf1vXM6RaVjMzEljRRCuFiAamHLWmiFMIHf6mHLWkiIoExSBMRCYxBmohIYAzSREQCY5AmIhIYgzQRkcAYpImIBMYgTUQkMAZpIiKBMUgTEQmMQZqISGAM0kREAmOQJiISGIM0ESWFdF3QgEGaiJKC6MuFxesiwiBNRIZY3ZIVfUGDeF1EGKSJyBCrW7L2iZOQuf41YRc1iNdFhCuzEJEhtopKeDbWCNuStVq8VsVhkCYiQ7g0lzWY7iAiEhiDNBGRwBikiYgExiBNRCQwBmkii1nd/5jExiBNZDGr+x+T2BikiSwm+kg6shb7SRNZjP2PKRS2pClqzKUSxR+DNEWNuVSi+GOQpqgxl0oUf8xJU9SYSyWKP7akKSLMQxMlFoM0RYR5aKLEYpCmiDAPTZRYzElTRJiHJkos4VvSc+fOxdChQ9HQ0GB1UYiIEk7oIL1t2zZ0dnZaXQwiIssIG6SPHj2K1atXo7q62uqiEBFZRtggvWjRIsyZMwf9+/e3uihERJYR8sFhbW0turq6MHPmzJi206dPrkklir/Cwjyri5A0WFfGsa6ME7WuEhqkH3nkEbzxxhtBf19eXo558+bhueeeQ21tbcz7a2lph8cjx7ydeCsszENzc5vVxUgKrCvjWFfGWV1XoS4QkizLCYtibW1tOHPmTNDfZ2dno6GhAQ888ABstnOZGLfbDZvNhvLycixbtszw/hikUw/ryjjWlXFW11WoIJ3QlnReXh7y8kLfUowfPx7bt2/3ea2srAzV1dUoLS2NZ/FIw12/E56NNbBVVLJfNJGFhMtJ5+bmori4OOD1oqIi9OvXz4ISpSft8G8GaSLrCNu7g6zF4d9EYhCuJa3nwIEDVhch7XD4N5EY2JImIhIYgzQRkcAYpInSDBduSC4M0kRpJtTCDQzg4mGQJkozoXrucOUd8SRF7w4iMk+onju2ikp1EBOJgUGaKA1V/W0mIAOQgPXfPzdPDrteiofpDqJ0JCsxGuJPbZP2GKSJ0pEESN3/ktiY7iBKQ9oUB4mNLWkiIoExSBMRCYxBmohIYAzSREQCY5AmIhIYgzQRkcAYpImIBMYgTUQkMAZpIiKBMUgTEQkspYeF22zJMzFBMpXVaqwr41hXxolaV5Isy5wHi4hIUEx3EBEJjEGaiEhgDNJERAJjkCYiEhiDNBGRwBikiYgExiBNRCQwBmkiIoExSBMRCYxBmohIYAzSAlm3bh2mTp2KkSNH4tprr0V1dTU6OjqsLpYwXnjhBZSWlqKkpAT3338/WlparC6ScHgORW/u3LkYOnQoGhoarC6KDwZpgezZswezZ8/G1q1b8eyzz2LXrl2orq62ulhCqKurw/PPP48lS5agtrYWbW1teOihh6wulnB4DkVn27Zt6OzstLoY+mQS1ltvvSWPHTvW6mIIYdq0afLq1avVnxsbG+Xi4mL5wIEDFpZKfDyHwjty5Ih8/fXXy01NTXJxcbH8/vvvW10kH2xJC8zhcCAvL8/qYljO6XTis88+w/jx49XXBg4ciAEDBmDv3r0Wlkx8PIfCW7RoEebMmYP+/ftbXRRdDNKCamtrw4YNGzBjxgyri2I5h8MBj8eDPn36+Lzeu3dvnDhxwqJSiY/nUHi1tbXo6urCzJkzrS5KUCk96b8oHnnkEbzxxhtBf19eXo5nnnlG/dnpdOKnP/0pBg4ciPvuuy8RRaQUw3MovMOHD+O5555DbW2t1UUJiUE6ARYtWoSf//znQX+fnZ2t/n9XVxfmz5+Pjo4OvPLKK8jI4EdUUFAAm82GlpYWXHrpperrJ06cQO/evS0smZh4Dhmzf/9+HD9+HD/60Y98Xr/nnntQXl6OZcuWWVQyX/z0EiAvL89QXtDj8WDhwoVobGxETU0NcnJyElA68WVlZWHYsGFoaGjAuHHjAABff/01mpqaUFJSYnHpxMJzyLjx48dj+/btPq+VlZWhuroapaWlFpUqEIO0QBYvXoyGhga89NJLcLlcaG5uBqDkXu12u8Wls9Ydd9yBZcuW4fLLL0dRURGWLVuGq666CsXFxVYXTSg8h4zLzc3VPX+KiorQr18/C0qkj2scCmTo0KG6r9fX16OoqCjBpRHPCy+8gJqaGrS1teHqq6/Gr371K/Tt29fqYgmF51Bshg4ditdeew1XXXWV1UVRMUgTEQmMXfCIiATGIE1EJDAGaSIigTFIExEJjEGaiEhgDNJERAJjkCYiEhiDNKWNRx55BEOHDsXQoUNxxRVX4IYbbsATTzwBh8Oh/s2ePXvwwAMP4Oqrr8Z3v/td/PCHP8SCBQvw6aefBmxv/fr1uPzyy/H000/r7q+9vR2PP/44rrrqKowcORKzZ89GY2Nj3I6PUhODNKWVMWPGYNeuXXj77bexaNEi/Md//AcWLlwIQFn95Y477kBGRgZWrlyJt956C6tWrcKAAQOwdOnSgG1t2rQJc+bMwbZt2+B0OgN+//DDD+O9997D6tWrsXHjRsiyjFmzZuHMmTNxP05KIZYuOUCUQAsXLpTvvvtun9d+97vfycOGDZOPHDkiDx8+XF68eLHue0+ePOnz83vvvSdPmDBBdrlc8pQpU+Tt27f7/P7gwYNycXGx/O677/ps48orr5Tr6urMOSBKC2xJU1rLzs6Gx+PBli1b4HQ6cf/99+v+Xc+ePX1+fv3111FWVoaMjAxMmzYNmzZt8vn9Rx99hMzMTEyYMMFnGyNGjMCHH35o/oFQymKQprT1xRdf4A9/+ANKSkrQ3NyM3NxcXHjhhWHfd+LECezcuRPl5eUAgKlTp+Kjjz7CwYMH1b9pbm5Gr169Amae69u3rzozHZERDNKUVnbv3o1Ro0ZhxIgRuPnmmzFw4EA8++yzkCOYZ6yurg6XXnophg0bBgC44IILcPXVV2Pz5s2G3i9JUlRlp/TE+aQprYwYMQLLly+H3W7HBRdcgKysLADAJZdcgvb2dhw5ciRka1qWZWzZsgWHDh3CFVdcob7u8XjwySefYP78+cjKykJhYSFOnjwJt9vt05puaWnBxRdfHLfjo9TDljSllezsbAwePBhFRUVqgAaAyZMnIysrC7/73e9033fq1CkAwPvvv4+vv/4af/zjH7Ft2zaf/7q6urBz504AwOjRo+FyufD++++r22htbcXevXvxve99L45HSKmGLWkiAP369cMTTzyBJ554Am1tbbjtttswcOBAnDp1CvX19WhoaMAf/vAH1NbWYuzYsRg1alTANn7wgx/g9ddfx0033YRLLrkEEydOxJNPPomlS5ciLy8Pv/nNb9CvXz9MmTLFgiOkZMWWNFG3W2+9FTU1NTh79iweeugh3HjjjZg3bx6++eYbPP7442hpaUF9fT0mT56s+/4pU6Zg9+7d+OqrrwAAK1aswLhx4/DAAw9g5syZ8Hg82LBhg8/Cw0ThcGUWIiKBsSVNRCQwBmkiIoExSBMRCYxBmohIYAzSREQCY5AmIhIYgzQRkcAYpImIBMYgTUQksP8Ps9b3+ZVAocYAAAAASUVORK5CYII=\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "-> test with 'LR'\n", "LR tn, fp: 614, 19\n", "LR fn, tp: 6, 19LR f1 score: 0.260\n", "LR balanced accuracy: 0.809\n", "LR cohens kappa score: 0.216\n", "LR average precision score: 0.213\n", "\n", "-> test with 'SVM'\n", "SVM tn, fp: 622, 19\n", "SVM fn, tp: 6, 19SVM f1 score: 0.275\n", "SVM balanced accuracy: 0.814\n", "SVM cohens kappa score: 0.233\n", "\n", "-> test with 'GB'\n", "GB tn, fp: 682, 13\n", "GB fn, tp: 12, 13GB f1 score: 0.361\n", "GB balanced accuracy: 0.736\n", "GB cohens kappa score: 0.332\n", "\n", "-> test with 'KNN'\n", "KNN tn, fp: 664, 18\n", "KNN fn, tp: 7, 18KNN f1 score: 0.379\n", "KNN balanced accuracy: 0.824\n", "KNN cohens kappa score: 0.346\n", "\n", "### Exercise is done.\n", "\n", "-----[ LR ]-----\n", "maximum:\n", "LR tn, fp: 622, 21\n", "LR fn, tp: 8, 21LR f1 score: 0.260\n", "LR balanced accuracy: 0.809\n", "LR cohens kappa score: 0.216\n", "LR average precision score: 0.301\n", "\n", "\n", "average:\n", "LR tn, fp: 586.0, 19.75\n", "LR fn, tp: 5.75, 19.75LR f1 score: 0.230\n", "LR balanced accuracy: 0.796\n", "LR cohens kappa score: 0.183\n", "LR average precision score: 0.256\n", "\n", "\n", "minimum:\n", "LR tn, fp: 546, 18\n", "LR fn, tp: 4, 18LR f1 score: 0.194\n", "LR balanced accuracy: 0.780\n", "LR cohens kappa score: 0.143\n", "LR average precision score: 0.213\n", "\n", "\n", "-----[ SVM ]-----\n", "maximum:\n", "SVM tn, fp: 639, 21\n", "SVM fn, tp: 8, 21SVM f1 score: 0.295\n", "SVM balanced accuracy: 0.831\n", "SVM cohens kappa score: 0.254\n", "\n", "\n", "average:\n", "SVM tn, fp: 612.25, 19.75\n", "SVM fn, tp: 5.75, 19.75SVM f1 score: 0.267\n", "SVM balanced accuracy: 0.815\n", "SVM cohens kappa score: 0.223\n", "\n", "\n", "minimum:\n", "SVM tn, fp: 588, 18\n", "SVM fn, tp: 4, 18SVM f1 score: 0.241\n", "SVM balanced accuracy: 0.792\n", "SVM cohens kappa score: 0.195\n", "\n", "\n", "-----[ GB ]-----\n", "maximum:\n", "GB tn, fp: 694, 15\n", "GB fn, tp: 18, 15GB f1 score: 0.476\n", "GB balanced accuracy: 0.784\n", "GB cohens kappa score: 0.454\n", "\n", "\n", "average:\n", "GB tn, fp: 689.75, 11.5\n", "GB fn, tp: 14.0, 11.5GB f1 score: 0.360\n", "GB balanced accuracy: 0.708\n", "GB cohens kappa score: 0.332\n", "\n", "\n", "minimum:\n", "GB tn, fp: 682, 8\n", "GB fn, tp: 10, 8GB f1 score: 0.262\n", "GB balanced accuracy: 0.635\n", "GB cohens kappa score: 0.231\n", "\n", "\n", "-----[ KNN ]-----\n", "maximum:\n", "KNN tn, fp: 664, 18\n", "KNN fn, tp: 14, 18KNN f1 score: 0.379\n", "KNN balanced accuracy: 0.824\n", "KNN cohens kappa score: 0.346\n", "\n", "\n", "average:\n", "KNN tn, fp: 660.75, 14.25\n", "KNN fn, tp: 11.25, 14.25KNN f1 score: 0.299\n", "KNN balanced accuracy: 0.741\n", "KNN cohens kappa score: 0.261\n", "\n", "\n", "minimum:\n", "KNN tn, fp: 654, 12\n", "KNN fn, tp: 7, 12KNN f1 score: 0.260\n", "KNN balanced accuracy: 0.693\n", "KNN cohens kappa score: 0.221\n", "\n" ] } ], "source": [ "toyGan = StupidToyListGan()\n", "exercise.run(toyGan, data)\n", "exercise.saveResultsTo(f\"{datasetName}-ToyListGan.csv\")" ] } ], "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.8.5" } }, "nbformat": 4, "nbformat_minor": 5 }