From 823a31749d3e2769cedd0925a78257d23a69456c Mon Sep 17 00:00:00 2001 From: Hung Nguyen-Duy Date: Thu, 5 Oct 2023 09:43:31 +0000 Subject: [PATCH 1/2] Add handwritten digit classification notebook --- README.md | 7 +- notebooks/example_hand_written_digits.ipynb | 470 ++++++++++++++++++++ 2 files changed, 474 insertions(+), 3 deletions(-) create mode 100644 notebooks/example_hand_written_digits.ipynb diff --git a/README.md b/README.md index 7686efc..0db9bf4 100644 --- a/README.md +++ b/README.md @@ -109,9 +109,11 @@ $ python ### Examples -In this section, we will explore the usage of the IntelELM model with the assistance of a dataset. While all the +* End-to-end tutorials can be found inside [notebooks](notebooks) directory. + +* In this section, we will explore the usage of the IntelELM model with the assistance of a dataset. While all the preprocessing steps mentioned below can be replicated using Scikit-Learn, we have implemented some utility functions -to provide users with convenience and faster usage. +to provide users with convenience and faster usage. #### Combine IntelELM Models like a with scikit-learn functions @@ -248,7 +250,6 @@ normalization when the scale of a feature is irrelevant or misleading. Feature S the data within a particular range. - 1) Where do I find the supported metrics like above ["AS", "PS", "RS"]. What is that? You can find it here: https://github.com/thieu1995/permetrics or use this diff --git a/notebooks/example_hand_written_digits.ipynb b/notebooks/example_hand_written_digits.ipynb new file mode 100644 index 0000000..143dd0d --- /dev/null +++ b/notebooks/example_hand_written_digits.ipynb @@ -0,0 +1,470 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Example: Using `IntelELM` for Recognizing Hand-written Digits" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Collecting intelelm==1.0.3\n", + " Obtaining dependency information for intelelm==1.0.3 from https://files.pythonhosted.org/packages/a5/a5/8e9f6e5158e5d1195d631221eca22a4a15d28d4d500227b0275e7cada908/intelelm-1.0.3-py3-none-any.whl.metadata\n", + " Downloading intelelm-1.0.3-py3-none-any.whl.metadata (19 kB)\n", + "Requirement already satisfied: numpy>=1.17.1 in /home/codespace/.local/lib/python3.10/site-packages (from intelelm==1.0.3) (1.26.0)\n", + "Requirement already satisfied: scipy>=1.7.1 in /home/codespace/.local/lib/python3.10/site-packages (from intelelm==1.0.3) (1.11.3)\n", + "Requirement already satisfied: scikit-learn>=1.0.2 in /home/codespace/.local/lib/python3.10/site-packages (from intelelm==1.0.3) (1.3.1)\n", + "Requirement already satisfied: pandas>=1.3.5 in /home/codespace/.local/lib/python3.10/site-packages (from intelelm==1.0.3) (2.1.1)\n", + "Requirement already satisfied: mealpy>=2.5.4 in /home/codespace/.local/lib/python3.10/site-packages (from intelelm==1.0.3) (2.5.4)\n", + "Requirement already satisfied: permetrics>=1.5.0 in /home/codespace/.local/lib/python3.10/site-packages (from intelelm==1.0.3) (1.5.0)\n", + "Requirement already satisfied: matplotlib>=3.3.0 in /home/codespace/.local/lib/python3.10/site-packages (from mealpy>=2.5.4->intelelm==1.0.3) (3.8.0)\n", + "Requirement already satisfied: opfunu>=1.0.0 in /home/codespace/.local/lib/python3.10/site-packages (from mealpy>=2.5.4->intelelm==1.0.3) (1.0.1)\n", + "Requirement already satisfied: python-dateutil>=2.8.2 in /home/codespace/.local/lib/python3.10/site-packages (from pandas>=1.3.5->intelelm==1.0.3) (2.8.2)\n", + "Requirement already satisfied: pytz>=2020.1 in /home/codespace/.local/lib/python3.10/site-packages (from pandas>=1.3.5->intelelm==1.0.3) (2023.3.post1)\n", + "Requirement already satisfied: tzdata>=2022.1 in /home/codespace/.local/lib/python3.10/site-packages (from pandas>=1.3.5->intelelm==1.0.3) (2023.3)\n", + "Requirement already satisfied: joblib>=1.1.1 in /home/codespace/.local/lib/python3.10/site-packages (from scikit-learn>=1.0.2->intelelm==1.0.3) (1.3.2)\n", + "Requirement already satisfied: threadpoolctl>=2.0.0 in /home/codespace/.local/lib/python3.10/site-packages (from scikit-learn>=1.0.2->intelelm==1.0.3) (3.2.0)\n", + "Requirement already satisfied: contourpy>=1.0.1 in /home/codespace/.local/lib/python3.10/site-packages (from matplotlib>=3.3.0->mealpy>=2.5.4->intelelm==1.0.3) (1.1.1)\n", + "Requirement already satisfied: cycler>=0.10 in /home/codespace/.local/lib/python3.10/site-packages (from matplotlib>=3.3.0->mealpy>=2.5.4->intelelm==1.0.3) (0.12.0)\n", + "Requirement already satisfied: fonttools>=4.22.0 in /home/codespace/.local/lib/python3.10/site-packages (from matplotlib>=3.3.0->mealpy>=2.5.4->intelelm==1.0.3) (4.43.0)\n", + "Requirement already satisfied: kiwisolver>=1.0.1 in /home/codespace/.local/lib/python3.10/site-packages (from matplotlib>=3.3.0->mealpy>=2.5.4->intelelm==1.0.3) (1.4.5)\n", + "Requirement already satisfied: packaging>=20.0 in /home/codespace/.local/lib/python3.10/site-packages (from matplotlib>=3.3.0->mealpy>=2.5.4->intelelm==1.0.3) (23.1)\n", + "Requirement already satisfied: pillow>=6.2.0 in /home/codespace/.local/lib/python3.10/site-packages (from matplotlib>=3.3.0->mealpy>=2.5.4->intelelm==1.0.3) (10.0.1)\n", + "Requirement already satisfied: pyparsing>=2.3.1 in /home/codespace/.local/lib/python3.10/site-packages (from matplotlib>=3.3.0->mealpy>=2.5.4->intelelm==1.0.3) (3.1.1)\n", + "Requirement already satisfied: requests>=2.27.0 in /home/codespace/.local/lib/python3.10/site-packages (from opfunu>=1.0.0->mealpy>=2.5.4->intelelm==1.0.3) (2.31.0)\n", + "Requirement already satisfied: six>=1.5 in /home/codespace/.local/lib/python3.10/site-packages (from python-dateutil>=2.8.2->pandas>=1.3.5->intelelm==1.0.3) (1.16.0)\n", + "Requirement already satisfied: charset-normalizer<4,>=2 in /home/codespace/.local/lib/python3.10/site-packages (from requests>=2.27.0->opfunu>=1.0.0->mealpy>=2.5.4->intelelm==1.0.3) (3.2.0)\n", + "Requirement already satisfied: idna<4,>=2.5 in /home/codespace/.local/lib/python3.10/site-packages (from requests>=2.27.0->opfunu>=1.0.0->mealpy>=2.5.4->intelelm==1.0.3) (3.4)\n", + "Requirement already satisfied: urllib3<3,>=1.21.1 in /home/codespace/.local/lib/python3.10/site-packages (from requests>=2.27.0->opfunu>=1.0.0->mealpy>=2.5.4->intelelm==1.0.3) (2.0.5)\n", + "Requirement already satisfied: certifi>=2017.4.17 in /home/codespace/.local/lib/python3.10/site-packages (from requests>=2.27.0->opfunu>=1.0.0->mealpy>=2.5.4->intelelm==1.0.3) (2023.7.22)\n", + "Downloading intelelm-1.0.3-py3-none-any.whl (4.2 MB)\n", + "\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m4.2/4.2 MB\u001b[0m \u001b[31m10.9 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m00:01\u001b[0m00:01\u001b[0m\n", + "\u001b[?25hInstalling collected packages: intelelm\n", + "Successfully installed intelelm-1.0.3\n" + ] + } + ], + "source": [ + "!python -m pip install intelelm==1.0.3" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": {}, + "outputs": [], + "source": [ + "from sklearn import datasets, metrics\n", + "from sklearn.model_selection import train_test_split\n", + "from intelelm import ElmClassifier, MhaElmClassifier\n", + "from sklearn.preprocessing import MinMaxScaler, LabelEncoder\n", + "import matplotlib.pyplot as plt\n", + "%matplotlib inline" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Loading Digits Dataset" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": {}, + "outputs": [], + "source": [ + "digits = datasets.load_digits()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Dataset: Train/Test Split & Preprocessing" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": {}, + "outputs": [], + "source": [ + "n_samples = len(digits.images)\n", + "data = digits.images.reshape((n_samples, -1))" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": {}, + "outputs": [], + "source": [ + "X_train, X_test, y_train, y_test = train_test_split(data, digits.target, test_size=0.5, shuffle=False, random_state=1)" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": {}, + "outputs": [], + "source": [ + "# Remember to scale features before model fitting. For this example, we use MinMaxScaler.\n", + "min_max_scaler = MinMaxScaler()\n", + "min_max_scaler.fit(X_train)\n", + "X_train_scaled = min_max_scaler.transform(X_train)\n", + "X_test_scaled = min_max_scaler.transform(X_test)" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": {}, + "outputs": [], + "source": [ + "# Using label encoding for classification\n", + "label_encoder = LabelEncoder()\n", + "label_encoder.fit(digits.target)\n", + "\n", + "y_train_le = label_encoder.transform(y_train)\n", + "y_test_le = label_encoder.transform(y_test)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Classification with Standard ELM Model" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "* Train an `ElmClassifier`" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "metadata": {}, + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "/home/codespace/.local/lib/python3.10/site-packages/sklearn/preprocessing/_encoders.py:975: FutureWarning: `sparse` was renamed to `sparse_output` in version 1.2 and will be removed in 1.4. `sparse_output` is ignored unless you leave `sparse` to its default value.\n", + " warnings.warn(\n" + ] + }, + { + "data": { + "text/html": [ + "
ElmClassifier(act_name='relu', hidden_size=100)
In a Jupyter environment, please rerun this cell to show the HTML representation or trust the notebook.
On GitHub, the HTML representation is unable to render, please try loading this page with nbviewer.org.
" + ], + "text/plain": [ + "ElmClassifier(act_name='relu', hidden_size=100)" + ] + }, + "execution_count": 7, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "elm_clf = ElmClassifier(hidden_size=100, act_name=\"relu\")\n", + "elm_clf.fit(X_train_scaled, y_train_le)" + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "metadata": {}, + "outputs": [], + "source": [ + "elm_predicted = elm_clf.predict(X_test_scaled)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "* Report classification results" + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + " precision recall f1-score support\n", + "\n", + " 0 0.86 0.99 0.92 88\n", + " 1 0.91 0.86 0.88 91\n", + " 2 0.95 0.91 0.93 86\n", + " 3 0.89 0.82 0.86 91\n", + " 4 0.96 0.88 0.92 92\n", + " 5 0.85 0.91 0.88 91\n", + " 6 0.92 0.99 0.95 91\n", + " 7 0.93 0.92 0.93 89\n", + " 8 0.83 0.72 0.77 88\n", + " 9 0.74 0.82 0.77 92\n", + "\n", + " accuracy 0.88 899\n", + " macro avg 0.88 0.88 0.88 899\n", + "weighted avg 0.88 0.88 0.88 899\n", + "\n" + ] + } + ], + "source": [ + "print(metrics.classification_report(y_test_le, elm_predicted))" + ] + }, + { + "cell_type": "code", + "execution_count": 10, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Confusion Matrix [ELM]:\n", + "[[87 0 0 0 0 0 1 0 0 0]\n", + " [ 3 78 1 1 1 0 1 0 2 4]\n", + " [ 3 3 78 2 0 0 0 0 0 0]\n", + " [ 0 2 1 75 0 5 0 2 3 3]\n", + " [ 1 0 0 0 81 0 0 2 3 5]\n", + " [ 0 0 0 1 0 83 1 0 0 6]\n", + " [ 0 0 1 0 0 0 90 0 0 0]\n", + " [ 0 0 0 1 2 2 0 82 1 1]\n", + " [ 0 3 1 2 0 6 4 1 63 8]\n", + " [ 7 0 0 2 0 2 1 1 4 75]]\n" + ] + }, + { + "data": { + "image/png": "iVBORw0KGgoAAAANSUhEUgAAAfIAAAHgCAYAAABej+9AAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjguMCwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy81sbWrAAAACXBIWXMAAA9hAAAPYQGoP6dpAACDmUlEQVR4nO3dd3gU5drH8e+mbnojhUAIofciKieAAhqJHESQKuIxgMhBQQWkyJGOGIGXIoggFkAOEbGAokeq0qQ3RUoIBJJASCCQ3rM77x8xC0uCZFN2NuT+XNdcurNTfjtZ9t7nmWdnNIqiKAghhBCiSrJSO4AQQgghyk4KuRBCCFGFSSEXQgghqjAp5EIIIUQVJoVcCCGEqMKkkAshhBBVmBRyIYQQogqTQi6EEEJUYVLIhRBCiCpMCrkQ9xAVFUW3bt1wc3NDo9GwadOmCt3+5cuX0Wg0rF69ukK3W5V16dKFLl26VMi2du3ahUajMUxHjx6tkO1WpDFjxhjyOTs7qx1HVFFSyIVFu3jxIv/+97+pV68eWq0WV1dXOnbsyAcffEB2dnal7jssLIxTp04xZ84c1q5dy8MPP1yp+zOnIUOGoNFocHV1LfE4RkVFGQrM//3f/5m8/fj4eGbMmMHJkycrIG35/Oc//2Ht2rXUq1fPMG/GjBlGRf7uKSEhAbj9Zet+x6Bu3bpoNBpCQkJKfP6TTz4p8QvFv/71L9auXctjjz1WAa9UVFc2agcQ4l5++ukn+vfvj729PS+99BItWrQgLy+Pffv2MWHCBE6fPs3KlSsrZd/Z2dkcOHCAd955h9GjR1fKPgIDA8nOzsbW1rZStn8/NjY2ZGVlsXnzZgYMGGD03Lp169BqteTk5JRp2/Hx8cycOZO6devSpk2bUq+3bdu2Mu3v7zz11FP3bOUvX768xJawu7u7yfvRarX8+uuvJCQk4OfnZ/TcvY5nu3btaNeuHTt27OD48eMm71MIkEIuLNSlS5d4/vnnCQwM5JdffqFmzZqG50aNGsWFCxf46aefKm3/N27cAMr2gV5aGo0GrVZbadu/H3t7ezp27MiXX35ZrJBHRETQo0cPvv32W7NkycrKwtHRETs7O7Psr0i/fv2oUaNGhWyrY8eOHDlyhK+++oo333zTMP/KlSvs3buX5557zmzHU1Qv0rUuLNK8efPIyMjgs88+MyriRRo0aGD0YVlQUMDs2bOpX78+9vb21K1bl//85z/k5uYarVe3bl2eeeYZ9u3bx6OPPopWq6VevXp88cUXhmVmzJhBYGAgABMmTECj0VC3bl2gsEu66P/vVNRVe6ft27fTqVMn3N3dcXZ2pnHjxvznP/8xPH+vc+S//PILjz32GE5OTri7u9OrVy/Onj1b4v4uXLjAkCFDcHd3x83NjaFDh5KVlXXvA3uXF154gZ9//pmUlBTDvCNHjhAVFcULL7xQbPlbt24xfvx4WrZsibOzM66urnTv3p3ff//dsMyuXbt45JFHABg6dKihS7nodXbp0oUWLVpw7NgxHn/8cRwdHQ3H5e5z5GFhYWi12mKvPzQ0FA8PD+Lj40v9WiubVqulT58+REREGM3/8ssv8fDwIDQ0VKVk4kEnhVxYpM2bN1OvXj06dOhQquWHDx/OtGnTeOihh1i0aBGdO3cmPDyc559/vtiyFy5coF+/fjz11FMsWLAADw8PhgwZwunTpwHo06cPixYtAmDQoEGsXbuWxYsXm5T/9OnTPPPMM+Tm5jJr1iwWLFjAs88+y2+//fa36+3YsYPQ0FCuX7/OjBkzGDduHPv376djx45cvny52PIDBgwgPT2d8PBwBgwYwOrVq5k5c2apc/bp0weNRsN3331nmBcREUGTJk146KGHii0fHR3Npk2beOaZZ1i4cCETJkzg1KlTdO7c2VBUmzZtyqxZswAYMWIEa9euZe3atTz++OOG7dy8eZPu3bvTpk0bFi9eTNeuXUvM98EHH+Dt7U1YWBg6nQ6Ajz/+mG3btrF06VL8/f1L/VpLcuvWLZKSkoymO7/UmOqFF17g8OHDXLx40TAvIiKCfv36qXYKRVQDihAWJjU1VQGUXr16lWr5kydPKoAyfPhwo/njx49XAOWXX34xzAsMDFQAZc+ePYZ5169fV+zt7ZW33nrLMO/SpUsKoMyfP99om2FhYUpgYGCxDNOnT1fu/Oe0aNEiBVBu3Lhxz9xF+1i1apVhXps2bRQfHx/l5s2bhnm///67YmVlpbz00kvF9jds2DCjbT733HOKl5fXPfd55+twcnJSFEVR+vXrpzz55JOKoiiKTqdT/Pz8lJkzZ5Z4DHJychSdTlfsddjb2yuzZs0yzDty5Eix11akc+fOCqCsWLGixOc6d+5sNG/r1q0KoLz77rtKdHS04uzsrPTu3fu+r/HXX39VAOXXX38t9lzR8Stpaty4sdFrK+l9cLfAwEClR48eSkFBgeLn56fMnj1bURRFOXPmjAIou3fvVlatWqUAypEjR4qtf+ffQwhTSYtcWJy0tDQAXFxcSrX8//73PwDGjRtnNP+tt94CKHYuvVmzZkajhL29vWncuDHR0dFlzny3onPr33//PXq9vlTrXLt2jZMnTzJkyBA8PT0N81u1asVTTz1leJ13GjlypNHjxx57jJs3bxqOYWm88MIL7Nq1i4SEBH755RcSEhJK7FaHwvPqVlaFHxs6nY6bN28aThuYMljL3t6eoUOHlmrZbt268e9//5tZs2bRp08ftFotH3/8can39Xe+/fZbtm/fbjStWrWqzNuztrZmwIABfPnll0DhILeAgAAZlS4qlRRyYXFcXV0BSE9PL9XyMTExWFlZ0aBBA6P5fn5+uLu7ExMTYzS/Tp06xbbh4eFBcnJyGRMXN3DgQDp27Mjw4cPx9fXl+eefZ8OGDX9b1ItyNm7cuNhzTZs2JSkpiczMTKP5d78WDw8PAJNeyz//+U9cXFz46quvWLduHY888kixY1lEr9ezaNEiGjZsiL29PTVq1MDb25s//viD1NTUUu+zVq1aJg1s+7//+z88PT05efIkS5YswcfHp9Tr/p3HH3+ckJAQoyk4OLhc23zhhRc4c+YMv//+OxERETz//PPFxk8IUZGkkAuL4+rqir+/P3/++adJ65X2w9La2rrE+YqilHkfRedvizg4OLBnzx527NjBv/71L/744w8GDhzIU089VWzZ8ijPaylib29Pnz59WLNmDRs3brxnaxzgvffeY9y4cTz++OP897//ZevWrWzfvp3mzZuXuucBCo+PKU6cOMH169cBOHXqlEnrmlv79u2pX78+Y8aM4dKlS397PIWoCFLIhUV65plnuHjxIgcOHLjvsoGBgej1eqKioozmJyYmkpKSYhiBXhE8PDxKHAx1d6sfwMrKiieffJKFCxdy5swZ5syZwy+//MKvv/5a4raLckZGRhZ77ty5c9SoUQMnJ6fyvYB7eOGFFzhx4gTp6eklDhAs8s0339C1a1c+++wznn/+ebp160ZISEixY1KRLdDMzEyGDh1Ks2bNGDFiBPPmzePIkSMVtv3KMGjQIHbt2kXTpk1N+h29EGUhhVxYpIkTJ+Lk5MTw4cNJTEws9vzFixf54IMPgMKuYaDYyPKFCxcC0KNHjwrLVb9+fVJTU/njjz8M865du8bGjRuNlrt161axdYs+0O/+SVyRmjVr0qZNG9asWWNUGP/880+2bdtmeJ2VoWvXrsyePZsPP/yw2MVM7mRtbV2stf/1119z9epVo3lFXzjKMwK8yKRJk4iNjWXNmjUsXLiQunXrEhYWds/jaAmGDx/O9OnTWbBggdpRRDUgF4QRFql+/fpEREQwcOBAmjZtanRlt/379/P1118zZMgQAFq3bk1YWBgrV64kJSWFzp07c/jwYdasWUPv3r3v+dOmsnj++eeZNGkSzz33HG+88QZZWVksX76cRo0aGQ32mjVrFnv27KFHjx4EBgZy/fp1PvroI2rXrk2nTp3uuf358+fTvXt3goODefnll8nOzmbp0qW4ubkxY8aMCnsdd7OysmLKlCn3Xe6ZZ55h1qxZDB06lA4dOnDq1CnWrVtndPlTKPz7ubu7s2LFClxcXHBycqJ9+/YEBQWZlOuXX37ho48+Yvr06Yafw61atYouXbowdepU5s2bZ9L27vbNN9+UeGW3p556Cl9fX8PjnTt3lniVu969e9OiRYti8wMDAyv17yXEnaSQC4v17LPP8scffzB//ny+//57li9fjr29Pa1atWLBggW88sorhmU//fRT6tWrx+rVq9m4cSN+fn5MnjyZ6dOnV2gmLy8vNm7cyLhx45g4cSJBQUGEh4cTFRVlVMifffZZLl++zOeff05SUhI1atSgc+fOzJw5Ezc3t3tuPyQkhC1btjB9+nSmTZuGra0tnTt3Zu7cuSYXwcrwn//8h8zMTCIiIvjqq6946KGH+Omnn3j77beNlrO1tWXNmjVMnjyZkSNHUlBQwKpVq0x6Denp6QwbNoy2bdvyzjvvGOY/9thjvPnmmyxYsIA+ffrwj3/8o8yv59VXXy1x/q+//mpUyLds2cKWLVuKLVe3bt0SC7kQ5qRRTBkVI4QQVcSuXbvo2rUrmzZtomPHjri7u2NjY1ltl8zMTLKzs3n99dfZvHkzGRkZakcSVZCcIxdCPNB69+6Nt7e3RdyJ7W7vvPMO3t7erF+/Xu0oogqTFrkQ4oGUnJzMsWPHDI/bt29f6osMmcv58+eJjY0FCu9GV1H3YhfVixRyIYQQogqTrnUhhBCiCpNCLoQQQlRhUsiFEEKIKkwKuRBCCFGFSSEXQgghqjAp5EIIIUQVJoVcCCGEqMKkkAshhBBVmBRyIYQQogqTQi6EEEJUYVLIhRBCiCpMCrkQQghRhUkhF0IIIaowKeRCCCFEFSaFXAghhKjCpJALIYQQVZgUciGEEKIKk0IuhBBCVGFSyIUQQogqTAq5EEIIUYVJIRdCCCGqMCnkQgghRBUmhVwIIYSowqSQCyGEEFWYFHIhhBCiCpNCLoQQQlRhUsiFEEKISpKens6YMWMIDAzEwcGBDh06cOTIEcPziqIwbdo0atasiYODAyEhIURFRZm0DynkQgghRCUZPnw427dvZ+3atZw6dYpu3boREhLC1atXAZg3bx5LlixhxYoVHDp0CCcnJ0JDQ8nJySn1PjSKoiiV9QIqm16vJz4+HhcXFzQajdpxhBBCmEhRFNLT0/H398fKqvLaljk5OeTl5ZV7O4qiFKs39vb22NvbF1s2OzsbFxcXvv/+e3r06GGY365dO7p3787s2bPx9/fnrbfeYvz48QCkpqbi6+vL6tWref7550uVyaYcr0d18fHxBAQEqB1DCCFEOcXFxVG7du1K2XZOTg5Bgc4kXNeVe1vOzs5kZGQYzZs+fTozZswotmxBQQE6nQ6tVms038HBgX379nHp0iUSEhIICQkxPOfm5kb79u05cOBA9SjkLi4uAJw44o2Ls+WcJRje9B9qRxCicllZq52gOH35P6SF+RWQzz7+Z/g8rwx5eXkkXNcRc6wuri5lrxVp6XoC210mLi4OV1dXw/ySWuNQWKOCg4OZPXs2TZs2xdfXly+//JIDBw7QoEEDEhISAPD19TVaz9fX1/BcaVTpQl7UveHibIVLOf44Fc1GY6t2BCEql8YCC7nGcj4DhAn+OrlrjtOjzi4anF3Kvh89heu6uroaFfK/s3btWoYNG0atWrWwtrbmoYceYtCgQRw7dqzMOe4m73whhBDVgk7Rl3syVf369dm9ezcZGRnExcVx+PBh8vPzqVevHn5+fgAkJiYarZOYmGh4rjSkkAshhKgW9CjlnsrKycmJmjVrkpyczNatW+nVqxdBQUH4+fmxc+dOw3JpaWkcOnSI4ODgUm+7SnetCyGEEJZs69atKIpC48aNuXDhAhMmTKBJkyYMHToUjUbDmDFjePfdd2nYsCFBQUFMnToVf39/evfuXep9SCEXQghRLejRY3rnuPH6pkpNTWXy5MlcuXIFT09P+vbty5w5c7C1LRxLNXHiRDIzMxkxYgQpKSl06tSJLVu2FBvp/neq9O/I09LScHNz48JZX4sa7DY4oKPaEYSoXDJqXVSQAiWfXXxPampqqQeQmaqoVsSdq1XuUesBTa5WataysJzqJ4QQQgiTSde6EEKIaqG8A9bKs25lkkIuhBCiWtCjoHsAC7l0rQshhBBVmLTIhRBCVAvStf4A0Ovg24V1+G2jNynXbfHwzePx/tfp/eYViq4OeK8R54PeucwzI6+aLWvPIUn0e/U6nt4FRJ9x4KMptYg86Wi2/UsmyVSZWrRPp//IRBq2zMbLL58ZL9fjwFZ31fIUsbTjJJkqlk5R0JXjh1rlWbcyVauu9c0f1WbHWj/CZkcz/9cTPP+fGH5cUZutq2oalll27LDRNOL/otBoFB7tnmS2nJ2fTWbE9HjWLfRjVGgjos9omRMRjZtXvtkySCbJVJm0jnqizzjy4RTLuXuhJR4nySRKwyIK+bJly6hbty5arZb27dtz+PDhStnP+WMutOt2i7ZPJuMdkEv7Hjdp+Xgy0SedDcu4++QbTce2edKsQyo+gbmVkqkkfUYksSXCk21feRIbpWXJpNrkZmsIHXTLbBkkk2SqTEd/dWPNfH/2b3FXLcPdLPE4SaaKpa+AyRKpXsi/+uorxo0bx/Tp0zl+/DitW7cmNDSU69evV/i+GrVL5/RvblyLLrxiTswZRyKPuNK6a0qJy6fesOXkLx50HphY4vOVwcZWT8NWWRzfe/uWfoqi4cReF5q1yzJbDskkmaoTSzxOkqni6f4atV6eyRKpXsgXLlzIK6+8wtChQ2nWrBkrVqzA0dGRzz//vML31XPUFYKfTWJCl4d4KSiYd55uw9Mvx9PxuRslLr/nGx+0Tjoe6X6zwrPci6unDmsbSLlhPHwhOckGD+8Cs+WQTJKpOrHE4ySZKp5OKf9kiVQd7JaXl8exY8eYPHmyYZ6VlRUhISEcOHCg2PK5ubnk5t7u4k5LSzNpf4c21+C3jd6MWnqeWo2yiDnjxH9nBP016K14Md/9lQ8dn7uBndZC/3pCCCGqPVVb5ElJSeh0Onx9fY3m+/r6kpCQUGz58PBw3NzcDFNAgGkDZSLm1KXna1cI7pVEnaZZPNb3Bk8Pj+eHZbWLLXvukCvXLjrSZZD5utUB0m5ZoysA97u+3XrUKCD5hjrfuySTZHrQWeJxkkwVT86RW4DJkyeTmppqmOLi4kxaPy/bCqu7XrGVtYKi1xRbdtd6H4JaZhDYzLznfQryrYj6w5G2ndIN8zQahTadMjhzTJ2fd0gmyfSgs8TjJJkqnh4NunJMeorXCkug6leoGjVqYG1tTWKicas3MTERPz+/Ysvb29tjb29f5v21DbnFpqW18aqVS+1GWVz+04mfP6lVbDBbVro1h3+qwQtTL5d5X+Xx3coajF8cx/nfHYk84chzr9xA66hn23pPVfJIJslU0bSOOvzr3j5N5heQS71mWaSn2HAj3k6VTJZ4nCSTKA1VC7mdnR3t2rVj586dhpuo6/V6du7cyejRoyt8f2GzL/HN/9Vh1Tv1SEsqvCDME4MT6DPGuGV/8IcaKAp06FXyILjKtvsHD9y8dLw0IQEP7wKiTzvwzuAgUpJsVckjmSRTRWvUOov5X0cZHo+cUXixpW0bPFkwrq4qmSzxOEmmiqVXCqfyrG+JVL8f+VdffUVYWBgff/wxjz76KIsXL2bDhg2cO3eu2Lnzu8n9yIVQidyPXFQQc96P/NBpP5zLUSsy0vW0b55gcfcjV310wsCBA7lx4wbTpk0jISGBNm3asGXLlvsWcSGEEEJYQCEHGD16dKV0pQshhBBFigatlWd9S2QRhVwIIYSobHpFg14pezEuz7qVyXJOLAshhBDCZNIiF0IIUS1I17oQQghRhemwQleOjmhL/V2EFHIhhBDVglLOc+SKnCMXQgghREWTFrkQQohqQc6RCyGEEFWYTrFCp5TjHLmFXqJVutaFEEKIKkxa5EIIIaoFPRr05Wi/6rHMJrkUciGEENWCnCO3YCMefgIbjTr3MC7J0MgzakcoZlXTempHEGUld/WqsjT29mpHKMbKQat2BCOKkgcpaqeo2uQcuRBCiGqhaLBbeSaT9qfTMXXqVIKCgnBwcKB+/frMnj2bO+8erigK06ZNo2bNmjg4OBASEkJUVJRJ+5FCLoQQolooPEdevskUc+fOZfny5Xz44YecPXuWuXPnMm/ePJYuXWpYZt68eSxZsoQVK1Zw6NAhnJycCA0NJScnp9T7eSC61oUQQghzSUtLM3psb2+PfQmnUfbv30+vXr3o0aMHAHXr1uXLL7/k8OHDQGFrfPHixUyZMoVevXoB8MUXX+Dr68umTZt4/vnnS5VHWuRCCCGqBf1f11ov61Q04j0gIAA3NzfDFB4eXuL+OnTowM6dOzl//jwAv//+O/v27aN79+4AXLp0iYSEBEJCQgzruLm50b59ew4cOFDq1yUtciGEENVC+S8IU3huOy4uDldXV8P8klrjAG+//TZpaWk0adIEa2trdDodc+bMYfDgwQAkJCQA4Ovra7Ser6+v4bnSkEIuhBCiWtDf0aou2/qFhdzV1dWokN/Lhg0bWLduHRERETRv3pyTJ08yZswY/P39CQsLK3OOu0khF0IIISrBhAkTePvttw3nulu2bElMTAzh4eGEhYXh5+cHQGJiIjVr1jSsl5iYSJs2bUq9HzlHLoQQolrQKZpyT6bIysrCysq4zFpbW6PX6wEICgrCz8+PnTt3Gp5PS0vj0KFDBAcHl3o/0iIXQghRLRQNWiv7+qZdorVnz57MmTOHOnXq0Lx5c06cOMHChQsZNmwYABqNhjFjxvDuu+/SsGFDgoKCmDp1Kv7+/vTu3bvU+5FCLoQQQlSCpUuXMnXqVF577TWuX7+Ov78///73v5k2bZphmYkTJ5KZmcmIESNISUmhU6dObNmyBa229Ffgk0IuhBCiWtArVujLMWpdr5jWIndxcWHx4sUsXrz4nstoNBpmzZrFrFmzypxLCrkQQohqwdxd6+ZSrQt5jxcS6DEoAd/auQDERDkQ8WEAR/d4mC3D10/UIuNq8T9DkxfSCZ5+i6wbVhyd50H8fgfyMzW4BuXTemQadUOzzJYRoEX7dPqPTKRhy2y8/PKZ8XI9Dmx1N2sGyVR2PYck0e/V63h6FxB9xoGPptQi8qSjannkON3fwFfj6RiaTO362eTlWHHmuDOfzw3gSrSDKnlK0n94LEPHXWbTF7VY+X59teNUW9V61HpSgh2r/i+Q13u34o3nWvH7ATemLT9HnQbmK5I9v7nGwH1xhil0VSIAdZ/OBGDvpBqkXrLlyeXX6b35GoFPZbNrTA1unrE1W0YAraOe6DOOfDglwKz7/TuSqXQ6P5vMiOnxrFvox6jQRkSf0TInIho3r3zVMslxur+W7dPZvNaHsX2aMfmlJtjYKMz5IhJ7B8u4G17DFul0H3CN6HNOakcpNT3lG7muV/sF3IOqhXzPnj307NkTf39/NBoNmzZtMuv+D/3iyZHdHsTHOHD1sgNrFgWSk2VNkzbpZsug9dTj6H17ivvVAZc6+fg9WthLcP2EPU1fTMe7VR4uAQW0eS0VO1c9N0+b9/aIR391Y818f/ZvcTfrfv+OZCqdPiOS2BLhybavPImN0rJkUm1yszWEDrqlWiY5Tvc3ZUhjtn/rTUyUI5fOOrJgQj18a+XRsGWmKnnupHXUMXHeOZZMb0RGWtXp2C26IEx5JkukaqrMzExat27NsmXL1IwBgJWVQuceSWgddZw76aJKBl0eXPzBiYZ9M9D89XNFn7a5XPrZkdwUKxQ9RP/kiC5Xg9+jpb8zjqi+bGz1NGyVxfG9t9/TiqLhxF4XmrUz7+kZS1YVjpOjS2FLPD1F/cL52pQoDu/25OQB852GFPem6juie/fuhovHq6Vuo0wWbjiFnb2e7CxrZr/WhNgL6pwTi93hSF66FQ2fu/2Nu8viG+wa601E+wA0Ngo2WoUnPryBa2CBKhlF1eLqqcPaBlJuGP9TT06yIaBBrkqpLI+lHyeNRmHk1BhOH3Em5rx6YxsAHu9+nQbNMnhzwEOq5iiL8l9r3TJb5Op/tTNBbm4uubm3/1HdfSu5srhyyYFRz7bGyUVHp6dv8ta8KCYObqFKMT//rTO1H8/G0ff2ObATH7iTl2ZF6OpEtB46YnY4smuMN93XJeDZWL1znEII8xk1K4a6jbN5q38zVXPU8Mvh35Mv8s7wluTnWWZR+ztluaf43etboipVyMPDw5k5c2aFbrMg34prsYWjQC+cdqZRywx6hV1j6VTzjsDMuGrNtf1aui69YZiXFmvD2f+60vvHeDwaFhZtzyapJB6159w6FzrMUu8cp6ga0m5ZoysAd2/jHhyPGgUk36hS//wrlSUfp9dmXqb9EymMH9iUpAQ7VbM0bJ6BR418ln5z3DDP2gZaPJxKzxeu0qvNY+j1llns4MFtkVtmqnuYPHkyqamphikuLq7C96GxUrC1M//YxKjvnNF66Qjokm2YV5CtMWS6k8YaTLwugaimCvKtiPrDkbadbg/g1GgU2nTK4MwxdbtoLYllHieF12ZepkO3ZCYNbkLiFfMOcC3JyQPuvPpsO0b3uT2dP+XMrh99GN2nnUUX8QdZlfpKbm9vf8/7vpbFkLdiOLrHnevx9jg66ejSM4lW7dOYMsy83VeKvrCQN+ididUdfxH3evm4BOazf5oXj0xKxt5dT+wOB+J/0xLy8XWzZtQ66vCve/u0hl9ALvWaZZGeYsONeHVaCZKpdL5bWYPxi+M4/7sjkSccee6VG2gd9Wxb76lKHpDjVBqjZsXQtddNZo5oSHaGFR418gDITLchL1edNlh2lg0xF4zLRk62NWkptsRcsPyfoZX/gjCW2fatUoW8orl75TN+3gU8ffLITLfm0jknpgxrxonf3M2aI36/lsx4Gxr2zTCab2ULT628zrEF7uwY6UNBlgaXOgU89v5NAjqbd9R6o9ZZzP86yvB45IyrAGzb4MmCcXXNmkUymWb3Dx64eel4aUICHt4FRJ924J3BQaQkmfdaBHeS43R/Pf9V+GV9/vpzRvMXjA9i+7feakSq8vSKBr2JdzC7e31LpFEU9TppMzIyuHDhAgBt27Zl4cKFdO3aFU9PT+rUqXPf9dPS0nBzc+MJp0HYaNQ9d3SnsONn1I5QzKqm9dSOIMpKbxkXADFiZa12guIs8DhpKrAHsaJYOZT+ZhzmUKDksTNlLampqbi6ulbKPopqxbwjj+HgXPb2a3ZGARMf2VupWctC1Rb50aNH6dq1q+HxuHHjAAgLC2P16tUqpRJCCPEg0peza91SLwijaiHv0qULKnYICCGEqEbKf/czyyzklplKCCGEEKVSrQe7CSGEqD50aNCV46Iu5Vm3MkkhF0IIUS1I17oQQgghLI60yIUQQlQLOsrXPW55P3AsJIVcCCFEtfCgdq1LIRdCCFEtyE1ThBBCCGFxpEUuhBCiWlDKeT9yRX5+JoQQQqhHutaFEEIIYXGkRV4J1jxk3vuZl8bQs5Z3R7bVrRqpHaEYJTf3/gsJi7zTmCWyxPeTzsIy6ZR8s+3rQb2NqRRyIYQQ1YKunHc/K8+6lckyUwkhhBCiVKRFLoQQolqQrnUhhBCiCtNjhb4cHdHlWbcyWWYqIYQQooqrW7cuGo2m2DRq1CgAcnJyGDVqFF5eXjg7O9O3b18SExNN3o8UciGEENWCTtGUezLFkSNHuHbtmmHavn07AP379wdg7NixbN68ma+//prdu3cTHx9Pnz59TH5d0rUuhBCiWqioc+RpaWlG8+3t7bG3ty+2vLe3t9Hj999/n/r169O5c2dSU1P57LPPiIiI4IknngBg1apVNG3alIMHD/KPf/yj1LmkRS6EEKJaUP66+1lZJ+WvK7sFBATg5uZmmMLDw++777y8PP773/8ybNgwNBoNx44dIz8/n5CQEMMyTZo0oU6dOhw4cMCk1yUtciGEEMIEcXFxuLq6Gh6X1Bq/26ZNm0hJSWHIkCEAJCQkYGdnh7u7u9Fyvr6+JCQkmJRHCrkQQohqQYcGXTlufFK0rqurq1EhL43PPvuM7t274+/vX+b934sUciGEENWCXinfb8H1StnWi4mJYceOHXz33XeGeX5+fuTl5ZGSkmLUKk9MTMTPz8+k7cs5ciGEEKISrVq1Ch8fH3r06GGY165dO2xtbdm5c6dhXmRkJLGxsQQHB5u0/WrdIu/xQgI9BiXgW7vwJgIxUQ5EfBjA0T0e1TrT10/UIuNq8bdGkxfSCZ5+i6wbVhyd50H8fgfyMzW4BuXTemQadUOzzJZx4KvxdAxNpnb9bPJyrDhz3JnP5wZwJdrBbBnupeeQJPq9eh1P7wKizzjw0ZRaRJ50lEySSTKprGjQWnnWN3kdvZ5Vq1YRFhaGjc3tz1U3Nzdefvllxo0bh6enJ66urrz++usEBwebNGIdqnmLPCnBjlX/F8jrvVvxxnOt+P2AG9OWn6NOA/MVJEvM1PObawzcF2eYQlcVXqCg7tOZAOydVIPUS7Y8ufw6vTdfI/CpbHaNqcHNM7Zmy9iyfTqb1/owtk8zJr/UBBsbhTlfRGLvoO5duTo/m8yI6fGsW+jHqNBGRJ/RMiciGjcv893hSTJJpuqWqbT0aMo9mWrHjh3ExsYybNiwYs8tWrSIZ555hr59+/L444/j5+dn1P1eWqoW8vDwcB555BFcXFzw8fGhd+/eREZGmm3/h37x5MhuD+JjHLh62YE1iwLJybKmSZt0s2WwxExaTz2O3renuF8dcKmTj9+jhb0E10/Y0/TFdLxb5eESUECb11Kxc9Vz8/T9R25WlClDGrP9W29iohy5dNaRBRPq4Vsrj4YtM82WoSR9RiSxJcKTbV95EhulZcmk2uRmawgddEsySSbJVA1169YNRVFo1Kj4bZu1Wi3Lli3j1q1bZGZm8t1335l8fhxULuS7d+9m1KhRHDx4kO3bt5Ofn0+3bt3IzDT/h7GVlULnHkloHXWcO+li9v2XxBIy6fLg4g9ONOybgeavL6M+bXO59LMjuSlWKHqI/skRXa4Gv0dzVMkI4OhS2BJPT1HvbJGNrZ6GrbI4vvf230pRNJzY60Kzdur08kgmyfSgZzKFua/sZi6qniPfsmWL0ePVq1fj4+PDsWPHePzxx82SoW6jTBZuOIWdvZ7sLGtmv9aE2AvqnuuxpEyxOxzJS7ei4XO3v1x1WXyDXWO9iWgfgMZGwUar8MSHN3ANLFAlo0ajMHJqDKePOBNzXr2/naunDmsbSLlh/M8qOcmGgAa5kkkySSaVqXGO3BwsarBbamoqAJ6eniU+n5ubS27u7TfL3ZfJK4srlxwY9WxrnFx0dHr6Jm/Ni2Li4BaqFnNLynT+W2dqP56No+/tc88nPnAnL82K0NWJaD10xOxwZNcYb7qvS8CzsfnPk42aFUPdxtm81b+Z2fcthBBqs5ivF3q9njFjxtCxY0datGhR4jLh4eFGl8ULCAgo934L8q24FuvAhdPOrF4QSPRZJ3qFXSv3dh+ETBlXrbm2X0vDfhmGeWmxNpz9ryud3ruJf3AOnk3yaTs6Fa8WuZxbZ/7u/9dmXqb9EylMHNSUpAQ7s+//Tmm3rNEVgLu3cc+ER40Ckm+o851ZMkmmBz2TKfRoDNdbL9NUjovJVCaLKeSjRo3izz//ZP369fdcZvLkyaSmphqmuLi4Cs+hsVKwtdNX+HbLQ61MUd85o/XSEdAl2zCvIFtjyHQnjTUoZbxYQtkovDbzMh26JTNpcBMSr5hvoN29FORbEfWHI2073R6YqNEotOmUwZlj6vTwSCbJ9KBnMoVSzhHrioUWcov4CjV69Gh+/PFH9uzZQ+3ate+53L3uMFNWQ96K4eged67H2+PopKNLzyRatU9jyjD1umgtJZOiLyzkDXpnYnXHu8S9Xj4ugfnsn+bFI5OSsXfXE7vDgfjftIR8fN1s+UbNiqFrr5vMHNGQ7AwrPGrkAZCZbkNernrfT79bWYPxi+M4/7sjkSccee6VG2gd9WxbX/LpIskkmSST+VTU3c8sjaqFXFEUXn/9dTZu3MiuXbsICgoy6/7dvfIZP+8Cnj55ZKZbc+mcE1OGNePEb+5mzWGJmeL3a8mMt6Fh3wyj+Va28NTK6xxb4M6OkT4UZGlwqVPAY+/fJKCz+Uat9/xX4ZeG+evPGc1fMD6I7d96l7SKWez+wQM3Lx0vTUjAw7uA6NMOvDM4iJQk8/3GXjJJpuqWqbrTKIp5O0Tv9NprrxEREcH3339P48aNDfPd3NxwcLj/FbrS0tJwc3PjCadB2GjUPT9q6cKOn1E7QjGrWxX/XaXalFzLH3krxIOkQMlnF9+Tmppq8o1ISquoVjy3fSi2TmWvFfmZeWx8alWlZi0LVVvky5cvB6BLly5G81etWmW41ZsQQghREaRrvRKo2BkghBBCPBAsYrCbEEIIUdnKer30O9e3RFLIhRBCVAsPate6xfyOXAghhBCmkxa5EEKIauFBbZFLIRdCCFEtPKiFXLrWhRBCiCpMWuRCCCGqhQe1RS6FXAghRLWgUL6fkFnqlU+kkAshhKgWHtQWuZwjF0IIIaowaZELIYSoFh7UFvkDUcj1mVnoNflqxzDQVOA90yvKqqb11I5QzDOnEtSOUMyPzT3UjlCMdQ0vtSMUo0u6qXaEYizx353G5oH4iK1UVkoeZJpnXw9qIZeudSGEEKIKk6+LQgghqoUHtUUuhVwIIUS1oCgalHIU4/KsW5mka10IIYSowqRFLoQQolqQ+5ELIYQQVdiDeo5cutaFEEKIKkxa5EIIIaoFGewmhBBCVGFFXevlmUx19epVXnzxRby8vHBwcKBly5YcPXrU8LyiKEybNo2aNWvi4OBASEgIUVFRJu1DCrkQQohqoahFXp7JFMnJyXTs2BFbW1t+/vlnzpw5w4IFC/DwuH0FyXnz5rFkyRJWrFjBoUOHcHJyIjQ0lJycnFLvR7rWhRBCCBOkpaUZPba3t8e+hEsEz507l4CAAFatWmWYFxQUZPh/RVFYvHgxU6ZMoVevXgB88cUX+Pr6smnTJp5//vlS5ZEWuRBCiGpBKWe3elGLPCAgADc3N8MUHh5e4v5++OEHHn74Yfr374+Pjw9t27blk08+MTx/6dIlEhISCAkJMcxzc3Ojffv2HDhwoNSvS1rkQM8hSfR79Tqe3gVEn3Hgoym1iDzpqEqWga/G0zE0mdr1s8nLseLMcWc+nxvAlWgHVfIUadE+nf4jE2nYMhsvv3xmvFyPA1vdzbb/nU+5kh1vXWx+4PM5tJyazf4hztw6Ymv0XJ0BubSanmWuiAaW9H4a/Go0g1+9bDQv7pIj/+71D1Xy3MmSjpMl/rvr8UICPQYl4Fs7F4CYKAciPgzg6B71buxjiZlMoQCKUr71AeLi4nB1dTXML6k1DhAdHc3y5csZN24c//nPfzhy5AhvvPEGdnZ2hIWFkZBQeOMoX19fo/V8fX0Nz5VGtS/knZ9NZsT0eJa+XZtzxx157pUbzImI5uXHGpN60/b+G6hgLduns3mtD+f/cMLKBoaOj2POF5GMeKoludnFC5m5aB31RJ9xZOtXNZj+abTZ99/pq3QU3e3H6ResOTTchZqht+96V6dfLo1GZxseWzuU419sGVna+wng8gUn3nmljeGxTqf+yFtLO06W+O8uKcGOVf8XyNXLWjQaCHnuOtOWn2N0r9bEXlDnC48lZlKDq6urUSG/F71ez8MPP8x7770HQNu2bfnzzz9ZsWIFYWFhFZZH1a715cuX06pVK8NBCQ4O5ueffzZrhj4jktgS4cm2rzyJjdKyZFJtcrM1hA66ZdYcRaYMacz2b72JiXLk0llHFkyoh2+tPBq2NNN9/u7h6K9urJnvz/4t7qrs395TQet9e7q+yxbHAB1ejxQYlrHWGi9j62z+nJb2fgLQFWhIvmlvmNJS7FTLUsTSjpMl/rs79IsnR3Z7EB/jwNXLDqxZFEhOljVN2qRLpjIqurJbeSZT1KxZk2bNmhnNa9q0KbGxsQD4+fkBkJiYaLRMYmKi4bnSULWQ165dm/fff59jx45x9OhRnnjiCXr16sXp06fNsn8bWz0NW2VxfK+LYZ6iaDix14Vm7czfJVsSR5fCZmh6SrXvPDHQ58GVH+0I6JOH5o5/V1d/smNrRzd293Ll7CItuux7b6MyWOr7qVZgFmt37OOz/+1nQvhpvP1KPxq2MljqcbqTpf27s7JS6NwjCa2jjnMnXe6/ghlYYqb7Mfeo9Y4dOxIZGWk07/z58wQGBgKFA9/8/PzYuXOn4fm0tDQOHTpEcHBwqfej6ru0Z8+eRo/nzJnD8uXLOXjwIM2bNy+2fG5uLrm5uYbHd48cNJWrpw5rG0i5YXwYkpNsCGiQe4+1zEejURg5NYbTR5yJOV99uq3uJ+EXWwrSNQT0vv03qvXPPBz89Wh99KSdt+HcQgcyL1vz8Afma1FZ4vsp8pQbC6c048plRzy9c3lh5CXmrz7Gq33ak52lzj9/SzxOd7Kkf3d1G2WycMMp7Oz1ZGdZM/u1Jqp3YVtiJks1duxYOnTowHvvvceAAQM4fPgwK1euZOXKlQBoNBrGjBnDu+++S8OGDQkKCmLq1Kn4+/vTu3fvUu/HMr5uAjqdjq+//prMzMx7fhMJDw9n5syZZk6mnlGzYqjbOJu3+je7/8LVSNy39nh3ykfrc/sceOCAPMP/uzbKQ1tDz8GXXciMzcapjl6NmBbh6D4vw/9fjnIm8pQrq7fs57HQ62zb6K9iMstlSf/urlxyYNSzrXFy0dHp6Zu8NS+KiYNbqFo4LTFTaekVDRozXmv9kUceYePGjUyePJlZs2YRFBTE4sWLGTx4sGGZiRMnkpmZyYgRI0hJSaFTp05s2bIFrVZb6v2oXshPnTpFcHAwOTk5ODs7s3HjxmLnFIpMnjyZcePGGR6npaUREBBQ5n2n3bJGVwDu3gVG8z1qFJB8Q91D89rMy7R/IoXxA5uSlKD+OU1LkRVvxY2DNvdtabu3KvybZsZama2QW/L7qUhmui1XYxzxDzDzeYc7WPJxsrR/dwX5VlyLLRw5f+G0M41aZtAr7BpLp9aXTGWgKOUctV6GdZ955hmeeeaZez6v0WiYNWsWs2bNKnMu1X9H3rhxY06ePMmhQ4d49dVXCQsL48yZMyUua29vbxgYV9pRg3+nIN+KqD8cadvp9kANjUahTacMzhxT69ulwmszL9OhWzKTBjch8UrJP2uoruI22mHvqeDzeP7fLpd2rnCksdbbfCPXLfP9ZEzrUEDNgGxuJalXpCzzOFWNf3caKwVbO8vqYbLETNWN6s0EOzs7GjRoAEC7du04cuQIH3zwAR9//LFZ9v/dyhqMXxzH+d8diTxR+DMYraOebes9zbL/u42aFUPXXjeZOaIh2RlWeNQo7DLOTLchL1e9711aRx3+dW+fv/QLyKVesyzSU2y4EW+eoqDo4cpGO2r3ysPqjnduZqwVV3+yw+fxfOzcFdIirTkzzwHPh/Nxbay79wYrgaW9n15+K4pDu2pw/ZoWL+88XnwtGr1Ow66ffe+/ciWytONkif/uhrwVw9E97lyPt8fRSUeXnkm0ap/GlGHqdflbYiZTPKg3TVG9kN9Nr9cbDWirbLt/8MDNS8dLExLw8C4g+rQD7wwOIiVJnd/89vzXdQDmrz9nNH/B+CC2f+utRiQAGrXOYv7Xty/kP3LGVQC2bfBkwbi6ZsmQdMCG7GvWBPTJMJpvZauQdNCGS2vt0WVr0Prp8QvJp+FI83cfW9r7qYZPLpPmnsbVPZ/UZDtOH3dj7IvtSEtWt9vY0o6TJf67c/fKZ/y8C3j65JGZbs2lc05MGdaME7+5q5LHUjOZ4kEt5BpFKc8Zg/KZPHky3bt3p06dOqSnpxMREcHcuXPZunUrTz311H3XT0tLw83NjS70wkajzgdASTT3uMqPmpT8gvsvZGbPnEpSO0IxPza3vCtUWdfwuv9CZqZLuql2hGIs8d+dxsbi2koWp0DJ45fML0lNTS336dJ7KaoVjSPextqx7O8TXVYukS+8X6lZy0LVd9n169d56aWXuHbtGm5ubrRq1arURVwIIYQQKhfyzz77TM3dCyGEqEbUGLVuDtLvI4QQolooLOTlOUdegWEqkOo/PxNCCCFE2UmLXAghRLXwoI5al0IuhBCiWlC4fU/xsq5viaRrXQghhKjCpEUuhBCiWpCudSGEEKIqe0D71qWQCyGEqB7K2SLHQlvkco5cCCGEqMKkRS6EEKJakCu7CSGEEFWYDHazZFbWoLFWO4WBYsbbsFZllninsckX/1A7QjHh9VupHUE8QDQOWrUjGNHorSBT7RRV24NRyIUQQoj7UTTlG7AmLXIhhBBCPQ/qOXIZtS6EEEJUYdIiF0IIUT3IBWGEEEKIqqtaj1r/4YcfSr3BZ599tsxhhBBCCGGaUhXy3r17l2pjGo0GnU5XnjxCCCFE5bHQ7vHyKFUh1+v1lZ1DCCGEqFQPatd6uUat5+TkVFQOIYQQonIpFTBZIJMLuU6nY/bs2dSqVQtnZ2eio6MBmDp1Kp999lmFBxRCCCHEvZlcyOfMmcPq1auZN28ednZ2hvktWrTg008/rdBwQgghRMXRVMBkeUwu5F988QUrV65k8ODBWFvfvr5569atOXfuXIWGE0IIISrMA9q1bvLvyK9evUqDBg2Kzdfr9eTn51dIKHNq0T6d/iMTadgyGy+/fGa8XI8DW93VjkXPIUn0e/U6nt4FRJ9x4KMptYg86SiZLCiTXgd7P/Dl9PceZN6wwdk3n5Z9kuk4+jqav764R2515XiEFwl/OpCTYsOwzefxbWb+sSXyt/t7A1+Np2NoMrXrZ5OXY8WZ4858PjeAK9EOquQB6PFCAj0GJeBbu/AmTDFRDkR8GMDRPerdbGjwq9EMfvWy0by4S478u9c/1Alk4WbMmMHMmTON5jVu3NjQ6M3JyeGtt95i/fr15ObmEhoaykcffYSvr69J+zG5Rd6sWTP27t1bbP4333xD27ZtTd2c6rSOeqLPOPLhlAC1oxh0fjaZEdPjWbfQj1GhjYg+o2VORDRuXup9UZJMxR382JsTEV50m3GVV7ZF0nViAoc+8eboGi/DMnlZVgQ8nEnXiQlmyVQStY9TVcjUsn06m9f6MLZPMya/1AQbG4U5X0Ri76Dez2mTEuxY9X+BvN67FW8814rfD7gxbfk56jTIUi0TwOULTgzu2tEwTQh7SNU8JlGhRd68eXOuXbtmmPbt22d4buzYsWzevJmvv/6a3bt3Ex8fT58+fUzeh8mFfNq0aYwePZq5c+ei1+v57rvveOWVV5gzZw7Tpk0zOUCR999/H41Gw5gxY8q8jbI4+qsba+b7s3+Lu1n3+3f6jEhiS4Qn277yJDZKy5JJtcnN1hA66JZksqBMV4470TAkjQZd03GvnU+T7qkEdcrg2h+3W5Utn0uh0+vXqdsx3SyZSqL2caoKmaYMacz2b72JiXLk0llHFkyoh2+tPBq2VO/+mod+8eTIbg/iYxy4etmBNYsCycmypkkb9d5LALoCDck37Q1TWord/VeyFEV3PyvPBKSlpRlNuX9z62obGxv8/PwMU40aNQBITU3ls88+Y+HChTzxxBO0a9eOVatWsX//fg4ePGjSyzK5kPfq1YvNmzezY8cOnJycmDZtGmfPnmXz5s089dRTpm4OgCNHjvDxxx/TqpXcd9nGVk/DVlkc3+timKcoGk7sdaFZO3W+iUumktV+KJOY/c7cvFT4QZZ4VkvcUUfqdVb3g/ZOlnCcqkKmuzm6FLbE01Ms4yrWVlYKnXskoXXUce6ky/1XqES1ArNYu2Mfn/1vPxPCT+PtV/1+hhwQEICbm5thCg8Pv+eyUVFR+Pv7U69ePQYPHkxsbCwAx44dIz8/n5CQEMOyTZo0oU6dOhw4cMCkPGV6lz722GNs3769LKsWk5GRweDBg/nkk0949913/3bZ3Nxco28+aWlpFZLBkrh66rC2gZQbxn+a5CQbAhrc+1ufZDJ/puCRN8jNsGblU42xsi48Z975rQRa9Eoxy/5LwxKOU1XIdCeNRmHk1BhOH3Em5ry64wjqNspk4YZT2Nnryc6yZvZrTYi9oF6myFNuLJzSjCuXHfH0zuWFkZeYv/oYr/ZpT3aWZXzp+TsVdRvTuLg4XF1dDfPt7e1LXL59+/asXr2axo0bc+3aNWbOnMljjz3Gn3/+SUJCAnZ2dri7uxut4+vrS0KCaafiynzkjx49ytmzZ4HC8+bt2rUr03ZGjRpFjx49CAkJuW8hDw8PLzZwQAi1nP3JjdPfu9NrUSw1GuWSeEbLjnf9cfYpoFXfZLXjiTIaNSuGuo2zeat/M7WjcOWSA6OebY2Ti45OT9/krXlRTBzcQrVifnTf7fEfl6OciTzlyuot+3ks9DrbNvqrkskkFXT3M1dXV6NCfi/du3c3/H+rVq1o3749gYGBbNiwAQeHihtIaXIhv3LlCoMGDeK3334zfJNISUmhQ4cOrF+/ntq1a5d6W+vXr+f48eMcOXKkVMtPnjyZcePGGR6npaUREGA5g9QqQtota3QF4O5dYDTfo0YByTfU+cYrmUr2y/s1CR55g2Y9UwHwaZxD2lU7DqzwtphCbgnHqSpkKvLazMu0fyKF8QObkpSg/rnfgnwrrsUWfuBfOO1Mo5YZ9Aq7xtKp9VVOVigz3ZarMY74B2SrHaVKcHd3p1GjRly4cIGnnnqKvLw8UlJSjFrliYmJ+Pn5mbRdk8+RDx8+nPz8fM6ePcutW7e4desWZ8+eRa/XM3z48FJvJy4ujjfffJN169ah1WpLtY69vb3hm1BpvxFVNQX5VkT94UjbTrfPs2o0Cm06ZXDmmDrfwiVTyfJzrNBYGX+911grKHrLuWiEJRynqpAJFF6beZkO3ZKZNLgJiVdK7ipVm8ZKwdbOcu59oXUooGZANreS1P/SUyoVNNitrDIyMrh48SI1a9akXbt22NrasnPnTsPzkZGRxMbGEhwcbNJ2Tf76u3v3bvbv30/jxo0N8xo3bszSpUt57LHHSr2dY8eOcf36dR566PZPF3Q6HXv27OHDDz8kNzfX6IIzlUXrqMO/7u3zcn4BudRrlkV6ig034tV5c363sgbjF8dx/ndHIk848twrN9A66tm23lOVPJKpZA2fSGP/Rz64+udTo2EOiacdOPy5N6373R55nZ1iTVq8LemJtgDcjC4sEE7eBTjf1SKtLGofp6qQadSsGLr2usnMEQ3JzrDCo0YeAJnpNuTlluuWFGU25K0Yju5x53q8PY5OOrr0TKJV+zSmDFOvy//lt6I4tKsG169p8fLO48XXotHrNOz62bTfPatFoxRO5VnfFOPHj6dnz54EBgYSHx/P9OnTsba2ZtCgQbi5ufHyyy8zbtw4PD09cXV15fXXXyc4OJh//MO03+WbXMgDAgJKvPCLTqfD37/050iefPJJTp06ZTRv6NChNGnShEmTJpmliAM0ap3F/K+jDI9HzrgKwLYNniwYV9csGe62+wcP3Lx0vDQhAQ/vAqJPO/DO4CBSkmxVySOZSvbU9Hj2LPJl67RaZN0svCBM2+dv0un164Zlona48tOk26d/vn8zEIBObyTy2JuJZsmp9nGqCpl6/qvwbzZ/vfHVKReMD2L7t95qRMLdK5/x8y7g6ZNHZro1l845MWVYM0785q5KHoAaPrlMmnsaV/d8UpPtOH3cjbEvtiMtuaq0yKmQc+SlVXQq+ubNm3h7e9OpUycOHjyIt3fhe2rRokVYWVnRt29fowvCmEqjKKaN4fv+++957733WLZsGQ8//DBQOPDt9ddfZ9KkSaW+d3lJunTpQps2bVi8eHGplk9LS8PNzY0uVn2w0aj3oVSMXu7JXlVNvviH2hGKCa8vP8ssDc09Rg6rSWNjeSO5NQ6lO5VpLgX6PHbeXEVqamqlnS4tqhUBi2dhVY7Xr8/OIW7MtErNWhalepd5eHig0dw+N5CZmUn79u2x+etNWlBQgI2NDcOGDStXIRdCCCEqTXnPc1vo/chLVchL20Iur127dpllP0IIIaohM3etm0upCnlYWFhl5xBCCCFEGZTrBE5OTg55eXlG8yzpvIEQQghh8IC2yE3+XUVmZiajR4/Gx8cHJycnPDw8jCYhhBDCIj2g9yM3uZBPnDiRX375heXLl2Nvb8+nn37KzJkz8ff354svvqiMjEIIIYS4B5O71jdv3swXX3xBly5dGDp0KI899hgNGjQgMDCQdevWMXjw4MrIKYQQQpTPAzpq3eQW+a1bt6hXrx5QeD781q3Cq1h16tSJPXv2VGw6IYQQooIUXdmtPJMlMrmQ16tXj0uXLgGF907dsGEDUNhSv/t2bEIIIYSoXCYX8qFDh/L7778D8Pbbb7Ns2TK0Wi1jx45lwoQJFR5QCCGEqBAP6GA3k8+Rjx071vD/ISEhnDt3jmPHjtGgQQNatZJLSQohhBDmVO4LAQcGBhIYGFgRWYQQQohKo6Gcdz+rsCQVq1SFfMmSJaXe4BtvvFHmMEIIIYQwTakK+aJFi0q1MY1Go04h1+tAo849g0U5WJnnVrWmsMQ7jc29dEjtCMVMqt9B7QjFKLm5akcoxhIz2bg4qx3BiEavN9/OHtCfn5WqkBeNUhdCCCGqLLlEqxBCCCEsjeXd9V4IIYSoDA9oi1wKuRBCiGqhvFdne2Cu7CaEEEIIyyEtciGEENXDA9q1XqYW+d69e3nxxRcJDg7m6tWrAKxdu5Z9+/ZVaDghhBCiwjygl2g1uZB/++23hIaG4uDgwIkTJ8j963eSqampvPfeexUeUAghhBD3ZnIhf/fdd1mxYgWffPIJtra2hvkdO3bk+PHjFRpOCCGEqCgP6m1MTT5HHhkZyeOPP15svpubGykpKRWRSQghhKh4D+iV3Uxukfv5+XHhwoVi8/ft20e9evUqJJQQQghR4eQceaFXXnmFN998k0OHDqHRaIiPj2fdunWMHz+eV199tTIyCiGEEOIeTO5af/vtt9Hr9Tz55JNkZWXx+OOPY29vz/jx43n99dcrI2Ol6zkkiX6vXsfTu4DoMw58NKUWkScdJZOFZ2rRPp3+IxNp2DIbL798ZrxcjwNb3VXLU0TN46TXwfbFtTmxyYv0G3a4+ubRru8Nnnw9Hs1fvYLbF9fi981epFyzw8ZWoVbLTELfiqNO20yzZAT521XlTF7eOQx9M4p2HZKw1+q4FufIohnNuXDWTbVMpSUXhPmLRqPhnXfe4datW/z5558cPHiQGzduMHv27MrIV+k6P5vMiOnxrFvox6jQRkSf0TInIho3r3zJZOGZtI56os848uGUANUy3E3t47RrhT8H1/nQa2YMb+34ne6T4ti90p/9q30Ny9QIyqHXzMuM3XKKkV+fwaNWLp+GNSHjpvkuKyF/u6qZydkln/mrDlNQoGH66w/xar8OfLqoERnptvdf2RJI17oxOzs7mjVrxqOPPoqzc9luizdjxgw0Go3R1KRJk7JGKpM+I5LYEuHJtq88iY3SsmRSbXKzNYQOumXWHJLJdEd/dWPNfH/2b3FXLcPd1D5OMcedafZUMk2fSMGzdh6t/nmLRo+lEvf77X+jbXvdpGGnNLzq5OLXKJtnpsSSm25DwjnztfLkb1c1M/UbcokbiVoWz2jB+dNuJMY7cuJgDRKuqNtrUd2Z/BW8a9euaDT3Hrn3yy+/mLS95s2bs2PHjtuBbMzXKrCx1dOwVRbrP/QxzFMUDSf2utCsXZbZckimB4MlHKfAhzI4/KUPN6K1eNfLIf6MI5ePuPDMlJgSly/I03DoS2+0LgXUbFp9/5aW8LerCpnad77B8QNeTJ77Oy3a3eLmdS0/fR3A1o21VcljsvL+hMxCW+QmV802bdoYPc7Pz+fkyZP8+eefhIWFmR7AxgY/P79SLZubm2u4AA1AWlqayfu7k6unDmsbSLlhfBiSk2wIaJB7j7Uql2SquizhOHV5NZ7cDGsWhLRCY62g6DSEjr9C2943jZY7u9OdiDcakJ9thYtPPsPXnsPJs8AsGS2RJfztqkImv1rZ/LPfFTauC+Srz4No1DyNf084R0G+hp0/1lIlk0lUvETr+++/z+TJk3nzzTdZvHgxADk5Obz11lusX7+e3NxcQkND+eijj/D19f37jd3F5EK+aNGiEufPmDGDjIwMUzdHVFQU/v7+aLVagoODCQ8Pp06dOiUuGx4ezsyZM03ehxDVxR8/eXLiey+e/+ACvg2zuXbGic2z6/w16C3JsFz94DTe/OkUmcm2HF7vzbrRDRi98TTONapvMRf3p7FSuHDGlS8+bAhAdKQrgfUz6N7vStUo5Co5cuQIH3/8Ma1atTKaP3bsWH766Se+/vpr3NzcGD16NH369OG3334zafsVdvezF198kc8//9ykddq3b8/q1avZsmULy5cv59KlSzz22GOkp6eXuPzkyZNJTU01THFxceXKnHbLGl0BuHsbf3h51Cgg+YY695ORTFWXJRyn/4XXocvIa7TpeYuaTbJ5qE8SnYYl8OtH/kbL2TnqqVE3l8C2GfSfewkrGziyweceW33wWcLfripkSk6yJzbaeExU3CUnvP1yVMljsgoa7JaWlmY03dlTfLeMjAwGDx7MJ598goeHh2F+amoqn332GQsXLuSJJ56gXbt2rFq1iv3793Pw4EGTXlaFFfIDBw6g1WpNWqd79+7079+fVq1aERoayv/+9z9SUlLYsGFDicvb29vj6upqNJVHQb4VUX840rbT7S8OGo1Cm04ZnDmmzuANyVR1WcJxys+2QmNl3P9nZQ2K/u/XU/SF58urK0v421WFTGdOulOrrvHPFGsFZnLjmmmf/WqpqEu0BgQE4ObmZpjCw8Pvuc9Ro0bRo0cPQkJCjOYfO3aM/Px8o/lNmjShTp06HDhwwKTXZfLXuj59+hg9VhSFa9eucfToUaZOnWrq5oy4u7vTqFGjEq8cV1m+W1mD8YvjOP+7I5EnHHnulRtoHfVsW+9ptgySqWy0jjr8697+JuwXkEu9Zlmkp9hwI95OlUxqH6emT6bwy7JauPvn4dsoi/jTTuz9zI+H+98AIC/Lil+W+dM0JAVX7zwyk204sNaXtAQ7Wv7TfCOh5W9XNTNtWhfI/606zIBh0ezd7kej5qk83ecKS99trkoetcTFxRk1JO3t7Utcbv369Rw/fpwjR44Uey4hIQE7Ozvc3d2N5vv6+pKQkGBSHpMLuZub8Y/+raysaNy4MbNmzaJbt26mbs5IRkYGFy9e5F//+le5tmOK3T944Oal46UJCXh4FxB92oF3BgeRkqTe7yIlU+k0ap3F/K+jDI9Hzii8pe62DZ4sGFdXlUxqH6deMy6zdWFtNk2tS8ZNW1x982g/6DpPvlF4bDTWCtcvOnDsW28yk21wdC8goFUmIzecwa9RtlkygvztqmqmqDNuvDu+DUNGRzHolWgS4x1Y+X9N2PVzTVXyqKU0PcJxcXG8+eabbN++3eTealNpFEUp9Tg8nU7Hb7/9RsuWLY36+stq/Pjx9OzZk8DAQOLj45k+fTonT57kzJkzeHt733f9tLQ03Nzc6EIvbDRV5IIE4jYra7UTFKfXqZ2gmLmXDqkdoZhJ9TuoHaE4C/zbWSIbP9NGRFe2An0eOxI/ITU1tdynS++lqFbUn/we1uUoqrqcHC6G/6dUWTdt2sRzzz2HtfXtzzmdTodGo8HKyoqtW7cSEhJCcnKyUas8MDCQMWPGMHbs2FLnMqlFbm1tTbdu3Th79myFFPIrV64waNAgbt68ibe3N506deLgwYOlKuJCCCGEKcx5idYnn3ySU6dOGc0bOnQoTZo0YdKkSQQEBGBra8vOnTvp27cvUHh30djYWIKDg03KZXLXeosWLYiOjiYoKMjUVYtZv359ubchhBBCWBoXFxdatGhhNM/JyQkvLy/D/Jdffplx48bh6emJq6srr7/+OsHBwfzjH/8waV8mF/J3332X8ePHM3v2bNq1a4eTk5PR85XVNSKEEEKUmwVdnW3RokVYWVnRt29fowvCmKrUhXzWrFm89dZb/POf/wTg2WefNbpUq6IoaDQadDo5TyWEEMICqXhlN4Bdu3YZPdZqtSxbtoxly5aVa7ulLuQzZ85k5MiR/Prrr+XaoRBCCCEqTqkLedHg9s6dO1daGCGEEKKyPKj3IzfpHPnf3fVMCCGEsGgqd61XFpMKeaNGje5bzG/dUu/evUIIIUR1Y1IhnzlzZrEruwkhhBBVgXStA88//zw+PtX3DklCCCGqsAe0a73Udz+T8+NCCCGE5TF51LoQQghRJT2gLfJSF3K9/j43NBZCCCEsmJwjF1Wb3GmsypoU1F7tCMVsjT+mdoRiQv3bqB2hSihISFQ7gpECJd98O3tAW+SlPkcuhBBCCMsjLXIhhBDVwwPaIpdCLoQQolp4UM+RS9e6EEIIUYVJi1wIIUT1IF3rQgghRNUlXetCCCGEsDjSIhdCCFE9SNe6EEIIUYU9oIVcutaFEEKIKkxa5EIIIaoFzV9Teda3RFLIhRBCVA/Stf7g6jkkiTWHzrA5+g8++DGKxm2y1I5kcZlatE9n5qoLRBw9xdYrxwkOTVE1TxFLO06SqbisDCuWT6vFvx5pRs96rRjTsyGRJx0MzysKrJnnx6A2zelZrxWTBtTnarSd2fLdSf52VTdTaRT9/Kw8kyWq9oW887PJjJgez7qFfowKbUT0GS1zIqJx8zLjHXmqQCato57oM458OCVAtQx3s8TjJJmKW/RWAMf3ODNxaQwrdp6jXed03h7YgKRrtgBsWObD95978/r7cXzw43m0jnr+80J98nLM25Gp9nGSTKKsVC/kV69e5cUXX8TLywsHBwdatmzJ0aNHzbb/PiOS2BLhybavPImN0rJkUm1yszWEDrpltgxVIdPRX91YM9+f/VvcVctwN0s8TpLJWG62hn3/c2f4lGu0/EcmtYLy+Nf4BPzr5vLjF14oCmz61JtBbybQ4ek06jXLYeKSGG4m2rJ/i1ul57uT/O2qbqZSUypgskCqFvLk5GQ6duyIra0tP//8M2fOnGHBggV4eHiYZf82tnoatsri+F4XwzxF0XBirwvN2qnTVWSJmSyRJR4nyVScTqdBr9NgZ683mm+v1XP6sDMJsXbcum7LQ49lGJ5zctXTpG0WZ485VXq+ImofJ8lkRg9YEQeVB7vNnTuXgIAAVq1aZZgXFBR0z+Vzc3PJzc01PE5LSyvX/l09dVjbQMoN48OQnGRDQIPce6xVuSwxkyWyxOMkmYpzdNbTtF0mEYv9qNPwMu7eBeza5MHZY074183l1vXCXO7ext2y7t75hufMQe3jJJlEeajaIv/hhx94+OGH6d+/Pz4+PrRt25ZPPvnknsuHh4fj5uZmmAICLOd8rRCiZBOXxqAo8MJDLXimbms2fVaDLr2T0ah+Yk9UNzLYrRJER0ezfPlyGjZsyNatW3n11Vd54403WLNmTYnLT548mdTUVMMUFxdXrv2n3bJGVwDu3gVG8z1qFJB8Q53OCkvMZIks8ThJppL5183j/767wPcX/uC/R0+z9H9RFORrqBmYi6dPYa6UG7ZG66TcsDU8Zw6WcJwkkxnIOfKKp9freeihh3jvvfdo27YtI0aM4JVXXmHFihUlLm9vb4+rq6vRVB4F+VZE/eFI207phnkajUKbThmcOeZYrm0/SJkskSUeJ8n097SOerx8C0hPsebYbleCQ9Pwq5OHp08+J/Y5G5bLTLfi3AlHmrbLNFs2SzpOkkmYStVCXrNmTZo1a2Y0r2nTpsTGxpotw3cra9D9hVuE9L9FQIMcXn//ClpHPdvWe5otQ1XIpHXUUa9ZFvWaFQ5o8QvIpV6zLLz981TLZInHSTIVd3SXC0d+dSEh1o5ju52Z2K8BAQ1y6DbwJhoN9B5+gy8/8OXAVlcundUy/41AvHzz6fB0qlnyFVH7OEmmymfurvXly5fTqlUrQ8MzODiYn3/+2fB8Tk4Oo0aNwsvLC2dnZ/r27UtiYqLJr0vVvpCOHTsSGRlpNO/8+fMEBgaaLcPuHzxw89Lx0oQEPLwLiD7twDuDg0hJsr3/ytUoU6PWWcz/OsrweOSMqwBs2+DJgnF1VclkicdJMhWXmWbNqvCaJF2zxcVdR8d/pjD07WvY/LX7AaOuk5NlxQcTA8hIs6b5I5nMWReNnda8/ZhqHyfJZAZmvrJb7dq1ef/992nYsCGKorBmzRp69erFiRMnaN68OWPHjuWnn37i66+/xs3NjdGjR9OnTx9+++03k/ajURRFtV7/I0eO0KFDB2bOnMmAAQM4fPgwr7zyCitXrmTw4MH3XT8tLQ03Nze60AsbTRV4E6nJylrtBMXpdWonEGW0Nf6k2hGKCfVvo3YEUQYFSj67+J7U1NRyny69l6Ja0fLl97C205Z5O7q8HE599p9yZfX09GT+/Pn069cPb29vIiIi6NevHwDnzp2jadOmHDhwgH/84x+l3qaqXeuPPPIIGzdu5Msvv6RFixbMnj2bxYsXl6qICyGEEKaoqK71tLQ0o+nOn0Xfi06nY/369WRmZhIcHMyxY8fIz88nJCTEsEyTJk2oU6cOBw4cMOl1qT7M8JlnnuGZZ55RO4YQQogHXQV1rd/90+fp06czY8aMElc5deoUwcHB5OTk4OzszMaNG2nWrBknT57Ezs4Od3d3o+V9fX1JSEgwKZbqhVwIIYQwiwoq5HFxcUZd6/b29vdcpXHjxpw8eZLU1FS++eYbwsLC2L17dzlCFCeFXAghhDCBKT9/trOzo0GDBgC0a9eOI0eO8MEHHzBw4EDy8vJISUkxapUnJibi5+dnUh65tpIQQohqwRKu7KbX68nNzaVdu3bY2tqyc+dOw3ORkZHExsYSHBxs0jalRS6EEKJ6MPPPzyZPnkz37t2pU6cO6enpREREsGvXLrZu3Yqbmxsvv/wy48aNw9PTE1dXV15//XWCg4NNGrEOUsiFEEKISnH9+nVeeuklrl27hpubG61atWLr1q089dRTACxatAgrKyv69u1Lbm4uoaGhfPTRRybvRwq5EEKIakGjKGjKcekUU9f97LPP/vZ5rVbLsmXLWLZsWZkzgRRyIYQQ1YWZu9bNRQa7CSGEEFWYtMiFEEJUC+UdeW6p9yOXQi6EEKJ6kK51IYQQQlgaaZFXF5Z4pzELvCObxlb+SZSGJd5pbGb0MbUjFDO9waNqR7B8ih705tmVdK0LIYQQVdkD2rUuhVwIIUS18KC2yOUcuRBCCFGFSYtcCCFE9SBd60IIIUTVZqnd4+UhXetCCCFEFSYtciGEENWDohRO5VnfAkkhF0IIUS3IqHUhhBBCWBxpkQshhKgeZNS6EEIIUXVp9IVTeda3RNK1LoQQQlRh0iIHeg5Jot+r1/H0LiD6jAMfTalF5ElHyWThmVq0T6f/yEQatszGyy+fGS/X48BWd9XyDHw1no6hydSun01ejhVnjjvz+dwArkQ7SKYSqPl+0uvg1w/8+WOTJxk3bHHxzadN3yQ6j05AowFdPuxcUIuoXW4kx9mhddFRr2M6IROv4uqbb5aMlvb+ttRMJnlAu9arfYu887PJjJgez7qFfowKbUT0GS1zIqJx8zLPP1bJVHZaRz3RZxz5cEqAahnu1LJ9OpvX+jC2TzMmv9QEGxuFOV9EYu+g3p3nLDETqP9+2rfCj6PrvOkxI5bR20/z1MQr/LbSj0NrvAHIz7bi2mlHOr9+jZGbzzJweTRJ0Vq+fKW+WfKB5b2/wTIzmaJo1Hp5JkukaiGvW7cuGo2m2DRq1CizZegzIoktEZ5s+8qT2CgtSybVJjdbQ+igW2bLIJnK5uivbqyZ78/+Le6qZbjTlCGN2f6tNzFRjlw668iCCfXwrZVHw5aZkukuar+f4o470TgkhUZPpOFRO4/m/0yhfqc0rv7uBIDWVU/Y2iha9EimRr1cAtpm0mNGLPF/OpFy1dYsGS3t/Q2WmckkRb8jL89kgVQt5EeOHOHatWuGafv27QD079/fLPu3sdXTsFUWx/e6GOYpioYTe11o1i7LLBkk04PL0aWw1ZueYjlnsCwhkyW8nwIeyuTSfheSou0BSDjrQOxRZxp2TrvnOjnp1mg0ClpXdXszhLibqp8w3t7eRo/ff/996tevT+fOnUtcPjc3l9zcXMPjtLR7/6MrDVdPHdY2kHLD+DAkJ9kQ0CD3HmtVLsn0YNBoFEZOjeH0EWdizqs7tqGIpWSyhPdTp1cTyM2w5sOnmqOxBkUHT7wVT6veJfcI5Odq2D6vFi163kLrYqFDl8V9PagXhLGYpkJeXh7//e9/GTduHBqNpsRlwsPDmTlzppmTCWG6UbNiqNs4m7f6N1M7ioElZlLL6Z88+OMHT/ouvoRPw2wSzjry8+wAXH3zaNPXuJjr8uHr0fVA0fDM7FiVEosKIYPdKtemTZtISUlhyJAh91xm8uTJpKamGqa4uLhy7TPtljW6AnD3LjCa71GjgOQb6nzHkUxV32szL9P+iRQmDmpKUoKd2nEAy8pkCe+nbe/XptO/E2jZMxnfJjm0fu4WwcMS2bu8ptFyunzY8Ho9Uq7a8dIX56U1LiySxRTyzz77jO7du+Pv73/PZezt7XF1dTWayqMg34qoPxxp2yndME+jUWjTKYMzx9TpepRMVZnCazMv06FbMpMGNyHxir3agbDETJbwfsrPtkJjZdy80liBckedLirity5rCVsbhaOHnBuv6h7UUesW0ZyKiYlhx44dfPfdd2bf93crazB+cRznf3ck8oQjz71yA62jnm3rPc2eRTKZRuuow7/u7XOqfgG51GuWRXqKDTfizd/qHDUrhq69bjJzREOyM6zwqJEHQGa6DXm56nxntsRMoP77qfGTKez9qCbu/nl4N8oh4bQjBz73oW2/m0BhEf9qVH2unXZk8KcX0Osh/a/eAgc3HTZ2lf+Jbmnvb0vNZBK5+1nlWbVqFT4+PvTo0cPs+979gwduXjpempCAh3cB0acdeGdwEClJ5vmJiWQqu0ats5j/dZTh8cgZVwHYtsGTBePqmj1Pz39dB2D++nNG8xeMD2L7t94lrVLpLDETqP9++uf0OH5Z6M+P0+qQebPwgjAPD0qi8+vXAEhLtCNyhzsAy3sYjykYEhFJ0D8yKj2jpb2/LTWTAI2iqPsVQ6/XExQUxKBBg3j//fdNWjctLQ03Nze60AsbjXoFRZSRlbXaCYrR2FrEd1uLp+Ra3q8VZkYfUztCMdMbPKp2BItXoOSzS/8dqamp5T5dei9FtSK4+yxsbLVl3k5Bfg4Hfp5WqVnLQvVPrR07dhAbG8uwYcPUjiKEEOJBJqPWK0e3bt1QFIVGjRqpHUUIIYSoMOHh4TzyyCO4uLjg4+ND7969iYyMNFomJyeHUaNG4eXlhbOzM3379iUxMdGk/aheyIUQQghzMPeo9d27dzNq1CgOHjzI9u3byc/Pp1u3bmRm3r5E8tixY9m8eTNff/01u3fvJj4+nj59+pi0H9W71oUQQgiz0CuFU3nWN8GWLVuMHq9evRofHx+OHTvG448/TmpqKp999hkRERE88cQTQOHg76ZNm3Lw4EH+8Y9/lGo/0iIXQghRPSgVMFE4eO7OKbeUgz9TU1MB8PQs/JnlsWPHyM/PJyQkxLBMkyZNqFOnDgcOHCj1y5JCLoQQQpggICAANzc3wxQeHn7fdfR6PWPGjKFjx460aNECgISEBOzs7HB3dzda1tfXl4SEhFLnka51IYQQ1YKGct405a//xsXFGf38zN7+/ldMHDVqFH/++Sf79u0re4B7kEIuhBCieqigK7uZeonw0aNH8+OPP7Jnzx5q165tmO/n50deXh4pKSlGrfLExET8/PxKvX3pWhdCCCEqgaIojB49mo0bN/LLL78QFBRk9Hy7du2wtbVl586dhnmRkZHExsYSHBxc6v1Ii1wIIUS1YO77kY8aNYqIiAi+//57XFxcDOe93dzccHBwwM3NjZdffplx48bh6emJq6srr7/+OsHBwaUesQ5SyIUQQlQXZr6y2/LlywHo0qWL0fxVq1YZbtm9aNEirKys6Nu3L7m5uYSGhvLRRx+ZtB8p5EIIIUQlKM2tTLRaLcuWLWPZsmVl3o8UciGEENWCRlHQlGOwW3nWrUxSyCuBlZOT2hGK0WfnqB2hGEu805gl3tXLxs9X7QjFKDmW936yyDuNba+pdoJibIZp7r+QOelzIdZc+/prKs/6FkhGrQshhBBVmOU1iYQQQohKIF3rQgghRFX2gN6PXAq5EEKI6qGCruxmaeQcuRBCCFGFSYtcCCFEtWDuK7uZixRyIYQQ1YN0rQshhBDC0kiLXAghRLWg0RdO5VnfEkkhF0IIUT1I17oQQgghLI20yIUQQlQPckGYB1fPIUn0e/U6nt4FRJ9x4KMptYg86ahKlh4vJNBjUAK+tQtv3hET5UDEhwEc3eOhSp4iLdqn039kIg1bZuPll8+Ml+txYKu7ankGvhpPx9BkatfPJi/HijPHnfl8bgBXoh1Uy1TEkt5PAF7eOQx9M4p2HZKw1+q4FufIohnNuXDWTbVMd+o/PJah4y6z6YtarHy/vioZLOb9fUMHn6TC4RzI1UMtG5jgCY3tCp9fkwq/ZhcuZwM0soNhrtDU3izxrKwUXhh+nq6hV/DwyuXWDS07/leb9asaAhZ2M5YSPKiXaK32Xeudn01mxPR41i30Y1RoI6LPaJkTEY2bV74qeZIS7Fj1f4G83rsVbzzXit8PuDFt+TnqNMhSJU8RraOe6DOOfDglQNUcRVq2T2fzWh/G9mnG5JeaYGOjMOeLSOwddKrmsrT3k7NLPvNXHaagQMP01x/i1X4d+HRRIzLSbVXJc7eGLdLpPuAa0efUvWOgRby/0/Xw5vXCAv1+DfjcD0a6g8sdH9O1beF1d/jEFz7wAV9rmJQEKeZ53/f71wX++dxlVixowcjnu7Dqoyb0HXyRnv0vm2X/omSqFnKdTsfUqVMJCgrCwcGB+vXrM3v27FLdjL2i9BmRxJYIT7Z95UlslJYlk2qTm60hdNAts2W406FfPDmy24P4GAeuXnZgzaJAcrKsadImXZU8RY7+6saa+f7s3+Kuao4iU4Y0Zvu33sREOXLprCMLJtTDt1YeDVtmqprL0t5P/YZc4kailsUzWnD+tBuJ8Y6cOFiDhCvq9RAU0TrqmDjvHEumNyIjTd3OQYt4f69PB29rmOgJTeygpg08rAX/O47Nk47Q7q95dW3hVXfIVCDaPF8Um7ZM5tBeP47s9+V6giO//erPicPeNG6WYpb9l1vRYLfyTBZI1UI+d+5cli9fzocffsjZs2eZO3cu8+bNY+nSpWbZv42tnoatsji+18UwT1E0nNjrQrN26raAobAbq3OPJLSOOs6ddLn/CtWYo0thiyQ9Rb2CYInvp/adb3DhjCuT5/7Ouh2/siTiAKHPXVEly91emxLF4d2enDyg7mkji7E/u7ALfeZN6BsP/06EnzLuvXy+Aj9lgpMG6punh+XsKQ9aP5yEf0BhrqAGaTRrfYujB7zNsv9yU7h9T/KyTJZZx9U9R75//3569epFjx49AKhbty5ffvklhw8fLnH53NxccnNzDY/T0tLKtX9XTx3WNpByw/gwJCfZENAg9x5rVb66jTJZuOEUdvZ6srOsmf1aE2IvqN+CslQajcLIqTGcPuJMzHn1jpMlvp/8amXzz35X2LgukK8+D6JR8zT+PeEcBfkadv5YS5VMAI93v06DZhm8OeAh1TJYnGsF8EMG9HOBF1wgMg8+TAEbDYTecerhQDa8ewtyFfC0gnne4GZtlohff9EAR8cCPl6/C71eg5WVwhcfN2HXttpm2X95yTnyStChQwd27tzJ+fPnAfj999/Zt28f3bt3L3H58PBw3NzcDFNAgGWcr61oVy45MOrZ1ozp14qfIvx4a16U6ufILdmoWTHUbZxN+BsN1I5icTRWChfPufDFhw2JjnRly3e12bqxNt37qdcqr+GXw78nX2TexCbk51X7YTq3KUBDOxjuVvjfZ5yhhzNsvut0URt7WOkLS7zhES3MvgnJ5jlH/tiT8XQJvcr86W15Y8hjLJzdhj4vXOTJf8aZZf+iZKq2yN9++23S0tJo0qQJ1tbW6HQ65syZw+DBg0tcfvLkyYwbN87wOC0trVzFPO2WNboCcPcuMJrvUaOA5BvqHZqCfCuuxRaOvr5w2plGLTPoFXaNpVPVGdFryV6beZn2T6QwfmBTkhLsVM1iie+n5CR7YqOdjebFXXKiw5OJquQBaNg8A48a+Sz95rhhnrUNtHg4lZ4vXKVXm8fQ6y1/BHSF87SGwLveJ3VsYM9dX+IdrKCWVeGI9mb28FIC/JwJL7hWesRho8/y9doG7NlR2JsTc9EVH79s+r90gZ3/qwINK4VyXhCmwpJUKFUL+YYNG1i3bh0RERE0b96ckydPMmbMGPz9/QkLCyu2vL29Pfb2Ffczi4J8K6L+cKRtp3QObCn8KY5Go9CmUwY/rPaqsP2Ul8ZKwdbOQq8NqBqF12bG0KFbMhMHNSXxinl+fvN3LPH9dOakO7XqGrfoagVmcuOaVpU8ACcPuPPqs+2M5o2dE8mVS458/WlA9SziAC3sIM74SyBXCsD3Ph/TeqXwfLkZ2Gt1KHd9FOn1Gqyqyp/sAb2ym6qFfMKECbz99ts8//zzALRs2ZKYmBjCw8NLLOSV4buVNRi/OI7zvzsSecKR5165gdZRz7b1nmbZ/92GvBXD0T3uXI+3x9FJR5eeSbRqn8aUYc1UyVNE66jDv+7t87x+AbnUa5ZFeooNN+LN3xIeNSuGrr1uMnNEQ7IzrPCokQdAZroNebnqddda2vtp07pA/m/VYQYMi2bvdj8aNU/l6T5XWPpuc1XyAGRn2RBzwfijJyfbmrQUW2IuqPMzNIt4f/d1gTeuw7o06OII5/IKB7ON/WswYLYe1qVDBy14WUOqHr7PgCQddDbP2JDD+3wZOOQCNxIdiIl2oX7jVJ57PprtP1aB1vgDTNVCnpWVhZWV8YeutbU1er35Wp+7f/DAzUvHSxMS8PAuIPq0A+8MDiIlSZ3f2bp75TN+3gU8ffLITLfm0jknpgxrxonf3FXJU6RR6yzmfx1leDxyxlUAtm3wZMG4umbP0/Nf1wGYv/6c0fwF44PY/q16I2gt7f0UdcaNd8e3YcjoKAa9Ek1ivAMr/68Ju36uqUoeS2UR7+8mdjDTCz5LhbVphT8/e80NQv4q0tYaiMuHGZmQpgdXq8JR7ot9Cn+KZgYrFrbgxRGRvDb+T9w8Cy8I8/OmOnz5eSOz7L/c9JTvujUW2jGqUcz5o+27DBkyhB07dvDxxx/TvHlzTpw4wYgRIxg2bBhz58697/ppaWm4ubnRhV7YaCzjAhcAVk7qXtyiJPrsHLUjFKOxtbwLCyq56v1a4V5s/HzVjlCMkmN57ydd2t/8VEst2y3vC5PNMMvqBy/Q57Ij9iNSU1Nxda2c8/xFteLJFhOxsS77abgCXS47/5xXqVnLQtVP0qVLlzJ16lRee+01rl+/jr+/P//+97+ZNm2amrGEEEKIKkPVQu7i4sLixYtZvHixmjGEEEJUBzLYTQghhKjCHtBCLldjEEIIIaowaZELIYSoHqRFLoQQQlRh5blhStFkgj179tCzZ0/8/f3RaDRs2rTJ6HlFUZg2bRo1a9bEwcGBkJAQoqKiSt7Y35BCLoQQolooumlKeSZTZGZm0rp1a5YtW1bi8/PmzWPJkiWsWLGCQ4cO4eTkRGhoKDkm/rxTutaFEEKIStC9e/d73gRMURQWL17MlClT6NWrFwBffPEFvr6+bNq0yXDF09KQFrkQQojqoegceXkmCi8wc+eUW4YLSV26dImEhARCQkIM89zc3Gjfvj0HDhwwaVtSyIUQQlQPeqX8ExAQEGB0S+3w8HCToyQkJADg62t85UZfX1/Dc6UlXetCCCGECeLi4owu0VqRd+UsC2mRCyGEqB4qqGvd1dXVaCpLIffz8wMgMTHRaH5iYqLhudKSQi6EEKKaKG8Rr7jfkQcFBeHn58fOnTsN89LS0jh06BDBwcEmbeuB6Fq38ffDxkrdro07FVyNVztCFfFAvP0qnS45Re0IxSj5BWpHqBKs+6arHaGYp3+7rHYEIzkZBex4VO0UlSMjI4MLFy4YHl+6dImTJ0/i6elJnTp1GDNmDO+++y4NGzYkKCiIqVOn4u/vT+/evU3aj3ySCiGEqB7MfGW3o0eP0rVrV8PjcePGARAWFsbq1auZOHEimZmZjBgxgpSUFDp16sSWLVvQarUm7UcKuRBCiOpBX87ucb1p63bp0gXlb4q/RqNh1qxZzJo1q+yZkHPkQgghRJUmLXIhhBDVg6IvnMqzvgWSQi6EEKJ6eEDvfiaFXAghRPVg5nPk5iLnyIUQQogqTFrkQgghqgfpWhdCCCGqMIVyFvIKS1KhpGtdCCGEqMKkRS6EEKJ6kK51IYQQogrT64Fy/BZcL78jtziff78LX//sYvN//LoOy+c1VyHRbT2HJNHv1et4ehcQfcaBj6bUIvKko2T6y8BX4+kYmkzt+tnk5Vhx5rgzn88N4Eq0gyp57iTH6f5atE+n/8hEGrbMxssvnxkv1+PAVnfJ8zf6D49l6LjLbPqiFivfr2+Wfe58ypXseOti8wOfz6Hl1Gz2D3Hm1hFbo+fqDMil1fQss+QThap1IR8TFoz1He/RwPrpzFl2hH07TLsXbEXr/GwyI6bHs/Tt2pw77shzr9xgTkQ0Lz/WmNSbtvffQDXI1LJ9OpvX+nD+DyesbGDo+DjmfBHJiKdakptd/IPHXOQ4lY7WUU/0GUe2flWD6Z9Gq5bDUvPcrWGLdLoPuEb0OSez7rfTV+koutuP0y9Yc2i4CzVD8w3z6vTLpdHo2w0iawfL7H4GHtiudVUHu6WnpzNmzBgCAwNxcHCgQ4cOHDlyxGz7T0uxJ/nm7emRTteJj3Pk1HFPs2UoSZ8RSWyJ8GTbV57ERmlZMqk2udkaQgfdkkx/mTKkMdu/9SYmypFLZx1ZMKEevrXyaNgyU5U8ReQ4lc7RX91YM9+f/VvcVc1RxNLy3EnrqGPivHMsmd6IjDTztr3sPRW03ren67tscQzQ4fXI7dvYWmuNl7F1NmtE05TnXuTl/RJQiVQt5MOHD2f79u2sXbuWU6dO0a1bN0JCQrh69arZs9jY6OnaPZ7tP9QGNGbfvyGHrZ6GrbI4vtfFME9RNJzY60Kzdup0V1liprs5uhQ2G9JT1OtkkuMkKsNrU6I4vNuTkwc8VM2hz4MrP9oR0CcPzR0fkVd/smNrRzd293Ll7CItuuJnK0UlU+1fc3Z2Nt9++y3ff/89jz/+OAAzZsxg8+bNLF++nHfffbfYOrm5ueTm5hoep6WlVVief3RJxNm5gB0/1qqwbZaFq6cOaxtIuWH8p0lOsiGgQe491qp+me6k0SiMnBrD6SPOxJxXbxyBHCdR0R7vfp0GzTJ4c8BDakch4RdbCtI1BPS+/V6u9c88HPz1aH30pJ234dxCBzIvW/PwB+r2+NzTA3qJVtUKeUFBATqdrtgN1B0cHNi3b1+J64SHhzNz5sxKydPt2SscPVCDW0mm3dBdqG/UrBjqNs7mrf7N1I5i0eQ4VS01/HL49+SLvDO8Jfl56l/yI+5be7w75aP1uV3MAgfkGf7ftVEe2hp6Dr7sQmZsNk51LG+Et6LoUcpxB7PyrFuZVHt3uLi4EBwczOzZs4mPj0en0/Hf//6XAwcOcO3atRLXmTx5MqmpqYYpLi6uQrJ4+2XT5tEktm0KqJDtlUfaLWt0BeDuXWA036NGAck31PneZYmZirw28zLtn0hh4qCmJCXYqZpFjpOoSA2bZ+BRI5+l3xxn8x972PzHHlo9msqzL15l8x97sLIyX+swK96KGwdtqNMv72+Xc29V+N7PjFX/i0eJFKWwVV3WSc6RF7d27VoURaFWrVrY29uzZMkSBg0ahJVVybHs7e1xdXU1mirCUz2vkJpsz+HfvCtke+VRkG9F1B+OtO2Ubpin0Si06ZTBmWPqdIdaYiZQeG3mZTp0S2bS4CYkXrFXKcdtcpxERTp5wJ1Xn23H6D63p/OnnNn1ow+j+7RDrzffWJ64jXbYeyr4PJ7/t8ulnSv8JYTW2zIL3oNK1WZC/fr12b17N5mZmaSlpVGzZk0GDhxIvXr1zJZBo1F4qucVdv5UC73OMr5FfreyBuMXx3H+d0ciTxT+hEnrqGfbevVG01taplGzYuja6yYzRzQkO8MKjxqFLYXMdBvyctX7O8pxKh2tow7/urfPtfoF5FKvWRbpKTbciDd/j4Gl5QHIzrIh5oLxR3ROtjVpKbbEXDDfz9AUPVzZaEftXnlY3REnM9aKqz/Z4fN4PnbuCmmR1pyZ54Dnw/m4Ntbde4NqUsp5jtxCW+QWMXTVyckJJycnkpOT2bp1K/PmzTPbvts8moRPzRy2/VDbbPu8n90/eODmpeOlCQl4eBcQfdqBdwYHkZKkzm/ILTFTz39dB2D++nNG8xeMD2L7t+r1rMhxKp1GrbOY/3WU4fHIGYW/VNm2wZMF4+pW+zyWJOmADdnXrAnok2E038pWIemgDZfW2qPL1qD10+MXkk/DkRY8bF2vB005znNb6DlyjaKo9xVj69atKIpC48aNuXDhAhMmTECr1bJ3715sbe//wZeWloabmxsh/v/GxspyugwLrsarHaFK0Nhbzt+siJKr/ujyu1nkccovuP9CAmtXy/tRdfffLqsdwUhORgFvP7qb1NTUCjtdereiWvGky2BsNGXvYSlQ8tiZvq5Ss5aFqi3y1NRUJk+ezJUrV/D09KRv377MmTOnVEVcCCGEMIl0rVe8AQMGMGDAADUjCCGEqCYUvR6lHF3r8vMzIYQQQlQ4ixjsJoQQQlQ66VoXQgghqjC9ApoHr5BL17oQQghRhUmLXAghRPWgKEB5fkdumS1yKeRCCCGqBUWvoJSja13Fy678LSnkQgghqgdFT/la5PLzMyGEEKLaWbZsGXXr1kWr1dK+fXsOHz5coduXQi6EEKJaUPRKuSdTffXVV4wbN47p06dz/PhxWrduTWhoKNevX6+w1yWFXAghRPWg6Ms/mWjhwoW88sorDB06lGbNmrFixQocHR35/PPPK+xlVelz5EUDDwr0f3+ze3MrUP7+nr2ikEaxvO+RigX+7SzzOMlNU0pDUSzrswkKb1JiSYrymGMgWQH55boeTAGFnw9paWlG8+3t7bEv4eZGeXl5HDt2jMmTJxvmWVlZERISwoEDB8oe5C5VupCnp6cDsCthlcpJRJlY3o3GLJMcp6orRe0Axe18VO0EJUtPT8fNza1Stm1nZ4efnx/7Ev5X7m05OzsTEBBgNG/69OnMmDGj2LJJSUnodDp8fX2N5vv6+nLu3Lliy5dVlS7k/v7+xMXF4eLigkajKde20tLSCAgIIC4uzmJuTyeZSsfSMllaHpBMpSWZSqciMymKQnp6Ov7+/hWUrjitVsulS5fIyyt/D4miKMXqTUmtcXOq0oXcysqK2rVrV+g2XV1dLeYfSxHJVDqWlsnS8oBkKi3JVDoVlamyWuJ30mq1aLXaSt/PnWrUqIG1tTWJiYlG8xMTE/Hz86uw/VjeyTchhBDiAWBnZ0e7du3YuXOnYZ5er2fnzp0EBwdX2H6qdItcCCGEsGTjxo0jLCyMhx9+mEcffZTFixeTmZnJ0KFDK2wfUsj/Ym9vz/Tp01U/13EnyVQ6lpbJ0vKAZCotyVQ6lpjJUg0cOJAbN24wbdo0EhISaNOmDVu2bCk2AK48NIqlXjxWCCGEEPcl58iFEEKIKkwKuRBCCFGFSSEXQgghqjAp5EIIIUQVJoWcyr/FnKn27NlDz5498ff3R6PRsGnTJlXzhIeH88gjj+Di4oKPjw+9e/cmMjJS1UzLly+nVatWhgtSBAcH8/PPP6ua6W7vv/8+Go2GMWPGqJZhxowZaDQao6lJkyaq5Sly9epVXnzxRby8vHBwcKBly5YcPXpUtTx169Ytdpw0Gg2jRo1SLZNOp2Pq1KkEBQXh4OBA/fr1mT17tlmuSf530tPTGTNmDIGBgTg4ONChQweOHDmiaqbqrtoXcnPcYs5UmZmZtG7dmmXLlqmW4U67d+9m1KhRHDx4kO3bt5Ofn0+3bt3IzMxULVPt2rV5//33OXbsGEePHuWJJ56gV69enD59WrVMdzpy5Agff/wxrVq1UjsKzZs359q1a4Zp3759quZJTk6mY8eO2Nra8vPPP3PmzBkWLFiAh4eHapmOHDlidIy2b98OQP/+/VXLNHfuXJYvX86HH37I2bNnmTt3LvPmzWPp0qWqZQIYPnw427dvZ+3atZw6dYpu3boREhLC1atXVc1VrSnV3KOPPqqMGjXK8Fin0yn+/v5KeHi4iqluA5SNGzeqHcPI9evXFUDZvXu32lGMeHh4KJ9++qnaMZT09HSlYcOGyvbt25XOnTsrb775pmpZpk+frrRu3Vq1/Zdk0qRJSqdOndSO8bfefPNNpX79+oper1ctQ48ePZRhw4YZzevTp48yePBglRIpSlZWlmJtba38+OOPRvMfeugh5Z133lEplajWLfKiW8yFhIQY5lXGLeYeNKmpqQB4enqqnKSQTqdj/fr1ZGZmVuhlD8tq1KhR9OjRw+h9paaoqCj8/f2pV68egwcPJjY2VtU8P/zwAw8//DD9+/fHx8eHtm3b8sknn6ia6U55eXn897//ZdiwYeW+GVN5dOjQgZ07d3L+/HkAfv/9d/bt20f37t1Vy1RQUIBOpyt2zXIHBwfVe3qqs2p9ZTdz3WLuQaLX6xkzZgwdO3akRYsWqmY5deoUwcHB5OTk4OzszMaNG2nWrJmqmdavX8/x48ct5pxh+/btWb16NY0bN+batWvMnDmTxx57jD///BMXFxdVMkVHR7N8+XLGjRvHf/7zH44cOcIbb7yBnZ0dYWFhqmS606ZNm0hJSWHIkCGq5nj77bdJS0ujSZMmWFtbo9PpmDNnDoMHD1Ytk4uLC8HBwcyePZumTZvi6+vLl19+yYEDB2jQoIFquaq7al3IhelGjRrFn3/+aRHfvhs3bszJkydJTU3lm2++ISwsjN27d6tWzOPi4njzzTfZvn272e+ydC93tt5atWpF+/btCQwMZMOGDbz88suqZNLr9Tz88MO89957ALRt25Y///yTFStWWEQh/+yzz+jevXul3lazNDZs2MC6deuIiIigefPmnDx5kjFjxuDv76/qcVq7di3Dhg2jVq1aWFtb89BDDzFo0CCOHTumWqbqrloXcnPdYu5BMXr0aH788Uf27NlT4bePLQs7OztDK6Bdu3YcOXKEDz74gI8//liVPMeOHeP69es89NBDhnk6nY49e/bw4Ycfkpubi7W1tSrZiri7u9OoUSMuXLigWoaaNWsW+7LVtGlTvv32W5US3RYTE8OOHTv47rvv1I7ChAkTePvtt3n++ecBaNmyJTExMYSHh6tayOvXr8/u3bvJzMwkLS2NmjVrMnDgQOrVq6dapuquWp8jN9ct5qo6RVEYPXo0Gzdu5JdffiEoKEjtSCXS6/Xk5uaqtv8nn3ySU6dOcfLkScP08MMPM3jwYE6ePKl6EQfIyMjg4sWL1KxZU7UMHTt2LPbzxfPnzxMYGKhSottWrVqFj48PPXr0UDsKWVlZWFkZf0RbW1uj1+tVSmTMycmJmjVrkpyczNatW+nVq5fakaqtat0iB/PcYs5UGRkZRi2mS5cucfLkSTw9PalTp47Z84waNYqIiAi+//57XFxcSEhIAMDNzQ0HBwez5wGYPHky3bt3p06dOqSnpxMREcGuXbvYunWrKnmg8Pzh3eMGnJyc8PLyUm08wfjx4+nZsyeBgYHEx8czffp0rK2tGTRokCp5AMaOHUuHDh147733GDBgAIcPH2blypWsXLlStUxQ+EVw1apVhIWFYWOj/kdjz549mTNnDnXq1KF58+acOHGChQsXMmzYMFVzbd26FUVRaNy4MRcuXGDChAk0adJE1c/Mak/tYfOWYOnSpUqdOnUUOzs75dFHH1UOHjyoap5ff/1VAYpNYWFhquQpKQugrFq1SpU8iqIow4YNUwIDAxU7OzvF29tbefLJJ5Vt27aplude1P752cCBA5WaNWsqdnZ2Sq1atZSBAwcqFy5cUC1Pkc2bNystWrRQ7O3tlSZNmigrV65UO5KydetWBVAiIyPVjqIoiqKkpaUpb775plKnTh1Fq9Uq9erVU9555x0lNzdX1VxfffWVUq9ePcXOzk7x8/NTRo0apaSkpKiaqbqT25gKIYQQVVi1PkcuhBBCVHVSyIUQQogqTAq5EEIIUYVJIRdCCCGqMCnkQgghRBUmhVwIIYSowqSQCyGEEFWYFHIhhBCiCpNCLkQ5DRkyhN69exsed+nShTFjxpg9x65du9BoNKSkpNxzGY1Gw6ZNm0q9zRkzZtCmTZty5bp8+TIajYaTJ0+WaztCiJJJIRcPpCFDhqDRaNBoNIa7pM2aNYuCgoJK3/d3333H7NmzS7VsaYqvEEL8HfXvDCBEJXn66adZtWoVubm5/O9//2PUqFHY2toyefLkYsvm5eVhZ2dXIfv19PSskO0IIURpSItcPLDs7e3x8/MjMDCQV199lZCQEH744Qfgdnf4nDlz8Pf3p3HjxgDExcUxYMAA3N3d8fT0pFevXly+fNmwTZ1Ox7hx43B3d8fLy4uJEydy9+0K7u5az83NZdKkSQQEBGBvb0+DBg347LPPuHz5Ml27dgXAw8MDjUbDkCFDgMI7cYWHhxMUFISDgwOtW7fmm2++MdrP//73Pxo1aoSDgwNdu3Y1yllakyZNolGjRjg6OlKvXj2mTp1Kfn5+seU+/vhjAgICcHR0ZMCAAaSmpho9/+mnn9K0aVO0Wi1NmjTho48+MjmLEKJspJCLasPBwYG8vDzD4507dxIZGcn27dv58ccfyc/PJzQ0FBcXF/bu3ctvv/2Gs7MzTz/9tGG9BQsWsHr1aj7//HP27dvHrVu32Lhx49/u96WXXuLLL79kyZIlnD17lo8//hhnZ2cCAgL49ttvAYiMjOTatWt88MEHAISHh/PFF1+wYsUKTp8+zdixY3nxxRfZvXs3UPiFo0+fPvTs2ZOTJ08yfPhw3n77bZOPiYuLC6tXr+bMmTN88MEHfPLJJyxatMhomQsXLrBhwwY2b97Mli1bOHHiBK+99prh+XXr1jFt2jTmzJnD2bNnee+995g6dSpr1qwxOY8QogxUvvuaEJUiLCxM6dWrl6IoiqLX65Xt27cr9vb2yvjx4w3P+/r6Gt0Scu3atUrjxo0VvV5vmJebm6s4ODgoW7duVRRFUWrWrKnMmzfP8Hx+fr5Su3Ztw74UxfjWpZGRkQqgbN++vcScRbesTU5ONszLyclRHB0dlf379xst+/LLLyuDBg1SFEVRJk+erDRr1szo+UmTJhXb1t0AZePGjfd8fv78+Uq7du0Mj6dPn65YW1srV65cMcz7+eefFSsrK+XatWuKoihK/fr1lYiICKPtzJ49WwkODlYURVEuXbqkAMqJEyfuuV8hRNnJOXLxwPrxxx9xdnYmPz8fvV7PCy+8wIwZMwzPt2zZ0ui8+O+//86FCxdwcXEx2k5OTg4XL14kNTWVa9eu0b59e8NzNjY2PPzww8W614ucPHkSa2trOnfuXOrcFy5cICsri6eeespofl5eHm3btgXg7NmzRjkAgoODS72PIl999RVLlizh4sWLZGRkUFBQgKurq9EyderUoVatWkb70ev1REZG4uLiwsWLF3n55Zd55ZVXDMsUFBTg5uZmch4hhOmkkIsHVteuXVm+fDl2dnb4+/tjY2P8dndycjJ6nJGRQbt27Vi3bl2xbXl7e5cpg4ODg8nrZGRkAPDTTz8ZFVAoPO9fUQ4cOMDgwYOZOXMmoaGhuLm5sX79ehYsWGBy1k8++aTYFwtra+sKyyqEuDcp5OKB5eTkRIMGDUq9/EMPPcRXX32Fj49PsVZpkZo1a3Lo0CEef/xxoLDleezYMR566KESl2/ZsiV6vZ7du3cTEhJS7PmiHgGdTmeY16xZM+zt7YmNjb1nS75p06aGgXtFDh48eP8XeYf9+/cTGBjIO++8Y5gXExNTbLnY2Fji4+Px9/c37MfKyorGjRvj6+uLv78/0dHRDB482KT9CyEqhgx2E+IvgwcPpkaNGvTq1Yu9e/dy6dIldu3axRtvvMGVK1cAePPNN3n//ffZtGkT586d47XXXvvb34DXrVuXsLAwhg0bxqZNmwzb3LBhAwCBgYFoNBp+/PFHbty4QUZGBi4uLowfP56xY8eyZs0aLl68yPHjx1m6dKlhANnIkSOJiopiwoQJREZGEhERwerVq016vQ0bNiQ2Npb169dz8eJFlixZUuLAPa1WS1hYGL///jt79+7ljTfeYMCAAfj5+QEwc+ZMwsPDWbJkCefPn+fUqVOsWrWKhQsXmpRHCFE2UsiF+IujoyN79uyhTp069OnTh6ZNm/Lyyy+Tk5NjaKG/9dZb/Otf/yIsLIzg4GBcXFx47rnn/na7y5cvp1+/frz22ms0adKEV155hczMTABq1arFzJkzefvtt/H19WX06NEAzJ49m6lTpxIeHk7Tpk15+umn+emnnwgKCgIKz1t/++23bNq0idatW7NixQree+89k17vs88+y9ixYxk9ejRt2rRh//79TJ06tdhyDRo0oE+fPvzzn/+kW7dutGrVyujnZcOHD+fTTz9l1apVtGzZks6dO7N69WpDViFE5dIo9xqlI4QQQgiLJy1yIYQQogqTQi6EEEJUYVLIhRBCiCpMCrkQQghRhUkhF0IIIaowKeRCCCFEFSaFXAghhKjCpJALIYQQVZgUciGEEKIKk0IuhBBCVGFSyIUQQogq7P8BBjL0f9I44kAAAAAASUVORK5CYII=", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "disp = metrics.ConfusionMatrixDisplay.from_predictions(y_test_le, elm_predicted)\n", + "disp.figure_.suptitle(\"Confusion Matrix [ELM]\")\n", + "print(f\"Confusion Matrix [ELM]:\\n{disp.confusion_matrix}\")\n", + "\n", + "plt.show()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "* A standard ElmClassifier with hidden size of 100 and relu activation function results in 88% accuracy." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Classification with Metaheuristic-based ELM Model" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "* Train an `MhaElmClassifier`" + ] + }, + { + "cell_type": "code", + "execution_count": 11, + "metadata": {}, + "outputs": [], + "source": [ + "opt_params = {\n", + " \"name\": \"GA\",\n", + " \"epoch\": 10,\n", + " \"pop_size\": 30,\n", + "}\n", + "\n", + "mha_elm_classifier = MhaElmClassifier(hidden_size=100, act_name=\"relu\", obj_name=\"KLDL\", optimizer=\"BaseGA\", optimizer_paras=opt_params)" + ] + }, + { + "cell_type": "code", + "execution_count": 12, + "metadata": {}, + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "/home/codespace/.local/lib/python3.10/site-packages/sklearn/preprocessing/_encoders.py:975: FutureWarning: `sparse` was renamed to `sparse_output` in version 1.2 and will be removed in 1.4. `sparse_output` is ignored unless you leave `sparse` to its default value.\n", + " warnings.warn(\n" + ] + }, + { + "data": { + "text/html": [ + "
MhaElmClassifier(act_name='relu', hidden_size=100, obj_name='KLDL',\n",
+       "                 optimizer=<mealpy.evolutionary_based.GA.BaseGA object at 0x7f90502d0ca0>,\n",
+       "                 optimizer_paras={'epoch': 10, 'name': 'GA', 'pop_size': 30})
In a Jupyter environment, please rerun this cell to show the HTML representation or trust the notebook.
On GitHub, the HTML representation is unable to render, please try loading this page with nbviewer.org.
" + ], + "text/plain": [ + "MhaElmClassifier(act_name='relu', hidden_size=100, obj_name='KLDL',\n", + " optimizer=,\n", + " optimizer_paras={'epoch': 10, 'name': 'GA', 'pop_size': 30})" + ] + }, + "execution_count": 12, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "mha_elm_classifier.fit(X_train_scaled, y_train_le)" + ] + }, + { + "cell_type": "code", + "execution_count": 13, + "metadata": {}, + "outputs": [], + "source": [ + "mha_elm_predicted = mha_elm_classifier.predict(X_test_scaled)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "* Report classification results" + ] + }, + { + "cell_type": "code", + "execution_count": 14, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + " precision recall f1-score support\n", + "\n", + " 0 0.93 0.99 0.96 88\n", + " 1 0.87 0.91 0.89 91\n", + " 2 0.92 0.90 0.91 86\n", + " 3 0.84 0.84 0.84 91\n", + " 4 0.98 0.86 0.91 92\n", + " 5 0.90 0.87 0.88 91\n", + " 6 0.95 0.97 0.96 91\n", + " 7 0.93 0.90 0.91 89\n", + " 8 0.94 0.86 0.90 88\n", + " 9 0.76 0.88 0.81 92\n", + "\n", + " accuracy 0.90 899\n", + " macro avg 0.90 0.90 0.90 899\n", + "weighted avg 0.90 0.90 0.90 899\n", + "\n" + ] + } + ], + "source": [ + "print(metrics.classification_report(y_test_le, mha_elm_predicted))" + ] + }, + { + "cell_type": "code", + "execution_count": 15, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Confusion Matrix [MHA-ELM]:\n", + "[[87 0 0 0 0 0 1 0 0 0]\n", + " [ 0 83 5 2 0 0 0 0 1 0]\n", + " [ 5 0 77 4 0 0 0 0 0 0]\n", + " [ 0 1 0 76 0 1 0 5 0 8]\n", + " [ 1 1 0 1 79 0 1 0 2 7]\n", + " [ 0 1 1 1 0 79 1 0 0 8]\n", + " [ 0 1 0 0 1 0 88 0 0 1]\n", + " [ 0 3 0 0 1 4 0 80 0 1]\n", + " [ 0 5 1 1 0 2 1 1 76 1]\n", + " [ 1 0 0 5 0 2 1 0 2 81]]\n" + ] + }, + { + "data": { + "image/png": "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", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "disp = metrics.ConfusionMatrixDisplay.from_predictions(y_test_le, mha_elm_predicted)\n", + "disp.figure_.suptitle(\"Confusion Matrix [MHA-ELM]\")\n", + "print(f\"Confusion Matrix [MHA-ELM]:\\n{disp.confusion_matrix}\")\n", + "\n", + "plt.show()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "* A Metaheuristic-based ElmClassifier with hidden size of 100 and relu activation function results in 93% accuracy. It is an improvement of 5%." + ] + } + ], + "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.10.8" + } + }, + "nbformat": 4, + "nbformat_minor": 2 +} From 548dc77447d631e20b2ca099a60f770a29a32acf Mon Sep 17 00:00:00 2001 From: Hung Nguyen-Duy Date: Thu, 5 Oct 2023 15:45:57 +0000 Subject: [PATCH 2/2] Add california housing example --- README.md | 8 +- tutorials/example_california_housing.ipynb | 385 ++++++++++++++++++ .../example_hand_written_digits.ipynb | 144 ++++--- 3 files changed, 477 insertions(+), 60 deletions(-) create mode 100644 tutorials/example_california_housing.ipynb rename {notebooks => tutorials}/example_hand_written_digits.ipynb (58%) diff --git a/README.md b/README.md index 0db9bf4..2ecd567 100644 --- a/README.md +++ b/README.md @@ -107,9 +107,13 @@ $ python >>> intelelm.__version__ ``` -### Examples +### Tutorials + +* Tutorials can be found inside [tutorials](./tutorials) directory. + * [Building a handwritten digits classifier using IntelELM](./tutorials/example_hand_written_digits.ipynb) + * [Building a house price predictor using IntelELM](./tutorials/example_california_housing.ipynb) -* End-to-end tutorials can be found inside [notebooks](notebooks) directory. +### Examples * In this section, we will explore the usage of the IntelELM model with the assistance of a dataset. While all the preprocessing steps mentioned below can be replicated using Scikit-Learn, we have implemented some utility functions diff --git a/tutorials/example_california_housing.ipynb b/tutorials/example_california_housing.ipynb new file mode 100644 index 0000000..79e3829 --- /dev/null +++ b/tutorials/example_california_housing.ipynb @@ -0,0 +1,385 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Example: Using `IntelELM` for Building a House Price Predictor" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "* Install `IntelELM` library" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Requirement already satisfied: intelelm==1.0.3 in /usr/local/python/3.10.8/lib/python3.10/site-packages (1.0.3)\n", + "Requirement already satisfied: numpy>=1.17.1 in /home/codespace/.local/lib/python3.10/site-packages (from intelelm==1.0.3) (1.26.0)\n", + "Requirement already satisfied: scipy>=1.7.1 in /home/codespace/.local/lib/python3.10/site-packages (from intelelm==1.0.3) (1.11.3)\n", + "Requirement already satisfied: scikit-learn>=1.0.2 in /home/codespace/.local/lib/python3.10/site-packages (from intelelm==1.0.3) (1.3.1)\n", + "Requirement already satisfied: pandas>=1.3.5 in /home/codespace/.local/lib/python3.10/site-packages (from intelelm==1.0.3) (2.1.1)\n", + "Requirement already satisfied: mealpy>=2.5.4 in /home/codespace/.local/lib/python3.10/site-packages (from intelelm==1.0.3) (2.5.4)\n", + "Requirement already satisfied: permetrics>=1.5.0 in /home/codespace/.local/lib/python3.10/site-packages (from intelelm==1.0.3) (1.5.0)\n", + "Requirement already satisfied: matplotlib>=3.3.0 in /home/codespace/.local/lib/python3.10/site-packages (from mealpy>=2.5.4->intelelm==1.0.3) (3.8.0)\n", + "Requirement already satisfied: opfunu>=1.0.0 in /home/codespace/.local/lib/python3.10/site-packages (from mealpy>=2.5.4->intelelm==1.0.3) (1.0.1)\n", + "Requirement already satisfied: python-dateutil>=2.8.2 in /home/codespace/.local/lib/python3.10/site-packages (from pandas>=1.3.5->intelelm==1.0.3) (2.8.2)\n", + "Requirement already satisfied: pytz>=2020.1 in /home/codespace/.local/lib/python3.10/site-packages (from pandas>=1.3.5->intelelm==1.0.3) (2023.3.post1)\n", + "Requirement already satisfied: tzdata>=2022.1 in /home/codespace/.local/lib/python3.10/site-packages (from pandas>=1.3.5->intelelm==1.0.3) (2023.3)\n", + "Requirement already satisfied: joblib>=1.1.1 in /home/codespace/.local/lib/python3.10/site-packages (from scikit-learn>=1.0.2->intelelm==1.0.3) (1.3.2)\n", + "Requirement already satisfied: threadpoolctl>=2.0.0 in /home/codespace/.local/lib/python3.10/site-packages (from scikit-learn>=1.0.2->intelelm==1.0.3) (3.2.0)\n", + "Requirement already satisfied: contourpy>=1.0.1 in /home/codespace/.local/lib/python3.10/site-packages (from matplotlib>=3.3.0->mealpy>=2.5.4->intelelm==1.0.3) (1.1.1)\n", + "Requirement already satisfied: cycler>=0.10 in /home/codespace/.local/lib/python3.10/site-packages (from matplotlib>=3.3.0->mealpy>=2.5.4->intelelm==1.0.3) (0.12.0)\n", + "Requirement already satisfied: fonttools>=4.22.0 in /home/codespace/.local/lib/python3.10/site-packages (from matplotlib>=3.3.0->mealpy>=2.5.4->intelelm==1.0.3) (4.43.0)\n", + "Requirement already satisfied: kiwisolver>=1.0.1 in /home/codespace/.local/lib/python3.10/site-packages (from matplotlib>=3.3.0->mealpy>=2.5.4->intelelm==1.0.3) (1.4.5)\n", + "Requirement already satisfied: packaging>=20.0 in /home/codespace/.local/lib/python3.10/site-packages (from matplotlib>=3.3.0->mealpy>=2.5.4->intelelm==1.0.3) (23.1)\n", + "Requirement already satisfied: pillow>=6.2.0 in /home/codespace/.local/lib/python3.10/site-packages (from matplotlib>=3.3.0->mealpy>=2.5.4->intelelm==1.0.3) (10.0.1)\n", + "Requirement already satisfied: pyparsing>=2.3.1 in /home/codespace/.local/lib/python3.10/site-packages (from matplotlib>=3.3.0->mealpy>=2.5.4->intelelm==1.0.3) (3.1.1)\n", + "Requirement already satisfied: requests>=2.27.0 in /home/codespace/.local/lib/python3.10/site-packages (from opfunu>=1.0.0->mealpy>=2.5.4->intelelm==1.0.3) (2.31.0)\n", + "Requirement already satisfied: six>=1.5 in /home/codespace/.local/lib/python3.10/site-packages (from python-dateutil>=2.8.2->pandas>=1.3.5->intelelm==1.0.3) (1.16.0)\n", + "Requirement already satisfied: charset-normalizer<4,>=2 in /home/codespace/.local/lib/python3.10/site-packages (from requests>=2.27.0->opfunu>=1.0.0->mealpy>=2.5.4->intelelm==1.0.3) (3.2.0)\n", + "Requirement already satisfied: idna<4,>=2.5 in /home/codespace/.local/lib/python3.10/site-packages (from requests>=2.27.0->opfunu>=1.0.0->mealpy>=2.5.4->intelelm==1.0.3) (3.4)\n", + "Requirement already satisfied: urllib3<3,>=1.21.1 in /home/codespace/.local/lib/python3.10/site-packages (from requests>=2.27.0->opfunu>=1.0.0->mealpy>=2.5.4->intelelm==1.0.3) (2.0.5)\n", + "Requirement already satisfied: certifi>=2017.4.17 in /home/codespace/.local/lib/python3.10/site-packages (from requests>=2.27.0->opfunu>=1.0.0->mealpy>=2.5.4->intelelm==1.0.3) (2023.7.22)\n" + ] + } + ], + "source": [ + "!python -m pip install intelelm==1.0.3" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "* Import libraries" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": {}, + "outputs": [], + "source": [ + "from sklearn import datasets, metrics\n", + "from sklearn.model_selection import train_test_split\n", + "from intelelm import ElmRegressor, MhaElmRegressor\n", + "from sklearn.preprocessing import MinMaxScaler\n", + "import matplotlib.pyplot as plt\n", + "%matplotlib inline" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Loading California Housing Dataset" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": {}, + "outputs": [], + "source": [ + "california_housing = datasets.fetch_california_housing(as_frame=True)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Dataset: Train/Test Split & Preprocessing" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "* We choose some features for training our model." + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": {}, + "outputs": [], + "source": [ + "features = [\"AveRooms\", \"AveBedrms\", \"AveOccup\", \"Population\"]\n", + "\n", + "data = california_housing.frame[features].values" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "* Train/test split" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": {}, + "outputs": [], + "source": [ + "X_train, X_test, y_train, y_test = train_test_split(data, california_housing.target.values, test_size=0.3, shuffle=True, random_state=1)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "* Feature scaling with `MinMaxScaler`" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": {}, + "outputs": [], + "source": [ + "min_max_scaler = MinMaxScaler()\n", + "min_max_scaler.fit(X_train)\n", + "X_train_scaled = min_max_scaler.transform(X_train)\n", + "X_test_scaled = min_max_scaler.transform(X_test)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Regression with Standard ELM Model" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "* Tran an `ElmRegressor`" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
ElmRegressor(act_name='relu', hidden_size=100)
In a Jupyter environment, please rerun this cell to show the HTML representation or trust the notebook.
On GitHub, the HTML representation is unable to render, please try loading this page with nbviewer.org.
" + ], + "text/plain": [ + "ElmRegressor(act_name='relu', hidden_size=100)" + ] + }, + "execution_count": 7, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "elm_regressor = ElmRegressor(hidden_size=100, act_name=\"relu\")\n", + "elm_regressor.fit(X_train_scaled, y_train)" + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "metadata": {}, + "outputs": [], + "source": [ + "elm_predicted = elm_regressor.predict(X_test_scaled)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "* Report regression results" + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "RMSE: 1.0660753353991896\n", + "MAE: 0.8407205484213833\n" + ] + } + ], + "source": [ + "print(\"RMSE:\", metrics.mean_squared_error(y_test, elm_predicted, squared=False))\n", + "print(\"MAE:\", metrics.mean_absolute_error(y_test, elm_predicted))" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Regression with `MhaElmRegressor`" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "* Train a model" + ] + }, + { + "cell_type": "code", + "execution_count": 10, + "metadata": {}, + "outputs": [], + "source": [ + "opt_params = {\n", + " \"name\": \"GA\",\n", + " \"epoch\": 10,\n", + " \"pop_size\": 30,\n", + "}\n", + "\n", + "mha_elm_regressor = MhaElmRegressor(hidden_size=100, act_name=\"relu\", obj_name=\"RMSE\", optimizer=\"BaseGA\", optimizer_paras=opt_params, verbose=True)\n" + ] + }, + { + "cell_type": "code", + "execution_count": 11, + "metadata": {}, + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "2023/10/05 03:42:52 PM, INFO, mealpy.evolutionary_based.GA.BaseGA: Solving single objective optimization problem.\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "2023/10/05 03:42:58 PM, INFO, mealpy.evolutionary_based.GA.BaseGA: >Problem: P, Epoch: 1, Current best: 0.99913, Global best: 0.99913, Runtime: 2.93316 seconds\n", + "2023/10/05 03:43:01 PM, INFO, mealpy.evolutionary_based.GA.BaseGA: >Problem: P, Epoch: 2, Current best: 1.003097, Global best: 0.99913, Runtime: 3.18233 seconds\n", + "2023/10/05 03:43:04 PM, INFO, mealpy.evolutionary_based.GA.BaseGA: >Problem: P, Epoch: 3, Current best: 1.00104, Global best: 0.99913, Runtime: 3.12306 seconds\n", + "2023/10/05 03:43:07 PM, INFO, mealpy.evolutionary_based.GA.BaseGA: >Problem: P, Epoch: 4, Current best: 0.984083, Global best: 0.984083, Runtime: 3.08050 seconds\n", + "2023/10/05 03:43:10 PM, INFO, mealpy.evolutionary_based.GA.BaseGA: >Problem: P, Epoch: 5, Current best: 0.98369, Global best: 0.98369, Runtime: 3.03170 seconds\n", + "2023/10/05 03:43:14 PM, INFO, mealpy.evolutionary_based.GA.BaseGA: >Problem: P, Epoch: 6, Current best: 0.983328, Global best: 0.983328, Runtime: 3.41910 seconds\n", + "2023/10/05 03:43:17 PM, INFO, mealpy.evolutionary_based.GA.BaseGA: >Problem: P, Epoch: 7, Current best: 0.984084, Global best: 0.983328, Runtime: 3.21473 seconds\n", + "2023/10/05 03:43:20 PM, INFO, mealpy.evolutionary_based.GA.BaseGA: >Problem: P, Epoch: 8, Current best: 0.980675, Global best: 0.980675, Runtime: 3.06025 seconds\n", + "2023/10/05 03:43:23 PM, INFO, mealpy.evolutionary_based.GA.BaseGA: >Problem: P, Epoch: 9, Current best: 0.97587, Global best: 0.97587, Runtime: 3.30768 seconds\n", + "2023/10/05 03:43:26 PM, INFO, mealpy.evolutionary_based.GA.BaseGA: >Problem: P, Epoch: 10, Current best: 0.972021, Global best: 0.972021, Runtime: 3.09799 seconds\n" + ] + }, + { + "data": { + "text/html": [ + "
MhaElmRegressor(act_name='relu', hidden_size=100, obj_name='RMSE',\n",
+       "                optimizer=<mealpy.evolutionary_based.GA.BaseGA object at 0x7fe0da943430>,\n",
+       "                optimizer_paras={'epoch': 10, 'name': 'GA', 'pop_size': 30},\n",
+       "                verbose=True)
In a Jupyter environment, please rerun this cell to show the HTML representation or trust the notebook.
On GitHub, the HTML representation is unable to render, please try loading this page with nbviewer.org.
" + ], + "text/plain": [ + "MhaElmRegressor(act_name='relu', hidden_size=100, obj_name='RMSE',\n", + " optimizer=,\n", + " optimizer_paras={'epoch': 10, 'name': 'GA', 'pop_size': 30},\n", + " verbose=True)" + ] + }, + "execution_count": 11, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "mha_elm_regressor.fit(X_train_scaled, y_train)" + ] + }, + { + "cell_type": "code", + "execution_count": 12, + "metadata": {}, + "outputs": [], + "source": [ + "mha_elm_predicted = mha_elm_regressor.predict(X_test_scaled)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "* Report regression results" + ] + }, + { + "cell_type": "code", + "execution_count": 13, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "RMSE: 1.0555342777265628\n", + "MAE: 0.760976160243756\n" + ] + } + ], + "source": [ + "print(\"RMSE:\", metrics.mean_squared_error(y_test, mha_elm_predicted, squared=False))\n", + "print(\"MAE:\", metrics.mean_absolute_error(y_test, mha_elm_predicted))" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "* It can be seen that using meta-heuristics based ELM reduces both RSME and MAE errors." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "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.10.8" + } + }, + "nbformat": 4, + "nbformat_minor": 2 +} diff --git a/notebooks/example_hand_written_digits.ipynb b/tutorials/example_hand_written_digits.ipynb similarity index 58% rename from notebooks/example_hand_written_digits.ipynb rename to tutorials/example_hand_written_digits.ipynb index 143dd0d..b178557 100644 --- a/notebooks/example_hand_written_digits.ipynb +++ b/tutorials/example_hand_written_digits.ipynb @@ -7,18 +7,23 @@ "# Example: Using `IntelELM` for Recognizing Hand-written Digits" ] }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "* Install `IntelELM` library" + ] + }, { "cell_type": "code", - "execution_count": null, + "execution_count": 1, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ - "Collecting intelelm==1.0.3\n", - " Obtaining dependency information for intelelm==1.0.3 from https://files.pythonhosted.org/packages/a5/a5/8e9f6e5158e5d1195d631221eca22a4a15d28d4d500227b0275e7cada908/intelelm-1.0.3-py3-none-any.whl.metadata\n", - " Downloading intelelm-1.0.3-py3-none-any.whl.metadata (19 kB)\n", + "Requirement already satisfied: intelelm==1.0.3 in /usr/local/python/3.10.8/lib/python3.10/site-packages (1.0.3)\n", "Requirement already satisfied: numpy>=1.17.1 in /home/codespace/.local/lib/python3.10/site-packages (from intelelm==1.0.3) (1.26.0)\n", "Requirement already satisfied: scipy>=1.7.1 in /home/codespace/.local/lib/python3.10/site-packages (from intelelm==1.0.3) (1.11.3)\n", "Requirement already satisfied: scikit-learn>=1.0.2 in /home/codespace/.local/lib/python3.10/site-packages (from intelelm==1.0.3) (1.3.1)\n", @@ -44,11 +49,7 @@ "Requirement already satisfied: charset-normalizer<4,>=2 in /home/codespace/.local/lib/python3.10/site-packages (from requests>=2.27.0->opfunu>=1.0.0->mealpy>=2.5.4->intelelm==1.0.3) (3.2.0)\n", "Requirement already satisfied: idna<4,>=2.5 in /home/codespace/.local/lib/python3.10/site-packages (from requests>=2.27.0->opfunu>=1.0.0->mealpy>=2.5.4->intelelm==1.0.3) (3.4)\n", "Requirement already satisfied: urllib3<3,>=1.21.1 in /home/codespace/.local/lib/python3.10/site-packages (from requests>=2.27.0->opfunu>=1.0.0->mealpy>=2.5.4->intelelm==1.0.3) (2.0.5)\n", - "Requirement already satisfied: certifi>=2017.4.17 in /home/codespace/.local/lib/python3.10/site-packages (from requests>=2.27.0->opfunu>=1.0.0->mealpy>=2.5.4->intelelm==1.0.3) (2023.7.22)\n", - "Downloading intelelm-1.0.3-py3-none-any.whl (4.2 MB)\n", - "\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m4.2/4.2 MB\u001b[0m \u001b[31m10.9 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m00:01\u001b[0m00:01\u001b[0m\n", - "\u001b[?25hInstalling collected packages: intelelm\n", - "Successfully installed intelelm-1.0.3\n" + "Requirement already satisfied: certifi>=2017.4.17 in /home/codespace/.local/lib/python3.10/site-packages (from requests>=2.27.0->opfunu>=1.0.0->mealpy>=2.5.4->intelelm==1.0.3) (2023.7.22)\n" ] } ], @@ -56,9 +57,16 @@ "!python -m pip install intelelm==1.0.3" ] }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "* Import libraries" + ] + }, { "cell_type": "code", - "execution_count": 1, + "execution_count": 2, "metadata": {}, "outputs": [], "source": [ @@ -79,7 +87,7 @@ }, { "cell_type": "code", - "execution_count": 2, + "execution_count": 3, "metadata": {}, "outputs": [], "source": [ @@ -95,7 +103,7 @@ }, { "cell_type": "code", - "execution_count": 3, + "execution_count": 4, "metadata": {}, "outputs": [], "source": [ @@ -105,7 +113,7 @@ }, { "cell_type": "code", - "execution_count": 4, + "execution_count": 5, "metadata": {}, "outputs": [], "source": [ @@ -114,7 +122,7 @@ }, { "cell_type": "code", - "execution_count": 5, + "execution_count": 6, "metadata": {}, "outputs": [], "source": [ @@ -127,7 +135,7 @@ }, { "cell_type": "code", - "execution_count": 6, + "execution_count": 7, "metadata": {}, "outputs": [], "source": [ @@ -155,7 +163,7 @@ }, { "cell_type": "code", - "execution_count": 7, + "execution_count": 8, "metadata": {}, "outputs": [ { @@ -175,7 +183,7 @@ "ElmClassifier(act_name='relu', hidden_size=100)" ] }, - "execution_count": 7, + "execution_count": 8, "metadata": {}, "output_type": "execute_result" } @@ -187,7 +195,7 @@ }, { "cell_type": "code", - "execution_count": 8, + "execution_count": 9, "metadata": {}, "outputs": [], "source": [ @@ -203,7 +211,7 @@ }, { "cell_type": "code", - "execution_count": 9, + "execution_count": 10, "metadata": {}, "outputs": [ { @@ -236,7 +244,7 @@ }, { "cell_type": "code", - "execution_count": 10, + "execution_count": 11, "metadata": {}, "outputs": [ { @@ -298,7 +306,7 @@ }, { "cell_type": "code", - "execution_count": 11, + "execution_count": 12, "metadata": {}, "outputs": [], "source": [ @@ -308,12 +316,12 @@ " \"pop_size\": 30,\n", "}\n", "\n", - "mha_elm_classifier = MhaElmClassifier(hidden_size=100, act_name=\"relu\", obj_name=\"KLDL\", optimizer=\"BaseGA\", optimizer_paras=opt_params)" + "mha_elm_classifier = MhaElmClassifier(hidden_size=100, act_name=\"relu\", obj_name=\"KLDL\", optimizer=\"BaseGA\", optimizer_paras=opt_params, verbose=True)" ] }, { "cell_type": "code", - "execution_count": 12, + "execution_count": 13, "metadata": {}, "outputs": [ { @@ -321,25 +329,45 @@ "output_type": "stream", "text": [ "/home/codespace/.local/lib/python3.10/site-packages/sklearn/preprocessing/_encoders.py:975: FutureWarning: `sparse` was renamed to `sparse_output` in version 1.2 and will be removed in 1.4. `sparse_output` is ignored unless you leave `sparse` to its default value.\n", - " warnings.warn(\n" + " warnings.warn(\n", + "2023/10/05 03:41:59 PM, INFO, mealpy.evolutionary_based.GA.BaseGA: Solving single objective optimization problem.\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "2023/10/05 03:42:00 PM, INFO, mealpy.evolutionary_based.GA.BaseGA: >Problem: P, Epoch: 1, Current best: 0.24399, Global best: 0.24399, Runtime: 0.34016 seconds\n", + "2023/10/05 03:42:01 PM, INFO, mealpy.evolutionary_based.GA.BaseGA: >Problem: P, Epoch: 2, Current best: 0.2543, Global best: 0.24399, Runtime: 0.60120 seconds\n", + "2023/10/05 03:42:01 PM, INFO, mealpy.evolutionary_based.GA.BaseGA: >Problem: P, Epoch: 3, Current best: 0.24905, Global best: 0.24399, Runtime: 0.47027 seconds\n", + "2023/10/05 03:42:01 PM, INFO, mealpy.evolutionary_based.GA.BaseGA: >Problem: P, Epoch: 4, Current best: 0.24466, Global best: 0.24399, Runtime: 0.29067 seconds\n", + "2023/10/05 03:42:02 PM, INFO, mealpy.evolutionary_based.GA.BaseGA: >Problem: P, Epoch: 5, Current best: 0.24237, Global best: 0.24237, Runtime: 0.27694 seconds\n", + "2023/10/05 03:42:02 PM, INFO, mealpy.evolutionary_based.GA.BaseGA: >Problem: P, Epoch: 6, Current best: 0.24255, Global best: 0.24237, Runtime: 0.32962 seconds\n", + "2023/10/05 03:42:02 PM, INFO, mealpy.evolutionary_based.GA.BaseGA: >Problem: P, Epoch: 7, Current best: 0.23039, Global best: 0.23039, Runtime: 0.35134 seconds\n", + "2023/10/05 03:42:03 PM, INFO, mealpy.evolutionary_based.GA.BaseGA: >Problem: P, Epoch: 8, Current best: 0.23715, Global best: 0.23039, Runtime: 0.37898 seconds\n", + "2023/10/05 03:42:03 PM, INFO, mealpy.evolutionary_based.GA.BaseGA: >Problem: P, Epoch: 9, Current best: 0.24108, Global best: 0.23039, Runtime: 0.31639 seconds\n", + "2023/10/05 03:42:03 PM, INFO, mealpy.evolutionary_based.GA.BaseGA: >Problem: P, Epoch: 10, Current best: 0.24384, Global best: 0.23039, Runtime: 0.38648 seconds\n" ] }, { "data": { "text/html": [ "
MhaElmClassifier(act_name='relu', hidden_size=100, obj_name='KLDL',\n",
-       "                 optimizer=<mealpy.evolutionary_based.GA.BaseGA object at 0x7f90502d0ca0>,\n",
-       "                 optimizer_paras={'epoch': 10, 'name': 'GA', 'pop_size': 30})
In a Jupyter environment, please rerun this cell to show the HTML representation or trust the notebook.
On GitHub, the HTML representation is unable to render, please try loading this page with nbviewer.org.
" + " optimizer=<mealpy.evolutionary_based.GA.BaseGA object at 0x7fbeb7fe2020>,\n", + " optimizer_paras={'epoch': 10, 'name': 'GA', 'pop_size': 30},\n", + " verbose=True)In a Jupyter environment, please rerun this cell to show the HTML representation or trust the notebook.
On GitHub, the HTML representation is unable to render, please try loading this page with nbviewer.org.
" ], "text/plain": [ "MhaElmClassifier(act_name='relu', hidden_size=100, obj_name='KLDL',\n", - " optimizer=,\n", - " optimizer_paras={'epoch': 10, 'name': 'GA', 'pop_size': 30})" + " optimizer=,\n", + " optimizer_paras={'epoch': 10, 'name': 'GA', 'pop_size': 30},\n", + " verbose=True)" ] }, - "execution_count": 12, + "execution_count": 13, "metadata": {}, "output_type": "execute_result" } @@ -350,7 +378,7 @@ }, { "cell_type": "code", - "execution_count": 13, + "execution_count": 14, "metadata": {}, "outputs": [], "source": [ @@ -366,7 +394,7 @@ }, { "cell_type": "code", - "execution_count": 14, + "execution_count": 15, "metadata": {}, "outputs": [ { @@ -375,20 +403,20 @@ "text": [ " precision recall f1-score support\n", "\n", - " 0 0.93 0.99 0.96 88\n", - " 1 0.87 0.91 0.89 91\n", - " 2 0.92 0.90 0.91 86\n", - " 3 0.84 0.84 0.84 91\n", - " 4 0.98 0.86 0.91 92\n", - " 5 0.90 0.87 0.88 91\n", - " 6 0.95 0.97 0.96 91\n", - " 7 0.93 0.90 0.91 89\n", - " 8 0.94 0.86 0.90 88\n", - " 9 0.76 0.88 0.81 92\n", + " 0 0.97 1.00 0.98 88\n", + " 1 0.84 0.93 0.89 91\n", + " 2 0.94 0.92 0.93 86\n", + " 3 0.88 0.92 0.90 91\n", + " 4 0.98 0.93 0.96 92\n", + " 5 0.89 0.92 0.91 91\n", + " 6 0.96 0.88 0.92 91\n", + " 7 0.97 0.93 0.95 89\n", + " 8 0.88 0.80 0.83 88\n", + " 9 0.85 0.89 0.87 92\n", "\n", - " accuracy 0.90 899\n", - " macro avg 0.90 0.90 0.90 899\n", - "weighted avg 0.90 0.90 0.90 899\n", + " accuracy 0.91 899\n", + " macro avg 0.92 0.91 0.91 899\n", + "weighted avg 0.92 0.91 0.91 899\n", "\n" ] } @@ -399,7 +427,7 @@ }, { "cell_type": "code", - "execution_count": 15, + "execution_count": 16, "metadata": {}, "outputs": [ { @@ -407,21 +435,21 @@ "output_type": "stream", "text": [ "Confusion Matrix [MHA-ELM]:\n", - "[[87 0 0 0 0 0 1 0 0 0]\n", - " [ 0 83 5 2 0 0 0 0 1 0]\n", - " [ 5 0 77 4 0 0 0 0 0 0]\n", - " [ 0 1 0 76 0 1 0 5 0 8]\n", - " [ 1 1 0 1 79 0 1 0 2 7]\n", - " [ 0 1 1 1 0 79 1 0 0 8]\n", - " [ 0 1 0 0 1 0 88 0 0 1]\n", - " [ 0 3 0 0 1 4 0 80 0 1]\n", - " [ 0 5 1 1 0 2 1 1 76 1]\n", - " [ 1 0 0 5 0 2 1 0 2 81]]\n" + "[[88 0 0 0 0 0 0 0 0 0]\n", + " [ 1 85 0 2 0 0 0 0 1 2]\n", + " [ 0 3 79 2 0 0 0 0 0 2]\n", + " [ 0 0 2 84 0 4 0 1 0 0]\n", + " [ 1 0 0 0 86 0 1 0 1 3]\n", + " [ 0 0 0 2 1 84 1 0 0 3]\n", + " [ 0 8 0 3 0 0 80 0 0 0]\n", + " [ 0 0 1 1 0 0 0 83 3 1]\n", + " [ 0 4 2 1 1 4 1 1 70 4]\n", + " [ 1 1 0 0 0 2 0 1 5 82]]\n" ] }, { "data": { - "image/png": "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", + "image/png": "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", "text/plain": [ "
" ]