{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "**4장 – 모델 훈련**" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "_이 노트북은 4장에 있는 모든 샘플 코드와 연습문제 해답을 가지고 있습니다._" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "\n", " \n", "
\n", " 구글 코랩에서 실행하기\n", "
" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# 설정" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "먼저 몇 개의 모듈을 임포트합니다. 맷플롯립 그래프를 인라인으로 출력하도록 만들고 그림을 저장하는 함수를 준비합니다. 또한 파이썬 버전이 3.5 이상인지 확인합니다(파이썬 2.x에서도 동작하지만 곧 지원이 중단되므로 파이썬 3을 사용하는 것이 좋습니다). 사이킷런 버전이 0.20 이상인지도 확인합니다." ] }, { "cell_type": "code", "execution_count": 1, "metadata": {}, "outputs": [], "source": [ "# 파이썬 ≥3.5 필수\n", "import sys\n", "assert sys.version_info >= (3, 5)\n", "\n", "# 사이킷런 ≥0.20 필수\n", "import sklearn\n", "assert sklearn.__version__ >= \"0.20\"\n", "\n", "# 공통 모듈 임포트\n", "import numpy as np\n", "import os\n", "\n", "# 노트북 실행 결과를 동일하게 유지하기 위해\n", "np.random.seed(42)\n", "\n", "# 깔끔한 그래프 출력을 위해\n", "%matplotlib inline\n", "import matplotlib as mpl\n", "import matplotlib.pyplot as plt\n", "mpl.rc('axes', labelsize=14)\n", "mpl.rc('xtick', labelsize=12)\n", "mpl.rc('ytick', labelsize=12)\n", "\n", "# 그림을 저장할 위치\n", "PROJECT_ROOT_DIR = \".\"\n", "CHAPTER_ID = \"training_linear_models\"\n", "IMAGES_PATH = os.path.join(PROJECT_ROOT_DIR, \"images\", CHAPTER_ID)\n", "os.makedirs(IMAGES_PATH, exist_ok=True)\n", "\n", "def save_fig(fig_id, tight_layout=True, fig_extension=\"png\", resolution=300):\n", " path = os.path.join(IMAGES_PATH, fig_id + \".\" + fig_extension)\n", " print(\"그림 저장:\", fig_id)\n", " if tight_layout:\n", " plt.tight_layout()\n", " plt.savefig(path, format=fig_extension, dpi=resolution)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# 정규 방정식을 사용한 선형 회귀" ] }, { "cell_type": "code", "execution_count": 2, "metadata": {}, "outputs": [], "source": [ "import numpy as np\n", "\n", "X = 2 * np.random.rand(100, 1)\n", "y = 4 + 3 * X + np.random.randn(100, 1)" ] }, { "cell_type": "code", "execution_count": 3, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "그림 저장: generated_data_plot\n" ] }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "plt.plot(X, y, \"b.\")\n", "plt.xlabel(\"$x_1$\", fontsize=18)\n", "plt.ylabel(\"$y$\", rotation=0, fontsize=18)\n", "plt.axis([0, 2, 0, 15])\n", "save_fig(\"generated_data_plot\")\n", "plt.show()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "**식 4-4: 정규 방정식**\n", "\n", "$\\hat{\\boldsymbol{\\theta}} = (\\mathbf{X}^T \\mathbf{X})^{-1} \\mathbf{X}^T \\mathbf{y}$" ] }, { "cell_type": "code", "execution_count": 4, "metadata": {}, "outputs": [], "source": [ "X_b = np.c_[np.ones((100, 1)), X] # 모든 샘플에 x0 = 1을 추가합니다.\n", "theta_best = np.linalg.inv(X_b.T.dot(X_b)).dot(X_b.T).dot(y)" ] }, { "cell_type": "code", "execution_count": 5, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([[4.21509616],\n", " [2.77011339]])" ] }, "execution_count": 5, "metadata": {}, "output_type": "execute_result" } ], "source": [ "theta_best" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "$\\hat{y} = \\mathbf{X} \\boldsymbol{\\hat{\\theta}}$" ] }, { "cell_type": "code", "execution_count": 6, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([[4.21509616],\n", " [9.75532293]])" ] }, "execution_count": 6, "metadata": {}, "output_type": "execute_result" } ], "source": [ "X_new = np.array([[0], [2]])\n", "X_new_b = np.c_[np.ones((2, 1)), X_new] # 모든 샘플에 x0 = 1을 추가합니다.\n", "y_predict = X_new_b.dot(theta_best)\n", "y_predict" ] }, { "cell_type": "code", "execution_count": 7, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "plt.plot(X_new, y_predict, \"r-\")\n", "plt.plot(X, y, \"b.\")\n", "plt.axis([0, 2, 0, 15])\n", "plt.show()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "책에 있는 그림은 범례와 축 레이블이 있는 그래프입니다:" ] }, { "cell_type": "code", "execution_count": 8, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "그림 저장: linear_model_predictions_plot\n" ] }, { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAagAAAEYCAYAAAAJeGK1AAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjMuMywgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/Il7ecAAAACXBIWXMAAAsTAAALEwEAmpwYAAAtxklEQVR4nO3deXxU9b3/8dcnG4RNZBFljYICKioSlQHFVLBu9bZX27q28uiC7a312ttatS7EpVKXbrf22tJat3t726rovbXWalPzK0KiBlxwwysqKrJqZQ1MSL6/P86EzEy2mWTmLMP7+XjkAZnzzTmfOZmcz/l+z+d8jznnEBERCZuioAMQERHpiBKUiIiEkhKUiIiEkhKUiIiEkhKUiIiEUknQAXRn2LBhrqKiIugwRESkG8uWLdvknBueq/WFPkFVVFTQ0NAQdBgiItINM1udy/VpiE9EREJJCUpEREJJCUpEREJJCUpEREJJCUpEREIp9FV83dmyZQsbNmygqakp6FDEJ6Wlpey3334MGjQo6FBEJI8inaC2bNnC+vXrGTVqFOXl5ZhZ0CFJnjnnaGxsZM2aNQBKUiIFLNJDfBs2bGDUqFH069dPyWkvYWb069ePUaNGsWHDhqDDEZE8inSCampqory8POgwJADl5eUa1hUpcJFOUIB6Tnsp/d5FCl9OE5SZXWJmDWa2y8zu6aTNdWbmzGxOLrctIiKFJddFEh8ANwGnAO3G3sxsPPA5YG2OtysiIgUmpz0o59wi59wjwIedNPk5cAUQz+V2pWMPPvhgylDYPffcw4ABA3q1ztraWsyMTZs29TY8EZEu+XYNysw+B+xyzj2WQdt5iaHCho0bN/oQnb/mzp2LmWFmlJaWctBBB/Gd73yH7du353W755xzDm+99VbG7SsqKrj99ttTXpsxYwZr165l6NChuQ5PRCSFL/dBmdlA4Gbg5EzaO+cWAgsBKisrXR5DC8ycOXO4//77aWpqYvHixXzlK19h+/bt3HnnnSntdu/eTXFxcU6KAsrLy3td9VhWVsb+++/f61hERLrjVw+qGrjfOfeOT9sLvT59+rD//vszZswYzj//fC644AIeeeQRqqurOfzww7nnnnsYP348ffr0Yfv27WzevJl58+ax3377MXDgQE488cR2z8m67777GDduHP369eNTn/oU69evT1ne0RDfY489xnHHHUd5eTlDhw7lzDPPZOfOnVRVVbF69Wouv/zyPb096HiIb9GiRUyZMoU+ffowZswYvv/97+Nc23lFRUUFN910ExdffDGDBg1i9OjR3HbbbSlx/PKXv+SQQw6hb9++DBs2jFNOOYXdu3fnZF+LSDT5laBmA5ea2TozWweMAf5gZlfkfEtmwXz1UvJ9PW+//Ta//e1veeCBB3jxxRfp06cPZ5xxBmvWrOHRRx/l+eefZ9asWZx00kmsXevVmzzzzDPMnTuXefPm8cILL3DmmWdy3XXXdbnNxx9/nH/6p3/i5JNPZtmyZTz11FOceOKJtLS0sGjRIkaPHs11113H2rVr92wn3bJly/jc5z7HWWedxYoVK/jBD37AggULuOOOO1La/fjHP2bKlCksX76cK664gu9+97vU1dUB0NDQwDe+8Q3mz5/PypUrqamp4dRTT+3tLhWRqHPO5ewLb8iwL7AAuD/x/xJgKLB/0td7eNV8A7pb57Rp01xnXn311fYvQjBfWbjooovcGWecsef7Z555xg0dOtR9/vOfd/Pnz3clJSVu3bp1e5bX1NS4/v37ux07dqSs58gjj3S33HKLc8658847z82ZMydl+Ze//GVHUmx3332369+//57vZ8yY4c4555xO4xw3bpy77bbbUl576qmnHOA2btzonHPu/PPPd5/4xCdS2syfP9+NGjUqZT3nnntuSpsJEya4G2+80Tnn3EMPPeQGDRrktmzZ0mksHenw9y8igQEaXA5zSq57UNcAjcCVwIWJ/1/jnPvQObeu9QtoBv7hnNuW4+0HlZ6yDvPxxx9nwIAB9O3bl1gsxqxZs/jZz34GwOjRoxkxYsSetsuWLWPHjh0MHz6cAQMG7Pl6+eWXWbVqFQCvvfYasVgsZRvp36d7/vnnmT17dtaxJ3vttdeYOXNmymvHH388a9asYcuWLXteO+KII1LajBw5cs9URSeffDLjxo3jwAMP5IILLuDee+9l69atvYpLRKIvp0USzrlqvOtN3bWryOV2o2jWrFksXLiQ0tJSRo4cSWlp6Z5l/fv3T2nb0tLCiBEjWLx4cbv1hHmy1OTCjuT317qspaUFgIEDB7J8+XL+/ve/8+STT7JgwQK+973v8dxzzzFy5EhfYxaR8Ij8VEdR1a9fPyZMmMC4cePaHbzTHX300axfv56ioiImTJiQ8rXffvsBMHnyZOrr61N+Lv37dFOnTqWmpqbT5WVlZTQ3N3e5jsmTJ7NkyZKU155++mlGjx7NwIEDu/zZZCUlJZx00kksWLCAl156ie3bt/Poo49m/PMiUngi/biNvcWcOXOYOXMmn/70p7n11luZNGkS69at4/HHH2fOnDmccMIJXHrppcyYMYMFCxbw2c9+ltraWh5++OEu13v11Vdz5plnMmHCBM4//3ycczzxxBNcfPHF9OvXj4qKChYvXsyFF15Inz59GDZsWLt1fPvb3+aYY46hurqa888/n+eee44f/vCH3HzzzRm/v0cffZRVq1Yxa9YshgwZwlNPPcXWrVuZPHly1vtKRAqHelARYGY89thjnHTSSXz1q19l4sSJfP7zn2flypV7hsCmT5/OXXfdxZ133skRRxzBokWLqK6u7nK9p59+Og8//DB//vOfmTp1KieeeCJPPfUURUXex+KGG27gvffeY/z48QwfPrzDdRx99NE88MADPPTQQxx++OFceeWVXHnllVxyySUZv7/BgwfzyCOPMGfOHCZNmsTtt9/Or3/9a0444YSM1yEihcdcDy7w+6mystKl3+/T6rXXXtNZ9l5Mv3+RcDGzZc65ylytTz0oEREJJSUoEREJJSUoEREJJSUoEREJpcgnqLAXeUh+6PcuUvginaBKS0tpbGwMOgwJQGNjY7c3OItItEU6Qe23336sWbOGHTt26Ix6L+GcY8eOHaxZs2bPLBoiUpgiPZNE6zx0H3zwwZ5HVUjhKy0tZcSIEaGeh1BEei/SCQq8JKUDlYhI4Yn0EJ+IiBQuJSgREQklJSgREQklJSgREQklJSgREQklJSgREQklJSgREQmlnCYoM7vEzBrMbJeZ3ZP0+nQze9LMPjKzjWb2gJkdkMtti4hIYcl1D+oD4CbgN2mv7wssBCqAccBW4O4cb1tERApITmeScM4tAjCzSmB00ut/Tm5nZncA/y+X2xYRkcIS1DWoWcArnS00s3mJocKGjRs3+hiWiIiEhe8JysyOAK4DLu+sjXNuoXOu0jlXOXz4cP+CExGR0PA1QZnZBODPwL865xb7uW0REYkW3xKUmY0D/grc6Jy736/tiohINOW0SMLMShLrLAaKzawvsBsYAfwNuMM594tcblNERApTrp8HdQ0wP+n7C4HrAQccBFSbWXXrQufcgBxvX0RECkSuy8yrgepOFl+fy22JiEhh01RHIiISSkpQIiISSkpQIiISSkpQIiISSkpQIiISSkpQIiISSkpQIiIBq6uDBQu8f6VNrm/UFRGRLNTVwezZEI9DWRnU1EAsFnRU4aAelIhIgGprveTU3Oz9W1sbdEThoQQlIhKgqiqv51Rc7P1bVRV0ROGhIT4RkQDFYt6wXm2tl5w0vNdGCUpEJGCxWPQSU11d/pOqEpSIiGTFr8IOXYMSEZGs+FXYoQQlIiJZ8auwQ0N8IiKSFb8KO5SgREQka34UdmiIT0Qk5PbWqZDUgxIRCbFMKub8KPkOghKUiERCoR6Eu9NRxVzy+89nyXfQ+zynCcrMLgHmAlOA/3bOzU1aNhv4OTAWeAaY65xbncvti0hh2psnVG2tmGt97+kVc90lsJ4Kwz7P9TWoD4CbgN8kv2hmw4BFwLXAEKAB+H2Oty0iBWpvnlC1tWLuxhs7ThL5KvkOwz7PaQ/KObcIwMwqgdFJi84CXnHOPZBYXg1sMrNJzrnXcxmDiBSe7noRha6rirl8lXyHYZ/7dQ3qMODF1m+cc9vNbFXi9XYJyszmAfMAxo4d61OIIhJWmlC1a/ko+Q7DPvcrQQ0ANqa9thkY2FFj59xCYCFAZWWly29oIhIFUZlQNejCglwKep/7laC2AYPSXhsEbPVp+yIieReGwoLu5C2BNjfncGUevxLUK8BFrd+YWX9gfOJ1EZGCkK+KulzJaQLdvBnq62HpUu+rvj6nsULuy8xLEussBorNrC+wG3gYuM3Mzgb+BFwHvKQCCREpJGEoLGjVUU+ps8q8bntUzsGqVW3JaOlSePll7/U8ynUP6hpgftL3FwLXO+eqE8npDuA/8e6DOjfH2xaRXori9ZMwxRyGwgLovKeUnkCHDu2kR7VzJyxblpqQNmxI3UhZGUybBjNmeF+xGIwcmdP3kesy82qgupNlfwUm5XJ7IpI7Ubh+ki6MMQddWACdDzWmJ9CUdrtaqP3u48Sab/KSUzyeutLhw2HmzLaENG0a9O2b1/ehqY5EBAj/9ZOORDFmP3Q11Bg7tplYv5e9XtH/20BJ85W0UEJJSxNVT98I1IMZHH54akIaP9573UdKUCIChOv6SaaiGLMfUnpKx2wntnUJVCcVM2xtLaCejuMKAJwZzP0SnFMNxx0HgwcHFH0bJSgRAcJz/SQbUYw5r5yDt9+GJUuILV1KbOlSuHpF+2KGigqYOZParZfQ/GgfXIvRXFRM7cFfJXZKIJF3SAlKRPYIw/WTbAUZc+AFGrt2wfLlsGRJWzHD+vWpbUpL4eij24brkooZquqg7Mnw9kCVoEREeiCQAo31670Ntyakhob2xQzDhnmJqDUhTZsG5eUdri7sPVAlKBGRHsh7gUZzM7z6qpeIWhPSqlXt2x12WGpCmjAhq2KGMPealaBERDKQPpyX8wKNrVvhmWfaElJ9PWzZktqmf3+vgKE1IR13HOy7by83HF5KUCIi3ehsOK/Hw2POwTvvpPaOVqyAlpbUduPGpfaOpkyBkr3nsL33vFMRkR7q6sbXjBLTrl3w/POpCWndutQ2JSVQWdl239GMGTBqVLtVBV6Y4SMlKBGRbnQ0RdCCBV0kiQ0bvEzSmpAaGrwklWzo0NRkdMwxnRYztPK7MCPoZKgEJSKR5sdBNHk4b+hQuOyypCTxZAuxfV5tK/NesgTefLP9Sg49tC0ZzZwJBx+c9cwMfs6cEYZppJSgRCSy/DyItg7nLajeRXxXKc0tRcQbd1M7+/vEdlWnNu7Xr62YofXeo26KGTJJtH7OnBGGaaSUoEQksvJ+EHUOVq9OmdW76oVyytyTxCmljCaqdj0OY8emDtcdeWRWxQyZJlo/71sKwzRSSlAiERP0dYEwyflBNB5vK2Zo/frgg5QmsZISag7+JrX7/jNVp5UTm/sAjB7dq81mk2j9um8pDDfxKkGJREgYrgv4rauE3HoQve++Hq5848a2YoalS+G557xnISUbMqRdMUOsXz+62u3ZnkSEobfSkaBv4s0oQZnZL4CLgVHOuQ/Slk0EVgC/cM5dmvsQRaRVGK4L+CnThHzvvV6be+/tImm3tMDrr6fOW/fGG+3bTZ6cmpAmTsyqmKEnJxFh6K2EUaY9qDq8BHUs8Ejash8DW0h9kq6I5EFYz7TzJZOE3Gmbbdvg2WfbklFdHXUfT6KWKqp4nRhveGXdycUM06d7ZXp5jrkjQfdWwijTBFWf+DclQZnZGcBpwDecc//IbWgikm5vO9POJCF7bZzXpriZqmU/hWm/hRdf9LJEQh3TmW1/I+7KKCttoeYXbxL7wgRvtu8kvb3Gt7edRORTpgnqDeAjvAQFgJmVAj8CXgZ+mfvQRKQjQZxpB1WY0WlCbmqCF17Y89yjmv47qW08jKrmWmIPJc6ni4u9mbwT0wTVLj+F+A/LvZ5NSzG16ycTS81NObnGt7edRORTRgnKOefMrB6YaWbmnHPAvwKHAHOcc81dr0FEoirowoxYDGKHfOgFctWStmKGxsa2NkBs36e9xjO/3zYzQ//+e9pUjYWyn3Xds8nVNT4N1+VGNlV89cDpwEQz+wi4FnjEOVeT6QrMrAL4D7zP0y7gQeAy59zuLOIQER/5XpjR0gIrV6bOW7dyZft2EyemTqQ6cSIUFXW62s56Nsm9Qw3PhUs2Caou8e+xwCygD/DtLLf3H8AG4ABgMPAk8C/Av2e5HhHxSd4P2tu3ez2i1mRUVwf/SLuk3bcvHHtsW0KaPt17MF+W0ns2HfUONTwXHtkkqGeBFuArwEzgNufcW1lu70DgDufcTmCdmT0OHJblOkQkz9KvOeX0oP3ee3t6R3VPbKX2jZFUub8R21OLhfdI8tae0cyZ3swMZWW93HB7993n3fbkXFvv8KqrlJjCIuME5ZzbYmavAicA64Dv92B7PwHONbNaYF+8CsBr0xuZ2TxgHsDYsWN7sBmRwpbPooXOrjn1aDtNTV41XfJw3fvve9thOrOpIU4ZZXYtNWf9nNhnR3lJacyYrCdSzVZdHdx9t5ecwKup0JBemzDMWJLtTBLPAocDVznntvZge3/HSzxbgGLgXtrfV4VzbiGwEKCystL1YDsiBSvfRQu9uub00Uepj5l49tmUYgYABg+GWIzapu8Q/1tfb9LVohJqp32b2Lm5ex/dqa2F3Ymr32bwpS+p59Qq6MKYVhknqERZeRXQgJdYsmJmRcDjeIlnBjAA+A1wC/DdbNcnsrfKd9FCxtecnGtfzPD66+3bHXJI6mMmJk2CoiKq6qBsSffbydeZfFWV12tqafFuhfriF3O37qgLy4wl2fSgvoN3DemCRJl5toYAY/GuQe0CdpnZ3cBNKEGJZCzfRQudXnPascMrZkieSPWjj1J/uG9fr7w7+TETw4dnt50k+T6Tbx1FzPNoYuSEpZqxywRlZkOAU4AjgMuBHznn6rv6mc445zaZ2dvA183sdrwe1EXASz1Zn8jeyo8bQWMxiI1530tCv08ko+efbxsTa3XAAW3FDDNmwNSpWRUzdHdtK59n8q1DfM55/xb6vIbZCMvNxt31oE4BfotXGv5j4Mpebu8svEKJK4Bm4G/At3q5TpG9Ts5vBN29u62YofXr3XdT2xQVeQkoebhu7Ni8dj/yeSYfll5CWIXhZmPr2WidfyorK11DQ0PQYUiOhaFCaK/20UdQX9+WjJ55xhvCS7bPPt4vpzUhHXssDBzoe6j5rljU5zB3zGyZc64yV+vT86DEd2GpENprOOc9ViK5d/Tqq9QxPTGzdyMxdsCECanDdYce2uXMDH4Jw5m8BEMJSnwXlgqhgtXY2L6Y4cMPU5rUlc5idvNfiLtSykodNYu2EDtjSEABB0MnSuGnBBURUR6KSI+9UMf+A/sdrVmTmoyWL29fzLD//im9o9onK4lfX0JzC8SbofalIcTO8DHmENCJUvgpQUVAlM/0Oos9DBVCueTb72j3bnjppdSEtHp1apuiIm9qoOThuoqKlGKGKgdlCwrvJCEbhXqiVEiUoCIgymd6ncVeaNcV8vY7+vjjtpkZWosZtm9PbTNokDd5amtCOvZY77UuFOJJQra0D8JPCSoLQQ3hRPlML8qxZyMn79M5ePNNbxLVh9dRW9+Xqg2/T51EFWD8+PbFDMXFWW/Oj5OEsA9NF9qJUqFRmXmGgh5mC/sfeleiHHs2sn6fjY2wbFnbNEFLl8KmTamTqBKnZsplxE4d3DYzw4gR+X0jGeru/Qb9NyP+U5l5QIIeZovymV5UYk8/4GabcLp9n2vXps5bt3y5N9t3shEjqB36DeKv9aXZFREvLqb2vIXErurx28qLTJJP0H8zEn1KUBnaW4aq9lbpB9yf/AQuu6wXZ/+7d8PLL6cmpHfeSW1jBkcckfpU2AMPpKreKNsTi4Xys5ZJ8tHfjPSWElSGdEG1sKUfcB96KMuz/82b22ZmWLLEK2bYti21zcCBXjFDa0I67rgOixliMS9BPvQQnH22P5+1bHuLmSQf/c1IbylBZSEqQ1VRELbrUukH3LPPhsWLOzkAOwerVrVdN1qyBF55pe3Jd60OOih13rrDDsuomKGurq33tngxTJmS333Uk2tFmSYf/c1IbyhBie/CePG8owPulCmJ72O7iLU0wG1J9x5t2JC6grIymDatLSHNmOHdHNsDfl+76en2lHwk35SgxHdhvXi+54C7bh0sWkps6VJiS5bA/GXtixmGD08t9Z42zXsWUg705tpNT3qmulYkYaUEJb4L1QGxubmtmKF1uO7tt1PbmHndqeTe0fjxeXvMRE+v3fS0Z6prRRJWSlDiu54cEHN2zWrzZq+AoTUh1dfD1q2pbQYMaCtmmDHD+/8++/Rio9nryfBZb3qmGq6TMFKCkkBkc0Ds8TUr5+Ctt1LnrVuxon0xw4EHpvaOpkzp0cwMQQtVz1QkB5SgpJ2wVdh11TNIifXoXd7MDMkJaf361JWVlqYWM8RiMHKkv28oTzRUJ4VGCUpShLHCrrOeQd2fPmL2WYOINxll1kRN0SeJ7V6c+sPDh6f2jqZNg/Jyv99Ct3J1UqChOikkSlCSIowVdrEY1DzRTO0DG6nqU0fszofhC0upXfU54txIM8XEXQu1LccTO/wfqQlpwoSsihmC6D2G8aRAJAyUoCRFaK5jbNmSUswQq68ntmVLSpOqvs9QFt9N3BllZUVU/e9V8Mmbe7zJfCeKzpJfGE8KRMLA9wRlZucC84GxwDpgrnNucdc/JX6d2QdyHcM5b5665Fm9V6yAlpbUduPGpcxbF5syhZrnSpJiHdirMPKZKLpKfkGfFITtmqNIK18TlJmdDNwCnAM8Cxzg5/ajyu8hoLxfx9i1C55/PjUhrVuX2qakBCor2xJSLAajRuU11nwmiq6SX5DFDRpelDDzuwd1PXCDc671CWxrfN5+JIVtCCjrM+4NG7wfak1IDQ1ekko2dGjqrN6VlZ0WM+TrjD+fiaK75BdUcUPYPlsiyXxLUGZWDFQC/2tmbwJ9gUeAy51zjWlt5wHzAMaOHetXiKEV9BBQsm7PuFta4NVXqbv/TWqfbKJqwx+IrXmw/YoOPTQ1IR18cEbFDPk+489XoghrCXiYPlsi6fzsQY0ASoHPAicATcD/ANcAVyc3dM4tBBaC90TdXAYRxfH2bA5u+X5/7c64/7KL2I6n23pH9fXUbZ6c9ETYM6jps4nYDGtLSNOnw7775mb7tdH6PYIXc/L3QQpr4hQBfxNUay/pZ865tQBm9iM6SFD5EuXx9kzO7PP+/pyjauI6yoqHE28xylqaqLphNril1DGdWqqoYjO1+3yG+OY+Xvl3cTG11/6V2NW5mZkhymf8mf5+/D6J0r1TEla+JSjn3D/M7H0guUeU095Rd6J89t2R9ANZzt9fPO4VMyQ9FTa2di01e5JRLbGSBuoO/hKz/+9O4i0l3tNoby2i7LKkJ8KelLtpg6J8xp/J7yfKJ1EiueZ3kcTdwDfN7HG8Ib5vAY/6tfEon32n6+hA1uv3t3Gjt+LWhNTQADt3prYZMoTYjGHEZgyCmbdAZSW1P+1H/FpoboF4E3z4YX6TSFTP+DP5/QRxEhXFYW/ZO/idoG4EhgFvADuBPwDf92vj+T779vMPvaMD2VVXZfH+WlrgtddSHzPxf//Xvt3kyalPhT3kkHbFDB0deINMImE94Gby+fP7JEo9NgkzXxOUc64J+JfEVyBydeBMPwj6/Yfe2YGs0/e3bRs8+2xbQqqrg48/Tm1TXg7HHZc6keqQId3GEqZht7AfcLv7/Pm9Lwtt2FsKi6Y66oGODoJ+/6F3eSBzDt59N3VW7xdf9IJLNmZM6rx1Rx7pzfbdw3jCcGArhAOun/uykIa9pfAUXILyY3ino4NgEH/oew5k8Tg8+0JqQlqTdg90cXHbzAytX2PGZLytsA6bpfPj9xCVfZGJMPV+RdIVVILya3ins2suPX1Md9YHh02b2ooZli71hu7Sixn23Tc1GR1zDPTvn+EG2scY5mGzZH5cZ4zKvshUWHq/IukKKkH5NbzT2UEw2z/0zg52KUnruBbqfrea2gc3URV/gtib98PKle1XNnFi26wMM2Z43xcV9f7NEr1hs3wecKO2L0SirKASlJ/DbLk4CHZ0sKOxkdmnlxGPG2UW5yd9r+SyHTcTZwxlHEYNjxIrL4djj21LRtOnw7BhOXhXHevJfi2kYbBkumYj4p9IJ6j0g2CYpgTKZHtVVVBW2kLcQZntpurei6m9eiRxd33iIXzFPLTjVOKU0UwJ8aIiar/2ALGfjOhxMUNPZDtsVojDYK10zUbEP5FNUJ0dBEMxJVCn23OUlbRQ87UHia1dRGzpUmp2jvZmZWipJbayHopmUsZu4hhlpcbZ1x/D4huKE7EWUXXhaG9GQ59l02Ms9GEwXbMR8UdkE1RvDoK+HUA//BDq66m9rYR44xyvV9TcQu1PXyDGHwCIDd5GLLYvzPwUzLiZ2DHHULOib9IZ+lCmnBitM/ZcD4MV6nChiHQtsgmqNwfBvFxHcM4rXkiat47XX/e2x3TKOIE4pd5Q3mn94Z9/5V0/mjSpXTFD+hl6V2fsYTx4Jw+DDR3au9m7C3m4UES6FtkE1ZtrATm5jrBjBzz3XFtCqquDjz5KbdO3LxxzDLGZM6kZspzazVOpOqM/sdg1Pdhge2E+eLfG0V183SXYQh8uFJHORTZBQe+uBaT/bLc9kfffT+0dvfAC7N6d2uaAA7xS79Zy76OO8o7MQCzxla43PaCwH7y7iy+TBKuqOZG9V6QTVCa6SgCty4YOhW9+E5qavOK42r/uJtbvxdSE9N57qT9cVARTp6ZOpDp2LHX15m2vGWJl3cfWmx5Q2A/e3cWXSYJV1ZzI3qugE1RXCSB5GbjENHVGPO647xN3E2uel7qyffbxfrg1GR17LAwYkPH2OtLbHlDYD97dxZdpglXVnMjeKRIJqqfDYB0mgOkO3niD2h9uJb5zKs2uGKMFSCpUaN4NBx+c2juaPLnbmRmyTTi56AGF/eDdVXxhT7AiEqzQJ6jt23s+DOYlAEd8l6OsqJmqP30Pfng3fPhhorKuhjilFNOMs2J2u2LKSh1ffORcOP3rWceabcLRATr8CVZEghP6BLV1a/cX2lMO8GvW7JlENbZkCTXxPtS2HO/dCLuk3vuh/fcnNnMUNSP/h9qmmVSddwCUliatZ98exdqThKMDtIhIx8w5F3QMXZo8udKtXt3Q8XWkxbuZfXKRt6yoiZph5xJb/0jqCoqK4IgjUmf2rqho91RYERHpHTNb5pyrzNX6Qt+D6t8/qVdy9BZiHy+Ba70eUu3i44k3XevNU9dcRO36ScQGDWorZpgxwytmGDQo6LdR0MJ4s7CIRF/oe1CVBx7oGk4+2Ru2e+WVlGV1TGe2/Y04Zd4cd795l9h5Fd7D+cQXYb5ZWET8tdf1oHjnHfjVr7z/l5V5D95L9I5isRg1b5Unzt6LicXGBxnpXinsNwuLSHQFkqDM7GBgBfCgc+7CLhsPHgzXXOMlpaOPhj59UhbHRuiAGKSw3ywsItEVVA/q58BzGbUcPx6+/e38RtNLe/M1GJXKi0i++J6gzOxc4GNgKTDB7+3nmq7BqFReRPKj66kRcszMBgE3AP/WTbt5ZtZgZg0bN270J7ge6vCx7T6pq4MFC7x/RUQKjd89qBuBu5xz71sX9yE55xYCCwEqKytDXWYY1DUY9dxEpND5lqDM7ChgDjDVr236IahrMKqeE5FC52cPqgqoAN5N9J4GAMVmdqhz7mgf48i5IK7BqHpORAqdnwlqIfC7pO+/g5ewsp+VVVQ9JyIFz7cE5ZzbAexo/d7MtgE7nXPhroIIMVXPiUghC2wmCedcdVDbztTefH+TiEjQwj/VUUBUJSciEixf74MKQk/vFQry/iYRESnwHlRvekG5rpLTcKGISHYKOkH15l6hXFbJabhQRCR7BZ2getsLylWVnG6qFRHJXkEnqLDcK6SbakVEslfQCQrCca9QWBKliEiUFHyCCoswJEoRkSgp+DJzERGJJiUoEREJJSUoEREJJSUoEREJJSUoEREJJSUoEREJJSUoEREJJSUoEREJJSUoEREJJSUoEREJJSUoEREJJSUoEREJJd8SlJn1MbO7zGy1mW01sxfM7DS/ti8iItHiZw+qBHgPOBHYB7gG+IOZVfgYg4iIRIRvj9twzm0HqpNeetTM3gamAe/4FYeIiERDYNegzGwEcAjwSgfL5plZg5k1bNy40f/gREQkcIEkKDMrBf4LuNc593r6cufcQudcpXOucvjw4f4HKCIigfM9QZlZEXA/EAcu8Xv7IiISDb4+8t3MDLgLGAGc7pxr8nP7IiISHb4mKOBOYDIwxznX6PO2RUQkQvy8D2occDFwFLDOzLYlvi7wKwYREYkOP8vMVwPm1/ZERCTaNNWRiIiEkhKUiIiEkhKUiIiEkhKUiIiEkhKUiIiEkhKUiIiEkhKUiIiEkhKUiIiEkhKUiIiEkhKUiIiEkhKUiIiEkhKUiIiEkhKUiIiEkhKUiIiEkhKUiIiEkhKUiIiEkhKUiIiEkhKUiIiEkhKUiIiEkhKUiIiEkq8JysyGmNnDZrbdzFab2fl+bl9ERKKjxOft/RyIAyOAo4A/mdmLzrlXfI5DRERCzrcelJn1B84GrnXObXPOPQ38L/AFv2IQEZHo8LMHdQiw2zn3RtJrLwInpjc0s3nAvMS3u8zsZR/iy7VhwKagg8hSFGOGaMYdxZghmnFHMWaIZtwTc7kyPxPUAGBL2mubgYHpDZ1zC4GFAGbW4JyrzH94uRXFuKMYM0Qz7ijGDNGMO4oxQzTjNrOGXK7PzyKJbcCgtNcGAVt9jEFERCLCzwT1BlBiZgcnvXYkoAIJERFpx7cE5ZzbDiwCbjCz/mY2E/g0cH83P7ow78HlRxTjjmLMEM24oxgzRDPuKMYM0Yw7pzGbcy6X6+t6Y2ZDgN8AJwMfAlc6537rWwAiIhIZviYoERGRTGmqIxERCSUlKBERCaVAElSmc/KZ5xYz+zDxdYuZWdLyo8xsmZntSPx7VAhivtzMXjazrWb2tpldnrb8HTNrNLNtia8n8hVzlnFXm1lTUlzbzOygpOVh3Nd/Tos3bmYrkpb7tq/N7BIzazCzXWZ2Tzdtv2Vm68xsi5n9xsz6JC2rMLOnEvv5dTObk6+Ys4nbzC5K/N63mNn7ZnarmZUkLa81s51J+3plCGKea2bNaZ+RqqTlYd3Xv0iLeZeZbU1a7ue+7mNmdyX+Drea2QtmdloX7XP72XbO+f4F/Dfwe7ybd4/Hu2H3sA7aXQysBEYDo4BXga8llpUBq4FvAX2ASxPflwUc83eBo/Fugp6YiOncpOXvAHNCuK+rgf/sZB2h3Ncd/FwtcF0Q+xo4C/gMcCdwTxftTgHWA4cB+yZi/kHS8jrgR0A53tRgHwPDQxD314ETEp+FUcAyvCKn5H3/lZDt67nA010sD+W+7uDn7gF+E9C+7p84NlTgdWg+hXfvakUHbXP+2c77G+zkDceBQ5Jeuz/5jSS9vhSYl/T9l4H6xP8/CawhUeiReO1d4NQgY+7gZ/8d+FnS9+/g30Ezm31dTecJKvT7OvEH1Jz8h+Pnvk7a5k3dHDR/C9yc9P1sYF3i/4cAu4CBScsXkzgpCzLuDtr/G/DHpO99O2hmsa/n0kmCisq+Tvw9bAVODHJfp8X0EnB2B6/n/LMdxBBfZ3PyHdZB28MSyzpqdxjwkku804SXOllPb2UT8x5mZnhnnek3I/+XmW00syfM7Mjchpoi27jPNLOPzOwVM/t60uuh39fAF4HFzrl30l73a19nqqPP9AgzG5pY9pZzbmva8nzs596aRfvP9QIz22RmS5KH0gI2NRHTG2Z2bdKwZFT29dnARuDvaa8Hsq/NbATe32hHEyzk/LMdRILKeE6+RNvNae0GJA786cu6Wk9vZRNzsmq8fXx30msX4J3tjwOeAv5iZoNzEWQHson7D8BkYDjwVeA6MzsvaT1h39dfxBsKSebnvs5UR59p8N6fn/u5x8zsS0AlcHvSy1cAB+EN/y0E/mhm4wMIL9nfgcOB/fAO9OcBrdeEI7GvgYuA+9JODgPZ12ZWCvwXcK9z7vUOmuT8sx1EgspmTr70toOAbYlflp9z+2W9LTO7BO+geYZzblfr6865Jc65RufcDufcArxx2BNyHzKQRdzOuVedcx8455qdc0uBnwKfzXY9OdCTfX08sD/wYPLrPu/rTHX0mQbv/YV+vkoz+wywADjNObdnpm3n3DPOua3OuV3OuXuBJcDpAYXZGtNbzrm3nXMtzrkVwA0E85nuETMbC1QB9yW/HsS+NrMivKH2OHBJJ81y/tkOIkFlMyffK4llHbV7BTgi0ZtqdUQn6+mtrOYRTJxhXgnMds693826HWDdtOmp3sx/mBxXaPd1wkXAIufctm7Wnc99namOPtPrnXMfJpYdZGYD05aHYr5KMzsV+BVwZuKA35Uw7Ot06Z/p0O7rhC8AS5xzb3XTLq/7OvF3fxfeg2bPds41ddI095/tgC6y/Q6vUqs/MJPOK8u+BryG15UdmXgz6VV8/4pXWXYJ+a0syzTmC4B1wOQOlo1N/GwZ0BdvuGEjMDQE+/rTeJU3BhyLVxRxUZj3daJteWL5SUHua7yqzb54vYv7E/8v6aDdqYnPx6HAYOBvpFY61eMNnfUF/pn8V5ZlGvdJeNOTzepg2WC8Cq6+ifVdAGwnqdAloJhPA0Yk/j8JeBmYH/Z9ndR+JfClIPd1Ypu/SOyrAd20y/lnOy9vKIM3PAR4JLFj3wXOT7x+At4QXms7A24FPkp83UpqJdlUvHLXRmA5MDUEMb8NNOF1aVu/fpFYdhheccH2xB97DVAZkn3934mYtgGvA5emrSd0+zrx2nl4ydLSXvd1X+Ndb3RpX9V4iXIbMDap7b/hleNuwbs+2SdpWQVelVYj3gEqr1WImcaNdw1vd9rn+s+JZcOB5/CGaz7GOxCdHIKYb0/s5+3AW3hDfKVh39eJtrFE3APT1uH3vh6XiHNn2u/+Aj8+25qLT0REQklTHYmISCgpQYmISCgpQYmISCgpQYmISCgpQYmISCgpQYmISCgpQYmISCgpQYmISCgpQYmISCgpQYnkgZmVJx6N/m7yY68Ty36deBT5uUHFJxIFSlAieeCcawTmA2OAf2l93cwW4D0Z+pvOud8FFJ5IJGguPpE8MbNivKeG7of3gLmvAD/Gm1H7hiBjE4kCJSiRPDKzTwF/xHv0wCeAO5xzlwYblUg0KEGJ5JmZLcd7XMnv8B4d4tKWfx64FDgK2OScq/A7RpEw0jUokTwys3Noe8ro1vTklPAP4A7gat8CE4kA9aBE8sTMPok3vPdHvIdYfg6Y4px7rZP2nwF+oh6UiEc9KJE8MLPjgEXAErynj14DtOA97ltEMqAEJZJjZnYo8BjwBvAZ59wu59wq4C7g02Y2M9AARSJCCUokh8xsLPAXvOtKpznntiQtvhFoBG4NIjaRqCkJOgCRQuKcexfv5tyOln0A9PM3IpHoUoISCVjiht7SxJeZWV/AOed2BRuZSLCUoESC9wXg7qTvG4HVQEUg0YiEhMrMRUQklFQkISIioaQEJSIioaQEJSIioaQEJSIioaQEJSIioaQEJSIioaQEJSIiofT/ARKu6ftPCzeiAAAAAElFTkSuQmCC\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "plt.plot(X_new, y_predict, \"r-\", linewidth=2, label=\"Predictions\")\n", "plt.plot(X, y, \"b.\")\n", "plt.xlabel(\"$x_1$\", fontsize=18)\n", "plt.ylabel(\"$y$\", rotation=0, fontsize=18)\n", "plt.legend(loc=\"upper left\", fontsize=14)\n", "plt.axis([0, 2, 0, 15])\n", "save_fig(\"linear_model_predictions_plot\")\n", "plt.show()" ] }, { "cell_type": "code", "execution_count": 9, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "(array([4.21509616]), array([[2.77011339]]))" ] }, "execution_count": 9, "metadata": {}, "output_type": "execute_result" } ], "source": [ "from sklearn.linear_model import LinearRegression\n", "\n", "lin_reg = LinearRegression()\n", "lin_reg.fit(X, y)\n", "lin_reg.intercept_, lin_reg.coef_" ] }, { "cell_type": "code", "execution_count": 10, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([[4.21509616],\n", " [9.75532293]])" ] }, "execution_count": 10, "metadata": {}, "output_type": "execute_result" } ], "source": [ "lin_reg.predict(X_new)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "`LinearRegression` 클래스는 `scipy.linalg.lstsq()` 함수(\"least squares\"의 약자)를 사용하므로 이 함수를 직접 사용할 수 있습니다:" ] }, { "cell_type": "code", "execution_count": 11, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([[4.21509616],\n", " [2.77011339]])" ] }, "execution_count": 11, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# 싸이파이 lstsq() 함수를 사용하려면 scipy.linalg.lstsq(X_b, y)와 같이 씁니다.\n", "theta_best_svd, residuals, rank, s = np.linalg.lstsq(X_b, y, rcond=1e-6)\n", "theta_best_svd" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "이 함수는 $\\mathbf{X}^+\\mathbf{y}$을 계산합니다. $\\mathbf{X}^{+}$는 $\\mathbf{X}$의 _유사역행렬_ (pseudoinverse)입니다(Moore–Penrose 유사역행렬입니다). `np.linalg.pinv()`을 사용해서 유사역행렬을 직접 계산할 수 있습니다:" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "$\\boldsymbol{\\hat{\\theta}} = \\mathbf{X}^{-1}\\hat{y}$" ] }, { "cell_type": "code", "execution_count": 12, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([[4.21509616],\n", " [2.77011339]])" ] }, "execution_count": 12, "metadata": {}, "output_type": "execute_result" } ], "source": [ "np.linalg.pinv(X_b).dot(y)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# 배치 경사 하강법을 사용한 선형 회귀" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "**식 4-6: 비용 함수의 그레이디언트 벡터**\n", "\n", "$\n", "\\dfrac{\\partial}{\\partial \\boldsymbol{\\theta}} \\text{MSE}(\\boldsymbol{\\theta})\n", " = \\dfrac{2}{m} \\mathbf{X}^T (\\mathbf{X} \\boldsymbol{\\theta} - \\mathbf{y})\n", "$\n", "\n", "**식 4-7: 경사 하강법의 스텝**\n", "\n", "$\n", "\\boldsymbol{\\theta}^{(\\text{next step})} = \\boldsymbol{\\theta} - \\eta \\dfrac{\\partial}{\\partial \\boldsymbol{\\theta}} \\text{MSE}(\\boldsymbol{\\theta})\n", "$\n" ] }, { "cell_type": "code", "execution_count": 13, "metadata": {}, "outputs": [], "source": [ "eta = 0.1 # 학습률\n", "n_iterations = 1000\n", "m = 100\n", "\n", "theta = np.random.randn(2,1) # 랜덤 초기화\n", "\n", "for iteration in range(n_iterations):\n", " gradients = 2/m * X_b.T.dot(X_b.dot(theta) - y)\n", " theta = theta - eta * gradients" ] }, { "cell_type": "code", "execution_count": 14, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([[4.21509616],\n", " [2.77011339]])" ] }, "execution_count": 14, "metadata": {}, "output_type": "execute_result" } ], "source": [ "theta" ] }, { "cell_type": "code", "execution_count": 15, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([[4.21509616],\n", " [9.75532293]])" ] }, "execution_count": 15, "metadata": {}, "output_type": "execute_result" } ], "source": [ "X_new_b.dot(theta)" ] }, { "cell_type": "code", "execution_count": 16, "metadata": {}, "outputs": [], "source": [ "theta_path_bgd = []\n", "\n", "def plot_gradient_descent(theta, eta, theta_path=None):\n", " m = len(X_b)\n", " plt.plot(X, y, \"b.\")\n", " n_iterations = 1000\n", " for iteration in range(n_iterations):\n", " if iteration < 10:\n", " y_predict = X_new_b.dot(theta)\n", " style = \"b-\" if iteration > 0 else \"r--\"\n", " plt.plot(X_new, y_predict, style)\n", " gradients = 2/m * X_b.T.dot(X_b.dot(theta) - y)\n", " theta = theta - eta * gradients\n", " if theta_path is not None:\n", " theta_path.append(theta)\n", " plt.xlabel(\"$x_1$\", fontsize=18)\n", " plt.axis([0, 2, 0, 15])\n", " plt.title(r\"$\\eta = {}$\".format(eta), fontsize=16)" ] }, { "cell_type": "code", "execution_count": 17, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "그림 저장: gradient_descent_plot\n" ] }, { "data": { "image/png": "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RlpjPbXYvZvleUeOFOnRg/lsre/mqKNEbr2VJYN37QrvuPv2MePAQw9xln/16naMafXqfO+hh7jNvn3pGd+YaBt1loD2lU91/XpuU7asfa2txcpSUakS42lHjrRzGjdrxhhy6zt+6CH3GOWMDJZv/uGH0OJtXS6R335jPLIV11yvHivqLVoU+jWINVu2iIwfz8wpVvW/ChX4//jxXK/4R23UJpl9qK/zaz+qiERvo2njQQ4W7xNNPJDno5LLLrP37djRzvkYTfxUsHPn5XG0XbOm/20T/QipNLBjB/Dzz7aH+M8/KYOysvhYfeRIeoh79fLOGuAPEWDNGnfv8OLFthelfXtg0CB+h716Aa1bp7fX2CIZNnrZZbZNWOeoX59ez6+/dq+CV6YM8xfv28fXW29lmMNbbzFk4sQTgRdeAM46ix6wDRvo2X3lFfu7y8hgFoqRI32302mjjRszpnjiROCvvxiGMXAg29yvX+i5j2OFCLBkiR068dtvfK9RI7apf39mycjOTmy7lMQRLxtNZh/qPL/2o0pMiUZdJ2JJhHfK2j/UGayxnqE7bpydU9Jqu+c5dMZsbNi0SeT990WGDxdp3972CmZni5xwgsj999MzmJsb+jFzc0VmzhR59FGRAQNEate2j1uliki/fjzut9/SQx0KUO+UF4HsrqiInv+uXcXLW1yhAr9fgE8FbrtNpE8f/l++vMg119ie3KIikW++4fdoVdA74wyR//6XTxOC2Wh2NvdxVt877jhmLgn1u48lhw8zK8b119Mzbl2TnBzmVV6woPRknYg1aqPe+8a7Cl8gtB9VPInWRpNuuMEWZ3qaYAYVj9Qyvs4RawPz9XgqlmUqSzN//y0yaZLI1VeztK0lECpVEjn1VJFHHhH55RcKiVBwuVi04d13meare3c7DMMqFnHFFbxZL15sF3EIl3TsfEUSb6OHD1N8OguueC7GMOWeUyQ2bizy+ON28Ypt25im7IgjuL5OHZG77hJZu5brA9lodrbICy+IdOvmft4TTxRZvTo2nzMctm8XmTiR6esqV5b/Hwj0789rFWpJayUwaqORo/2okgiitdG0CbEAfM+edT4usfjsM85UHzSIs859EegxS6B18Ujt4vl4CvA+h86YDY4IsHo1QyWskIn167muWjVOpBs6lCETXbuG9oj78GEWQ7BCJebMYdorAKhY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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "np.random.seed(42)\n", "theta = np.random.randn(2,1) # random initialization\n", "\n", "plt.figure(figsize=(10,4))\n", "plt.subplot(131); plot_gradient_descent(theta, eta=0.02)\n", "plt.ylabel(\"$y$\", rotation=0, fontsize=18)\n", "plt.subplot(132); plot_gradient_descent(theta, eta=0.1, theta_path=theta_path_bgd)\n", "plt.subplot(133); plot_gradient_descent(theta, eta=0.5)\n", "\n", "save_fig(\"gradient_descent_plot\")\n", "plt.show()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# 확률적 경사 하강법" ] }, { "cell_type": "code", "execution_count": 18, "metadata": {}, "outputs": [], "source": [ "theta_path_sgd = []\n", "m = len(X_b)\n", "np.random.seed(42)" ] }, { "cell_type": "code", "execution_count": 19, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "그림 저장: sgd_plot\n" ] }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "n_epochs = 50\n", "t0, t1 = 5, 50 # 학습 스케줄 하이퍼파라미터\n", "\n", "def learning_schedule(t):\n", " return t0 / (t + t1)\n", "\n", "theta = np.random.randn(2,1) # 랜덤 초기화\n", "\n", "for epoch in range(n_epochs):\n", " for i in range(m):\n", " if epoch == 0 and i < 20: # 책에는 없음\n", " y_predict = X_new_b.dot(theta) # 책에는 없음\n", " style = \"b-\" if i > 0 else \"r--\" # 책에는 없음\n", " plt.plot(X_new, y_predict, style) # 책에는 없음\n", " random_index = np.random.randint(m)\n", " xi = X_b[random_index:random_index+1]\n", " yi = y[random_index:random_index+1]\n", " gradients = 2 * xi.T.dot(xi.dot(theta) - yi)\n", " eta = learning_schedule(epoch * m + i)\n", " theta = theta - eta * gradients\n", " theta_path_sgd.append(theta) # 책에는 없음\n", "\n", "plt.plot(X, y, \"b.\") # 책에는 없음\n", "plt.xlabel(\"$x_1$\", fontsize=18) # 책에는 없음\n", "plt.ylabel(\"$y$\", rotation=0, fontsize=18) # 책에는 없음\n", "plt.axis([0, 2, 0, 15]) # 책에는 없음\n", "save_fig(\"sgd_plot\") # 책에는 없음\n", "plt.show() # 책에는 없음" ] }, { "cell_type": "code", "execution_count": 20, "metadata": { "scrolled": true }, "outputs": [ { "data": { "text/plain": [ "array([[4.21076011],\n", " [2.74856079]])" ] }, "execution_count": 20, "metadata": {}, "output_type": "execute_result" } ], "source": [ "theta" ] }, { "cell_type": "code", "execution_count": 21, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "SGDRegressor(eta0=0.1, penalty=None, random_state=42)" ] }, "execution_count": 21, "metadata": {}, "output_type": "execute_result" } ], "source": [ "from sklearn.linear_model import SGDRegressor\n", "\n", "sgd_reg = SGDRegressor(max_iter=1000, tol=1e-3, penalty=None, eta0=0.1, random_state=42)\n", "sgd_reg.fit(X, y.ravel())" ] }, { "cell_type": "code", "execution_count": 22, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "(array([4.24365286]), array([2.8250878]))" ] }, "execution_count": 22, "metadata": {}, "output_type": "execute_result" } ], "source": [ "sgd_reg.intercept_, sgd_reg.coef_" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# 미니배치 경사 하강법" ] }, { "cell_type": "code", "execution_count": 23, "metadata": {}, "outputs": [], "source": [ "theta_path_mgd = []\n", "\n", "n_iterations = 50\n", "minibatch_size = 20\n", "\n", "np.random.seed(42)\n", "theta = np.random.randn(2,1) # 랜덤 초기화\n", "\n", "t0, t1 = 200, 1000\n", "def learning_schedule(t):\n", " return t0 / (t + t1)\n", "\n", "t = 0\n", "for epoch in range(n_iterations):\n", " shuffled_indices = np.random.permutation(m)\n", " X_b_shuffled = X_b[shuffled_indices]\n", " y_shuffled = y[shuffled_indices]\n", " for i in range(0, m, minibatch_size):\n", " t += 1\n", " xi = X_b_shuffled[i:i+minibatch_size]\n", " yi = y_shuffled[i:i+minibatch_size]\n", " gradients = 2/minibatch_size * xi.T.dot(xi.dot(theta) - yi)\n", " eta = learning_schedule(t)\n", " theta = theta - eta * gradients\n", " theta_path_mgd.append(theta)" ] }, { "cell_type": "code", "execution_count": 24, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([[4.25214635],\n", " [2.7896408 ]])" ] }, "execution_count": 24, "metadata": {}, "output_type": "execute_result" } ], "source": [ "theta" ] }, { "cell_type": "code", "execution_count": 25, "metadata": {}, "outputs": [], "source": [ "theta_path_bgd = np.array(theta_path_bgd)\n", "theta_path_sgd = np.array(theta_path_sgd)\n", "theta_path_mgd = np.array(theta_path_mgd)" ] }, { "cell_type": "code", "execution_count": 26, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "그림 저장: gradient_descent_paths_plot\n" ] }, { "data": { "image/png": "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/0yVKlVo27aty/pevXoRHR3NX3/9BcDChQu57bbbqFy5cqbHCwsLS+1pA4SEhFC/fn327dvn0m78+PFcddVVFC9enMKFC1O9up092b59OwDh4eHUrl2b//3vf3z88cf8/fffWV6LJ86fP8/KlSvp2bMnYWEayKAoSv5EBbwAUqhQIVq3bs2oUaNYvHgxu3btolGjRowcOZKTJ09muu+JEyfcDjunzKuneHgfP37cqxCxMmXKZFgXEhLikk98zJgxDBo0iA4dOjBr1izWrFnD6tWrAVLbGWNYtGgRzZo147nnnqN+/frUrl2b8ePHZ2lDek6ePElycnKehrgpiqL4GhVwXxIRkb31eUTlypXp378/iYmJWfZcy5Yty2E3HvMp68qWLQuQOgftC2bOnEn79u1555136NixI9deey0VKlTI0K527dpMmzaN6OhoNmzYQLt27Rg0aBA//vhjts5XpkwZgoKCfGa/oiiKP1AB9yWHD7sfCs+jEDKwHuTu2LZtG5DWkw4JCQEgNjbWpV2bNm3Yv38/K1eudFn/+eefU6FCBa64wobed+zYke+//97j+bLD+fPnCQ4Odlk3efJkj+2NMTRp0oT/+7//A+DPP/8EPF9TesLCwrjxxhuJiorKsq2iKEqgomW4ChgNGzakQ4cOdO7cmVq1anHmzBnmzZvHhAkT6NatW+rccooQv/POO9x6660UKlSIZs2a0a9fP95//33uvvtuXn31VapWrcr06dNZtGgRH330UarH+siRI5k3bx4tWrTg+eefp27duhw4cID58+e7DTnLjE6dOvHGG28wevRomjdvztKlS/n6669d2mzevJlhw4Zx3333UbduXZKSkpgyZQqFCxemXbt2Ltf04Ycf0rdvX4KDg2ncuDFFihTJcM63336bNm3acMMNN/DUU09RtWpVdu3axcaNGxkzZkz2/umKoij+wJcecYG45NgLPZ8yfvx4uf3226V69eoSEhIiYWFh0qRJE3njjTckLi4utV1iYqIMGjRIypcvL8YYwcnr/eDBg9KrVy8JDw+XIkWKSKNGjeSzzz7LcK5//vlH7r//fgkPD5eQkBCpXbu2PPHEE6nb+/btK1WqVMmwX5s2baRNmzap78+fPy+PPPKIlCtXTooXLy5dunSRXbt2uXiOHzlyRPr06SP16tWT0NBQKVOmjLRu3Vrmz5/v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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "plt.figure(figsize=(7,4))\n", "plt.plot(theta_path_sgd[:, 0], theta_path_sgd[:, 1], \"r-s\", linewidth=1, label=\"Stochastic\")\n", "plt.plot(theta_path_mgd[:, 0], theta_path_mgd[:, 1], \"g-+\", linewidth=2, label=\"Mini-batch\")\n", "plt.plot(theta_path_bgd[:, 0], theta_path_bgd[:, 1], \"b-o\", linewidth=3, label=\"Batch\")\n", "plt.legend(loc=\"upper left\", fontsize=16)\n", "plt.xlabel(r\"$\\theta_0$\", fontsize=20)\n", "plt.ylabel(r\"$\\theta_1$ \", fontsize=20, rotation=0)\n", "plt.axis([2.5, 4.5, 2.3, 3.9])\n", "save_fig(\"gradient_descent_paths_plot\")\n", "plt.show()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# 다항 회귀" ] }, { "cell_type": "code", "execution_count": 27, "metadata": {}, "outputs": [], "source": [ "import numpy as np\n", "import numpy.random as rnd\n", "\n", "np.random.seed(42)" ] }, { "cell_type": "code", "execution_count": 28, "metadata": {}, "outputs": [], "source": [ "m = 100\n", "X = 6 * np.random.rand(m, 1) - 3\n", "y = 0.5 * X**2 + X + 2 + np.random.randn(m, 1)" ] }, { "cell_type": "code", "execution_count": 29, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "그림 저장: quadratic_data_plot\n" ] }, { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAagAAAEYCAYAAAAJeGK1AAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjMuMywgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/Il7ecAAAACXBIWXMAAAsTAAALEwEAmpwYAAAXb0lEQVR4nO3de4xmd13H8fe320J126INpYnBpYpQhKhUJpqRAKutIniBsF4q5aIRVyHgJWrCYhdWFrPxEiDIRVfLJcpFtLURRESqq6BLcGtQqJYKIohApFxsu5Rt2X7945mh03Gemedyzu/8zjnvV7KZnXmeeZ7feZ55zuf8Lud7IjORJKk2Z3TdAEmStmJASZKqZEBJkqpkQEmSqmRASZKqZEBJkqpkQEmSqtRoQEXEsyPiRESciojXbrrt0oi4MSK+EBF/ExEPaPK5JUnD0nQP6hPAi4BXb/xhRNwXuAY4CJwPnAD+qOHnliQNyJlNPlhmXgMQESvA/Tfc9CTghsz847XbDwE3R8RDMvPGJtsgSRqGRgNqGw8D/nn9m8w8GREfXvv5/wuoiNgP7AfYvXv3Ix7ykIcUaqYkqQknT8IHPwiZEAEXXwy7d09uu/7662/OzAt2eoxSAXUO8OlNP/tf4Nyt7pyZR4GjACsrK3nixIl2WydJatSRI3DwIJw+DWecAU97Ghw4MLktIj46y2OUWsV3G3Depp+dB9xa6PklSQXt3Qv3uhfs2jX5unfv/I9Rqgd1A/D09W8iYjfwwLWfS5IGZnUVrrsOjh2bhNPq6vyP0WhARcSZa4+5C9gVEWcDXwL+FPjNiNgH/DnwfOBfXCAhScO1urpYMK1reojvSuB24LnAU9b+f2VmfhrYB/wa8Dng24HLG35uSdKANL3M/BBwaMpt7wRcjidJmomljiRJVTKgJElVMqAkSVUyoCRJVTKgJElVMqAkSVUyoCRJVTKgJElVMqAkSVUyoCRJVTKgJElVMqAkSUs5fnxygcLjx5t93FLXg5IkDdDx43DppXDHHZMLE1533XKX2NjIHpQkaWHHjk3C6fTpyddjx5p7bANKkrSwJi7tPo1DfJKkhTVxafdpDChJ0lKWvbT7NA7xSZKqZEBJkqpkQEmSqmRASZKqZEBJkqpkQEmSqmRASZKqZEBJkqpkQEmSqmRASVLl2rqcRe0sdSRJFWvzcha1swclSRVr83IWtTOgJKlibV7OonYO8UlSxZq6nMXx44s/xjK/uwwDSpIqt+zlLOadx9oYSNDdHJgBJUkDt9U81rSQ2RxmT3/67L/bNOegJGng5pnH2hxm0N0cWNEeVERcBLwSWAVOAX8C/HxmfqlkOyRpTOaZx1oPs/Ue1NOeBpdcAldfDfv2lZ2Disws92QRbwP+B/gZ4KuAvwJ+LzNfNu13VlZW8sSJE2UaKElqfQ4qIq7PzJWd7ld6iO/rgDdn5hcz81PA24GHFW6DJA1Ok9UmVlfhwIHJ1y7Pwyq9SOKlwOURcQz4auBxwMHNd4qI/cB+gD179hRsniT1T5vVJjYP+ZWcgyrdg/o7Jj2mW4CPAyeAazffKTOPZuZKZq5ccMEFZVsoST3TZi9nff7q8OHyZZaKBVREnMFkSO8aYDdwXya9qF8v1QZJGqK2q01sHPIrqWQP6nxgD/DyzDyVmZ8BXgM8vmAbJGlwFu3lNDFv1Wal9WJzUJl5c0R8BHhmRPwWcA7wdOBfSrVBkoZq3moTTcxbtV1pvfQc1JOA7wU+DXwIuBP4hcJtkKTRa2Lequ0VfkVX8WXm+4C9JZ9TkvT/NbE6r+0Vftbik6QRaqJKelOV1qcpWkliEVaSkKRhqbWShCRJMzGgJElVMqAkSVUyoCRJVTKgJElVMqAkSVUyoCRJVTKgJElVMqAkSVUyoCRJVTKgJElVMqAkSVUyoCRJVTKgJElVMqAkSVUyoCRJVTKgJEkLOX4cjhyZfG2Dl3yXpIKOH2/vEuklHT8Ol14Kd9wB97rX5NLvTW+PASVJhZTYqZcKwGPHJttx+vTk67FjBpQk9VbbO/USAbhu797Jc6w/1969zT+HASVJhbS9Uy/Rq1m3ujoJwDZ7awaUJBXS9k69RK9mo9XVdocRDShJKqjNnXqJXk1JBpQkDUjbvZqSPA9KklQlA0qSVCUDSpJUJQNKklQlA0qSVCUDSpJUJQNKklQlA0qSeqDtS1vUqPiJuhFxOfACYA/wKeDHM/NdpdshSX1RsghsTYr2oCLiu4FfB34COBd4NPAfJdsgaXiG3rvYqgjsGJTuQf0q8MLMfM/a9/9d+PklDUzNvYumrs1UughsLYoFVETsAlaAP4uIDwFnA9cCv5yZt2+6735gP8CePXtKNVFSD5W8xMQ8mgzOoRWBnVXJIb4LgbOAHwIeBTwcuAS4cvMdM/NoZq5k5soFF1xQsImS+ma9d7FrV129i6aH5VZX4cCB8YQTlA2o9V7Sb2fmJzPzZuDFwOMLtkHSwKz3Lg4frmt4r9bg7JNiQ3yZ+bmI+DiQG39c6vklDVeNl5gY67Bck0ovkngN8JyIeDtwJ/ALwFsLt0GSiqgxOPukdEAdBu4L3AR8EXgz8GuF2yBJ6oGiAZWZdwLPWvsnSYPR1JJy3W2mRRIR8TsRkRHxNVvcdnFE3BERL2u+eZJUv/Ul5QcPTr4O9YTh0mZdxbf+cn/bFre9BLiFSfkiSRqdjUvKT52CQ4cMqSbMGlDrlR/uEVAR8X3A44DnZ+bnmmyYJC2rVAmk9SXlZ5wBd90F73ynPakmzBpQNwGfZUNARcRZTM5j+gDwu803TZIWV3LYbX1J+WWX3R1S252cO/TagU2ZaZFEZmZEvAd4ZEREZibwc8CDgcsy83SbjZSkeZUugbS6Ohnae9e7tq+ZV3PtwNrMU0niPcB9gIsj4n7AQeDazLyulZZJ0hK6qOQwS1WLsVYmX8Q8y8w3LpR4NHBv4Bcbb5EkNaCrSg47nZw71srki5gnoN4L3AU8A3gk8JuZ6bWcJFWrxkoOlkCa3cwBlZm3RMS/MqlE/imsACFJC6kxOGs0bzXz9659PZCZtzbdGEmS1s0cUGvLyvcCJ4DXtdUgSZJgvjmoXwK+DrhibZm5JEmt2TagIuJ84LHANwO/DLw4M9+z3e9IktSEnXpQjwXeAPwPk5p7z229RZIksUNAZeYbgTcWakv1LKcvSeWUvmBhb1meRJLKmneZ+WhZnkSSyjKgZtRFXS9JGjOH+GZkeRJJzkOXZUDNwfIkGit3zM5Dd8GAkrStvu6Ymw7V0teXkgElaQd93DG3EapeJqM8A0rStvq4Y24jVJ2HLs+AkrStPu6YFwnVWYYEnYcuy4CStKO+7ZjnDdW+zrMNnedBSRqk1VU4cGDy/yNHJiE0zXYn4h8/vvPvqx32oCQN1qw9o2lDgvasumUPStJgzVqibH1I8PDhe4aQJc66NcoelCcdSuMwz2KJrebZ+riCcUhGF1B22aVhmHXV3aIrENcf/6Uvhc98xgPaLgwuoHb6o+3jSYeS7mmeA81FViB6IFuHXs9BbV5ds/5HdfDg5OtWq26sSi71X9tzQ8491aG3PaitjnBm6R318aRDSffU9tyQc0916G1AbRVGs/5R9e2kw41c4CG1f6DpgWwdOgmoiHgQ8H7gTzLzKYs8xlZhNPQ/KsfFpbv1+UBTs+mqB/UK4B+XeYBpYTTkP1oXeEhleDBYh+IBFRGXA58H/gH4hll+Z9qw1pDDaCuOi0tleDBYh6IBFRHnAS8Evgt4xjb32w/sB7jwwgd6JLNm6EOYUi08GKxD6R7UYeCqzPx4REy9U2YeBY4C3P/+K+mRzN3G1muUuuDBYB2KBVREPBy4DLhknt8791z47Gc9kpFUlgeD3SvZg9oLXAR8bK33dA6wKyIempnfOu2Xdu/2SEaSxqhkQB0F3rTh+19iEljP3OkXPZKR1AXPO+xWsYDKzC8AX1j/PiJuA76YmZ8u1QZJmpVLzbvXWS2+zDy06Em6ktQ26/F1r9fFYiVNeFny5llYunu9rcUnaWKoQ1GzzP+0OUfkUvPu9T6gnMTU2HVZ9aCtz98soVsimF2g1a1eB9Syf6CGm4agq6oHbQbELKFrOaLh63VALfMHOtRhEY1PV0NRbQbELKFrOaLh63VAzfIHOq2X5NGXhqSLoag2A2KW0HWOaPgiM7tuw7ZWVlbyxIkTU2/fbphuu16SPShpeQ6TaxERcX1mrux0v173oGD7I8ftekkefUnLcxGB2tT7gNrOTkMQy364PHqUpPYMOqDa7CU5RKgx8qBMJQ06oKC9IYhpw4d+gDVUHpSptMEHVFu2Gj70A6whc+WrSht1Lb5l6petDx8ePnx3EFlccjHWkesHa9OptNH2oJro7WwePvTEwfnZ6+wPV76qtNEG1Fa9nfe/H66+Gvbtg/37539MP8Dzc9ioX1xWrpJGG1Cbezuf/zw873mT297xjsnXRUPKD/B0mxeR2Otsjgt0NDSjDajNvZ1Dh+55+9VXLxZQbevzTmjacJ69zuU5VKohGm1AwT17O/v23d1zWv++Nn3fCU0bzrPXuTyHSjVEow6ojdZ7S8vMQbWt7zshh/Pa42urIep9sdgx6XsPCvo9RFk7X1v1xazFYg2onnEnJKnvRlPNfGycr5E0FqOuJCFJqpcBJenLSpadssSVduIQnySg7CKcISz4UfvsQRXkEaNqVrLYsYWVNQt7UIVsd8RY88q8mtumZpU8l8rztjQLA6qQ7S5wWOtQR81tU/OaKjs1y0GNJa40CwOqkGlHjMtWh2izh9P3yhWa37KnMcxzUOMpE9qJAdWCrUJj2hHjMkMdbQ8blhqGGeow4lC3azse1KhJBlTDtguNrY4YlxnqaHvYsMQwzFCHEYe6XTtxbklNMqAatsgR5KJDHW0NGzbRtlkN9Yh7qNu1E+eW1CQDqmFNHkHuNETUxrBhaX1q6zyGul2zcG5JTRl8sdgu5gGaeM5lh4j6NP/Rp7bOo8ntGuprpHGqrlhsRNwbeCVwGXA+8GHgQGb+RVvP2dU8QBNHkMsOEfXpKLZPbZ1HU9s11vksqWQliTOB/wIeA9wHuBJ4c0Rc1NYT9vls9fUhol277h4ishJFWVu93l28B13+Hfs3py4V60Fl5kng0IYfvTUiPgI8AvjPNp6zz/MAm+eXwKPokrbqtUA370FXf8f23NS1zhZJRMSFwIOBG7a4bT+wH2DPnj0LP0ffVxRtHCI6cmScq8K6Mq3X0sV70NXf8VhXIqoenQRURJwFvB54XWbeuPn2zDwKHIXJIollnqsP8xuzTID3uTfYR9Ne767egy7+jv2bU9eKr+KLiDOANwDnAU/IzDu3u//QL/k+zzCKK7kmSr0OWz1Pl+9BX1ekSptVt4oPICICuAq4EHj8TuE0BvMMo9TYGyy9Ays5LzKt8kcX70GfV6RKiyo9xPcq4BuByzLz9sLPXaU+D6N0sdMc67zIWLdb41ZsmXlEPAD4aeDhwKci4ra1f1eUakON1ifADx/u3yqpLpY/b7X8fgyW2W6XiquvSi4z/ygQpZ6vtGWGuvo6jNJF72+7FW1Dni9ZdCWfS8XVZ9bia8BYdwKz7jSbDo6tAn0M78EiBzIODarPDKgGjHknsHmnuTmMSgXHmN+D7fR5jlMyoHbQl3OUahje2iqMSgVHDe9Bjfp+srrGzYDaxqxH/13vBGoZ3toqjEoFR9fvQc36OscpGVDb6Ms5SrUMb20VRiWDwx2xNCwG1Db6MmxUSzunhZHBIWkRg79g4bJqmNuZRV/aKUmzljoyoDSX2oKw7faMrfaeVEKVtfjUb7UsxijVni63t+vX2nBUDUpeUVc9V9sVittuT5fb2/VVdC+9FA4enHy1RJK6YkBpZrXVwWu7PSW2d1qdvC5f69oORDReDvFpZrWda9R2e9p+/O2G8bp8rWtZFSq5SELqyJEjk2G006cnPaXDh+HAga5bNeEclNrkIgmpcjX3VDx3TTUwoKSO1DZkKtXGgJI6ZE9Fms5VfJKkKhlQap2XHJ/O10aaziE+tcqKCNN1/drspObXTuNgQKlVXV4KpPYAmPW16SIoan/tNA4O8alVVkSYbpbXpquyQ7W/dhoHe1BqlRURppvltemqB1r7a6dxsJKEBq3v8yhdV1Tv82unenk9qEqN+UM/5m1fhq+bhsZSRxVq62i4DzswJ90X58m8GisXSRTUxsRzX67d46S7pHkZUAW1saKtLzv+2q4lJal+DvEV1MaKtr6sthpyYdQ+DLFKfeQiiQEYyg6yj9vh3Jo0PxdJjMgQJtFn3dHXFmJdVsqQhs6AUhVm2dHX2FvpyxCr1EcGlKowy46+xt7KkOfWpK4ZUKrCLDv6WnsrQxhilWpkQKlRy8wR7bSjt7cijUvRgIqI84GrgO8BbgYOZOYbSrZB7SkxR2RvRRqP0ifqvgK4A7gQuAJ4VUQ8rHAb1JK+nDQsqR+KBVRE7Ab2AQcz87bMfDfwZ8BTS7VB7bJahKQmlRziezDwpcy8acPP/hl4zOY7RsR+YP/at6ci4gMF2leb+zIZBu2Zc3fDeefefvstt37Hd9x6csEH6em2L83tHpexbjfAxbPcqWRAnQPcsuln/wucu/mOmXkUOAoQESdmOeN4aMa63TDebXe7x2Ws2w2TbZ/lfiXnoG4Dztv0s/OAWwu2QZLUEyUD6ibgzIh40IaffQtwQ8E2SJJ6olhAZeZJ4BrghRGxOyIeCTwB+IMdfvVo642r01i3G8a77W73uIx1u2HGbS9azXztPKhXA98NfAZ4rudBSZK2Uv3lNiRJ4+QVdSVJVTKgJElV6kVARcQfRsQnI+KWiLgpIp7RdZtKiIh7R8RVEfHRiLg1It4XEY/rul0lRMSzI+JERJyKiNd23Z42RcT5EfGnEXFy7b1+ctdtKmFM7/FGI/9cz7Uv70VAAUeAizLzPOAHgRdFxCM6blMJZwL/xaTaxn2AK4E3R8RFXTaqkE8AL2KyqGboxlqjckzv8UZj/lzPtS/vRUBl5g2ZeWr927V/D+ywSUVk5snMPJSZ/5mZd2XmW4GPAIMP58y8JjOvZbLac7DGXKNyLO/xZiP/XM+1L+9FQAFExCsj4gvAjcAngbd13KTiIuJCJjUNPbl5OKbVqBxDD0qM73M9z768NwGVmc9iUrfvUUxO+D21/W8MS0ScBbweeF1m3th1e9SYmWtUanjG+LmeZ1/eeUBFxLGIyCn/3r3xvpl5em0I5P7AM7tpcXNm3faIOINJxY07gGd31uCGzPOej4A1KkdqaJ/recy6L+/8ku+ZuXeBXzuTAcxBzbLtERFMrkJ8IfD4zLyz7Xa1bcH3fKi+XKMyM/997WfWqBy4IX6uF7TtvrzzHtROIuJ+EXF5RJwTEbsi4rHAjwHXdd22Ql4FfCPwA5l5e9eNKSUizoyIs4FdwK6IODsiOj+gatoSNSp7byzv8RSj+1wvtC/PzKr/ARcAfwt8nslY/fuBn+q6XYW2/QFMVrl8kclQ0Pq/K7puW4FtP8Tdq3zW/x3qul0tbev5wLXASeBjwJO7bpPvcavbPcrP9SL7cmvxSZKqVP0QnyRpnAwoSVKVDChJUpUMKElSlQwoSVKVDChJUpUMKElSlQwoSVKVDChJUpUMKKmQiPiKiPh4RHwsIu696bbfj4jTEXF5V+2TamNASYXkpCjoC4CvBZ61/vOIOAL8JPCczHxTR82TqmMtPqmgiNjF5Iq59wO+HngG8BLgBZn5wi7bJtXGgJIKi4jvB94C/DXwncDLM/Nnu22VVB8DSupARPwTcAnwJiaX18hNt/8I8LPAw4GbM/Oi0m2UuuYclFRYRPwok6vmAty6OZzWfA54OfArxRomVcYelFRQRHwPk+G9twB3Aj8MfFNm/tuU+z8ReKk9KI2RPSipkIj4diaXd/974ArgSuAu4EiX7ZJqZUBJBUTEQ4G3ATcBT8zMU5n5YeAq4AkR8chOGyhVyICSWhYRe4C/ZDKv9LjMvGXDzYeB24Hf6KJtUs3O7LoB0tBl5seYnJy71W2fAL6ybIukfjCgpAqtndB71tq/iIizgczMU922TCrHgJLq9FTgNRu+vx34KHBRJ62ROuAyc0lSlVwkIUmqkgElSaqSASVJqpIBJUmqkgElSaqSASVJqpIBJUmq0v8BL7ad0ECbA3QAAAAASUVORK5CYII=\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "plt.plot(X, y, \"b.\")\n", "plt.xlabel(\"$x_1$\", fontsize=18)\n", "plt.ylabel(\"$y$\", rotation=0, fontsize=18)\n", "plt.axis([-3, 3, 0, 10])\n", "save_fig(\"quadratic_data_plot\")\n", "plt.show()" ] }, { "cell_type": "code", "execution_count": 30, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([-0.75275929])" ] }, "execution_count": 30, "metadata": {}, "output_type": "execute_result" } ], "source": [ "from sklearn.preprocessing import PolynomialFeatures\n", "poly_features = PolynomialFeatures(degree=2, include_bias=False)\n", "X_poly = poly_features.fit_transform(X)\n", "X[0]" ] }, { "cell_type": "code", "execution_count": 31, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([-0.75275929, 0.56664654])" ] }, "execution_count": 31, "metadata": {}, "output_type": "execute_result" } ], "source": [ "X_poly[0]" ] }, { "cell_type": "code", "execution_count": 32, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "(array([1.78134581]), array([[0.93366893, 0.56456263]]))" ] }, "execution_count": 32, "metadata": {}, "output_type": "execute_result" } ], "source": [ "lin_reg = LinearRegression()\n", "lin_reg.fit(X_poly, y)\n", "lin_reg.intercept_, lin_reg.coef_" ] }, { "cell_type": "code", "execution_count": 33, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "그림 저장: quadratic_predictions_plot\n" ] }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "X_new=np.linspace(-3, 3, 100).reshape(100, 1)\n", "X_new_poly = poly_features.transform(X_new)\n", "y_new = lin_reg.predict(X_new_poly)\n", "plt.plot(X, y, \"b.\")\n", "plt.plot(X_new, y_new, \"r-\", linewidth=2, label=\"Predictions\")\n", "plt.xlabel(\"$x_1$\", fontsize=18)\n", "plt.ylabel(\"$y$\", rotation=0, fontsize=18)\n", "plt.legend(loc=\"upper left\", fontsize=14)\n", "plt.axis([-3, 3, 0, 10])\n", "save_fig(\"quadratic_predictions_plot\")\n", "plt.show()" ] }, { "cell_type": "code", "execution_count": 34, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "그림 저장: high_degree_polynomials_plot\n" ] }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "from sklearn.preprocessing import StandardScaler\n", "from sklearn.pipeline import Pipeline\n", "\n", "for style, width, degree in ((\"g-\", 1, 300), (\"b--\", 2, 2), (\"r-+\", 2, 1)):\n", " polybig_features = PolynomialFeatures(degree=degree, include_bias=False)\n", " std_scaler = StandardScaler()\n", " lin_reg = LinearRegression()\n", " polynomial_regression = Pipeline([\n", " (\"poly_features\", polybig_features),\n", " (\"std_scaler\", std_scaler),\n", " (\"lin_reg\", lin_reg),\n", " ])\n", " polynomial_regression.fit(X, y)\n", " y_newbig = polynomial_regression.predict(X_new)\n", " plt.plot(X_new, y_newbig, style, label=str(degree), linewidth=width)\n", "\n", "plt.plot(X, y, \"b.\", linewidth=3)\n", "plt.legend(loc=\"upper left\")\n", "plt.xlabel(\"$x_1$\", fontsize=18)\n", "plt.ylabel(\"$y$\", rotation=0, fontsize=18)\n", "plt.axis([-3, 3, 0, 10])\n", "save_fig(\"high_degree_polynomials_plot\")\n", "plt.show()" ] }, { "cell_type": "code", "execution_count": 35, "metadata": {}, "outputs": [], "source": [ "from sklearn.metrics import mean_squared_error\n", "from sklearn.model_selection import train_test_split\n", "\n", "def plot_learning_curves(model, X, y):\n", " X_train, X_val, y_train, y_val = train_test_split(X, y, test_size=0.2, random_state=10)\n", " train_errors, val_errors = [], []\n", " for m in range(1, len(X_train)):\n", " model.fit(X_train[:m], y_train[:m])\n", " y_train_predict = model.predict(X_train[:m])\n", " y_val_predict = model.predict(X_val)\n", " train_errors.append(mean_squared_error(y_train[:m], y_train_predict))\n", " val_errors.append(mean_squared_error(y_val, y_val_predict))\n", "\n", " plt.plot(np.sqrt(train_errors), \"r-+\", linewidth=2, label=\"train\")\n", " plt.plot(np.sqrt(val_errors), \"b-\", linewidth=3, label=\"val\")\n", " plt.legend(loc=\"upper right\", fontsize=14) # 책에는 없음\n", " plt.xlabel(\"Training set size\", fontsize=14) # 책에는 없음\n", " plt.ylabel(\"RMSE\", fontsize=14) # 책에는 없음" ] }, { "cell_type": "code", "execution_count": 36, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "그림 저장: underfitting_learning_curves_plot\n" ] }, { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAagAAAEYCAYAAAAJeGK1AAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjMuMywgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/Il7ecAAAACXBIWXMAAAsTAAALEwEAmpwYAAA3LElEQVR4nO3deXxU1f3/8dcHkkDCIogsiiJFoIoLqNRqK8pXrBWt0q/YVi1aq1Zti9atYr9qCeqvrl+1Kq2l1S9a12pFLFotrlWrVrBFBa2VVVkEZE1IIJDP748z05kMk2QyTGbL+/l43MfMvXPn3s9MJvdzz7nnnmPujoiISL5pl+sAREREklGCEhGRvKQEJSIieUkJSkRE8pISlIiI5CUlKBERyUtKUCIikpeymqDM7AEzW25mG8zsIzM7p4l1LzazFZF17zWzDtmMVUREcsuyeaOume0LfOzum81sb+Bl4Hh3n52w3teB+4GjgGXANOBNd78ia8GKiEhOZbUE5e5z3X1zdDYy7ZVk1e8B90TWXwtcC5yZnShFRCQflGR7h2b2K0KyKQf+ATyTZLV9gelx83OA3mbWw90/T9jeucC5AJ06dTp47733bo2wRUQkTbNnz17t7j1b+r6sJyh3/5GZXQAcBowENidZrTOwPm4++rwL0CBBufsUYArA8OHDfdasWZkOWUREdoCZLU7nfTlpxefu29z9NWB34IdJVqkCusbNR59vbO3YREQkP+S6mXkJya9BzQWGxs0PBT5LrN4TEZHilbUEZWa9zOwUM+tsZu0jLfVOBV5Isvr9wNlmNsTMugFXAVOzFauIiOReNktQTqjO+xRYC9wCXOTuT5lZPzOrMrN+AO7+LHAT8BKwBFgMTMxirCIikmNZayTh7quAIxt5bQmhYUT8sluBW7MQmoiI5KGst+ITEcknGzZsYOXKldTV1eU6lIJUWlpKr1696Nq1a/Mrt5ASlIi0WRs2bOCzzz6jb9++lJeXY2a5DqmguDs1NTUsXboUIONJKtet+EREcmblypX07duXiooKJac0mBkVFRX07duXlStXZnz7SlAi0mbV1dVRXl6e6zAKXnl5eatUkSpBiUibppLTjmut71AJSkRE8pISlIiI5CUlKBGRNmzkyJGMHz8+12EkpWbmIiIFZuTIkey3337cddddO7ytJ554gtLS0gxElXkqQYmIZEJlZa4jaCDVVnU777wzXbp0aeVo0qMEJSKSCZMmZWU3Z555Jq+88gqTJ0/GzDAzpk6dipnxzDPPcMghh1BWVsZzzz3H/PnzGTNmDH369KFTp04cdNBBzJgxo8H2Eqv4+vfvz3XXXcd5551H165d2X333bn55puz8tkSKUGJiESZpT/tyPtb4Je//CWHHXYY3//+91m+fDnLly9njz32AGDChAlcd911fPjhh3z5y1+mqqqK0aNHM3PmTObMmcPYsWM56aST+PDDD5vcx2233cb+++/PO++8w4QJE7j88st544030vpKd4QSlIhIAdlpp50oKyujoqKCPn360KdPH9q3bw9AZWUlxxxzDAMGDKBnz54MHTqU888/n/3335+BAwdy5ZVXctBBB/H44483uY9jjjmG8ePHM3DgQC644AIGDhzICy8kGxmpdamRhIhIlHv67zXbsfdnwPDhwxvMV1dXM2nSJGbMmMHy5cupq6ujtraWAw44oMntJL6+2267tUpXRs1RghIRKRKdOnVqMH/ZZZfx7LPPcssttzBo0CAqKio444wz2LJlS5PbSWzVZ2bU19dnPN7mKEGJiGTCxOyNqVpWVsa2bduaXe+1117jjDPOYOzYsQDU1tYyf/58Bg8e3NohZoSuQYmIZEIWm5n379+fv//97yxatIjVq1c3WroZPHgw06ZN45133uG9995j3Lhx1NbWZi3OHaUEJSJSYC677DLKysoYMmQIPXv2ZMmSJUnXu/XWW+nVqxcjRoxg9OjRHHrooYwYMSLL0abPPMcX9TJp+PDhPmvWrFyHISIF4oMPPmCfffbJdRhFoanv0sxmu/vwpC82QSUoERHJS0pQIiKSl5SgREQkLylBiYhIXlKCEhGRvKQEJSIieUkJSkRE8pISlIiI5KWsJSgz62Bm95jZYjPbaGb/NLPRjax7ppltM7OquGlktmIVEZHcy2YJqgT4BDgS2Am4CviDmfVvZP033L1z3PRydsIUESluiaPo5qus9Wbu7tVAZdyiGWa2EDgYWJStOEREpDDk7BqUmfUGBgNzG1nlQDNbbWYfmdnVZqahQURE2pCcJCgzKwUeBO5z9w+TrPJXYD+gFzAWOBX4aSPbOtfMZpnZrFWrVrVWyCIieWHKlCn07t17u/GgTjvtNE488UTmz5/PmDFj6NOnD506deKggw5ixowZ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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "lin_reg = LinearRegression()\n", "plot_learning_curves(lin_reg, X, y)\n", "plt.axis([0, 80, 0, 3]) # 책에는 없음\n", "save_fig(\"underfitting_learning_curves_plot\") # 책에는 없음\n", "plt.show() # 책에는 없음" ] }, { "cell_type": "code", "execution_count": 37, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "그림 저장: learning_curves_plot\n" ] }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "from sklearn.pipeline import Pipeline\n", "\n", "polynomial_regression = Pipeline([\n", " (\"poly_features\", PolynomialFeatures(degree=10, include_bias=False)),\n", " (\"lin_reg\", LinearRegression()),\n", " ])\n", "\n", "plot_learning_curves(polynomial_regression, X, y)\n", "plt.axis([0, 80, 0, 3]) # 책에는 없음\n", "save_fig(\"learning_curves_plot\") # 책에는 없음\n", "plt.show() # 책에는 없음" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# 규제가 있는 모델" ] }, { "cell_type": "code", "execution_count": 38, "metadata": {}, "outputs": [], "source": [ "np.random.seed(42)\n", "m = 20\n", "X = 3 * np.random.rand(m, 1)\n", "y = 1 + 0.5 * X + np.random.randn(m, 1) / 1.5\n", "X_new = np.linspace(0, 3, 100).reshape(100, 1)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "**식 4-8: 릿지 회귀의 비용 함수**\n", "\n", "$\n", "J(\\boldsymbol{\\theta}) = \\text{MSE}(\\boldsymbol{\\theta}) + \\alpha \\dfrac{1}{2}\\sum\\limits_{i=1}^{n}{\\theta_i}^2\n", "$" ] }, { "cell_type": "code", "execution_count": 39, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([[1.55071465]])" ] }, "execution_count": 39, "metadata": {}, "output_type": "execute_result" } ], "source": [ "from sklearn.linear_model import Ridge\n", "ridge_reg = Ridge(alpha=1, solver=\"cholesky\", random_state=42)\n", "ridge_reg.fit(X, y)\n", "ridge_reg.predict([[1.5]])" ] }, { "cell_type": "code", "execution_count": 40, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([[1.5507201]])" ] }, "execution_count": 40, "metadata": {}, "output_type": "execute_result" } ], "source": [ "ridge_reg = Ridge(alpha=1, solver=\"sag\", random_state=42)\n", "ridge_reg.fit(X, y)\n", "ridge_reg.predict([[1.5]])" ] }, { "cell_type": "code", "execution_count": 41, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "그림 저장: ridge_regression_plot\n" ] }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "from sklearn.linear_model import Ridge\n", "\n", "def plot_model(model_class, polynomial, alphas, **model_kargs):\n", " for alpha, style in zip(alphas, (\"b-\", \"g--\", \"r:\")):\n", " model = model_class(alpha, **model_kargs) if alpha > 0 else LinearRegression()\n", " if polynomial:\n", " model = Pipeline([\n", " (\"poly_features\", PolynomialFeatures(degree=10, include_bias=False)),\n", " (\"std_scaler\", StandardScaler()),\n", " (\"regul_reg\", model),\n", " ])\n", " model.fit(X, y)\n", " y_new_regul = model.predict(X_new)\n", " lw = 2 if alpha > 0 else 1\n", " plt.plot(X_new, y_new_regul, style, linewidth=lw, label=r\"$\\alpha = {}$\".format(alpha))\n", " plt.plot(X, y, \"b.\", linewidth=3)\n", " plt.legend(loc=\"upper left\", fontsize=15)\n", " plt.xlabel(\"$x_1$\", fontsize=18)\n", " plt.axis([0, 3, 0, 4])\n", "\n", "plt.figure(figsize=(8,4))\n", "plt.subplot(121)\n", "plot_model(Ridge, polynomial=False, alphas=(0, 10, 100), random_state=42)\n", "plt.ylabel(\"$y$\", rotation=0, fontsize=18)\n", "plt.subplot(122)\n", "plot_model(Ridge, polynomial=True, alphas=(0, 10**-5, 1), random_state=42)\n", "\n", "save_fig(\"ridge_regression_plot\")\n", "plt.show()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "**노트**: 향후 버전이 바뀌더라도 동일한 결과를 만들기 위해 사이킷런 0.21 버전의 기본값인 `max_iter=1000`과 `tol=1e-3`으로 지정합니다." ] }, { "cell_type": "code", "execution_count": 42, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([1.47012588])" ] }, "execution_count": 42, "metadata": {}, "output_type": "execute_result" } ], "source": [ "sgd_reg = SGDRegressor(penalty=\"l2\", max_iter=1000, tol=1e-3, random_state=42)\n", "sgd_reg.fit(X, y.ravel())\n", "sgd_reg.predict([[1.5]])" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "**식 4-10: 라쏘 회귀의 비용 함수**\n", "\n", "$\n", "J(\\boldsymbol{\\theta}) = \\text{MSE}(\\boldsymbol{\\theta}) + \\alpha \\sum\\limits_{i=1}^{n}\\left| \\theta_i \\right|\n", "$" ] }, { "cell_type": "code", "execution_count": 43, "metadata": {}, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [ "/usr/local/lib/python3.8/dist-packages/sklearn/linear_model/_coordinate_descent.py:530: ConvergenceWarning: Objective did not converge. You might want to increase the number of iterations. Duality gap: 2.8028677038274514, tolerance: 0.0009294783355207351\n", " model = cd_fast.enet_coordinate_descent(\n" ] }, { "name": "stdout", "output_type": "stream", "text": [ "그림 저장: lasso_regression_plot\n" ] }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "from sklearn.linear_model import Lasso\n", "\n", "plt.figure(figsize=(8,4))\n", "plt.subplot(121)\n", "plot_model(Lasso, polynomial=False, alphas=(0, 0.1, 1), random_state=42)\n", "plt.ylabel(\"$y$\", rotation=0, fontsize=18)\n", "plt.subplot(122)\n", "plot_model(Lasso, polynomial=True, alphas=(0, 10**-7, 1), random_state=42)\n", "\n", "save_fig(\"lasso_regression_plot\")\n", "plt.show()" ] }, { "cell_type": "code", "execution_count": 44, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([1.53788174])" ] }, "execution_count": 44, "metadata": {}, "output_type": "execute_result" } ], "source": [ "from sklearn.linear_model import Lasso\n", "lasso_reg = Lasso(alpha=0.1)\n", "lasso_reg.fit(X, y)\n", "lasso_reg.predict([[1.5]])" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "**식 4-12: 엘라스틱넷 비용 함수**\n", "\n", "$\n", "J(\\boldsymbol{\\theta}) = \\text{MSE}(\\boldsymbol{\\theta}) + r \\alpha \\sum\\limits_{i=1}^{n}\\left| \\theta_i \\right| + \\dfrac{1 - r}{2} \\alpha \\sum\\limits_{i=1}^{n}{{\\theta_i}^2}\n", "$" ] }, { "cell_type": "code", "execution_count": 45, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([1.54333232])" ] }, "execution_count": 45, "metadata": {}, "output_type": "execute_result" } ], "source": [ "from sklearn.linear_model import ElasticNet\n", "elastic_net = ElasticNet(alpha=0.1, l1_ratio=0.5, random_state=42)\n", "elastic_net.fit(X, y)\n", "elastic_net.predict([[1.5]])" ] }, { "cell_type": "code", "execution_count": 46, "metadata": {}, "outputs": [], "source": [ "np.random.seed(42)\n", "m = 100\n", "X = 6 * np.random.rand(m, 1) - 3\n", "y = 2 + X + 0.5 * X**2 + np.random.randn(m, 1)\n", "\n", "X_train, X_val, y_train, y_val = train_test_split(X[:50], y[:50].ravel(), test_size=0.5, random_state=10)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "조기 종료 예제:" ] }, { "cell_type": "code", "execution_count": 47, "metadata": { "scrolled": true }, "outputs": [], "source": [ "from copy import deepcopy\n", "\n", "poly_scaler = Pipeline([\n", " (\"poly_features\", PolynomialFeatures(degree=90, include_bias=False)),\n", " (\"std_scaler\", StandardScaler())\n", " ])\n", "\n", "X_train_poly_scaled = poly_scaler.fit_transform(X_train)\n", "X_val_poly_scaled = poly_scaler.transform(X_val)\n", "\n", "sgd_reg = SGDRegressor(max_iter=1, tol=-np.infty, warm_start=True,\n", " penalty=None, learning_rate=\"constant\", eta0=0.0005, random_state=42)\n", "\n", "minimum_val_error = float(\"inf\")\n", "best_epoch = None\n", "best_model = None\n", "for epoch in range(1000):\n", " sgd_reg.fit(X_train_poly_scaled, y_train) # 중지된 곳에서 다시 시작합니다\n", " y_val_predict = sgd_reg.predict(X_val_poly_scaled)\n", " val_error = mean_squared_error(y_val, y_val_predict)\n", " if val_error < minimum_val_error:\n", " minimum_val_error = val_error\n", " best_epoch = epoch\n", " best_model = deepcopy(sgd_reg)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "그래프를 그립니다:" ] }, { "cell_type": "code", "execution_count": 48, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "그림 저장: early_stopping_plot\n" ] }, { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAagAAAEYCAYAAAAJeGK1AAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjMuMywgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/Il7ecAAAACXBIWXMAAAsTAAALEwEAmpwYAABE/ElEQVR4nO3dd3hUxfrA8e8bAiEQQg2hCigIAgpCrCigoFwFsaOCCgiIInYUrw0Qu9eC1/tTLIiI1w4WLKhcejUIUakWeq+hlyTv74/ZzRY2IYFkd5O8n+eZZ0+ZPWf2sOybmTNnRlQVY4wxJtrERLoAxhhjTCgWoIwxxkQlC1DGGGOikgUoY4wxUckClDHGmKgUG+kCFKRq1app/fr1I10MY4wx+TB//vytqpoUvL1YBaj69euTmpoa6WIYY4zJBxFZFWq7NfEZY4yJShagjDHGRCULUMYYY6KSBShjjDFRyQKUMcaYqFSsevEZYwpeVlYWa9euZe/evZEuiimCSpcuTfXq1UlMTMz3ey1AGWNytXXrVkSExo0bExNjjS4m71SV/fv3s27dOoB8Byn7tnk88gh06QING8KuXZEujTHRY+fOnSQnJ1twMvkmIpQrV47atWuzefPmfL/falAeX3wBixe75WXL4IwzIlocY6JGZmYmpUuXjnQxTBEWHx/P4cOH8/0++5PI45RTfMtLlkSuHMZEIxGJdBFMEXas3x8LUB4WoIwxJrpYgPJo0sS3vHRp5MphjDHGsQDlYTUoY4y/oUOH0rx58xzXQxk4cCDt27cv8HOXVBagPBo39i3/+SccOhS5shhjjl3Xrl3p0KFDyH1LlixBRPjhhx/yfdxBgwYxderU4y1egJUrVyIiR8zCUBjnKgzt27dn4MCBhXZ8C1Ae5ctDvXpuOTPTBSljTNHTp08fJk+ezMqVK4/Y984771CvXj06duyY7+MmJCRQtWrVAihhdJ0rmlmA8mP3oYwp+jp37kxycjLvvvtuwPbDhw/z/vvvc8stt6Cq9OnThwYNGhAfH0+jRo14/vnnycrKyvG4wc1umZmZDBo0iMqVK1O5cmXuueceMjMzA97z/fffc/7551O5cmWqVKlCp06dWOJ3D6FBgwYAnHHGGYhIdvNg8LmysrIYPnw4devWJS4ujlNPPZUvv/wye7+3Jvb5559z0UUXUa5cOZo2bcqPP/6Y67WaNm0aZ599NgkJCVSsWJEzzzyT33//PXv/rFmzaNeuXfazTLfffju7PA+K9urVi6lTp/Kf//wHEUFEQv5RcDwsQPmx+1DGHJ1I5FJexMbG0rNnT0aPHh0QcL7++mu2bt1K7969ycrKonbt2nzyyScsWbKEp556iqeffvqIoJabF198kbfeeouRI0cye/ZsMjMz+eCDDwLy7N27l3vuuYd58+YxZcoUKlasyGWXXcYhzz2EefPmAS6QbdiwgXHjxoU814gRI3jhhRd47rnn+O2337jyyiu56qqrWLhwYUC+Rx55hLvuuou0tDTOOOMMrr/+evbs2RPymBkZGVx++eWcd955pKWlMXfuXO655x5KlSoFwG+//cbFF19M165dSUtLY9y4cSxcuJBbbrklu0znnHMOvXv3ZsOGDWzYsIG6devm+frliaoWm9S6dWs9HiNHqoJLPXoc16GMKTYWL14csO79PxKJlFfLly9XQCdOnJi97dJLL9V//OMfOb5n8ODB2qFDh+z1IUOGaLNmzXJcr1mzpj755JPZ65mZmdqoUSNt165djufYs2ePxsTE6PTp01VVdcWKFQrozz//HJAv+Fy1atXSYcOGBeRp166d9vD8UHmP88Ybb2TvX7t2rQLZ5wq2bds2BXTKlCkh99900016yy23BGxbsGCBArpp06bsMtxxxx05fl5/wd8jf0CqhvhNtxqUH/8mPqtBGVN0NWrUiHbt2jFq1CgA1q9fz8SJE+nTp092njfeeIOUlBSSkpJISEjg5ZdfZvXq1Xk6fnp6Ohs2bOCcc87J3hYTE8NZZ50VkO+vv/6ie/funHTSSSQmJpKcnExWVlaezwOwa9cu1q9fT5s2bQK2n3feeSz2Dn/jcdppp2Uv16pVCyDHIYaqVKlCr1696NSpE507d+all14KKNf8+fMZO3YsCQkJ2clbhr/++ivP5T8eFqD8+DfxLV0KuTRHG1NiRbIOlR99+vThiy++YPv27YwePZoqVapw+eWXA/Dxxx9zzz330KtXLyZOnMjChQsZMGBAdtNbQenSpQtbtmxh5MiRzJ07lwULFhAbG1tg5wkeocF/SCrvvtzuq7377rvMnTuXtm3b8tVXX9G4cWMmTpyY/b6+ffuycOHC7JSWlsYff/xBy5YtC6T8R2MByk9SEng7zuzbB2vXRrY8xphjd80111C2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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "sgd_reg = SGDRegressor(max_iter=1, tol=-np.infty, warm_start=True,\n", " penalty=None, learning_rate=\"constant\", eta0=0.0005, random_state=42)\n", "\n", "n_epochs = 500\n", "train_errors, val_errors = [], []\n", "for epoch in range(n_epochs):\n", " sgd_reg.fit(X_train_poly_scaled, y_train)\n", " y_train_predict = sgd_reg.predict(X_train_poly_scaled)\n", " y_val_predict = sgd_reg.predict(X_val_poly_scaled)\n", " train_errors.append(mean_squared_error(y_train, y_train_predict))\n", " val_errors.append(mean_squared_error(y_val, y_val_predict))\n", "\n", "best_epoch = np.argmin(val_errors)\n", "best_val_rmse = np.sqrt(val_errors[best_epoch])\n", "\n", "plt.annotate('Best model',\n", " xy=(best_epoch, best_val_rmse),\n", " xytext=(best_epoch, best_val_rmse + 1),\n", " ha=\"center\",\n", " arrowprops=dict(facecolor='black', shrink=0.05),\n", " fontsize=16,\n", " )\n", "\n", "best_val_rmse -= 0.03 # just to make the graph look better\n", "plt.plot([0, n_epochs], [best_val_rmse, best_val_rmse], \"k:\", linewidth=2)\n", "plt.plot(np.sqrt(val_errors), \"b-\", linewidth=3, label=\"Validation set\")\n", "plt.plot(np.sqrt(train_errors), \"r--\", linewidth=2, label=\"Training set\")\n", "plt.legend(loc=\"upper right\", fontsize=14)\n", "plt.xlabel(\"Epoch\", fontsize=14)\n", "plt.ylabel(\"RMSE\", fontsize=14)\n", "save_fig(\"early_stopping_plot\")\n", "plt.show()" ] }, { "cell_type": "code", "execution_count": 49, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "(239,\n", " SGDRegressor(eta0=0.0005, learning_rate='constant', max_iter=1, penalty=None,\n", " random_state=42, tol=-inf, warm_start=True))" ] }, "execution_count": 49, "metadata": {}, "output_type": "execute_result" } ], "source": [ "best_epoch, best_model" ] }, { "cell_type": "code", "execution_count": 50, "metadata": {}, "outputs": [], "source": [ "%matplotlib inline\n", "import matplotlib.pyplot as plt\n", "import numpy as np" ] }, { "cell_type": "code", "execution_count": 51, "metadata": {}, "outputs": [], "source": [ "t1a, t1b, t2a, t2b = -1, 3, -1.5, 1.5\n", "\n", "t1s = np.linspace(t1a, t1b, 500)\n", "t2s = np.linspace(t2a, t2b, 500)\n", "t1, t2 = np.meshgrid(t1s, t2s)\n", "T = np.c_[t1.ravel(), t2.ravel()]\n", "Xr = np.array([[1, 1], [1, -1], [1, 0.5]])\n", "yr = 2 * Xr[:, :1] + 0.5 * Xr[:, 1:]\n", "\n", "J = (1/len(Xr) * np.sum((T.dot(Xr.T) - yr.T)**2, axis=1)).reshape(t1.shape)\n", "\n", "N1 = np.linalg.norm(T, ord=1, axis=1).reshape(t1.shape)\n", "N2 = np.linalg.norm(T, ord=2, axis=1).reshape(t1.shape)\n", "\n", "t_min_idx = np.unravel_index(np.argmin(J), J.shape)\n", "t1_min, t2_min = t1[t_min_idx], t2[t_min_idx]\n", "\n", "t_init = np.array([[0.25], [-1]])" ] }, { "cell_type": "code", "execution_count": 52, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "그림 저장: lasso_vs_ridge_plot\n" ] }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "def bgd_path(theta, X, y, l1, l2, core = 1, eta = 0.05, n_iterations = 200):\n", " path = [theta]\n", " for iteration in range(n_iterations):\n", " gradients = core * 2/len(X) * X.T.dot(X.dot(theta) - y) + l1 * np.sign(theta) + l2 * theta\n", " theta = theta - eta * gradients\n", " path.append(theta)\n", " return np.array(path)\n", "\n", "fig, axes = plt.subplots(2, 2, sharex=True, sharey=True, figsize=(10.1, 8))\n", "for i, N, l1, l2, title in ((0, N1, 2., 0, \"Lasso\"), (1, N2, 0, 2., \"Ridge\")):\n", " JR = J + l1 * N1 + l2 * 0.5 * N2**2\n", " \n", " tr_min_idx = np.unravel_index(np.argmin(JR), JR.shape)\n", " t1r_min, t2r_min = t1[tr_min_idx], t2[tr_min_idx]\n", "\n", " levelsJ=(np.exp(np.linspace(0, 1, 20)) - 1) * (np.max(J) - np.min(J)) + np.min(J)\n", " levelsJR=(np.exp(np.linspace(0, 1, 20)) - 1) * (np.max(JR) - np.min(JR)) + np.min(JR)\n", " levelsN=np.linspace(0, np.max(N), 10)\n", " \n", " path_J = bgd_path(t_init, Xr, yr, l1=0, l2=0)\n", " path_JR = bgd_path(t_init, Xr, yr, l1, l2)\n", " path_N = bgd_path(np.array([[2.0], [0.5]]), Xr, yr, np.sign(l1)/3, np.sign(l2), core=0)\n", "\n", " ax = axes[i, 0]\n", " ax.grid(True)\n", " ax.axhline(y=0, color='k')\n", " ax.axvline(x=0, color='k')\n", " ax.contourf(t1, t2, N / 2., levels=levelsN)\n", " ax.plot(path_N[:, 0], path_N[:, 1], \"y--\")\n", " ax.plot(0, 0, \"ys\")\n", " ax.plot(t1_min, t2_min, \"ys\")\n", " ax.set_title(r\"$\\ell_{}$ penalty\".format(i + 1), fontsize=16)\n", " ax.axis([t1a, t1b, t2a, t2b])\n", " if i == 1:\n", " ax.set_xlabel(r\"$\\theta_1$\", fontsize=16)\n", " ax.set_ylabel(r\"$\\theta_2$\", fontsize=16, rotation=0)\n", "\n", " ax = axes[i, 1]\n", " ax.grid(True)\n", " ax.axhline(y=0, color='k')\n", " ax.axvline(x=0, color='k')\n", " ax.contourf(t1, t2, JR, levels=levelsJR, alpha=0.9)\n", " ax.plot(path_JR[:, 0], path_JR[:, 1], \"w-o\")\n", " ax.plot(path_N[:, 0], path_N[:, 1], \"y--\")\n", " ax.plot(0, 0, \"ys\")\n", " ax.plot(t1_min, t2_min, \"ys\")\n", " ax.plot(t1r_min, t2r_min, \"rs\")\n", " ax.set_title(title, fontsize=16)\n", " ax.axis([t1a, t1b, t2a, t2b])\n", " if i == 1:\n", " ax.set_xlabel(r\"$\\theta_1$\", fontsize=16)\n", "\n", "save_fig(\"lasso_vs_ridge_plot\")\n", "plt.show()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# 로지스틱 회귀" ] }, { "cell_type": "code", "execution_count": 53, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "그림 저장: logistic_function_plot\n" ] }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "t = np.linspace(-10, 10, 100)\n", "sig = 1 / (1 + np.exp(-t))\n", "plt.figure(figsize=(9, 3))\n", "plt.plot([-10, 10], [0, 0], \"k-\")\n", "plt.plot([-10, 10], [0.5, 0.5], \"k:\")\n", "plt.plot([-10, 10], [1, 1], \"k:\")\n", "plt.plot([0, 0], [-1.1, 1.1], \"k-\")\n", "plt.plot(t, sig, \"b-\", linewidth=2, label=r\"$\\sigma(t) = \\frac{1}{1 + e^{-t}}$\")\n", "plt.xlabel(\"t\")\n", "plt.legend(loc=\"upper left\", fontsize=20)\n", "plt.axis([-10, 10, -0.1, 1.1])\n", "save_fig(\"logistic_function_plot\")\n", "plt.show()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "**식 4-16: 하나의 훈련 샘플에 대한 비용 함수**\n", "\n", "$\n", "c(\\boldsymbol{\\theta}) =\n", "\\begin{cases}\n", " -\\log(\\hat{p}) & \\text{if } y = 1, \\\\\n", " -\\log(1 - \\hat{p}) & \\text{if } y = 0.\n", "\\end{cases}\n", "$\n", "\n", "\n", "**식 4-17: 로지스틱 회귀 비용 함수(로그 손실)**\n", "\n", "$\n", "J(\\boldsymbol{\\theta}) = -\\dfrac{1}{m} \\sum\\limits_{i=1}^{m}{\\left[ y^{(i)} log\\left(\\hat{p}^{(i)}\\right) + (1 - y^{(i)}) log\\left(1 - \\hat{p}^{(i)}\\right)\\right]}\n", "$\n", "\n", "\n", "**식 4-18: 로지스틱 비용 함수의 편도 함수**\n", "\n", "$\n", "\\dfrac{\\partial}{\\partial \\theta_j} \\text{J}(\\boldsymbol{\\theta}) = \\dfrac{1}{m}\\sum\\limits_{i=1}^{m}\\left(\\mathbf{\\sigma(\\boldsymbol{\\theta}}^T \\mathbf{x}^{(i)}) - y^{(i)}\\right)\\, x_j^{(i)}\n", "$" ] }, { "cell_type": "code", "execution_count": 54, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "['data',\n", " 'target',\n", " 'frame',\n", " 'target_names',\n", " 'DESCR',\n", " 'feature_names',\n", " 'filename']" ] }, "execution_count": 54, "metadata": {}, "output_type": "execute_result" } ], "source": [ "from sklearn import datasets\n", "iris = datasets.load_iris()\n", "list(iris.keys())" ] }, { "cell_type": "code", "execution_count": 55, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ ".. _iris_dataset:\n", "\n", "Iris plants dataset\n", "--------------------\n", "\n", "**Data Set Characteristics:**\n", "\n", " :Number of Instances: 150 (50 in each of three classes)\n", " :Number of Attributes: 4 numeric, predictive attributes and the class\n", " :Attribute Information:\n", " - sepal length in cm\n", " - sepal width in cm\n", " - petal length in cm\n", " - petal width in cm\n", " - class:\n", " - Iris-Setosa\n", " - Iris-Versicolour\n", " - Iris-Virginica\n", " \n", " :Summary Statistics:\n", "\n", " ============== ==== ==== ======= ===== ====================\n", " Min Max Mean SD Class Correlation\n", " ============== ==== ==== ======= ===== ====================\n", " sepal length: 4.3 7.9 5.84 0.83 0.7826\n", " sepal width: 2.0 4.4 3.05 0.43 -0.4194\n", " petal length: 1.0 6.9 3.76 1.76 0.9490 (high!)\n", " petal width: 0.1 2.5 1.20 0.76 0.9565 (high!)\n", " ============== ==== ==== ======= ===== ====================\n", "\n", " :Missing Attribute Values: None\n", " :Class Distribution: 33.3% for each of 3 classes.\n", " :Creator: R.A. Fisher\n", " :Donor: Michael Marshall (MARSHALL%PLU@io.arc.nasa.gov)\n", " :Date: July, 1988\n", "\n", "The famous Iris database, first used by Sir R.A. Fisher. The dataset is taken\n", "from Fisher's paper. Note that it's the same as in R, but not as in the UCI\n", "Machine Learning Repository, which has two wrong data points.\n", "\n", "This is perhaps the best known database to be found in the\n", "pattern recognition literature. Fisher's paper is a classic in the field and\n", "is referenced frequently to this day. (See Duda & Hart, for example.) The\n", "data set contains 3 classes of 50 instances each, where each class refers to a\n", "type of iris plant. One class is linearly separable from the other 2; the\n", "latter are NOT linearly separable from each other.\n", "\n", ".. topic:: References\n", "\n", " - Fisher, R.A. \"The use of multiple measurements in taxonomic problems\"\n", " Annual Eugenics, 7, Part II, 179-188 (1936); also in \"Contributions to\n", " Mathematical Statistics\" (John Wiley, NY, 1950).\n", " - Duda, R.O., & Hart, P.E. (1973) Pattern Classification and Scene Analysis.\n", " (Q327.D83) John Wiley & Sons. ISBN 0-471-22361-1. See page 218.\n", " - Dasarathy, B.V. (1980) \"Nosing Around the Neighborhood: A New System\n", " Structure and Classification Rule for Recognition in Partially Exposed\n", " Environments\". IEEE Transactions on Pattern Analysis and Machine\n", " Intelligence, Vol. PAMI-2, No. 1, 67-71.\n", " - Gates, G.W. (1972) \"The Reduced Nearest Neighbor Rule\". IEEE Transactions\n", " on Information Theory, May 1972, 431-433.\n", " - See also: 1988 MLC Proceedings, 54-64. Cheeseman et al\"s AUTOCLASS II\n", " conceptual clustering system finds 3 classes in the data.\n", " - Many, many more ...\n" ] } ], "source": [ "print(iris.DESCR)" ] }, { "cell_type": "code", "execution_count": 56, "metadata": {}, "outputs": [], "source": [ "X = iris[\"data\"][:, 3:] # 꽃잎 너비\n", "y = (iris[\"target\"] == 2).astype(np.int) # Iris virginica이면 1 아니면 0" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "**노트**: 향후 버전이 바뀌더라도 동일한 결과를 만들기 위해 사이킷런 0.22 버전의 기본값인 `solver=\"lbfgs\"`로 지정합니다." ] }, { "cell_type": "code", "execution_count": 57, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "LogisticRegression(random_state=42)" ] }, "execution_count": 57, "metadata": {}, "output_type": "execute_result" } ], "source": [ "from sklearn.linear_model import LogisticRegression\n", "log_reg = LogisticRegression(solver=\"lbfgs\", random_state=42)\n", "log_reg.fit(X, y)" ] }, { "cell_type": "code", "execution_count": 58, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "[]" ] }, "execution_count": 58, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "X_new = np.linspace(0, 3, 1000).reshape(-1, 1)\n", "y_proba = log_reg.predict_proba(X_new)\n", "\n", "plt.plot(X_new, y_proba[:, 1], \"g-\", linewidth=2, label=\"Iris virginica\")\n", "plt.plot(X_new, y_proba[:, 0], \"b--\", linewidth=2, label=\"Not Iris virginica\")" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "책에 실린 그림은 조금 더 예쁘게 꾸몄습니다:" ] }, { "cell_type": "code", "execution_count": 59, "metadata": {}, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [ "/usr/local/lib/python3.8/dist-packages/matplotlib/patches.py:1338: VisibleDeprecationWarning: Creating an ndarray from ragged nested sequences (which is a list-or-tuple of lists-or-tuples-or ndarrays with different lengths or shapes) is deprecated. If you meant to do this, you must specify 'dtype=object' when creating the ndarray\n", " verts = np.dot(coords, M) + (x + dx, y + dy)\n" ] }, { "name": "stdout", "output_type": "stream", "text": [ "그림 저장: logistic_regression_plot\n" ] }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "X_new = np.linspace(0, 3, 1000).reshape(-1, 1)\n", "y_proba = log_reg.predict_proba(X_new)\n", "decision_boundary = X_new[y_proba[:, 1] >= 0.5][0]\n", "\n", "plt.figure(figsize=(8, 3))\n", "plt.plot(X[y==0], y[y==0], \"bs\")\n", "plt.plot(X[y==1], y[y==1], \"g^\")\n", "plt.plot([decision_boundary, decision_boundary], [-1, 2], \"k:\", linewidth=2)\n", "plt.plot(X_new, y_proba[:, 1], \"g-\", linewidth=2, label=\"Iris virginica\")\n", "plt.plot(X_new, y_proba[:, 0], \"b--\", linewidth=2, label=\"Not Iris virginica\")\n", "plt.text(decision_boundary+0.02, 0.15, \"Decision boundary\", fontsize=14, color=\"k\", ha=\"center\")\n", "plt.arrow(decision_boundary, 0.08, -0.3, 0, head_width=0.05, head_length=0.1, fc='b', ec='b')\n", "plt.arrow(decision_boundary, 0.92, 0.3, 0, head_width=0.05, head_length=0.1, fc='g', ec='g')\n", "plt.xlabel(\"Petal width (cm)\", fontsize=14)\n", "plt.ylabel(\"Probability\", fontsize=14)\n", "plt.legend(loc=\"center left\", fontsize=14)\n", "plt.axis([0, 3, -0.02, 1.02])\n", "save_fig(\"logistic_regression_plot\")\n", "plt.show()" ] }, { "cell_type": "code", "execution_count": 60, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([1.66066066])" ] }, "execution_count": 60, "metadata": {}, "output_type": "execute_result" } ], "source": [ "decision_boundary" ] }, { "cell_type": "code", "execution_count": 61, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([1, 0])" ] }, "execution_count": 61, "metadata": {}, "output_type": "execute_result" } ], "source": [ "log_reg.predict([[1.7], [1.5]])" ] }, { "cell_type": "code", "execution_count": 62, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "그림 저장: logistic_regression_contour_plot\n" ] }, { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAsgAAAEYCAYAAABBfQDEAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjMuMywgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/Il7ecAAAACXBIWXMAAAsTAAALEwEAmpwYAADlM0lEQVR4nOzdd1xUV/r48c8wQ+/SlG7vYIktKppojBWN0USNGkusMCbbvrv5ZdPWzW62ZTcOWGKMBWyJRoMajSUK9i5gw05vCjN0Zpg5vz9Qo7HNiEiI5/168Vq5c+45596ZDQ8Pzz1HIYRAkiRJkiRJkqRqVnU9AUmSJEmSJEn6JZEBsiRJkiRJkiTdQQbIkiRJkiRJknQHGSBLkiRJkiRJ0h1kgCxJkiRJkiRJd1DV9QSeJk9PTxEcHHz7+6r0bMquF1Bgq6SwshyTyYSNjQ3t27c3qz9RUY7+0lmsnJxRevhg5ez62HMrK86lVJeJnYMH9s7eqKztH7svS2SUpmAwVeJq44WrjRdKxTP1kZAkSZIk6Vfo+PHj14UQXo97/jMVDQUHB3Ps2LHb31ccSUT7+QqKv9lGsamCza298R38IlP/OReF1U/J9bVr1/LBBx8QGRnJm2++iYuLCwDGguvo1ixEu2oBxrxLWLs2wfWNCFxGTUHp4mbR3Aqyz3Iq/nNSjsVSpT+Lb9PehISpaRIyAqXS+olc/88JITicv4m41ChO3tiBtdUNwhq+zvCgOTR37VwrY0qSJEmSJNU2hUKRWqPzn6V1kJ977jlxZ4B8S1V2Hrov1qJbuAZjTj7WzYNxjXgDl0kjUbo606tXL/bv3w+Ak5MTkyZNIjIykpYtWwIgDAZKdmxAGxtFxbG9KOwdcA4fj9sENbYt2lk0x4qyQs4e+orkvfMpunEFR1c/2veaRdvnp+Hg7F3zm/AAqSVn2ZwWzc7M5VQYS2nl2p3wIDW9Go7C2sqm1saVJEmSJEl60hQKxXEhxHOPfb4MkH8i9HqK1/2AThNDxaFTKBwdqBjdn17rv0BXXHxP+wEDBqBWqxk0aBBKpRKAirMn0cVGUbxpFaKyAvvuL+A2Xo3ji8NQqMxP2JtMRq6d2ULy3mjSzm/HSmlDi85jCAlT4xP42O/3I5UadGzPXMqWtPlkll2kgW0jBvlPZ3DADBrYNaq1cSVJkiRJkp4UGSBb4FEB8p0qjiWj1cRQsmYLJfpKvm/lyYqSbFIy0u5p26RJEyIiIpgyZQpubm4AGAtvoPt6MbrVC6jKSkPlG4jruNm4jpqKsoGnRfMuyD1PUryG80dXYKgsoWFwd0LC1DTrMAqlqnayuyZh4vj1H4hLncex69tQKazp3fA1hgVG0MqtOwqFolbGlSRJkiRJqikZIFuguXuw2LNxB75hzcwO8KryblD05dfo5q/CkJnDkYaOrPZQsPVsIj+/d15eXmRkZGBj81PQKqqqKP1xE9pYDeWHdqOwtcN52DjcxquxbdPBovnry4s4d2QZSQlRaPMv4uDsQ7tes2j3/HQcXWsvu5tZepFNaVHsyFxGWVURLVy7EB6opnfD0dgo7WptXEmSJEmSpMchA2QLBKsaid8ZR+MR4ktIZBgt33gOawfzMrDCYKBk4060mhgq9h4j09aKb1o2YPW1sxQW6QCYPn06ixYtemAflRdOo42Novi7GER5GXade+E2QY3TS6+gsDb/QTxhMpF2fjuJCfNIPbsVKysVzTqOJjRsDj7B3Wotu1teVcKurBV8lzqPjNIUXKw9GRwwg8GBM/Gy86+VMSVJkiRJkiwlA2QLdO7UWayYrSEpai/XEzOxdXegzdTutJ/dG9fGHmb3U5l4Dq0mhuKVmyirKGdbC09iKvNYuWE9IR073tX2vffew8XFhbfeegsPj+oxjLpCitYvRbcyGkP6FVQ+friOnYnL69NReVj2IJ427yJJe6M5d3gp+ooivAM6E9JnDs07vobKunayu0IITt3YxXep8ziSvxmFwoqePiMJD1TT1r2XLL+QJEmSJKlOyQDZArdqkIUQZO27QpImnsvfJiFMgsbD2hISGUZA/5ZmB3jGG4XolqyrLr9IzcA6wBfXWWNxnfYaSs8GXL9+HX9/fyorK7Gzs2PcuHGo1Wo6dOgAgDAaKU3Yii5GQ9m+7SisbXAa/DpuE9TYhXSx6Nr0FcWkHI0lMUFDYe457Bw9addzOu17zsLJvfayuzllV9mSvoBt6YspqdLSxDmU8CA1fRuNw1b5dNZyliRJkiRJupMMkC1wv4f0SjK1JC/Yx+lF+6m4Xop7ax9CIsNoNbErNk62ZvUrjEZKN/2IVhND+Y+HUNjZ4jx2KEvdjLz733/d075Xr16o1WpeeeUVrG+WVugvn0e7MpqiDcsQpSXYhXbDdYIa54GjUdiY/yCeEIL0C7tISoji6uk4FAormoa8QkifOfg2qb3sbkVVKbuzV7EpLYqrxUk4WzfgZf+3GBo4Gx/7oFoZU5IkSZIk6X5kgGyBh61iUVVh4OLXJ0maF0/e8XRsXOxoPbkbIZFhuDUzfyOWyjMX0UXFUrRiIxVlpWxv7kGssYCTVy7d09bPz4+ZM2cyffp0vL2rSyuMJUUUf7sM7cpoDFcvoPT0wfX1GbiOnYnK27IH8XQ3rnJ63wLOHPySyrJCPP1CCekdSYvnxmFt42BRX+YSQpBcEE9cWhQH8zaCEHTzDic8SE1ogxdk+YUkSZIkSbVOBsgWMGeZNyEEuYevkahJ4NLXJzFVmQga1IYQdRhBL7e6a4e9hzFqiyhauh5dVCz6K2kkedqzqpENm84lUlVVdVdbGxsb5s6dy//93//9NA+TibL9O9CumEdZwlZQKnF6eVR1+UXHHhYFmgZ9GSnHVpKUEMWNrCTsHBrQpsdU2veajYtHsNn9WCq/PJ3NafPZlrGYIsMNgpzaMiwwkhd9x2Ovcqq1cSVJkiRJerbJANkClqyDDFCareP0Fwc4vXA/ZTlFuDbzIiSyN20md8PGxbz6WmEyUbY1Hq0mlrIf9pJnDd+28mBl5kVyC27cbrdu3TpeffXV+/ahT72EbmU0ReuXYirWYduuM27jI3EaMgYrW/MfxBNCkHUpgcQEDVeSN4IQNG4fTkjvSPxbvFhr2V29sYI92auJS9NwuegkjipXXvafypCAWfg6NquVMSVJkiRJenbJANkClgbItxj1VVxen0iiJp6cg9ewdrKl1cQuhESG0aB1Q7P70adcQRu9kuJl31JRXMyuph7EoCW3spwrV6+gumOnvaqqKj777DMmTJhAo0bVpRWm0hKK4mLRxWjQXzqL0t0Tl9en4zp2JtaNAiy6puLCdJL3LeDMgcVUlF6nQcM2hISpadllPDa2tZPdFUJwTnuQ71LnsT93PSZhpIvXEMKD1HT06I+VwrzsvCRJkiRJ0sPIANkCjxsg3yn3WBpJmgQurDmOSW8koH9LQtRhBA9pi5XSzPKLohKKV2xAGxWLIeUqWk8XmsyagOvMMah8fQDYsGEDI0eORKVSMWrUKNRqNT16VJdWCCEoP7Qb7Yp5lO7eBAoFTv1H4DpBjX2XMIsywVWGCi6eWEti/DzyM05gY+9Km25TaN97Nm5etZfdvVGRxffpi/g+fSFafR5+Di0ID1LT3+9NHFTOtTauJEmSJEm/fjJAtkBT//biZOJxXDxqvj1zWV4xZxYfIHnBPkozdbg09qD97F60mdIduwaOZvUhTCbKduxHq4mh7Pv46jrjVwfgpp7AkPf/wO7du+9q36lTJ9RqNWPGjMHOrrq0wpBxDd2q+ei++RKTrhCbliG4TVDjPGwcVvbmP4gnhCDn2iGSEjRcOvkNJmEkqPUgQvvMIbDlS2bXXltKb6pkX8464lLnkaI7gr3Sif5+kwgPUuPv2KJWxpQkSZIk6ddNBsgWcFW0EH3tonhxvC9DIwJp2sGlxn2aqoxc3pBEkiaBrL2XUdlb03J8F0LUYXi29zW7H/3lNHTzV1K0ZB1GXRG7gt2IsS7h4MXz97T19PRk+vTpzJo1C3//6jWOTeVlFG9ahTZGgz4lCStXd1xGTcXtjQis/YMtuqYSXRZn9n/B6f0LKSvOxc27BSG9I2nd9U1s7Gt+zx4kRXuETWlRxGevoUoY6OQxgOFBc3jOa5Asv5AkSZIkyWwyQLZA+7adxFs9V7A7NovKchPtersTrg6ixwhvVNY1D8DyEzNJ0sSTsvI4xgoDfn2aETKnD03C22GlUprVh6m0jKKY79BpYtCfvcR5NxvWBDrwbUoyFZUVd7VVKpW88sor/POf/6Rx48ZAdSa44thetDEaSnZsACFwfGEYbhPU2Pew7EE8o6GSS6fWkbQ3ipxrh7C2daJV1zcJDVPj7tPS/BtjoYLKHLalL+b79IXcqMyioX0ThgVGMMB/Ck7WbrU2riRJkiRJvw4yQLbArRrk4kID27/KYFNUGrnXyvHws2Xo7EAGvuWPm7d5m4M8TPmNUs59dYik6L0UpxbgFOBO+9m9aPtWD+w9zXsATghB+e5DaDUxlMb9SCEmvmvtScz1q6Tn5txuZ2trS3p6Ol5e967VbMhOR7dmEUVrFmEsvI5Nsza4jo/EZfgErBwtexAvJ/UIyXujuXB8DSajnsBWAwgJUxPcZnCtlV9UmQzsy13P5rRozhTuw07pyIu+4wkPVBPk3LZWxpQkSZIkqf6TAbIFfv6QntEoOLY1n+/mpXJyxw1UNgr6jGnE8DlBNO/sWuPxTEYT1zafJnFeAhk/XkBpq6LF2M6EzgnDq6P5q04YUjPRzV+F7stv0BcUkhDoykr7cvamnOXNN99k2bJld7VPT0/HaDQSHBxcPY/KCkq2rEUbq6Hy9HGsnF1xeXUyrm9EYBNk2YN4ZcV5nN6/iNP7F1Gqy8TVsyntes2iTfcp2Dm4W9SXJS7pThCXpmFP9moMpko6ePRjaGAE3b3DUSrMy85LkiRJkvRskAGyBR62ikXauRI2R6exY1kmFaVGWnV3ZficIHq+2hBrm5pnSG+cySY5ei/nlh+hqkxPo+cbEzKnD01HhqK0NrP8oqyc4tWb0Wpi0Cee55KzNR6vDabje3OwbvxTwD1r1iwWLVpEeHg4arWaF1988fbqFxWnDlWXX2z7BoxGHMIG4TZBjUOvARZlgo1GA5cTvyUpQUP2lf2obBxo1WUiIb0j8PBtZ/H9MZdOf50fMr5kS9oC8irS8LYLYmjgbF72n4qLjUetjStJkiRJUv1RbwJkhUJhC8wH+gMNgMvAu0KIrfdpOwlYApTfcXioEGLPzdeDgaVANyANiBRC7HzUHMxZ5q1UZ2DHskw2R6eRebEM94a2DJ7hz+CZgTRoWPPyi0ptGeeWHSYpai+6y9dx9HWl3YznaTejJw4+5j0AJ4SgYt8xtJpYSr7dDiYTjsNexDVyPPrn2uDv709ZWdnt9m3atCEyMpIJEybg5FRdWlGVl41uzSJ0axZivJ6LdXBz3MZH4vzKmyidLcue52ecIjF+HhdOrMZoqMC/+QuEhKlp3G4YVkrVozt4DEZTFYfy4vgudR7JhfHYWNnxgu8bDAuMpKlLh1oZU5Ikqa5lF2czZv0Y1o5aS0Mn89fh/yWoydzr83VLdaM+BciOwB+AZVQHtYOB1UB7IcS1n7WdBLwlhOj1gL4OAgeB9272swRoLoTIf9gcLFkH2WQSHP/hOnGaVI5tvY7KWkGv0Q0JjwykVXe3Gu86J0wmrm09R5ImnrQfzmNlo6T5ax0JUfehYdcgs/sxZOSgW7iaoi/WYswvIKtJQ/5io+XH88n3tHV1dWXy5MlERETQrFl1aYXQ6yn+YR26FfOoSDyMwtEJlxFv4jY+EpumrSy6pvLSG5w9uISkvVGUFKbj7B5I+94RtOkxFXvH2svuXis+TVyqhh+zYqg0ldPWvRfDg+bQw3sEKivrWhtXkiTpaZu9ZTaLji9iZueZRA+JruvpWKQmc6/P1y3VjXoTIN93cIUiCfhYCLH+Z8cn8YAAWaFQtACSAU8hRPHNY3uBlUKIhQ8b73E3Csm8WMqm6DR2LM2krKiK5s+5EK4OIuy1htjY1bz+tTAll6TovZxbdhhDcSU+XYMIiexN89c6orQ1L8AzVVRS8vX3aDUxVB47zVVHFV83c2XtpWRKSkvvaqtQKBg0aBBqtZqXX375drBfkXQUbWwUJVvWIAx6HHq+hOvEOTiGDUKhNP86TcYqrp7eRFKChoyLu1Fa29Gy8zhCwtR4+Xcwux9LFRsK2ZGxlE1pUeSUX8XD1o8hgbMYFDAdN5t7H2KUJEmqT7KLs2kyrwkVVRXYq+y58vaVepNNrcnc6/N1S3Wn3gbICoXCB0gFOgghzv/stUlANNUlFgVADPB3IUSVQqF4BfibEKL1He2jACGEUN9nnOnAdIDAwMDOqampjz3n8pIqdq3IIk6TSvr5Ulw8rRk8I4DBMwPx8rd77H5v0RdXcG75EZKiEtCm5GHv7VxdfjGzF06+5pc9lB86hU4TQ/E32ygxVLC5tTcxRZlczEy/q1337t05ePDgPedX3cij6OvF6FYtoCo3E+uAJriOm43LqCkoXS17EO9G1mmS9kZx/mgMVfoyGjXpRWiYmiahr6BU1k521yiMHM3/nrhUDSdv7EClsKFPo9cZHvQ2zV0718qYkiRJtW32ltksObkEvVGPjdKGtzq+VW+yqTWZe32+bqnu1MsAWaFQWANbgctCiBn3eb0JIKgOoNsCa4EYIcTfFQrFBCBCCNH9jvafAH5CiEkPG/dJbDUN1TXAp34sIG5eKoc35aGwUtBzpA/h6kDa9nJ/IuUX6TtTSNQkcG3LWayUCpq+2oEQdRiNnm9sdv9VOfnoFq1Bt3ANhpw8Dvk6s8rNxI5zSQghWLlyJePGjbvrnJKSktt1ysJgoGTnRrQxGiqO7UVh74Bz+HjcJqixbWHZg3gVZYWcPfQVyXvnU3TjCo6ufrTvNZO2z0/Hwdnbor4skVZyjs1p0ezMXE65sYTWbj0YFhhJr4ajsLaq+Y6KkiRJT8OdWdRb6ks2tSZzr8/XLdWtehcgKxQKK2AV4AIMF0IYzDhnDPAHIUTnmxnkT4QQbe54XQNwvwzynZ5UgHynnKtlbJ6fxg9fZlCiraJxiDPD5wTRd1wjbO1rXn6hu3KdpOi9nF1yCL2uHK+O/oSow2gxtjMqO/MysEKvp2T9drSaGCoOniTNQcWmVh789atFOIXevo2YTCZatWpFcHAwarWawYMHo7xZWlF59hTa2CiKN61EVFZg3/0F3N6IxLFfOAqV+Q/imUxGUs98T9LeKNLOb8dKaUPzTq8TGqbGJ6iLZTfHAqUGHTsyl7E5LZrMsos0sG3EIP/pDA6YQQO7RrU2riRJ0pNwZxb1lvqSTa3J3OvzdUt1q14FyIrq1OdXQDAwWAhR/vAzbp/3OvBHIUSnmzXISYDXHTXICcCq2qpBNkdFmZHdK6vLL64ll+Dkbs3At/wZGhGIT5B9jfvXl1RyYeUxEjUJFJzJxs7DkbbTetB+Vi+cAxuYP89jyWijYilZvRmhN2Df/3nc1BNwHNKXrT/8wJAhQ263bdKkCbNnz2bKlCm4u1eXVhgLb6D75kt0qxdQlZmKyjcQ17GzcB39FsoGnhZdU0HueZISojh/ZDmGyhJ8groRGqamWcfRKFW1k901CRPHr//AprQojuVvRalQ0avhaMIDI2nl1r3G2X9JkqTa0HFRR07lnLrneIeGHTg54+TTn5AFajL3+nzdUt2qbwHyQqAD0F8IUfKQdoOAE0KIXIVC0QpYB3wjhPj45uuHgH3An4FBVC/59kRXsXhcQgiSEwrZFJXKgQ15IATdhnkTPieI0Bca1Lz8Qggy91wkUZPA1e+qV6poMiKEEHUYfn2amV9+kV9A0eK16BaspiojB1Vjf75s4cqnO+IwmUx3tXVwcGD8+PGo1WratasurRBVVZT+uAltrIbyQ7tR2NrhPHQsrhPU2LXpaNE16cuLOHdkGUkJUWjzL+Lg0pB2z8+gbc/pOLn6WtSXJbJKLxGXpmFH5jLKqopo7vIcw4Ii6dPwdWyUNa8plyRJkiSpbtSbAFmhUAQB14BKoOqOl2YAe4GzQBshRJpCofg3MAFwAnKBWGDurXKMm+sgL+OndZAjntQ6yE9SXlo53y9KZ+sX6RRdNxDU1omhEYH0m+CLvVPN1wcuSi0gef5ezn55kIqCMjza+xIS2ZuW47tg7WBeBlZUVVGycSc6TQzlCUfJtLXim5burL52jsIi3T3t+/bty5w5cxg2bBiqm6UVlRdOV5dffBeDKC/DrlNP3CaocRowEoW1+Q/iCZOJtJQdJMZ/Tuq5bVgplDTrOJqQMDUNg2svu1teVcKurBjiUueRXnoeF2tPBgfMYHDgTLzs/GtlTEmSJEmSak+9CZB/CZ52gHyLvsLIntXZbIpK49KJIhxdVQyY4sfQiCB8mzrUuP+qcj0XVh8nUZPA9VOZ2Lo70GZKd9rP7oVrE/PLHioTz6GNiqV45SbKysv4oYUnKyrzOJ169Z62n376KX/84x/vOmYs0lK0fim62CgM6VdQevviNm4WLq9NQ+XpY9E1afMvkbx3PmcPLUFfUYSXfydC+8yheafXUVnXTnZXCMGpgh+JS53H4bxNKBRWPO/9CsOD5tDWvZcsv5AkSZKkekIGyBaoqwD5FiEE5w5qidOksm9dLiajoMsQL8IjA+n4kidWVjUvv8jef4XEefFc/jYJYRI0HtqWEHUYAf1bmh3gGQu0FC1ZhzZ6JYbUDE56ObDKR8WWc4kYjUZUKhWpqan4+t6//EGYTJTFb0UbM4+yfdtRWNvgNOg13CbOwS7Esgfx9JUlpByNJSlBQ0HOWewcPWnXczrte87Cyb32srs5ZVfZkr6AbRlfUmIopLFzCMOD5tC30ThslTWvKZckSZIkqfbIANkCdR0g36kgu4LNC9LZuigdbZ4e/5aODIsMpN9EPxxdal5+UZKp5fTC/ZxetJ/y/BLcW/sQEhlGqwldsHE2LwMrjEZKN+9Gq4mhfNdBcmwUrGvlgb51YxasWXlX24sXLzJ16lQiIiIYOXIk1jdLK/RXUtDGRlG0YRmitAS70G64TlDjPHA0ChvzH8QTQpBx4UcSEzRcO70JFAqatB9BaJ85+DbtXWvZ3QpjGXuyVhGXpuFqcRJO1u4M9H+LoYER+Nibv+OhJEmSJElPjwyQLfBLCpBv0Vea2Lcuh7h5qaQc0TH87SBm/q/1o080k7HSwMWvT5I4L4G8Y2nYuNjRenI3QiJ649bc/PWHK89cRBe9kqLlGxBl5dg93wk39XicXn0ZhbU177zzDp9//jkAvr6+zJw5k+nTp+PjU11aYSwpovjb5WhXRmO4moLS0wfX16fjOmYmKh/LHsQrunGN5H3zOXtwCRVlBXj6hRLSO5IWz43D2qbmJSv3I4QguTCBuFQNB/M2Vj986T2MYUFqOjR4UZZfSM+k7OJsxqwfw9pRa+WatGY6lX2Kvsv7kjA5gRCfkLqejiT9askA2QK/xAD5TilHdbh52zyRZeF+TghB7uFrJEXt5eLXJzEZjAQObE3onD4EvdwKhZWVWf0YtUUULV2PLnolhstpKBt54zBtNO2j5nK94MZdbW1sbHj99ddRq9V06VJdWiFMJsr270Abo6Es/ntQKnF6eRRuE9TYdexhUaBp0JeRcmwlSQlR3MhKwtbBnTbdpxLSOwIXj2Cz+7FUfnk6W9IXsDV9MUWG6wQ5tWVoYAT9fCdgr3KqtXEl6Zdm9pbZLDq+iJmdZ8o1ac3Ubn47zuSfoa1XW07PPl3X05GkXy0ZIFvglx4gPy2lOUWcXrSf0wv3U5ZThGszL0IietF6cndsXc0LzoXJRNnWeLSaWMp+2EueCja09iQ28wK5PwuUAbp164ZarWb06NHY3Cyt0KddRhcbRdH6pZiKddi27VS9+sWQMVjZmv8gnhCCrMt7SYyfx5XkjSAEwe2GERqmxr9F7WV39cYK9mSvZlNaFJeKTuCocmWA3xSGBs7G17FZrYwpSb8Ud+5wJnc2M8+p7FN0/OKnZTATZybKLLIk1RIZIFtABsh3M+qruLw+kaSoBLIPXMXa0YZWE7sSog6jQWvzf9DpL1ytLr9Yup6K4hJ2NXEn1qqIo5dS7mnr4+PD8ePH8fPzu33MVFZKcVws2hXz0F86i9LdE5fXpuE6bhbWjQIsuqbiwnRO71/I6f1fUFF6HXef1oT2mUPLLuOxsa2d7K4QgnPag3yXOo/9uesxCSNdvIYQHhhJR8+XsFKYl52XpPrkzh3O5M5m5rmVPb5FZpElqfbIANkCMkB+sLzjaSRqEri45gTGyioC+rckRB1G8JC2WCnNLL8oKqF4xQa0UbEYUq5yxt2WNQH2bDifiF5fvU1ox44dOX78+H2zukIIyg/tRrtiHqW7qx/Ec+o/AtcJauy7hFmUCa4yVHDxxFoS4+eRn3ECGzsX2nSfQkjvSFy9mprdj6VuVGTxffoivk9fiFafh59DC8KD1PTzm4ijyqXWxpWkp+nO7PEtMov8cD/PHt8is8iSVDtkgGwBGSBXE0I8MNgszy/m9OKDnF6wj5IMLS6NPWg/uxdtpnTHroGjef2bTJTtPIAuKpbSzbu5YSXY2MaTmJzLzP3070yZMuWu9hs2bECn0zFmzBjs7KpLKwwZ19CtXojum8WYtAXYtAzBbXwkzuFvYGVv/oN4Qghyrh0iMX4el0+twySMBLUeRGifOQS2fMns2mtL6U2V7MtZR1zqPFJ0R7BXOtHfbxLhQWr8HVvUypiS9LTcmT2+RWaRH+7n2eNbZBa5fui7rC/tvNsRNTiqVvqftHES18uus3nc5hr1s+faHl5Y/gL5f8jH08G8fRCWnVpG5PeRlPy/B25wXC/JANkCMkCuVlyg5/xhHXu/zsGnsT3j3m96T8BsqjJyZWMSiZoEshIuo7K3puX4LoRE9sYzxO8BPd9LfzkN3fyVFC1ZR6WuCNsOrfGc8ybOY4diZWeLEIJ27dpx9uxZPD09mTZtGrNmzSIgoLq0wlReRvHm1WhjNOjPJ2Ll6o7LqKm4vRGBtX+wRdddosvizP4vOL1/IWXFubh5NSckLJLWXSdhY1972d0U3VE2pUYRn72GKqGnk8cAhgfN4TmvQbL8QqqXOi7qyKmcU/cc79CwAydnnHz6E6oH7D+xvyvjfoudyo7y98rrYEYSmB+YFpQXYG1ljbOtc63MQ1ehQyBws3OrUT96o56C8gJ8HH3M/qtruaGcYn0x3o7mr2xVH8gA2QIyQK72l1dOUJBdSYcXPTizvxCVtRV/Xt8BR9f7bwt9PSmTxHnxpKw8jrHCgF+fZoSow2gyvD1WKqVZY5pKyyiOjUOriUF/5iJWHm64TnuN4+0DGPjGmLvaKpVKRowYgVqtJiysurRCCEHFsX1oYzWUbP8WhMDxhaG4jVdj/3w/i8ovjIZKLiWuJylBQ861Q1jbOtGq65uEhEXSwKeV2f1YqrAyl20ZX7IlbT43KrNoaN+EYYERDPCfgpO1W62NK0mSJN3fowLkWzX2de2XMo/6RAbIFpABMuxYnkn0rDMsuRSGh291OcPMdvuYHdWakL4eDz23oqCUs0sOkRS9l+LUApz83Wgf0Zu2b/XA3tO8B+CEEJTvOYxWE0Ppd7soFEa+a+NFzPWrpOfm3NM+JCQEtVrNuHHjcHCoLq0w5GSgW72QorVfYCzIx6Zpa1zHR+IyYiJWjpY9iJebepSkvVFcOL4Gk1FPQMuXCA1TE9R2MFZW5gX/lqoyGdif+y2b0qI4U7gPW6UD/XwnMCwwkmDndrUypiRJknSvnwfIt77vHdgbzRENeqOevD/k3VNi8e25b/loz0dcLLiIvcqe9j7t+XrU1/g4+dwzxrj146g0VrL+tfW3j5mEiaD/BfGb7r/htz1+e888+i7rS2vP1jjaOLI8cTnBbsEcnXaULRe28NvtvyVVm0pXv67M7jKbsevHcvXtqwS7Bd9TYnGrfOK7Md/x9ra3uaq9Sle/rnwV/hWN3RsD9y+x+P7i93wc/zFJuUk4WDvwfMDzfDP6G+xUdsQmxfL54c85f/089ip7+gT34X8v/w8/F/P/uvw01DRAln/ffYYU3dCzKSqVse83vR0cF2RXYOugxEr56AysXQNHOv2hHxMvf8CQjW/h1sKbg+9uYqn/B+ycvJK8E+mP7EOhUODwQnd8v40m+MoumvzfdKZkV/FDrhMLAzvTu2Wbu9onJSUxbdo0/P39+dvf/gaAdUN/PH/zV4Lj0/D5dBkKewfyP47gam8/8j95B/21i2bfE5+gLrw0fjmT/5JO9yFzKcg5y+bF4cTMbcGJH/9DRVmh2X2ZS2VlTZ9Gr/PvbnvRPH+CsIavszNzObP2t+dPR/qxP3cDRlPVEx9XkiRJerT41HiS8pLYNn4buybuuuf1nJIcxqwbw5uhb3Iu4hwJkxOYEDLhgf2NDxnPlgtb0FXofhrjWjzZxdmMbTf2gefFJscihGDv5L2sGLGCNF0aI78eyZDmQ0icmcicbnP4vx3/98jrqTRW8vd9f+er4V9xcOpBtBVaZm6Z+cD22y5tI3x1OC81eYnj04+z+83d9Anqg0mYgOps9sd9PyZxZiKbx23metl1xq5/8HXUVzXf01iqNxJ3F5CfVsFrf2py+1jqmRLcG9pQVnRvQJZyREv2lXJ6jvTB2uan36WslFY0GR5Ck+Eh3DiTTXL0Xs6vOMK5ZYdp9HxjQub0oenIUJTWD8/AWgf54fnpH2jwoZri1ZsZpInhxVPnuOTchjWNnVh3MZmy8uravMLCQoqKiu4638rWDpeRb+L8ykQqTh1CG6NBuzIa7fLPcegzGLfxkTj0ftmsB/EcnL3p8vKf6dT/j1xJ3EBigob9G3/P4e8/oFWXCYT0jsTD98lnd5u5dOS37b/irZb/YlvGYjanzeevJ0fibRfE0MDZvOw/FRebh2f2JUmSpCfHTmXHV+FfYauyve/rWcVZGEwGRrUZRZBbEADtvB/882FA0wG42rmy7uw6pnaaCsDK5JW82PhFGjk3euB5jd0a85+X/3P7+3d3vksT9yZ89vJnALT0bMmFGxd478f3Hno9VaYqogdH09KzJQC/7/F7psRNeeAD+3MT5jKqzSj++uJfbx+7c6WVKR1/etC+iXsTFgxZQOvo1mQUZeDv4v/QudQnMoP8DNmxNJPeoxve/j9EWXEVl08Wo68w0b5Pg7valmgNZF8uq844e//I91/cPzvs0bYRfee/xuSMv9D7v69QllvMD2OWsTzoQ478ZStluUX3Pe9OVvZ2uE4ZRcCJjfjvXUWHQf3585ki4st9+bBtDxo38sXKyopZs2bdc+73339PaWkp9h170OizVTTek0aDyA+pPHuCrGmDSR3YisLln2Ms1t1n5HspldY07/Qao97Zy5j/O0mLTmM4d2Q5Cd++bdb5j8vFxoPXmvyJpWFX+HPHb2no0JivLvyR8Xv8+N/pt7hSlFir40uSJEnV2nm3e2BwDBDqE0r/Jv1pt6Adr379KguOLiC/NP+B7VVWKl5v+zork1cCUFlVyfpz6xkfMv6h8+js2/mu78/fOE8X3y53Hevm1+1Rl4Ot0vZ2cAzg6+yL3qinsOL+fyE9mX2Sfo37PbC/E9knGL5mOEH/C8L5784890V1FUOaLu2Rc6lPZID8jNBXmrB3UuIZ8NMOdWf2FZKcUEDXIV7YO6kwmX6qR3dys6bbMG9mft4aVy8bSgoNAHe1uZOtmwMd3nmBCRf+zNDNM/AI8eXwh1tZGvAh28evIOdI6iPnqFAosO/1HI3Wfk7wtd00/nMkE/NMbM12YENAV1w378VU/FONVGpqKsOGDcPPz4933nmHS5cuofJuhMecj2i8OxWf/6xE6ebB9U/e4WpvP/I+jkR/+bzZ98zLvwP9xi1h8l8y6PvaArPPqwmllYqePq/wj667WdAzmZf8JrEnaxURBzrw+8O92ZuzjiqT4anMRZIeJbs4mz7L+pBTcu/zA7V5bl2PXZfqcu7PytiO1g9f0lRppWT7+O1sH7+dEO8QlpxcQnNNcxJzHpzIGB8ynvjUeDKLMtlycQt6o56RrUfWaB7mUlndXSxwK0l2q2TCEqX6Ul6OfRkHawdiXonh6LSjbBu/DeCuZR+fhLr+/6kMkJ8RNrZWdOjvwYkfrmPQm0iKL2DDZ9fw9LPj5anVfxL5+V9a7J1UXDpRhFKlYORvgwEwVlUHyGf2F1Jecm9ZhsLKisZD2jJ822zGp/yZ9rN6cSUumW+6/Yevu/2H8zFHMFY+OsCz9m+Ix9x3CE6Lp9Hyf9LBqxH5kX/hqn8Y+W//Ff2Fq8yfPx+TyURRURGff/45zZs3Z/DgwWzduhWhUuEybBwBXx8kYP1RnAa8StHXi0kd1JrMyQMo+XETwmg0697ZO3rg7v301y4Odm6Huu1CYl7IZFrL/3CjIpO/nRrNpPhgVl/+K1r9gzMWkvQ0zE2Yy760fcyNn/tUz63rsetSXc79WR37fhQKBT0CevBh3w85Ou0ovs6+rD2z9oHtu/p1pVmDZqw+vZqVySsZ3nI4TjaWPVTeyqMVx7LuXmjgSOaRx5r/w3Rs1JFdV++tvQY4f/0818uu87cX/0ZYUBitPFuRV5r3xOcAdf+eywD5GdJzpA8unjaM8fqR5e9dILi9ExPmNsfeSUWVwXRPLVJuajm7VmTRb6IvKmsrDHoT1jZWlGgNvDfgGGO9fyQ64iwl2vsHvO4tvAn7/FWmZM4lTDOKSl05OybGsjTwIw69v4WSTO0j52xlZ4vLxFcIPPotAYe+wXHYi2gXrCa15cv4fH+A5n53b0W9detWBg8eTKtWrfj888/R6XTYtX+Ohv9cTnBCOh6/+Sv6S2fJnhnOtZeaU7jk3xh1T/5BvCfJ2dqdkY1/y5dhF/mo0yaCnNqx4uL7TNjtz7+TJnJB92yvzCLVjezibJaeWopJmFh6aqlFWZ6anFvXY9elupz7szr2/RzKOMRfE/7K0cyjpOnSiEuJI70onTZebR563hvt3+DLE1+y5cKWR5ZX3M/M52ZyufAyv9/+e1Kup/DtuW9ZdHwRAArMX+r0Ud7r/R7fnP2GP//4Z87mn+VM3hn+e/C/lBnKCHQNxFZpS9SRKK4UXmHLhS28v/v9Jzb2Lb+E91wGyM8QFw8b/t/XHfjiXC/eXduB6Z+1RpgEpUVVqKzv/igYjYJTO2+gza1k5O8a3/XaN/+4Qo/h3vxtZxcKcyp5Myiebz+7+sBxbZztCI0MY/y59xj+wyx8ugZy9JPtLA/+iK2vLyVr/xXMWW7QrlsoDWP/TeO0PTT4SM2I6yY2ZdqyrFFHBrQJvSvAv3jxIu+88w7+/v5ERERw5coVVB7eNJj1HsE/XqXh51+jaujP9X/8gath/uS+P4PKC7/s3ayUCiXdvIfySZcfWNTrLIMCpnMgdwNvH+zCOwe782PWSgymJ/snLkl6kLkJc2//idYojBZleWpybl2PXZfqcu7P6tj342rryv70/QxdPZTmmub8bvvveD/s/UcGveNDxpNyIwVXO1cGNB1g8bhBbkGsf209cSlxhC4M5b+H/suHfT4Eqh8sfFIGNx/Mhtc3sPXSVjou6kifZX3YfW03VgorvBy9WD5iORtTNtImug0fx3/MZwM+e2Jj3/JLeM/lOsjPuB+WZLDxf9dYkNzrruO518r498RkOg3wZOyfm2KsMqFUWVFeUsWbQfEMfzuINz5oBkBeWjnZl8sIfcH81RZ0V66TPH8fZ5ccpFJbjmcHP0Ln9KHFmE6o7M1bDF3o9ZSs345WE0PFwZOk2Sv5prkba66eQVdcfFfbH3/8kRdeeOGePirPnkIbG0XxppWIygrsu/XFbbwax37hKFRPd5GXh20B/iClVUXsyFjK5rT5ZJZdwN22IYP8pzMkYCYN7B78dLQk1UR2cTZN5jW5a2c4e5U9V96+QkOnhrV2bl2PXZfqcu7P6tj1weeHPueDPR+g/aPW4p8fv1RP6j2X6yBLNfLyVH/+e7gHAKU6A/Frs8m5WsbVpBJ0+XpGvFO9hM2tdZILcyrpO7YR27/K4MNhx8m5WoZ3oP1dwXHKES3bl2agzat84LiuTTzp9e8RTM74Cy8seh2TwcSuKatYGvAh+/8UR3FawSPnrrCxwXnsUAIOrCXg2Le0fS2c358vYk+xN39r1Z1WATeX32nXjr59+951bkVFBYWFhdi26YDP376kcUIGHn/4B4aMq2SrX+Va/6YULPoUY8F1i+5nTVSWFXLt7FZ2rpzMka1/MSur7qhyYUTw23zR+xxzO2+luUtnVl+ey8T4QP6ROI6zhQfM6keSLHFnducWc7M8NTm3rseuS3U592d17F+i6CPRHMk8wtXCq6xOXs3chLlMCp30qwmO4Zfznj+1AFmhUNgqFIolCoUiVaFQFCsUilMKhWLQA9q+qVAojisUiiKFQpGhUCj+qVAoVHe8vkehUFQoFIqSm18pT+s6fo3sHKrXK7Z1UJL44w2mNE3gk1En6fiSB/ZO1bf91v/5GjV1YHZUG5Zf64ujq4o9q7Nv93M9s4LYjy4yd+RJ9q/P5c2geOKiqleveFCQZu1oS7vpPRmX/Cde+TES37CmnPzXLpY3/pgtI78kY89F88ovOrej4bJ/EJyxl8BPfseYEmu+S7cm1qcDH3Xvj6nw7mXeVq1ahZ+fHzNmzCA5ORmluwcNpv0fwTsv0yh6A9aBzbjxn3e52ieA3HenUHH2pOU31kK7Vk/lyNaPcXBpRPqFXWyMfonKcvOWp7NSWPGc10A+7ryZL3tfYGhgBEfzv+d3h3vy9sGu7Mhcjt5Y8eiOJMkMBzMO3vPEut6o50DGgVo9t67Hrkt1OfdndexfoksFl3hl7Su0jm7N+7vfZ+ZzM/nXgH/V9bSeqF/Ke/7USiwUCoUj8AdgGZAGDAZWA+2FENd+1nYWcBo4DHgBccA3QohPb76+B4gVQnxpyRxkiYV5CnIqWfPJZTZHpzHinSCm/rMlhkoT1rZWKFVWVJRWYeeoYv+GXOZHnOWLc71wdLVGM/MMpToDvV9rRM9XfNj/bQ7bFmcwd6tlf+EoSi0gecE+zn55kIobpXi0a0RIZBgtxz+HteOD16a8k6iqomTjTnSaGMoTjqKwt8N5fDhukeOxad+STp06cerUqdvt+/bti1qtJjw8HNXN0orKi2fQxUZRtHEForwMu049cZugxmnASBTW1hZd06OcO7ycPV/PYsIHl3By9QVg5d/b0WdUFP7N+z5Wn+VVJezKiiEuVUN66TlcrD0ZHDCDwYEz8bL79SzmLkmSJEk/V29KLIQQpUKIj4QQ14QQJiHEZuAq0Pk+bRcIIfYKIfRCiExgJdDzac31WdegoS2zNW2IzXqBFl1cUaqsSDtXypEt1cuK2TlWB5C5V8sIauuEo6s1KUd1JP54g75jfXl+hDcA3kH2FN0wcCXx0ZuF3MklqAE9Pw1ncvrH9FsyFoXKit0z17LU/wP2/X4juiuPLntQqFQ4jxqIf/xKAk99h/MbwyiOjSMtNJzknqOo+llGec+ePbz66qs0adKETz/9lOvXr2PbvC3eHy+g8d5MPN/9DGN+Njm/GcPVF4K5ET2Xquu5Fl3Xg5SX3iBpbxRdXn7/dnBcqstGZe2Awuqn3QiFqfpPTub+UmuvcmJo4CwW9TrD37vsoq17T9Ze+RuT4oP55ORokgsSZPmFJEmSJN1HnT2kp1AofIBUoIMQ4qG7NygUio3AeSHEn25+vwdoCyiAFOA9IcSeB5w7HZgOEBgY2Dk19dEbVkj3OvhdLp9NPk2XwZ6M+kNjriYVs/y9i7z2bhOGzgrkv1OTMRkF0//bGmf36uxq0p4bzB15itW5L9yzSoYlhBBk7btCcvReLq8/hckoaDy0LSGRvQl4qZXZtVfGAi1FS9ahjV6JITWDk14OrPJRseVcIsafrYlsa2vLuHHjUKvVdOzYsXoeJhNl8VvRxsyjbN92FNY2OA16DbcJauxCuz729V06uY496yKY+tec29eSlrKTpPh5tO05g8Zth9xuazIZ+WHZWJwbBNF9yFxU1pY9uZxbdo3N6QvYlrGYEkMhjZ1DCA9U84LvG9gq7R/7GiRJkiTpl6SmGeQ6CZAVCoU1sBW4LISY8Yi2U4C/UB1IX795rBtwFtADY4Com69fflhfssSiZopu6Fn67gXO7CsksLUTDZvY89a/WqHNq+SfbyQxYIoffcY0uh3k/b8BR2nQyJbfLw/BZBJYWdX8IYKSTC2nF+7n9BcHKM8rxr2VDyGRvWk1sSs2zuYFi8JopHTzbrSaGMp3HSTHRsG6Vh6sSjvPde3dayK7urqSnZ2Nvf3dwaP+SgraldEUf7sMU2kxdqHdcB0fidOg0VjZmFcGckvcwiG4eDSm7+io6r4rijm9fyFp53cw+K1vsbG9ezH5wrwLJKx/m9xrh2jdbTI9hv3N4kC5wljGnqxVxKVpuFqchJO1Oy/7TWVYUCQ+9kEW9SVJkiRJvzT1LkBWKBRWwCrABRguhHjgtmoKhWIEsAjoL4RIfki7bcAWIYTmYWPLAPnJqCgzYmUFNnbVf/7X5uv5OPw4I94Jps/r1UuLpRzR8tseh5if3IugNpbtFmQOY6WBi1+fJHFeAnnH0rB2tqXN5O6ERPbGrbm32f1Unr2ELiqWohUbqSgtYXszD2KNBZy8egmA3/zmN3z22d1rPN65HJuxpIjiDSvQxkZhuJqC0tMH19en4zpmJiof30dfh6GS7bET8fbvROeX/gjAtbNbSd47n4CW/enQ922EyYTCyuqesctLrvPtvD4UF6QyYOJKmoQMN/u677yW5MIENqVGcSBvAwhBN+9hDAtS06HBi7+qJ6MlSZKkZ0e9qUEGUFT/tF0C+ACvPiI4HggsBoY9LDi+ScAT3EZGeig7B+Xt4BjA2V2Fi4cNt37XSjmq44vfnmfAVP9aCY4BlLbWtJrQldeP/p7Rh35Lk/D2JC/YR0yLv/LdoAVc+/7M7Zrdh7Ft0wzv+R/ROCMBv//+mZHCmTVX4RuP9oxs35npr42555zJkyczYcIEjhw5gtLJBbcJkQRtPYvvkm3YtnuOgvl/5eoLQWT/ZizlJx6+zJrS2paAlv1JO/8Dxio9mRfjObX7M5zc/GjTY2p1owcEqUqVLXaOHgS3G4qrZ1MAMi8loK8sMeMO3upaQUiDPrzX8RuWhV1ldJM/cqZwP//vaH9m7W/P5rQFlFeZ358kSZIk/Ro81QyyQqFYCHSgOiP8wJ+6CoXiReAb4BUhRMLPXnMDugHxQBXwOvAF0FEIceFh48sMcu3Zsyab/05OplV3NypKjfg2d+A3X7XHxvbp/Q5WmlPEmS/2c3rhfkqzi3Bt5kVIRC9aT+6Orat59bXCZKJsWwJaTQxl2/aCtTXOrw3CTT0Bu26hZGVlERQURFVVFQBdu3ZFrVYzevRobG2rSyv0aZfRxUZTtP4rTMU6bNt2wnV8JM5Dx2Jle28pRHnpDfasnUXa+R/w8G2PT2BXnnvpXeydvTAaDSiV1nfNT2FlxbWzWzn547+xUtowaPLX2Ng5U1FawNIPA0CI6tKLoZ9g6+Bm8X3UGyvYk72azWnRXCw6jpPKjZf8JjM0cDa+js0s7k+SpJ9kF2czZv0Y1o5aWycbXdT1+FL9Up8/L/WmxEKhUAQB14BKqgPbW2YAe6muKW4jhEhTKBS7gd7AnQu37hVCDFIoFF7A90ArwAicB94XQux41BxkgFy7KkqriF+TQ3CIM8HtnLC1Vz6x2mNLGPVVXP42kcR58eQcvIa1ow0tJ3QhVB1Ggzbm7y6nv3AVXfRKipaux1Rcim2X9qxv68Vvly26p62Pjw/Tp09n5syZ+PpWl1aYSksoiotFF6NBf+ksSndPXEa/heu4WVj7Bt7TR4kuC4TAyc2PsqJcVNb22Ni7AHeXVuSmHeOHZWMIajOIrgM/xN7JE4D9cX+ipDCNkN6RnNz9H9JTdtJ14Id0fPG3Ft/DW2Oe1x5iY+rn7M9dj0kY6eI1mGGBkXTyHICVQu4zJEmWmr1lNouOL2Jm55lED4l+5saX6pf6/HmpNwHyL4EMkJ89ecfTSNQkcHHNCYyVVfj3a0FIZBiNh7XDSmlegGcqLqFoxUa0mhgMKVc5427LGn87NqQkodffvZi5SqXi1VdfRa1W8/zzz6NQKBBCUH5oN9oYDaU/xgHg2H8EbhPU2Hftc9863zMHl5AY/znj/pQE/BQgXzz5DSd2/gPvwC70Hvnf2w/n6StLWP5hEKF93qbroA8AKC5IQ3f9Mv4t7t1i21IFFdlsSV/I9+kL0erz8HNozrAgNf393sRR5VLj/iXpWXDnFrp1sV1yXY8v1S/1/fMiA2QLyAD52VWeX8yZLw+SPH8fJRlaXIIb0H52b9pM7Y5dA0ez+hBCULbzALp5KyjdsocbVoKNbTyJyblMVn7ePe3nzJnD559/ftcxQ2YqulXz0X3zJSZtATYt2+M2Xo1z+BtY2Tvc3VZfhrWNw+2xr57exL6Nv6N5x9foOuiju0ovtPmXOLXnf1w7sxmPRu0JGzUPV4/Gd/WXk3qEguwzBLcdgoOz+Q8y3jUnk559Oev4LnUeKbrD2Cud6O83ifDASPydWj5Wn5L0rJi9ZTZLTi5Bb9Rjo7ThrY5vPdWsXF2PL9Uv9f3zIgNkC8gAWTJVGbmyMYmkqL1kxl9CZW9NizeeI1QdhmeIn9n96C+noZu/kqKv1lOp1REf7EaMdSkHL5673Wbr1q0MHDjw/vMoL6N482q0MRr05xOxcnHDZdRU3N6IwDqg8T3tC3LOseXLEdXB8cAPsVKq7iq7uPPf21eMx71hG7oM+H8AlGgzOXNgMWcOfomXfwfSL+yi5/B/ERoWedd5lkrRHWVTahTx2WuoEno6erzE8KA5POc1CKVC+egOJOkZcmc27panmZWr6/Gl+uXX8HmRAbIFZID862A0CpTKmtc1X0/OIkmTQErsUarKDfj1aUaIOowmw9tjpTIvwDOVllG8Mg6tJhb96QukuNqwJsiB5KpSTiYnY2X1UxmHXq9n5syZTJw4kT59+twuv6g4tg9trIaS7d+CyYTji8NwG6/G/vl+dwWvlWXaex66q9KXY6W0xkqpwlBZirWtI5cTNxD/TQRvvHcOW3tXdq+dSWW5juYdX6Np6CtcSvyWMwcWM3zW1hrfQwBtZR5bMxazJW0BNyozaWjfmKGBEbzsPxUna7dHni9Jz4I7s3G3PM2sXF2PL9Uvv4bPS71a5k2SaiojpYRJwfGs/uQy2rzKGvXl2d6XF78Yw+SMv9DzX8MpulbA1lFfsbzxxxz7+3bK84sf2YeVowOu08cQmLQJvx9X0OnFPnx4uoi156rIGaWmbM/h28u8rVu3jqVLl/LCCy8QGhrKF198QXl5OfZdetPo868J3n0N95n/j4qTB8mc/BKpg9qgjY3GVFI9D1sHt3uWjCvIOcu1M1sAsLatLhUpunGVBo3aYmvvSm7qUTIu/EiLzmNpEjICABf3ICpKb5CfmVij+3eLm603Y5u+x7I+V3k3dC2edv58mfJ7xu/xY97pGVwrPv1ExpGk+uxgxsG7gg0AvVHPgYwDz8T4Uv0iPy8ygyzVM1eTi1n8u/Oc3HEDlY2CPmMaEa4OosVzrjXu22Q0cW3zaZKi9pK+MwWlrYoWYzsTog7Du1OA2f0Y0rLQzV+JbvE3mAq02LRrgZt6PAOX/JdDR47c1dbd3Z2pU6cye/ZsGjeuLq0w6Ssp2bIWbYyGytPHsHJyweXVybi+EYFNcPOf3Y9N7Fj5JsFtBtOx3x+4kZnEwS3v8Vz/d2nfexa7Vk3FZDLSe+R/sXNwByDj4h6+XzKSqZ/k3lXH/CRdKjrJptQo9mSvQm+qILTBCwwLjKS7dzhKK1WtjClJkiRJt8gSCwvIAPnXI/18CZui09i5LJPyEiMtu7oSPieI3qMbYm1T8z+MFJzNJilqL+dXHMFQqqdhj2BC5/Sh6asdUFqbWX5RXkHx6s3oNDFUnjrHJWdr1jZ24puLyZSVl9/VVqFQMGzYMNRqNf369fup/CLxMNoV8yj5YR0YDDiEDcJtghqH3i/f3l2vvPQGBze9S9blfTRo2BoXjyb0GvEvyorz2L7iDdp0n0LzTmNul2tsjB6Ao2sjXhq//K5d+mpDkf4G2zK+ZEvafPIq0vC2C2RI4Gxe9p+Kq41nrY0rSZIkPdtkgGwBGSD/+pTqDOxcnsmmqDQyL5bh3tCWQdP9GTIzgAaN7t2Uw1KV2jLOLTtMUvQ+dJfycWzkQtsZPWk/sycOPuYtbyaEoGL/cbSaGErWb6fIaGBTGy9WFKZxNTvrnvatWrVizZo1hIaG3j5WlZ+DbvVCdGsXYczPwTq4Oa5vROAychJK5+rsuUFfhkJhdXvpt/LifDYvDie07zu06PQ6UL2SxbrPejDuT8k0aNSmprfHbEZh5FBeHHGp80gq2IONlR0v+L7B0MAImrl0fGrzkCRJkp4NMkC2gAyQf71MJsHxH66zOTqNo9/no1Qp6PmqD+HqIFr3cHvslRpuESYTqdvOkahJIG3bOayslTR/rSMh6jAadgs2u5+qzBx0C9eg+2Ithrzr7PdzZpVLFbvO/bSbuqOjI5mZmbi63ls2IvR6SravRxujoeLkQRQOjriMeBO38ZHYNGt9V1uTsYotX46g5XPjadF5DLmpR9m74Tc0aNiGF8d88dj3oqZSi88Ql6ZhV+YKKk3ltHXvxfCgOfTwHoHKqnZKPiRJkqRniwyQLSAD5GdD1qVSNkWnsWNpJqW6Kpp3dmFYZCB9xjTCxq7my48VXsgjOXov55YdRl9UgXeXQELVYTR/rSNKW/MCPFOlnpKvv0eriaHyaDLXHFWsberC2kunmfDmRObPn39X+3PnznHt2jVefvnl2ytjVJw+jjY2ipJNqxAGPfbP98dtghrHvkNQKKuv88LxNexcNZmGQd0x6Etx82pO/3FfobS2rfF9qKliQyE7MpayKS2KnPKreNj6MiRwFoP8p+Nm+3jrNEuSJEkSyADZIjJAfraUl1SxKyaLTVFppJ0twcXTmkHTAxgyMwCvAPsa968vruD8iiMkRe2l8Hwu9t7OtJv+PO1m9sTJz83sfioOJ6LVxFD89VZKDBVYvdCNZr+fjsPAsNv1wZMmTWL58uU0b96ciIgIJk2adDvDXFWQT9HaxehWL6AqJwOVf2Pc3piNy6ipKF3dMVSWcuHEGjx9Q/Bo1A6VjX2t1x5bwiiMHMvfSlyqhhM3tqNSWBPW6HWGB71NC9fH/m+bJD1QdnE2Y9aPYe2otY+1pmtNzq/LsWuqLseWHs+z/J7VNEBGCPHMfHXu3FlIzx6TySRO7rouPgo/LgZbbRWDldvEJ6NPiqT4G8JkMj2R/lO3nxNxQxeKeYo5Ikr1tvj+ta9E5t5LFvVvyM4T1z/WiMuNeooLNBdXm/UXBf9dKrIuXhY2NjYCuP3l5OQkZs+eLc6ePfvTPPR6UbT1G5E+LkxcaI642N5e5Lw3TVScT6rxNT4tacXnRPSZSPHKdicxcCvi7QPdxK7MWKE3Vtb11KRfkVmbZwmrj63E7M2zn/r5dTl2TdXl2NLjeZbfM+CYqEHMKDPI0jMl91oZm+ens+3LDEoKDQS3d2L4nCD6jvPFzqHm5Re6K9dJnr+Ps0sOUqktx7ODH6Fz+tBiTCdU9jZm9SH0ekq+3Y5WE0vFgRMUOFizrLkLq6+cQVd879rM/fv3R61WM2TIEJQ3SysqzyWijY2ieNNKREU59l374DpBjVO/4ShUv/xl1kqritiZsYxNadFkll3A3caHQQEzGBwwAw8737qenlSP3blD2OPsDFaT8+ty7Jqqy7Glx/Osv2dyoxBJsoBPsANT/9mSmIy+vL24LQCfTzvDBP89LPm/FHKvldWof9cmnvT69wgmZ/yFFxa9jqgysWvKKpb6f8D+P8VRnFbwyD4UNjY4jxlKwP41BBzfQNBrw/jd+WLii735e8vutA4Mvqv9zp07GT58OM2bN+c///kPQghsW4fi88liGidk4PGHf2DIvEaOehTX+jWhYOHfMRZcr9F11jZHlQvDg+fwRe9zzO28leauz7H68lzejA/iH4njOFt44J5NUyTJHHMT5mISJqC6vGdu/Nyndn5djl1TdTm29Hjke1YzMoMsPdOEECQnFLIpKpUDG/JACLoN82aYOogOLzao+eoXQpAZf4kkTQJXNiYB0Hh4e0Ln9MGvTzOz+6/KL6Doy6/RzV+FISOboz5OrPaEreeSMJlMt9u9+OKL7Nq16955GI2U/rgJbYyG8kM/orCxxXnYOFzHR2LXtlONrvEWg74MaxuHJ9LX/WSVXiIuLYqdmcsordLR3KUzw4LU9Gn4OjbKmi/pJ/363ZlRu8WSzFpNzq/LsWuqLseWHo98z2QGWZJqRKFQENKnAe9905FlV8MY/acmnNlfyP/rf5SZ7fazeUEa5SVVNerfv29zBq+fyptXP6TT//UjK+EyG17QsDrkU04v2o+h9NFbZqu8GtDg3ZkEX/2RRuui6NOqLf89U8qP1s2JCOlOg5sP7KnV6nvOvXjxIkYhcHppBP4rdhH4/RlcRk2heOvXpL/SmfQxvSjevAZhMDz2deorS1j2YRDblo0l68r+Wsnu+jo2Y2br/xHTN4PINguoMJbxWfIkJuwJYNmF98gvT3/iY0q/Lndm1G6xJLNWk/Prcuyaqsuxpccj37OakwGyJN3kFWDPpE9aEJPel98ubYetvRXRs88ywX8Pi35zjqxLpTXq3zmwAc//PZzJ6R/T76txWFkr2T1zLUv9P2Dv7zagu/LosgeFSoXzqy/jvyeWwMQ4Wk0cxTsXS9mt8+R/LXvQt9IaUfVTQF9VVUW/fv1o0qQJn376KdevX8e2WRu8P5pP44QMPN/9DOP1HHJ+O5arLwRxI3ouVddzLb42U5WeVl0mkHpuK+v/14u1/+rMucPLqNKXP/pkC9mrnBgSOJNFvc7w9y67aOvek6+v/J1JCY3568lRJBckyPIL6b4OZhxEb9TfdUxv1HMg40Ctn1+XY9dUXY4tPR75ntWcLLGQpAcQQnDuoJY4TSr71+dirBJ0GezFsMhAOg3wxMqq5uUX2fuvkBS1l8vrT2EyChoPbUtIZG8CXmpldvmFsUBL0ZJ1aOevoupaBir/hrjOGovLtNf5LmE3o0aNut3W1taWsWPHolar6dSpurRCmEyUxW9FG6uhbO8PYG2N86DXcZugxi60q0XXZKgsJeVYLInx8yjIOYudowdte0yjfe/ZOLsHWNSXJXLLrrE5fQHbMhZTYigk2Kk9w4Pm0Nd3HHbK2iv7kCRJkn6Znso6yAqFwg54G+gHePOzzLMQIuRxJ/A0yQBZelwF2RV8vyid7xemU5irx6+FA8MiAun/ph+OrjXf/a0kU8vphfs5/cUByvOKcWvpTUhkGK0ndsHGxbw1m4XRSOmWPWg1MZTvPIDC1oYtzwXyydnD5Bfe+3Bgz549UavVjBw5Emvr6mvQX0lBuzKa4m+XYSotxrZ9F9wmqHEa/BpWNuZvLiKEIOPibpISoria/B0oFDRpP4LQMDW+zcJqXNv9IBXGMuKzVxOXquFKcSJO1u687DeVYYER+DgE18qYkiRJ0i/P0wqQvwJeAb4Bsqhei/U2IcTHjzuBp0kGyFJNGfQm9q3L4bt5qaQc1mHvpKT/JD+GRQQS0Mqpxv0bKw1c/PokiZoE8o6mYe1sS5vJ3Wkf0Rv3FubvLld59hK6qFiKVmykorSEHc08iDEVcPLKpXva+vr6MnPmTKZPn46Pj0/1PEqKKN6wAm1sFIarKSg9vHEdMwPXMTNR+Vi2zFrRjWsk71/I2QOLqSgrwMO3PSG9I2nZZXytPdQnhCC5MIHNadHsz/0WhKCr91DCA9V08OhXawG6JEmS9MvwtALkAuA1IcTOxx3ol0AGyNKTdOGYjjhNKvFrsqnSCzr292D420E8N8gLpbLmAVjO4WskRSVwce1JTAYjgS+3InROH4IGtjZ7FzyjtoiiZd+ii16J/tI1khvYs9rPhrjzSRh+9lDep59+yh//+Me7jgmTibIDO9HFaCjdswWUSpwGvFpdftHpeYsCzSp9OSnHVpK0N5rrmaewdXCnTfeptO89G1ePxmb3Y6m88jS+T1/EtozF6PT5BDq1YVhgBP18J2KvqvkvNZIkSdIvz9MKkDOAfkKIlMceSKGwBeYD/YEGwGXgXSHE1ge0/w3wR8ABWAfMEkJU3nwtGFgKdAPSgEhzgncZIEu1QZtXydbFGWyZn8aNrEoaNrZnaEQgA6b44+xe8/KLstwiTi/az+mF+ynNLsK1qSchkb1pPbk7tq5mll+YTJRtS0CriaFs217yVLCxtScxWRfJvXEdOzs7MjIy8PDwuOu8qqoqVDc3FtGnXUYXG03Rt0sxFWmxbdMR1wlqnIeOxcrW/GXWhBBkXdlHUvw8LidtQAgTjdsOIyQskoCW/Wstu6s3VhCfvYZNaVFcLDqOo8qV/n6TGBYYgZ9j81oZU5IkSaobT2WraWAOsIibAfXjfAGOwEdAMNU1zEOBYiD4Pm1fBnKBtoA7sAf49I7XDwKfAfbAq4AW8HrUHORW01JtMuiNIuHrbPH73ofEQLaK4Q7bxefTk8XV5KIn0n9VpUGkrDkuvnn+MzEPtVjg+Duxe9ZaceNstkX9VKZcEXlz5opLzh3EaZqJeU26iI9fnyiMFXdv55yYmCh8fHzE+++/LzIzM28fN5aWCO3qheLa4LbiQnPEpS4eIv9ffxL6zFSLr6m4IF0c2PT/xOJ3vcQ8NSLmr61FYkK0qCx/MvfsfkwmkzhbcEB8emqsGLrNWgzcinj/2GBxJO97YTQZa23c2pJVlCXCloaJ7GLLPgc1Pbeux5ak+qI+f9br89yp4VbTDwto4372pQVSga0/f+2xB4ck4NX7HF8F/O2O7/sBOTf/3QKoBJzveH0vMPNR48kAWXpaLp3Uif9OTRbhdj+IgWwV/9f3sNj3bY6oqjI9kf5zj6WKHZNiRbTtb8Q81OLbfhpxeWOiMFaZH+AZi4pFYVSMuNrqZXGB5uKyd3dx/c//FYaM6v8QTps2TVD9vIFQqVTi9ddfF/v27RMmU/U1mEwmUXrwR5E5+xVxoaWVuNDSSmRGjBSlh3bfbmMug75cnD28XKz5Z2cxT41Y+AcXkbD+HVGYe8Gifix1ozxLrLjwgRi7y0cM3IqYGt9cbLw2T5TotbU67pM0a/MsYfWxlZi9efZTPbeux5ak+qI+f9br89xrGiA/sMRCoVAstSALPdnctnf073Mz4O4ghDj/s9cSqQ6Q19783hPIBzyBsJuvtb6jfVT1NMS9uyTcQZZYSE9b0Q09PyzJYPP8NPJSK/AOtGPI7EAGvuWPi4dNjfsvv17CmcUHSF6wn5L0QpyDGtB+di/avtUDuwaOZvUhhKBs5wF0mhhKN+8GKyvsX+nPi4fjuJiedk/7jh07olarGTt2LHZ21aUVhsxUdKsWoPtmMSZtAcE7L2Md2MTi6xFCkJt6hMT4eVw6+TUmUxVBbQYREqYmqNXLZtdeW8pg0rM/Zz0bUz8nRXcYe6UT/f3eZFhgJAFOrWplzCfhzt2yLN0lqybn1vXYklRf1OfPen2eOzylGuQnTaFQWFOdib4shJhxn9cvAxFCiG13tNcDjYHeN1/rfkf7TwA/IcSk+/Q1HZgOEBgY2Dk1NfXJX5AkPYKxysShTfls0qSSuLsAGzsr+o5rxLDIIJp1dKlx/6YqI1c2JpEUtZfM+Euo7K1p8cZzhESG4RXqZ3Y/hitpaOevomjJOvRaHXuC3Yi1KeXAhXP3tPXw8GDatGnMmjWLwMDA6nlUlFN+eA+OfQbV+JpKi3I4vX8Rp/cvpKwoB1evZoT0jqR1t0nY2rvWuP8HuaA7xqbUKPZkr6ZK6Ono8RLhQWq6eA1GqVDW2riPY/aW2Sw5uQS9UY+N0oa3Or5F9JDoWj+3rseWpPqiPn/W6/Pc4ek9pPcjMFIIof3ZcRdgoxDiRbMHVCisqC6hcAGGCyHu2d/2Zgb5EyHE1ze/9wCu81MG+RMhRJs72msAZAZZqg+unS5mU1Qau2KyqCwz0raXO+HqQJ5/xQeVdc0zpNeTs0jSJJASe5SqcgO+YU0JVYfReHgISmvzAjxTaRnFK+PQamLRn75AiqsNa4McWZeSSEXl3VtjK5VKLl26RHBwcI3nfj/GKj2XE9eTGK8h59pBrG0cadV1IiFhaho0bP3oDh5TYWUu2zK+ZEvaAm5UZtLQvjFDAmcz0P8tnKzdam1cc92Z3bnF3CxPTc6t67Elqb6oz5/1+jz3W2oaIJv707gvcL+/B9tRndE1i6L68fQlgA/Vtcf3BMc3nQFC7/g+FMgVQty4+VoThULh/LPXz5g7D0mqS8HtnFEvbEtsZl+m/aclN7Iq+PvriUwKjmf1J5fR5lU+upOH8Gzvy4tfjGFyxl/o+c/hlKQVsnX0UlY0+Zijf9tOeX7xI/uwcnTAdfoYApM24bc7hk79+vLBaR3x+gDea9uDQJ+f/gPZvXv3WguOAZQqG1p0Hsvo3x7gtd8fpWmHUZw99BUr/9aGjdEvcSU5DpPJ+MTHdbf1YWzT91jW5yrvhq7F086fJSl/YPweP+adnsG14tNPfExLzE2Yi0mY7jpmFEbmxs+t1XPremxJqi/q82e9Ps/9SXloBlmhUHS6+c9jwADgzu24lFSvNvGWECLYrMEUioVAB6C/EKLkIe0GAsuAF6nemORb4IgQ4k83Xz8E7AP+DAyiesm35kKI/IeNLzPI0i+R0Sg4vi2fjZ+ncnLHDVQ2Cvq83ohh6iBadql5KYHJaOLaljMkaRJI35mClY2SFmM7E6oOw7tzoNn9GNKy0C1YhW7x1xhuFJIQ6MpK+wpm/b8/MmbihLvafvHFF1y4cIHZs2fTpInltciPUl6cz+mDizm9bwEl2gxcPBrTvtds2vSYip2D+xMf75bLRaeIS9WwJ3sVelMFoQ1eYFhgJN29w1FaqWpt3PvpuKgjp3JO3XO8Q8MOnJxxstbOreuxJam+qM+f9fo891tqtcRCoVCY+GnXvPstTloOqIUQXz1yIIUiCLhG9QoUVXe8NIPqVSjOAm2EEGk32/+W6nWQ7YH1VK9Scec6yMv4aR3kCCHXQZZ+BTJSSoiLSmPnskzKS4y07OpK+Jwgeo9uiLVNzcsvCs7lkBSVwPnlRzCU6mnYI5hQdR+avhqK0sa8AM9UXkHxmi3oNDFUnjyLwtUZ16mjcIt4A+smgRiNRpo3b87Vq1dRKBQMHToUtVpN//5Pbo1jIQQKhQKj0cCVpI0kJWjIurwXlY0DLZ8bT0hYJJ6+7Z/IWPdTpL/BtozFbElbQF5FGt52QQwJnMnL/m/hauNZa+NKkiRJ5qntADmI6sD4CtCV6pUkbtEDeUKIJ/+3zVoiA2SpvijVGdi5IotNUalkXijD3ceGgdMDGDorgAaNzN+U40EqdeWcW3aYpKi96C7l49DQhXYze9JuRk8cG5r30KAQgooDJ9BqYihZvx2MRhyH9OVI9xa88uff39O+VatWREZGMnHiRJydne/To/mM2gIqEg9TvPVrrP0b0yDifW5kJZMYP4+U4ysxGirwa9aXkD5qmrQLx0pZO9ldozByOG8TcanzSCzYjY2VHX0bjWNYYATNXDs9ugNJkiSpVtTLVSzqigyQpfrGZBKc2H6dTdFpHN2Sj5VSQc9XfQhXB9HmebcaZ2SFyUTqtnMkRe0ldetZrKyVNBvdgdA5fWjYLdjsfqqyctEtXINu0RoMedfZ7+/CKmcDu84l39PWxcWFSZMmERkZSfPmj7eDXdbsVzDmZ2Pf/UUqTuwHlTWNotajdHalorSAMwe/JHlvNMWFaTi5B9C+12za9ngLe6fay+6mFp8hLk3DrqwYKo1ltHXvRXigmud9XkFlVfMdFSVJkiTz1VqArFAoJprbiRBixeNO4GmSAbJUn2VdKmXz/DS2f5VJqa6KZp1cGBYZSN+xjbCxq/nyY9qLeSRF7+Xc0sPoiyrw7hJISGQYLV7viNLWvADPVKmn5JutaOetoPJoMtcclXzdzI21l05TXHrvYweTJ0/mq68eWaF1l6Jvl5P30SyCd1xC5eMLQOqQdnh9EIVDt74/zcVk5NrpzSQmzCPjwo8oVba06DyO0DA1XgEdLRrTEiUGLdszvmJTWhQ55VfxsPVlSOAsBvlPx83Wu9bGlSRJkn5SmwHyzx91twGsgVuPNVoBBqBSCFHzhVyfAhkgS78G5SVV7IrJYnN0GqlnSnDxtGbQtAAGzwzAO9C+xv3rSyo5v7y6/KLwfC72Xk60nf487Wf2xMnf/AfgKg4notXEUPz1VkoMlWxp5cWKkkwuZqTfbvPxxx/zwQcfmN2nsfAGmVMH4jRgJA1mvgtAVV42WbOG4/Wn/2Df5f6L6tzIPkNSQhTnj66gSl9Go8bPE9JnDk1DR6JU1k521yiMHM/fxnep8zhxYzsqhQ1hjV4jPGgOLV271MqYkiRJUrWntQ7yEOAj4B3g8M3D3YDPgLlCiM2PO4GnSQbI0q+JEILE3QXEzUvl8KY8UCjoMcKbcHUQ7cPca15+IQTpuy6QpInn6qYzKKwUNH01lFB1GI16NjG7/6qcfHSLv0a3YDWG7FwON3Jilbsg/koKV69epWHDu9fU1Gg09OvXjzZt2tzTV/G2deR/HEHjAzm3xy/bvxNtzDxcX5+B4wtD7n8tRiMKpZKKskLOHV5GUkIURTeu4OjqS7vnZ9Cu5wwcXHwsvEPmSy85z+a0+ezIXEa5sZiWrl0JD1LTu+FrWFvVfEfFx5VdnM2Y9WNYO2rtY61teir7FH2X9yVhcgIhPiFPfoIPUdO5S/WLfL8lSz2tAPkcMEUIcfBnx3sAy4QQLR93Ak+TDJClX6vc1HI2z0/jhy8zKC4w0DjEmXB1IH3H+WLnUPPyC93VGyRH7+XskoNUasvxDPUjdE4YLcZ2RmVvXoAnDAZK1v+AVhNb/XCfgw1BE1/FVT0B2zbNAEhJSaFVq+qtnfv164darWbo0KEoldXXkDltCNb+jfH+MAoAU0kxujULKdu/g0ZR32Ll6HQ7GAYoiltJ+ZF4Ks8cx75LGB6//RtWdvaYTEZSz20jKV5D2vkfsFLa0LzjaELC1DQM7lbj+/UgpVVF7Mxczua0aDJKU3C38WFgwHSGBMzEw8631sZ9kNlbZrPo+CJmdp75WDtktZvfjjP5Z2jr1ZbTs5/uutA1nbtUv8j3W7LU0wqQy4FuQoiknx0PBQ4JIWr+d92nQAbI0q9dRZmR+NXZfDcvlatJxTi5WzPwLX+Gzg7AJ9ihxv0bSitJWXWcJE0CN5KzsGvgQJtpz9N+Vi9cghqYP88TZ6pXv1i9GVGpx/7F7rjNmcifdmwkOvruH37BwcFEREQwefwb6P/+DrZtO9Fg+h8BKI3fim7VfOyf74/7m28jqqpQqFQIo5Hr//4TFcf34TxiIjZNW1O48G8IkwnvuYuwCWx6u//C3BSS9kZz7vAyDJXF+AR1JaR3JM07vobS2rbG9+x+TMLEievb2ZQWxdH871EqVPT0eZVhQZG0cXv+iS2H9zB37pT1ODtknco+RccvfqrlTpyZ+NSyyDWdu1S/yPdbehxPK0Dec/OfbwghMm8e8wNibvbxwuNO4GmSAbL0rBBCcHpvIXGaVA5syEOYBN2GeRM+J4gOLzZ4IuUXWQmXSJyXwJWN1b83Nw5vT+icMPz6Nje//CK/gKIvv0Y3fxVVGTmcaOhErCd8fzYRk+nuXZzs7e3554vP0d+mgpZr9lF+6iAF8/+KdWBTvP747+rsscGAwtoa3bqvKN6wHIewQbi+Ng2luwcA5cf3Y9OsDUrX6lpqYTKhsKpeX1pfUcy5I8tJSohCm5eCg7MPbZ+fTrteM3Fyrb3sblbZZTalRrEjcymlVTqau3RmWGAkYY1ex1ZZe7mH2Vtms+TkEvRGPTZKG97q+JZFmblb2eNbnmYWuaZzl+oX+X5Lj+NpBchNgY1AKyDz5mE/IAUYIYS49LgTeJpkgCw9i/LTy9myMJ2tX6RTdN1AQGtHwiOD6DfRF3unmq8PXJxWQPKCfZxZfJCKG6U0aNuIUHUYLcc/h7WjeRlYUVVFyXe70GliKI8/QpatgnUtG7Aq9RwFOt3tdm5W8JE39HVRYt28LV7P98N95ruoGnhh0ldiZWOLMBpJH92NyjMncB4xkfLDu7F/Lgzvj+ajsLFFYWODqaKckq3fULpnC0oPbzx+81eUztW7FgqTifSUnSQmzOPa2e+xUihp2uFVQsLUNGpce9ndiqpSdmXFEJemIa3kLC7WHgwKmMHggBl425u/46E57szI3WJJZu7n2eNbnkYWuaZzl+oX+X5Lj+uprYOsqP6p8BLVQTLAOWCnqEcLKcsAWXqW6SuMxK/NYVNUKhePFeHoqqL/JD/CIwPxbeZY4/6ryvVcWHOCJE0C+SczsHWzp/XkboRE9Ma1qZfZ/VQmnUcbFUtxbBzl5WX80MKTGH0+Sdeu3G7jrYRNcd/RdXA4VddzUdjZo3SqXkyneNs6CqI+xnnw6zSY/WeMukKy1a/i8c5fse/0PMJgIOf3b6C/egGX4RMoP74PY0Eevou/vx0k36LLv0zSvvmcPbQEfbkOL/+OhISpadFpDCqb2snuCiFILNhNXOo8DudtAqCHzysMD5pDO/feTyRAvzMjd4slmbmfZ49veRpZ5JrOXapf5PstPS65UYgFZIAsSdUB2PlDWuKi0tj3TQ7GKsFzg7wYFhlI55c9sbKqeflF9oGrJGkSuLz+FCajIHhIG0LVYQS81MrsAM9YoKXoq/Vo56/EcDWdU14OrG6oYtPZRDp27MiRI0dQKBTovlmCdsXnNFi1nwsXLtAi+yK6r7/A558rsG7oD0DWzHBsmrTC8//+iW7dV9z43/sErj96ex3ltFc602DOxzi9MPS+czFUlpJyLJbEBA0F2Wewc/SgbY9ptO89G2f3gBrdr4fJLU9lc9p8tmUspsRQSLBTe4YHzaGv7zjslI9fU95xUUdO5Zy653iHhh04OePkI8+3/8T+rozeLXYqO8rfK3/seZmjpnOX6hf5fkuPqzbXQf4tMF8IUXHz3w8khPjscSfwNMkAWZLuVpBdcbP8IoPCnEr8WjgwdHYgL03yw9G15usDl2TpOL1wH6cXHaA8rxi3lt6ERIbRemIXbFzMy8AKo5HSLXvQamIo33mAXBsF5QN60Puj32PXuR0ApvIy5i/5CrVaTUTnVsywKaJV/DWsrauv4VIHJxr972ts23Yi990p2IV0xWPOR7fPTXulM94fL7i90UhF4hEqL53Bse8QVB4/be4hhCDz4h4SEzRcTf4OgMbth9Ohz9v4NgurvfILYxnx2WuIS53HleJEnFRuDPCfSnhgJD4OwbUypiRJUn1WmwHyVeA5IcSNm/9+ECGEaPK4E3iaZIAsSfdn0JvYvz6HjZ+nknJYh72Tkv6T/BgWEUhAK6ca92+sNHDxm1Mkzosn72ga1s62tJ5UXX7h3tL89Yf15y6hjYqlaPlGRGkZdj064qaegMMr/WnboQMpKSn4KGFeI8hU2ePaL5y+VYUor2cRtDm5uvwi+i/4Ldt5O/At2RWHbs0iPNQfofILQhcbTdG6Jdi07kD5wV14/t+/cJsQiRDirgC4qCCV5L3zOXvwSyrKCvDwbU9I70hadhmPtU3NVwy5HyEEZwr3EZemYX/utwhhoqvXUIYHzaGDR7+nsvqFJElSfSBLLCwgA2RJerSLx3V893kq8WuzqdILOr7kQbg6iC6DvVAqax6A5RxJJUkTz8W1JzEZjAS+3IrQOX0IGtj69ooSj2LUFVO07Ft0UbEYLqVS5u3OXB8jceeTMBgMeCrhtx7go4KjlVbYhQ1izB/fJ3DVf1BY29Lw3zEAmCrKKVjwCYa0yzT8dyzX//F7qnKzcB4yBqcBr1Dyw7fovl6M35KtD5xLlb6clOOrSEqI4nrmKWwd3GnTfQrte0fg6tG4xvfrQfLL0/k+fRFbM75Ap88n0KkNQwNm089vIg4q51obV5IkqT54WqtYqIQQVY87yC+FDJAlyXzavEq2fZnB5ug0bmRV4hNsz7DIQAZM8cfZveblF2W5RZz+4gCnF+yjNLsIlyYehESG0WZyN2zdzMvACpOJsh/2otXEULY1gXyVgg2tPYjJukjujetYK8Bwx3/iVrd2w6v3S4RFrcTa2pribeso/i4G56HjsG3/HFlTXsbz3c9wfHEYCoWCitPHyftwFj5/XYxt69CHz0UIsq7sIykhisuJ6xHCROO2QwkJUxPQsn+tZXf1xgris9ewKS2Ki0XHcVC58JLfZIYFRuDn2LxWxpQkSfqle1oBcglwANhz8+tIfQyYZYAsSZarMpg4uDGPOE0qp/cWYuug5IU3GjF8ThDB7WqeqTTqq7i8IYmkqASy911B5WBDq4ldCFWH0aBNI7P70V+8hi56JUVL11NRVMyPjd2IVRZz5FLK7TZDnWGKp4qXdp1BeSOPvPen49h/BB6//YT8jyMwlZbg9efPb6+TXHZ4D9mRI2lyIBeFtfm/FJQUZpC8fyFnDnxBeUk+7j6tCQmLpFWXCdjY1U52VwjBed1h4lLnsS9nHVXCQBevwQwLjKSz58tYKczLzkuSJP0aPK0AuT/QB+gLdAEMwEFuBsxCiAOPO4GnSQbIklQzl08VsSkqjd0rs9BXmAjp24BwdSDdw71RqmoegOWdSCcpKoELq45jrKzC/8UWhKjDaDysHVZK8/o3FZdQFPMdWk0MhvNXOOtmy5pAezakJKHQV/LNgI60zruMXcfnsQ5siveHUejSr1H8/jRcR03BaciY29nezMkDUHo1ouE/l9+1qYi5jIZKLpxcS1KChry0Y9jYudC622Ta955N65AW5OYCPqdgcl/4KgHyQvDxgZwc88c4lX2Kvsv7kjA54fYaxAWVOXyftpDvMxZRWJmDn0NzhgVG0t/vTRytXR/eoQWyi7MZs34Ma0etfabWpL3fPTdXXd+zuhy/rq/9cdXXeT/rahogI4Sw6AuwB/oBXwF6wGhpH3X11blzZyFJUs3prleKtZ9eFhODdouBbBUTA3eLtX+/LHTXK59I/2V5ReLo37eLrwI+EPNQi6VBH4pj/9ghym+UmN2HyWQSpTv2iczwmeKCooU4ZNVMvNuuh7iwbpOoKtKJKm2BMJlMQgghxgwaIDa3dBDf/X6GKCsrE0IIUX7qsLjQ0kpUXDzzRK4p+8pBsW3ZOBH1jrWYp0aAqP6a1VbwIdX/e/OYJdpGtxV8hGgb3fae1/TGSrE7c5V450B3MXArYsR2RxF9JkKkFZ97Itc0a/MsYfWxlZi9efYT6a++eNg9f5S6vmd1OX5dX/vjqq/zftYBx0QNYkZLNgrxBl6gOov8IhAAHKY6g/zxY0foT5HMIEvSk2U0Cg7F5bEpKpXEHwuwsbOi77hGDIsMollHlxr3b6oycuW7ZJKiEsjccwmlnTUt3+hMiLoPXqF+ZvdjuJKGdv4qipasw6QtwrZDa1wjx+M8bhjXsrNo2awp0Y0grggO2Xrwp5FDGJF/Fue2HfH56xc1vo47lRblcGb/F3Qb/EF19nhmR1AAAliQCHkhmPvs9M93tHvYTnYXdceJS9WwJ3s1VUJPR4/+hAfNoYvXYJQKpcXXcecOZ8/SzmaW3POfq+t7Vpfj1/W1P676Om+p5hlks/5eqFAozgJXgRlANjAdcBdCvFBfgmNJkp48pVJBz1d8+HRXVxae7kn/N/2IX5ODutMBft/7cPVKGAbTY/dvpVLS7NUOjNw9h7FJf6LVhC5cWHWcNR3+wfqwz7n4zUlMVcZH9mPdJBCvf/+Jxpl78f5iLsJoIu+t97jqH8bu33yIta0dcUXwdx/4r90NGm9bQdyhY6jP5LFnzx7MTSSYw9GlIV0HfVD9zcjxd7/46jiL+hq/4e7zx61/8PnNXTvzu5BlxPRN583mn5BWco6PT4TzVkJz1l/9DyUGrUVjz02Yi0lUv7dGYWRu/FyLzq+vLLnnP1fX96wux6/ra39c9XXeUs2ZW4OcDrgCe4HdN79OiCf5U+MpkBlkSap9JVoDO5ZmEheVSs6Vcjx8bRkyK5CB0/xx97Gtcf8VhWWcXXKQ5Oi9FF0rwMnfjXazetH2rR44eJv3AJwQgvL4I2g1MZRu3IlWGIlr48nX168QUp5HSiVc0EOlqE7utm3XDrVazRtvvIGjY8235QZQNDz1U/b49sSABYls+OB3hPSOJLjdUKys7p/d/Xkm8xZzM5pVJgMHcjewKS2a04UJ2FrZ84LveIYHzSHYud1Dz70zq3bLs5Bdq8k9r+t7Vpfj1/W1P676Om+p2lPJIAshAoCOwLdAKLABKFAoFHEKheI35g6mUCgiFQrFMYVCUalQKJY9pN1ChUJRcsdXpUKhKL7j9T0KhaLijtdTHtSXJElPl5ObNa/8JpglF8P4eHMngto5seL9i0wM2MO/JiSRckRbo/7t3B3o9Pt+TLj0AUO+m4Z7ax8OvbeZpQEfsGNSLHnH0x7Zh0KhwKFvN3zXRxF89Uca/3EGk3KMfJfrwgDXzjQIbkvlzV//BXD69GlmzJjBzJkzazT3u/w8e3zLq+MozD3Pli9HEDO3OSd2/ZuK0oJ7mv08k3mLuRlNlZU1YY1e41/d4tE8f4K+vuP4MSuGWfvb88cjL7AvZz1G0/0XK7ozq3bLs5Bdq8k9r+t7Vpfj1/W1P676Om/pybB4oxCFQqEEugLTgPGAUghhVgGbQqEYCZiAlwF7IcQkM89bBpiEEFNufr8HiBVCfGnJ3GUGWZLqRkZKCZui09ixNJPyEiMturgy/O0geo9uiLVNzVe/KDiXQ1JUAueXH8FQqqdh92BC5/Sh6auhKG1UZvVhqqikePVmdJoYKk+e5bKTirVNnPnm0mlKy8oA2LNnD3369KnxfAEUf7YH64p7XzDYYfy4mMtJG0hKiCLrcgIqa3tadhlPSO9IPP2qM5X2n9jfldm6xU5lR/l75Y81pyL9DbZlfMmWtAXkVaTibRfI4ICZDAyYhquN5+12HRd15FTOqXvO79CwAydnnHysseuDmtzzur5ndTl+XV/746qv85aqPa1l3rpS/XDeC0BPwBY4wU/LvP1g0aAKxV8Bf3MCZIVC4QjkAEOFEPE3j+1BBsiSVO+UFlWxa0UmcZpUMi+U4eZtw6AZAQyZGYCHr12N+6/UlXNu2WGSovaiu5SPQ0MX2s3sSbsZPXFsaN5Dg0IIKg6cQKuJoWT9doqq9Gxu48UxN2u+27sHqzuWeisrK+Oll15i3LhxTJw4EWfnJ7/GcX5mIknxGi4cX0WVoRy/Zn0JCYukSfvhWCnNC/4tZRRGDuXFsSlVQ2LBbmys7OjTaCzhgZE0c+1UK2NKkiQ9SU8rQNYDx4B4qoPifUKI0sce1LIAeSLwEdD0Vs3zzQC5LdXVeynAe0KIPY/qSwbIkvTLYDIJTu64TlxUGke35GOlVNDzVR+GzwmidQ+3Gu86J0wmUn84T1JUAqnfn8XKWkmzUR0InROGT7dgs/uvyspFt3ANukVrMObdwLplY9wix+M88RWULk4sXryY6dOnA+Di4sKkSZOIjIykefOH72AnjEYUSstWjqgoLeDsoSUk7Y2muCAVJ/cA2vecRdseb2Hv7GVRX5ZILT5DXJqGXVkxVBrLaOPWk/AgNT19RqKyqvmOipIkSbXhaQXIjjUJiO/TnyUB8i5grxDiozuOdQPOUr0O8xggCugghLh8n/OnU73qBoGBgZ1TU1OfxCVIkvSEZF0qZfP8NLZ/lUmpropmnVwYFhlI37GNsLGzfPmxn9NezCN5/j7OfnUIfVEF3p0DCFGH0fz1TqjszAvwTJV6Sr7ZilYTQ+WRJKycHXGeNJJX9n/HgRPH72k/cOBA1Go1AwcOvCvjfEveRxHor6bgNkGN4wtDLQqWTSYj105vJjFBQ8aFXShVtrToPJaQMDXeAbWX3S0xaNmRuZS41Chyyq/gYevLkMBZDPSfhrutT62NK0mS9DieSoD8pJkbICsUikCql5drLoS48pB224AtQgjNw/qTGWRJ+uUqL6nix9gs4jRppJ0twcXTmkHTAhgyKwCvAPsa968vqeT88sMkRe+l8Fwu9l5OtJ3+PO1n9sTJ393sfiqOJKLVxFC8dislhkq2tPJiRUkmFzPS72nbrFkzIiIimDx5Mq6uP+1gV7j8c7RL/k1VTgYqvyDc3ojAZdRUlG4NLLqmguyzJO2N4tyR5VTpy2gY3IPQvm/TNHQkSmXtZHdNwsSx/K3EpWk4fv0HVAprejd8jeHBb9PStUutjClJkmSpX3uA/B7wshAi7BHttgJbhRDzHtZOBsiS9MsnhCBxdwFxmlQOx+WBQkGPEd6Eq4NoH+Ze8/ILIcj48QKJ8+K5uukMCisFTUeGEKLug2+vJuaXX+ReR/fFWnQLV2PIyuVwIydWuQu2n0u6Z91kR0dHfvjhB3r27PnTPKqqKNn1HboYDeVH4lHY2eM87A3cJqixbWXZ9sWVZVrOHV5G0t4odNcv4+jSiLY9Z9C+50wcXGovu5tRksLm9Plsz1hKubGYlq5dCQ9S07vha1hb2dTauJIkSY9SrwJkhUKhAlTAh4A/1SthVAkh7ruW0M3l2/4hhPjqjmNuQDeq66GrgNeBL4COQogLDxtfBsiSVL/kppazeX4aP3yZQXGBgeD2ToSrg3hhXCPsHH96QC27OJsx68ewdtRai9Yn1V29QXL0Xs4uOUilthzPUD9C1GG0HNcZlb15AZ4wGCj5djtaTQwV+0+QZmfFuhburLl2Fm1REQDu7u5kZGTg4OBw3z4qzyehjY2iOC4WUVGOfZcwXCeoceo/AoXK/AfxhMnEtXNbSd4bTerZrVgprWnWYTShfebQMLjb7XYNG0Ju7r3n+/hATo7Zw91WWlXEzszlbE6LJqM0BXcbHwYGTGdIwEw87Hwt71CSJKmG6luA/BHVwfGdPga+orqmuI0QIu1m2x7ATqChEOLONZC9gO+BVoAROA+8L4TY8ajxZYAsSfVTRZmR+NXZxGlSuZJYjJObipff8mfo7EAaNnZg9pbZLDq+iJmdZxI9JNri/g1lelJWHiNJk8CN5CzsGjjQ5q0etJ/dG5cg88seKk6cQRcVS/GqTZRWVrC1pScrynIYPPpV/v2f/9zV9vDhwyQkJDB16lQaNKgew6gtoGjdErSr5lOVcQ1VQ39cx87C5fVpqBpY9iBeYd4FkvdGc/bQUgyVxfgEdSWkdyTNO76GyubBG7bU5EeCSZg4eX0HcWlRHM3fgpVCSU+fVxkWFElbt541zv5LkiSZq14FyHVNBsiSVL8JITizr5A4TRr7v81FmAStRyiI7jiCSlNFjXe5EkKQlXCJRE0CVzYmgxA0Dm9PiDoM/xeamx3gGa8XoPvyG3TzV2FIz8IU2AjviAm4Th2F0qO63nn06NGsW7cOe3t73njjDdRqNSEh1aUVwmikdPdmtDEayg/uQmFji9PQsbiNj8SuXWeLrklfUcy5I8tJSohCm5eCvbM30/52n/Tx7XtgUfcPlFV2mU2pUezIXEpplY7mLp0ZGhhB30ZjsVHWfEk/SZKkh6m1AFmhUPzW3E6EEJ897gSeJhkgS9KvR35GBVsXpfOXc7/jSuutCFUVKmyYEjqFRSMW1Lj/4rQCkhfu58wXB6i4UUqDto0IiexNqwldsHY0b8tsUVVFadwutJpYyvccRmFni/Mbwyge3Z9WQwZgNBrvah8WFoZarWbEiBGobpZWVF46iy42iqKNKxBlpdh1eh638WqcBoxEYWN+na8QgvSUnSTGzyN85qaHtDO7S7NUVJWyKyuGuDQNaSVncbH2ZFDANAYHzMTbPvDJDiZJknRTbQbIV83sQwghmjzuBJ4mGSBL0q9LdnE2TeY1uWt3MyuDDX8r2cH4iM74NXes8RhV5XourDlBUlQC+ScysHG1p82UboRE9Ma1qfllD5VJ59FGxVIcG0d5eRk/NPcgxnCdpGv3LtDj7+/PrFmzmDZtGl5e1WMYi7QUfbsMXWwUhrTLKL0b4TpmJq6vT0flZVnG/GGJ8Nr6o6IQgqSCPXyX+jmH86oD9B4+rxAepKa9e5gsv5Ak6YmSJRYWkAGyJP26zN4ymyUnl6A36m8fU5qs8T/xMm22RNB5oCfDIoN4bqAnVlY1X/0i5+BVEjUJXF53CpNREDykDSGRYQS+1BLFfdY7vh9joY6ir9ahjV6J4Wo6p7wcWO1rw6bTJ+/JKNva2vLGG2+wePHi2+spC5OJsoRtaGM0lO3dBtbWOA8cjdvEOdiGdDUr0HxYk/3fvUv7XrNwblB72d3c8lS2pC1ga8YXlBgKCXZqR3jQHF5oNA47Vc1/qZEkSZIBsgVkgCxJvy4dF3XkVM6pe4638wjhj9fXsfWLDAqyK/Fr7sDQiEBemuSHo2vN1wcuydJxeuE+Ti86QHleMW4tvQmJ6E3rN7ti42Lems3CaKR0yx60mhhUfj4YP5nDwoULWbRoEfn5+bfbDRs2jLi4uPv2ob96Ad2q+RSt+wpTaTG27Z7DbYIapyGvY/WQB/EetIqFm0shcyd5AtC4/XBC+8zBr1mfWsvuVhrL2ZO9mrjUeVwpTsRJ5cYA/6kMC4ygoUPjWhlTkqRnw1MLkBUKhTswCAgE7ip8E0L85XEn8DTJAFmSni0GvYl963LYFJXGuYNa7ByV9H/Tj2GRgQS2dqpx/8ZKA5fWnSJxXgK5R1Kxdral9aTq8gv3luavPyyqqm4v51ZZWcnXX3+NRqPh6NGjbN++nZdeeumu9rt376Z169Y0bFhdWmEqKabouxi0MRoMV86j9PDG9fXpuI6Ziaqhn0XXVFSQSvK+BZw9sJiKsgI8GrUjJExNyy7jsba5/zJ1NSWE4EzhPjalRbEvdz1CmOjqNZTwIDUdPfrL8gtJkiz2tLaa7g5sASoBLyATaHTz+2tCCMtWta8jMkCWpGfXxeM6vpuXSvyabKr0go4veRCuDqLLYC+UypoHYDlHUknSxHPx65OY9EYCX25FSGQYQYPaYKU0r/zi544fP06nTp3uChArKioIDAxEq9UyevRo5syZQ7du1WscCyEoO7ATXWwUpT9uAisrnAaMxG3CHOw6W7bMWpW+nAvHV5OYoOF65ils7d1o3X0KIb0jcPWsvcdO8isy2Jq+iO/TF6HT5xPg2JphgRH093sTe1XNf6mRJOnZ8LQC5L3ASeBtoAgIBUqB1cASIcTKx53A0yQDZEmStPl6ti1OZ/P8NG5kVuITbM+wyEAGTPHH2b3m5RdluUWcWXyQ5Pl7Kc0uwqWJByGRYbSZ3A1bt5pnYFesWMGbb75517EuXbqgVqt57bXXsLWtLq0wpF1Bu2o+ReuWYCrSYtu6A64T1DgPHYuVnflbdwshyL6yn8QEDZcTq7O7jdsOJSRMTUDL2svu6k2VJGSvJS5Vw8WiYzioXHjJbzLDAiPwc2xeK2NKkvTr8bQCZB3QRQhxQaFQaIEeQohzCoWiC7BKCFEv/mslA2RJkm6pMpg4uDGPOE0qp/cWYmtvxQvjfQlXB9G4vXON+zcajFz+NpEkTQLZ+6+gcrCh1cQuhESG4dG20WP3u2PHDj788EMOHjx4z2ve3t5Mnz6dmTNn4udXXVphKiulOG4lhTHzMFw8g5WbB66j38J13Cys/YIsGrtEm8np/Qs5feALyovzcPdpTUjvCFp1nYiNXc3v2YOc0x4iLnUe+3LWUSUMdPEazNDACJ7zHIiV4vGy85Ik/bo9rQA5H+h5M0BOAd4WQmxTKBStgWNCiHrx2LEMkCVJup/Lp4rYHJ3Gj7FZ6CtMtO/jzvA5QXQP90apqnkAln8ynURNAhdWn8BYYcD/xRaEqMNoPKxdjcovNBoNa9asobKy8q7XlEolI0eO5A9/+ANdunQBoOpGIUUrYtF9EUtV/mXwKMSx/3DcJqix79bXokyw0VDJxZNfk5igIS/tKNa2zrS5WX7h5l17+ZKCyhy2pi9iS/pCCitz8HNozrDASPr7vYmjtWutjStJUv3ztALkH4AVQoiVCoViEdAZ0ADjASchRI/HncDTJANkSfp1edBqDD4+kJNjeX9FN/T8sCSDzfPTyEutwDvQjsEzAxg4LQBXz3s35bB0/PLrJZz58iDJ8/dRkl6Ic1AD2s/qSZu3nsfe4/HyDPn5+SxevJgFCxaQkZFx12sajYbIyEgAsl6ZjTE7H/sXu1O2+yDG69kYnS8gSq5j06IdbuMjcQ4fj5XDo+fxoOt2dsgh5t+TCQ1TE9R6oNlL31nKYNKzP/dbvrv2Oed1h7BTOvKS3ySGBkYQ6NS6Vsb8tcguzmbM+jGsHbX2sXeclKT64GkFyM8BzkKI3QqFwgtYAfQELgBThBBJjzuBp0kGyJL061JbG14YjYLDm6rLLxJ/LMDa1oq+YxsRrg6kWaefMpWPO76pysiVuNMkaeLJ3HMJpZ31/2/vvuOjLPIHjn8mm94JhJaQ0EuABKS3UKSINEUQpAgIIpAsd55e8e68s97d77wmCSCIoCR0FAkdESH0JhB6C6SQRgK76bub3fn9sQFD300Idd6v175k95lnZp7hkf1m8n1maDK6DaHa7viH2bfqxHUlJSWsXr2aGTNmEB8fj5eXF5cvX8bLy4vcb74ja+oH1D3/A1eEhVq1apHUYgDV/vN7SvIuoI+JwnDyMA7evni/8ga+oyNwCrr7g3j3uu55f6pFYW4GPtUaENotkmYdJ+DiVnmzu2f1B1mTFM229CWUSCOtqj7PkOBf0c7/RTRCU2ntPqmmrZvGnENzmNJmCjMHzHzU3VGUSqPWQbaDCpAV5enyMHaESzqZT9yMJLbGplFcYCakiy+DIoPpMrQGzi53nyG1tf3sY2kkRMdzJvYgJYVGandrQKg2nPovhaJxKl+Al5CQwMmTJxk5ciTmnGtcfmEinkP7cq5Xazp37syYfi/yu0QD9eZ+int4O6SUFB/ahS42mvxNK8FiwaPHAHzGanHv0ue29It7jXuJyciFo9+REB9F+sXdODl70KTdWMK6T8evZuXN7uoMWWxMncfa5FnkGC5Tw60uA4Mi6Bc4ES+nKpXW7pOk7M6Tbo5uJP4qUc0iK0+thzWDvBUYKqXU3fK5N/C9lLJXeTvwMKkAWVGeLg9zy+QCvYnNCy6zJjqZ9AuFVK3twqK0ng+s/eJrhZz8ag/HZu4g99JVPAJ8aDm1K83f7Ix79fI/AJe3ciNXIj6kXsZuxo4dy6JFi+iMG2PxZW+wL53e+xVjxozBw8OaWlGScRnd0i/IXTYXc04WTvWb4js6Au+Xx+Hgae2HreOelXyIhB3RnD20BHOJgcDGzxMWrqVui4E4OFTO7G6JxcSerNXEJUVx/Fo8Lg5u9Kw9msHB06nn1bJS2nxSlN150lnjzKTWk9QssvLUelgBsgWoKaXMuuXz6sBlKWXF10Z6CFSAbJ8ePaBFC4iOrpz6x4+H7GxYu7Zi9WzbBj17wpUrUK2abed8/TVERkJ+fsXaVh6thxkgX2exSA5uzGb155f42+Z2D7x9i9lC0voTHI2KJ+WHMzg4a2g8sg2h2nBqtLV/++fLA97EqV4g1Wa8z+DBg9m2bj0j8aEL7kSSTiESX19f3njjDaZNnUqDhg0BMCYmcfXv/8KQvQ/jiQM4eHjhNXQ8vmMicanf2K7rLsq7wok98zi2azb511Lw9qtLy27TCOk4EVcPP7uvyVYXco+wNnkmW9NiMVqKaVmlO4OCI+lc/SU0Do6V1u7jqOzs8XVqFll5mlVqgCyEeK70jweBvsDVMoc1QD9gkpSybnk78DA9jgHy+PHwzTfw0Ufw/vu/fF6eoM/WgNbWwPTqVXByAq9KWr1Jr7d+mfr6Vqweo9Ha1xo17h0wlVVUBHl5UL16xdpWHq1HESA/zPavns4kITqe01/vw1RgpGbHuoRqw2k4rBUa5/sHeBaDkczXf4vLc83x+/1kAE7PiSXp77NYmX6BecYsBHC9q0IIBgwYwPt+DQksLKHg2834/TUSj5fao4uJIm/DcjCZaHzu7hd3z9xrcwmJCd+TsCOay+e34+jkRuO2owkL11ItoPL2m8o15rAp9SvWpcwms+gS/q51GFBnKi/UeRMfZxv/gX3ClZ09vk7NIitPs4oGyPd7xPggcADrv5+bS99ff+0D3gOeiG2mH2eurvDZZ9Zg+HFgLP3308+v8oJjAB+fewfHRuPdj5Xl7Gx9qt6e/Qrc3FRw/DSocZfdnO/2+cNq31UYWPiXc+SkFd+5gI38mtagR/RwJlz+mPDPX6E4p4DNoxfydfAH7PtgPQUZufc838HFGffenSnctBNpNFK4fT+eK7fQ6oXe/DPxCP/9739p1KDhjfLdpTtt1u7j5MIVFLRqgmOdWvi8NRLXsA7U/FcsNf66kiqT/0w1p6w7tne/cXfQONKw9TCGTt/Ga78/SuO2ozl7cBFL/i+M72b04PzhlVjMJXaP0/14O1dleP3f8VX4ed5vvYoAj8Z8fe6PjN0WyH+OvcF5/c8PvM3HzZ7UPTcFxwBGs5HdqbsfUY8U5TEnpbzrCwgG6gIWoG3p++uvWoDmXuc/bq82bdrIx824cVL27y9ly5ZSarW/fP7TT1KClFeu/PLZ9u1Stm8vpYuLlNWrS/nrX0tpMPxSj3Xu5pfXxYt3b3PAgNvf/+MfUgYESOnvb/28e3cpIyJ+Kfftt9Z+urpKWaWKlOHhUmZk3LmN116TcujQmz8zm6UMDJTy3/++cz+6d5dyyhQp33lHymrVpGzb1vr52rVSNm5sve5u3aRcsuTm67t1rBYskNLDQ8otW6Rs3lxKd3cpe/SQMjHxl7aulylr3Trr+Lq6SunnJ+XAgVIWFVmPxcRY++PpaR2fYcOkTE2987Urzy6z2SIPbroi/zLwoOwvNsgBjhvl3149LI/vvCotFkuF67eYzfLShhNy9Yuz5Qy0Mtrp13Lja1/LtN2Jd62/JPuqTBs+XZ73bi2Tu4yQWW9/Kk1ZOdb6DAZpNpvl+m9Xyc8btJffECD74ilHdOspMyb8QWZM+MONekxZ2fKsaCzPuTSXmVPel7qlC2TyiM7ybCPkuTAPmfmXKbL47HG7r6koP0ce2vJPueCvwXKGFjn//UC5f9OnsjA3q3yDZKNLeSfkjONT5EubPeQLG5C/2dNFbktbKk1mY6W2qyjKw4F1n45yx4z3nEGWUiZJKS9JKR2klAdL319/pUspzZUZvD8rHBzgH/+AL76ACxfuXObyZejfH1q3hsOH4auvYMkSeO896/HPP4dOnWDCBEhPt77q1LG9D9u3Q0ICbNwIP/54+/GMDBg5EsaNg1OnID4exo69e31jxsC6ddY0irJtpKfDa6/d/bzYWGt4v2MHLFwIyckwdCgMGABHj8L06fC7393/egwG+PvfYf582LMHdDqYMuXu5TduhMGDoU8fOHQIfvoJuncHi8V63GiEDz+09mHtWmuKyr2uQ3k2OTgI2vStxodr2jDvXDhDpgdzaFM273bdh7bNHjYvSMVYXP5/NoWDA8EvhDB43RTGnv0zLad15dK6E6zs/F+Wt/83p77ZR0mx6aZzNFWrUGv55wSf2kCtZf/D/z9/BIsFc24+wtkZjCZar97NYLzoeGYrTae/QUTvARRu3onfB9ob9Wx9YSyHarhzYfbvMaVdIXvaLHz6v0OdVYfwfGE4ud8uIHlAC1Jff578LauRZtuu09XDj+ee/y2v/+UCA95cjW/1xuxd+ycW/LUOWxZNICulcmZ3gz1D0DafTUyPVCY3/Q9XDen84+hIxm0PZvH5j7lmuMNCz4qiPDtsjaSB/sBa4CRQp/SzScDzFYnQH+brcZ1Bvj6L2qOHlCNGWP9866zoH/8oZcOG1lnY6xYskNLZWcqCAuv7W2d8bWnz+vtq1aQsLr65XNn6Dh2y9ufSJduuy2SyznLPm/fLZxMnStmnz9370b27dYa6rD/8QcqmTW/+7NNP7z+DDFKePv3LObGx1rG6Psl26wxy586/jL0tTp2ytpGSYvs5yrOpKN8k132RJN9qvkO+wAb5atUtcv4fTsvMpMIHUr8hr1genRkvY0M+lTPQyi/935O7/7hG5qVcves5unnL5aWWA395/9UKmVi3p0wJHyX1Md/LtOHTZdb0j28cL86+Kk/TUI7ERwKyQYMGctZfPpJZP+2+UcaUkyVzZv9NJobXkWcbIRN7BMurX/5TllzLsfuactJOyJ+WTZWz3/GQM7TI5f/uJM8cXCJLSipvdtdsMct9Wevknw70ky9sQA7c6CT/78hoeVq3v9LaVBSl8lCZM8jXCSFGA8uBc0A94PqqFRrAhvk8xRb/93+wYoV1BvNWp05Bx47W2ebruna1zmyeP1/xtlu0ABeXux8PC4Peva3lXnkFZs++d860oyOMGAGLFlnfGwzw7bfWmeV7adPm5venT0O7WxYK6NDh3nWA9VqaNPnlfe3a1rG6du3O5Q8fhuefv3t9P/8MQ4ZAcLA1L7ttadp/cvL9+6I821w9HHnxrSBmH+vCP7a2o3m3Kqz850Um1NvOJ8MOk7At5/okRLk4e7oQOq0bo46/x5AfIqjZqS4H//4DX9f9kA3D53M5/vxt9ftMHE6dvcsBkGYzPm8MI/j0Rjxe7kPOH/9DQdyPODWpZz0uJQc3/MAq8piAL7OoRcGFJKZ99BfqDezDtGnTOHnoMIYDpxGG2gQuOUCtqG9xCqhL9j9/x8VuAWT+cRKG07bvJ+VXK4Qer85iwkepdHv5vxTlZ7Hpm9f45q/B7NvwIYW5D35210E40N7/RT5pu5Evu51hQNBU9mbF8es97fnVnvZsTYvFZLHxwQhFUZ54tu4D+jvgTSnl20DZJyj2Aq1sbUwIESmEOCiEMAghvr5HufFCCLMQIr/Mq0eZ43WFED8JIQqFEKeFEL1t7cPjrH17a/BpSwpBWfY8nHY3HvfZXVajgc2bra/QUGuKR6NG1pSDuxkzxppWcfmyNd3CaLSmS1SkH7ZyvOUB/+tjdD1lwh4FBdCvH7i7Q0wMHDhgTckA2x8kVBQhBGE9q/KXVc8xP7E7r/y2Hgk/XeX3PQ8wLWwXG75Mobig/A+oCSEI6t2EgasnMy7xL7R6uwcpP57lu+4zWNr6n5z4ag+mwl9uWAd3N+t5Go11tsTFGd+I0bi0DsG5ZWOKdh7CUlSMEIIuY17l1Qu72fzOMJwcneiF9X/UgoICNsyeR1zb/vw89C0Sl3xPUpN+WK5oCIzdRp3VR/AaMpa8tYtJHhxG6uju5G1ciSyx7Tpd3H1p1fPXjP3zWQa9tY6qAWHs3/ABC/5ah03fjCbj0r5yj9e9BHo0Zkqzz4npmcq0ZtEUleTxWcJYXt9Wh4Xn3ienOK1S2lUU5fFha4DcCNhzh8/zAW872ksDPgHm21B2j5TSs8xrW5ljS4DDQFXgT8DK0i2wn3h/+5s1//Z6AHZds2awd+/NAd7OndYVHBo0sL53dgYb0/7KRQhrnvNf/2oNEmvXhmXL7l6+fXto2NCaK71okXUG1tPTvjabNoVbV+bbv9/+vt9P69Z3zr0G6yx2drb17yY83NqnrDs/xP/Eur4KyK2vmo/58qh36vP1ly0qet3lPb9GsBtv/KMJMak9+PVXLXBwEMyYfIKxgdv48t3TZFwsvG/bGs2d29ZowLtuVbp+9hITUj+i59yRSItk66QlfF3nL+z6/Wpyk6wrdqbnpdP96+5kFlhnZE3nkyg+eIzaq2dTa/F/kAbjjWC2bvUa/Otf/2Lwfz7m3YAQWoc0B+BPWP/p1RZepO2+7/kmwIX8bzcB4NosjBqfzKVefCrVfv8ZpvQUMqYP51Kvelyd/TdKrtq2dI9wcKBu8xcZMnUDY/58hpZdp3LpxFpW/Kcjy/7VnlP7F2I2GWyqyx4ejt4MCo7gi64n+KTNRhr7tGfphU8Ztz2Yvx8ZyYlruyo0+68oyuPL1gA5DbjTyvDhwF0eK7udlPI7KeX3QI6t59xKCNEYeA74q5SySEr5LXAMeKW8dT5OGjaEyZOtD92VNW0apKVZ/3vqlHVG9g9/sG524e5uLVO3rjV4vHTJGtCVZ7b0bvbuhU8+sQbGyckQFwcpKRAScu/zRo+GefOs/b1fesWdTJlifXDx3XfhzBn47juYM8d67EHMnF/3pz9Z01v+/Gc4eRJOnID//hcKCyEoyJqyER0NiYnWaym7ZvXTIPMuv7G+2+dPi4ped0XPd3HT0O+NQKIPd+azHR14rm81vv9fEm80iOeDwYc4vCX7rgHY3f7/Lvu5k7szLd7szGtHf8/QbVoCejbi8L9/YmH9D1n70pf8bsk77EzeycfbPwbAuVlD6p7ZhGPtGkijkeI9hyncuhcAB0/rrLG4mIp/s8YcOn6Mtyc9TzvhxtdCx1GsS9o1bd8GS14BptSMG/3Q+PpRZeK71P3hHLVmr8apflNy/vsnLoXXIeP34yk+foe8sruoUr0x4a98zoSPUgkfFoXJkMeW2HEs+CCIveveJ1932ea6bOUgHGjj348P26xhXvg5Bgdp+Tl7E+/u64p2Txs2pc7HYC564O0qivLo2BogzwVmCCG6lL6vI4QYB/wTmF0pPYPWQohsIcRZIcT7QojrvzRvDiRKKfPKlD1a+vlT4S9/uT1FICAANmyw5sq2agVvvGFdReFvf/ulzLvvWmeRQ0LA3//B5sf6+MCuXTBwoDW14p13rEHi/YLeMWOsga2PD/Tta3+7wcHW3OW4OGse9H//a53BBuv60Q/Kiy/CqlXWMW7d2rqCxU8/WXO+/f2tm7l8/711bD/8EP7znwfXtqIIIWjRtQrvLWvF15e6M/JPDTi9V88f+xzkrZCdrJmZRFF+xdIvAro34sWVExl38a889/venDqcwLLk5Vikha8OfkVKVhJgDYSllODkhEWfR8bw6WS8/luK9h7h2mfz0M9Zhu+vxpGRn0GbH88S91wel96ByN9EUqdOHXp17oL5ylUca1S90f7bb7/NypUrMUuJ5/ODCfz6B4LXn8R72ETyN60kZWhbUkZ0Jm/tEqSNeUvOrl6EhUcy+o8nGTJtMzWC2nNg86d880FdNn49krQLOytldre2ewMmN/sPMT1SiQyZTYnFyP+OT+T1bXVYcOY9sorUgwmK8jSwaatpACHEp8DbwPWwxAD8S0pp91yaEOITIFBKOf4ux+tj3ZwkCWvguwyIkVL+XQgxFoiQUna8pW8Bd6pPCDEZmAwQFBTUJikpyd7uKo+Zzz+3/hCh0z3YWeRn2aPeka68KtrvR33+vRiLzexYkcHqGUmcO5iLu7cjfcYHMCgyiIBGHhVue8rqt5h/ZAEmTGhKHOh6PJSP675Py4hu+Db8JWPNnH2V7D/9F8PB4zi3aIRLyyZUeXci780bT/gft/He4ExO1bUwqfUkovpHkdpxOG7d2+P/2e+RFgsJx47RqlUrAAIDA5k6dSpvvvkm/v7WNsx5enK/+xp9bDSmpPNo/GviM3IKPiPfwtHfvhwffXYiCTtmcmrvfAxFOqoFtCIsXEvjNq/h6OxmV122klJy7Op2vk/6nH1ZcQB0qvESg4O0tPTrjlD/SCnKI1GpW03foTF3IATrzPNJKWV+uRq9T4B8h/Ijgd9KKdsIIV4GPpVShpQ5HgUgpdTerQ54PLeaVu5v5kzrShb+/tZUD63WmrpxaxqKUn4qQH4059tCSsnpvTriopPZuSKDEpOkbf9qfLLh7v/u36/t9Lx06s+oT3HJLzv9OVuc+ODzcXjmuhPcvxlh07sT1KcJonTpHEuxAeHijBCC9Lx0+v2xCX9Z5cv/9b3CweBi3B3cOF1/PoaJn1A/Zz8OHtbcrzfffJN58+bd1L6LiwsjR45Eq9XSpnTpGmmxULhjE7qYKArjN4CTE14vDMdnrBbXsA52BZomQwFnDi4iIT6KnPTjuLr7EdL5TVp2nYq3X7DN9dgrqyiZtcmz2Jj6JXmmq9T1bMHg4On0rDUKV8cH9ASyoig2qdStpoUQ7kKImUKIy0KILGAecElKub+8wXE5SeD6v44ngPpCiLKbIIeVfq48hc6fh5dftj6o+P771rzkzz571L1SlIdDCEGzTlX4/aIwvknuwZgPGnLhcN79T7yHj+M/xiJvSWJ2EiTOlbT7c1+uHEoh7oXZxDb7G0ejtmPMLcLB1eVGkPpx/MckVjVQ5GTB3Wj9Gnn+uAvn/vlffN+diIOH+42NQj788EPef/99qpfZ291gMPDNN9/Qtm1bOnfuzJIlSzCVlODRvT8B89YTvPksvqOmUfDTWlJf7UTKK+3JXbUQi9G2B/GcXDxo0WUyr/0hgZe1P1G7YXcO//gZCz+sz7p5L5N6blulpF9UdwvijSb/IKZHKr9u8RUOQsOME5MZuy2QL0+/S0bhxQfepqIoleOeM8hCiM+AacAioBh4DdgmpRxersasecSOwF+BQOBNoERKWXJLuf7Az1LKTCFEU2AlsEJK+WHp8b3ATuDPWDcwWQA0klLe85FoNYOsKHdWs+adHyyrUcO6i+LjqqIzuBW97kc1biUmC84uAilvHwAHh/uvZtN6TmuOZBy57fNWNVtx+K3DmI0lnF9xmKNR8WTuS8LJy4Vm4zoQGtmNKk1q0PqLVhzJPMqIg968v8Gfw4HF+BVqONLekz98exgHF+fb6jYYDKxYsYKoqCj232Epmpo1a/Lll18ycODAG59Z8vPIXR2DLiYKU+JpNH7+eI+YjO9rU3GsGXD/gSoj72oyx3bO5sSeLykuyKFqrRaEhkfSpO0YnFwqZ3ZXSsmJaztZkxzNzsxvkdJCO/8BDAmeTuuqvVX6haJUokpNsRBCXAD+JKVcWvq+PbALcJXl2GZaCPEB1uC4rA+xLvt2EgiRUiYLIf4FjAU8gUwgFvhYSmkqracu8DXQAUjGmpO85X7tqwBZUZSnzblDelbPSGL70nRKjJLWvasyWBtMuwH+aDQVD8AyDyRxdMZ2zi0/jMVoJqhvU0K14QT3D8FB44CloJCCddtwCWuKc5P6gDUwvFfwt2/fPqKioli+fDkm0y9bYx89epTQ0NDbykspKdy9BX1sNAVb14CDA559h+I7Rotr2652BZolxiLO/ryUhPgorqQexsXNl2YdJhAaHolPtfp2jIx9rhSnsiFlDhtS5qIzZlHHoymDgiJ5PuB13B297l+Boih2qewA2QjUk1JeLvNZEdBYSplS3kYfFRUgK4rytNJdMbLxyxTWzkom57KBGnXdGBgRRL+JgXhVcbp/BfdRmJnLiS/3cGz2TgrS9HjXr0poZDghEzrg4uterjozMjKYO3cuX3zxBY0aNWL79u03Hb969Spr165lxIgRuJRu9WlKTkS3eBa5387Hor+GS7NW+IyJxGvQKBxcbX8QT0pJeuIuEnZEc+HIt1ikmbohAwgNjySoad9Km901WgzEpy9jTXI0Z/UHcHf0pk/AeAYGRRDocafVVBVFKY/KDpDNQM2yqQtCiDwgVEr5xCVTqQBZUZSnXYnJwp7VWcRFJXE8/houbg70HFObwdpg6rWs+Eyl2WQmcdVRjs6IJ31XIo7uzjQd245QbThVm9cqV51Go5GsrCwCAwNv+vyzzz7jd7/7Hf7+/kyePJmpU6cSEGBNrbAUFZK3OhbdomiMZ47h4OuHz/BJ+IyahlOAfQ/i5esuc3zXFxzfPZeivCyq1GhKy24RNGs/DmfXypvdPaXbS1xSFDszVlAiTbSt1p9BwZG0rfYCDsLWVVgVRbmTyg6QLcAPWJd0u64/sB24sdWTlHJweTvwMKkAWVGUZ0ni0VzWRCfz06I0DEUWWoRXYcj0YDoNqY7GseIB2JXDKSRE7+DMooOYDSUE9mxEqDaceoNb4qCpWP1ms5mGDRty6dKlG59pNBqGDh2KVqula1draoWUkqID8egWzqBgy/cAeDw/BN8xkbh17GnXTLDZZODc4eUcjY8iK/kATi5ehHScQMtuEVSpXnmzu9cMmaxP+YJ1KV9wzZBBgHsjBgZF0DtgHJ5OvpXWrqI8zSo7QF5gSyVSygnl7cDDpAJkRVGeRbk5RjbPv8zaWclkXirCv44rL06pQ//JdfCpdvsDdfYqys7nxLw9HJ+9k7zka3gF+9FyahdCJnXGrWr5HoArLi7mf//7H7NmzSIl5faMvlatWhEZGcmoUaNwc7OmVpjSktEvno1++ZdYdDk4N2qO71gtXoPH4OBuXz8yLu0jIT6Kc4eXYzGbCGr2AmHhWoKbvXBj6bsHrcRiYmfmt6y+9Dmn9Xtx1XjQO2AcA4MiCPa8z7aliqLc5KGug/ykUwGyUpme1JUgHjWN5s7bJtuyGkNFVfTvrCJ9fxT3i9ks2bcmi7Uzkzm8JQcnFwd6vFaLwdogGj7nU+H6LSVmLq45TkJUPKk/nUPj6kST0W0IjQzHv1Xg/Su4g5KSElavXs3nH33CjoQjtx338/Nj0qRJ/PnPf8bLy5oOYTEUk7d2CfqYKAwnD+Pg5YP3sIn4jJ6Gc1ADu9ovzM3k+O65HNs5i8LcDHyqNSA0XEuzDuNxcbN/zNLz0hn57UiWDVtGTc+7b4RyTn+IuKQotqUvoUQaaV21N4ODtbTzH4BGaOxuV1GeNSpAtoMKkJXK9KRutvGoPcpxe5QbhTzq+yXpZD5xUUlsjUmjuMBMSBdfBkUG02VoDZycKz5Dmn0sjYToeM7EHqSk0EitrvUJ04ZT/+UwNE72BXglaZlcDOrBWQ8Ny+p6sPJsAkXFv2xyEhAQwMWLF3FyuvlhRCklxT/vRhcTRf7mb8FsxqPHAHzGanHv3NuumWBziZELR78jIT6K9Iu7cXL2oGn71wntFolfLdtnd6etm8acQ3OY0mYKMwfMvG95nfEKm1LmsSZ5JjmGy1R3DWZQcCT9Aifi5VTF5nYV5VmjAmQ7qABZqUyPOuB5UqkAuXxtPygFehOb519mzcxk0i8U4lfL5Ub6hV9NlwrXX3ytkJPz93Js5g5yL+bgEeBDy6ldaf5mZ9yr2/YAnJSSovgD6KNjyV/1AzpLCWtCqrEwJ4mkjHQ++eQT/vSnP910zqVLl/D398fDw5paUZKZhn7pF+iXzsGck4VTvSb4jo7Aa+g4NJ7edl1TVvIhEnZEc/bQEswlBgIbP09YuJa6LQbi4HD34L/sDoZujm4k/irxnrPIZZVYTOzNiiMuKYpj17bj4uBGz9qjGRw8nXpeLe3qv6I8C1SAbAcVICuV6XEJeJ40KkAuX9sPmsUiObgxm7gZSRzalI2jkyB8hDX9okl734rXb7aQtOEkR2dsJ+WHMzg4a2g8sg2hkd2o0c72VSdMKenoZy8m98vlGLOvsrOONz0i36T+tLE4eP6SZ9y7d28OHTrEG2+8QUREBPXrW9c4thgN5G9YgS4mCkPCfhw8vPB6eRy+YyJxrt/ErmsqyrvCiT3zOLZrNvnXUvDyCya0WwQhHSfi6uF3W/lp66bx1eGvMJqNOGucmdR6kk2zyLdKzD3KmuRofkpbhMFSRIsq4QwJnk6n6kPQODjaXZ+iPI1UgGwHFSArlelxC3ieFCpALl/blSn1bAFropP44evLFOWZadzOhyHTg+k6vCbOLhVPv7h6OpNjM3dwasFeTAVGanQIJmx6dxoOa4XG2bYAz1JsIH/pOnRRMRh+PoGDjxfeE17BJ3IMF4wFhIT8kvYghGDAgAFotVr69OlzY2WL4qP70MVEk7dhGZhMuHfrh+8YLe7d+9uVfmExl5CY8D0JO6K5fH47jk5uNG47mtDwSPwDwoCbZ4+vs3cW+VZ5xqtsTJ3HupTZZBZdwt+1DgPqTKVfnUn4OvuXq05FeVqoANkOKkBWKtPjHPA8zlSAXL62H4aC3BK2xlwmLiqZ1DMF+FZ3pv9bdRgwpQ5Va7tWuH6DvojTC/eTEBWP7twV3Gt40fytLrSc0gWPWrY9ACelpHjvEXQzFpK/chOYzRxu35A/phzlQtrl28o3adKEyMhIxo0bd+OhvpLsTPTL5qJf8gXmrDScghrgMzoC71cmoPH2teuastOOkRAfxZkDsZSYiqjdIJywcC3/vryF+UcWYDQbb5StyCxyWWZpZn/WWuKSoziS8yNODi70qPUag4IiaeTTpkJ1K8qTSgXIdlABslKZ1CoW5aNWsShf2w+TxSI5vCWHNdFJ7F97BQeNoMvQGgyeHkxIZ98K7zonLRaSN5/maFQ8SRtO4aARNBjWirDp3anZsa7N9ZekZaKfsxT9nGWYMq+wJ8CLRT5mtpxMuK2sl5cX48ePJzIyksaNrWscS5OJ/M3foYuJovjnXQh3D7yHjMVnTCQujZrbdU3FBVc5ufcrju2cTW7ORT7zcyJFmG4r16pmKw6/ddiuuu8lKf8kcUlRbE2LodhcQIhvFwYHa+lc42WcHCq+pJ+iPClUgGwHFSAriqJUTHpiIWtnJrN5fir5uhIatPZmUGQQPV6rhYtbxZcf052/wrGZOzg5fy/G3GKqt6lDqDacRiOew9HVti2zLQYj+Ss3oo+KoXjfUZLcHVneyIdlF46Tm59/U9mxY8eycOHC2+ooPvGzdfWLtUuQRgNuHXvh+/p0PHoORGhsv06LxcylE+s4un0GqWd/ROPoQuM2rxHaLZLqQZU3u1tg0rP58gLikqLIKErEz6UWA+pMpX+dyVRxqVFp7SrK40IFyHZQAbKiKMqDUVxQwtbYNNZEJ3PpeD7eVZ3oNymQAVODqBHsVuH6jfkGzsTsJyF6B1dPZuBazYMWk7vQcmoXPANtX96s+EACuqgY8petJ89oYENTf77JT+NsajIA+/fvp127djedYzKZbiwZZ76ajX7FPPSLZ1GSnoJjQDA+o6bhM2wimipV7bqmqxmnSIiP4vT+hZiMBdSs24mw7tNpEDYUjWPlzO5apIWD2RuJS5rBoexNOAonutV8lSHB02ni275S2lSUx4EKkO2gAmRFUZQHS0rJ0Z+uEheVxL64LAA6vVSDgRFBhPX0q3j6hZSkbj3L0ah4Lq05DkLQ4OVQQrXh1O7WwPb0i8xscr9cjm72YkrSMtlX05P9TWrwv++Xo/H9ZZk3vV5PkyZNGDp0KJGRkTce9pMlJRT8GIcuNoqifdsQLq54DRqN71gtLs3C7LomQ5GeU/u+JmFHNPor5/HwrkXzLm/RostbeHiX74E9W6QWnGVt8kw2py6gyJxHI++2vFT3V3StORxnh4ov6acojxMVINtBBciKoiiVJyu5iLWzktk0L5XcHBN1W3gySBtMr9G1cPWo+PJjuZdyODZrJyfm7cFwrZCqobUJm96dxq+1wcndthlYaTJZ11KOiqF45yGEuxteY4fgqx2LS/NGfP755/z617++Uf75558nMjKSQYMGoSlNrTCcTkAXG01eXCyyuAjXtt3wHavFs8/LCEfbr1NaLCSd2kjCjmiSTm7AQeNEw1bDCes+nZp1O9g1NvYoKMll6+UY1iRHk1JwGl/n6rwQ+CYDg6ZR1bV2pbWrKA+TCpDtoAJkRVGUymcoMrN9aTqrP08i8Wgenr6O9J0YyMBpQdSq717h+k2FRs4uPsjRqHhyEtJwqeJO80mdaDmtK951bU97MBw5iS4qlrzFa5DFBtx6dmRqwQXW7t99W9ng4GCmTZvGpEmT8POzrnFs1l8jd+V8dItmUpJ6Eceagfi8NgXvEZNx9LNvmbVrWWc5tmMWp/YtwFicS/WgdoSFa2nU+lU0TpUzu2uRFg7nbGFNUjT7r6zFQWjoUmMog4K1NPftUuHZf0V5lFSAbAcVID8ZnqSn+x+kiiz7VdGVICpyfkXbrsjfd0XvlWf1XntYpJSc3K0jbkYSO7/NRFok7Qf6M2R6MK2er/pA0i/SdlwgISqeC6sSkBZJvcEtCNOGE9irsc31m3OuoZ+3Av2sxZiSL3OougeL/R1Yf+oolltubldXV0aPHo1WqyUszJpaIc1mCratQxcTRdHuLQhnFzxfHIHvWC2uLe37fjYW53F6/0ISdszkWuYp3Lyq07zTm7TsOhVP3wC76rJHWuEF1iXPZnPqV+SX6Gjg3ZpBQZH0qPUaLpqK55QrysOmAmQ7qAD5yfAkrA9bGR7lmrqq7fKdr9gu+3Ix6+eksP6LFPRXjNRp6sGgyCCefz0Ad6+Kp1/kpVzj+Be7OD53F8XZBfiF1CRUG06TMe1w9rRtBlaWlFAQ9yO66EUU/bSXdBfByiZVWZx8ihyd7rby69evp3///jd9Zjx/Ct2imeR+/w2yIB/X1p3wGROJV79hCGfbH8STUpJyZgsJ8VFcPGGd3a0fNpTQ8Ehq1+9aabO7xSUFbE2LZU1yNJfyj+PtVJUXAt/kxaAp1HCzfcdDRXnUVIBsBxUgPxme1aDlSQ0Un9W2lfIxFpvZsSKDuKhkzh7Q4+7tSO9xtRmsDSagkcf9K7iPkmIT55b9zNEZ27nycyrOPm6ETOhAy4hu+Da0Pe3BcPwsuuhY8mJWU1RYwOZGVYkx5XD00gUAqlevTnJyMi4udw6+zXl6cr/7Gv2imZgunUPjXxOfEW/hM/ItHKvXsuua9NmJJOyYyam98zEU6agW0IrQ8Egat3kNJ+eKp6zciZSSY1e3szp5BnszVwPQqcZLDAqKJNSvh0q/UB57KkC2gwqQnwzPatDypAaKz2rbSsVIKTm9T8+a6CR2LM+gxCRp+0I1BmmDaftCNRwcKp5+kbHnIgnROzi/4jAWs6TuiyGERnYjqG9Tm7eSNl/Tk7vgW/QzF2FMTOZoNXeW1HQibEAf/vqPv99U9ocffiA2NhatVkvbttbvZWmxULhjE7qYKArjN4CTE579huH7+nRcwzrYFWiajIWcObiIhO0zyEk/jqu7HyGdrekX3n6VN7ubVZTM2uRZbEz9kjzTVYI9mzM4eDq9ao3G1bHiP9QoSmVQAbIdVID8ZHhWg5YnNVB8VttWHpyrGQY2zElh/ZwUrqYbqN3QnYERQfSdEICHj22bg9xLfpqeE3N3cfyLXRRm5uHbuDqhEd1oNr49zt625ddKs5mC9dvRR8VQ+MMuhLMTniMH4Bs5Btd2oQAMGDCA9evXA9CxY0e0Wi3Dhg3DuTS1wnjpHPpFM8n9dgGW/FxcWrS1rn4xYAQOzrY/iCel5PL57STER5GY8D0A9VoOISxcS0CjypvdNZiL2J6+lNVJM0jMO4Knoy99A99gUFAkNd3rVUqbilJeKkC2gwqQnwzPatDypAaKz2rbyoNnMlrY9a01/eLUHh2uHhp6jwtgYEQQwSGeFa7fbCzh/IrDHI2KJ3NfEk6eLjQd157QyHD8mtq+u5zxTCK66Fhyv16FzC/AtUMYua+9QMu33+TW79SaNWsyZcoU3nrrLWrWtK5xbCnIJ3d1DPqYKIwXTqHx88d7xGR8X5uKY037HsTLu5rMsZ2zObHnS4oLcvCr1ZywcC1N2o7ByaVyZnellJzQ7WJNUjS7Mr/FIs208x/AkODptK7aW6VfKI+FJypAFkJEAuOBlsASKeX4u5QbB0wHGgG5wGLgj1LKktLj24COQEnpKZellE3u174KkJ8Mz+rKAmoVi5upVSyebed/1rN6RhLbl2ZgMlho9XxVhkwPpt0AfzSaigdgmQeSOBoVz7llP2Mxmgnq25RQbTjB/UNw0NiYfpGbT97X36GLjsV07hLH/VxYEuDK96ePYjKZbirr5OTE8OHD0Wq1dOhgTa2QUlK0+0d0sVEUbF0DDg549h2K7xgtrm3texCvxFjE2Z+XkhAfxZXUw7i4+dKswwRCwyPxqVbfrrGxx5XiVDakzGVDyhx0xiwCPZowKCiSPgHjcXOs+A81ilJeT1qAPBSwAP0At3sEyFOB48A+wB+IA1ZIKf9RenwbECulnGdP+ypAVhRFebLorhjZNC+FNTOTyblsoEZdNwZGBNHvjQC8/Cq+PXNhVh4n5u7m2OydFKTp8a5flZbTuhHyRkdcq9j2AJy0WCjcvBNdVAyFG+LJdpCsalaN2IzzpGdfua18p06diI+Px7HMpiKm5ET0S79Av2IeFv01XJq1sq5+MWgUDq62L7MmpST94m4S4qO5cGQlFmmmbsgAwsK11Gnap9Jmd40WA/Hpy1iTHM1Z/QHcHb3pXXscg4IjCfRoXCltKsq9PFEB8o1GhfgECLxbgHyH8r8BekopB5W+34YKkBVFUZ4Z5hILe1ZnsXpGEsfjr+Hi5kDP0bUZPD2Yei29Kl6/yUzi9wkcnbGd9J2JOLo702RMW8K04VRtYfvucsbzSehnLiJ3/koMuXn8VK8KsY557D13+kaZV199lWXLlt3xfEtRIXlxi9DFRmE8cwwHXz98hk/CZ9Q0nALsexAvX5/G8Z1fcHz3HIrysqhSoyktu06jWftxOLt537+Ccjql28uapGh2ZCynRJpoW60/g4IiaOvfHwdh2+y8olTUsxIgfw+cllL+ofT9NqA5IIAzwJ+klNvucu5kYDJAUFBQm6SkpAr2XlEURXmUEo/msmZmMj/FpmEostCiWxUGTw+m80vV0ThWPAC7cjiFhOgdnFl8CHOxiYAeDQmb3p16g1vanH5hyS8gN2Y1+uhYjCfPc9rXmSVB7nx3JoEtW7bQtWvXm8rHxMRQt25dunbt+kv6xYF49DFR5G/5HqTEo9dgfMdqcevY066ZYLPJwLnDyzkaH0VW8gGcXLwI6TiBll2nUaXGfbMTy+2qIYMNKXNYnzKHq4Z0ars3ZGBQBH0CxuPp5Ftp7SoKPAMBshDiDeAjoJWUMrv0sw7AScAIjASiS49fuFddagZZURTl6ZF31cimry6zdlYymZeKqBboyoCpdeg/uQ4+1SqeflGUnc/Jr/ZwbNZO8pKv4RVUhRZTu9L8zc64VbXtATgpJUVb96CLiqEgbis6IQl4uR9Vpr+Oa7e2CCHIz88nMDAQvV5PWFgYWq2WUaNG4eZmTa0wpaegXzQL/fIvsehycG7UHJ8xkXgPGYuDu30P4mVc2kdCfBTnDi/HYjYR1LQfod211G3W3+al7+xVYjGxK/M7Vid9zindHlw1HvQOGMfAoAiCPUMqpU1FeaoDZCHES8AcoLeU8tg9ym0E1kkpo+5VnwqQFUVRnj5ms2TfmizWzkzm8JYcnFwc6PFaLQZrg2j4nE+F67eUmLm45jgJUfGk/nQOjasTTUa1ITSyG/6t69hcj+lSKvpZi9HPW4Hlmh7n0Cb4aseyqDCDiF/96qayfn5+TJo0iWnTphEcbE2tsBiKyV+3FF1MFIYTP+Pg5YP3K2/gMyYC56AGdl1TYW4mx3fP5fjO2RTkpuNTrQEtu0UQ0mECLu6+dtVlj/P6n4lLjuKntMWUSCNhfr14qe6vaOc/AI3QVFq7yrPnqQ2QhRAvADHAACnl/vvUtwHYIKWcca9yKkBWKtOTvKLCs9p2RT3JfX9aJZ3MZ010Ej8uTKO4wExIZ18GRQbR5ZWaODlXfIY053gaR6PiORN7kJJCI7W61idMG079l8PQONkW4FkKi8hbvAZdVAzGhDMk+riwONidFWcTKCouvqmsg4MDgwcPRqvV0rNnzxvpF8WH96CLiSJ/00owm3Hv/iK+r0/HvXNvu2aCzWYTF45+R8L2GaRf3I2jsztN271OWLgWv1qVN7urM15hU8o81qbMIrs4lequwQwKjqBfwES8nP0qrV3l2fFEBchCCEfAEfgrEAi8CZRcX76tTLlewArgZSll/C3HfIEOwHasy7yNAOYCraWUZ+/VvgqQlcr0JK/J+6y2XVFPct+fdgV6E5sXXGbtzGTSzhfiV8uFF6dY0y/8atq+KcfdGHSFnJy/l4SZO8hNzMEjwIeWU7rSfHJn3Kvb9tCglJLiHQfRRcWQv+oH9JYS4kL8iclJ4lJG2m3lmzdvzkcffcTQoUNvfFaSmYZ+6Rz0y+Zgzs7EqV4TfEdH4DV0HBpP+x7Ey0r5mYT4aM4eWoy5xEBg416EhU+nbouBODhUzuyu2VLCnqzVxCVFcezadpwdXOlVewyDg6dTz6tlpbSpPBuetAD5A6zBcVkfAvOx5hSHSCmThRA/Ad2Asj9K75BS9hdC+APrgaaAGTgNvC+l/OF+7asAWalMKkB+8tquqCe5788Ki0VycGM2a6KSOLgxG0cnQbdXazJYG0yT9j4VXvbMYraQtOEkR2dsJ+WHMzg4a2g04jnCtOHUaGf7qhOmlHT0Xywhd+4yjNlX2VnHm0UeRradPn5TuXnz5jFx4sTb+2E0kL9xJfqYKIqP7sPBwwuvl8fhOzoC5wZN7bqmorwrnNj7Fcd2ziL/WgpefsG07DqN5p0m4epRebO7F/MSWJM0k61pMRgsRbSoEs7gYC2dq7+ExsHx/hUoShlPVID8qKkAWalMKkB+8tquqCe578+i1LMFrJ2ZzOYFqRTlmWnczofB2iC6vVoLZ5eKp19cPZ3JsZk7OPX1Pkz5Bmp0CCZsencaDmuFxtm2AM9SbCB/2Tp0UbEYDh0n0cOR5Q29WX7+OM4uLqSmpt54eA+ss9Dbt28nPDwch9LUiuKj+9HFRpO/fhnSZMS9Wz98xkTi0f1Fu9IvLOYSEo+tJiE+msvnt6FxcqVJm9GEhkfiH9jKrrGxR57xKpsuf8Xa5FlkFl2immsgA+pM5YU6b+Lr7F9p7SpPFxUg20EFyEplUgHyk9d2RT3JfX+WFeaV8OPCy8RFJZN6pgAff2defKsOA6bWoWpt1wrXb8wt4tQ3+0mIikd37gp+ITUZdfw9u2arpZQU7z1iTb9YsZG8EiPJHZvR56+/xb1v1xuB7k8//USvXr1o3LgxkZGRjBs3Dm9va2pFSXYm+mVz0S/5AnNWGk5BDfAZNQ3vYW+g8fa165qy046REB/FmQOxlJiKqN0gnNDwSOqHvoRG42RXXbYySzP7s9ayJjmawzlbcHJwoUet1xgUFEkjnzaV0qby9FABsh1UgKxUJhUgP3ltV9ST3HfFmn5xeEsOa6KT2L/2Cg4aQeeXazB4ejDNu/hWOP1CWiwkbz5NYVY+zV5vX+56StKz0H+xBP2cZZgzs3FqVBffyDF4jR/K8PGvs2rVqhtlvby8GDduHJGRkTRpYl3jWJpM5P+wCt3CGRT/vAvh5o73S6/jMyYSl0bN7epLceE1Tu75imM7ZpJ79RKevoG06DqV5p0m4e5VvdzXeD/J+adYnTSDrWkxFJsLCPHtwqCgCLrUfAUnh4ov6ac8fVSAbAcVICuVSa1i8eS1XVFPct+Vm6UnFrJudjKb5qWSryuhQWtvBkUE0WNULVzcHo/lxywGI/krN6KPjqV47xHwcOe/jdxZdP4Yufn5t5Xv168fWq2W/v37/5J+cfIw+pgo8tYsRhoNuHXshe9YLR49ByIcbc/ztVjMJJ1Yz9H4GaSc2YKDxpnGbV4jNDySGkHljknuq8Ck54fLXxOXHEV64QX8XGrdSL/wc6lZae0qTx4VINtBBciKoijKvRQXlLA1No01M5O5dCwf76pO9JsUyICpQdQIdrt/BQ9J8YEEdNGx5C9dR57RwIam/iwsSOdMyu27xTZo0ICIiAgmTpx4I/3CfDUb/cqv0C+aSUl6Co61g/AZHYHPsIloqlS1qy9XM06RsGMmp/d9jclYQM26nQjrrqVB2CtoHCtndtciLRzM3khc0gwOZW/CUTjRrearDA7W0sSnfYVn/5UnnwqQ7aACZEVRFMUWUkqObb9KXFQye1ZngZR0eqkGgyKDCO3h99gEYCVZOeTOXYZu9mJK0jLZX9OTxVVh48mjlP1+d3Bw4MKFC9StW/em82VJCQU/xqGLjaJo3zaEiyteg0bjO1aLS7Mwu/piKNJzev83HI2PQn/lPO7eNWnRZQoturyFh3flze5eLjjHmuSZbE6dT5E5j0bebRkSPJ1utV7F2aHiS/opTyYVINtBBciKoiiKvbKSi1g7y5p+kZtjom4LTwZFBtFzdG3cPB+P5ccsRiMFq39EFxVD8Y6DpLpqWNHYl6WXTnEtV8+QIUP4/vvvbzqnoKAAV1dXNBprConh7HF0MVHkrY5BFhfh2rYbvmMi8ezzMsLJ9gfxpMVC0ulNJMRHkXRyAw4aJxq2Gk5YuJYadTtU2g8XhSV5bE2LIS4pipSC0/g4+/Ninbd4sc4UqrkGVEqbyuNLBch2UAGyoiiKUl6GIjPbl6azekYSiUfy8PBxpN+kQAZOC6JWffdH2rfiqwVk7Evi/PLDuLuaqW84Rf6StRQWF7GxcTXaThhJz3cjb8ozfu+991i8eDHTpk1j0qRJVK1qTa0w66+Ru3I+ukUzKUm9iGONAHxGTcX71TdxrGrfg3jXss5ybMcsTu1bgLE4l+pBbQkN19K49Qg0TpUzu2uRFg7nbGFNUjT7r6xFCAe61BjK4ODpNPft8tjM/iuVSwXIdlABsqIoilJRUkpO7tYRNyOJnd9mIi2SdgP8GTI9mNa9qz6SAGzdy/MoSNcT2Ksx6bsScXDS0O/LVyhevgb9rMWUJKfhGFQbn6mv4TNpOEYPN+rUqUNOTg4Arq6ujB49Gq1WS1iYNbVCms0UbF+PPiaKwl0/IJyc8RwwEt+xWlxb2hd3GIvzOL1/IQk7ZnIt8xRunv407zyZll2m4Fkl8IGPx3XphYmsTZ7F5tSvyC/RUd+rFYODI+lRaxQumscnp1x58FSAbAd7A2T1hPqzpyJ/5+p+UZRnT/blYtbPSWH9FynorxgJbOLBYG0Qz78egLvXw0m/OPXNPrZNXc7Y83/Bs7YPAIta/J3u0cMI7NHImme8Ziu6qFiKftqLcHXhYp+2vLbje3J0utvq69atG1qtlpdeegmn0tQK44XT6GKjyf3+G2RBPq6tOuIzVotXv2EIZ9sfxJNSknJmCwnxUVw8YZ3dbRA6lNDuWmrX71ppP1wUmwvZejmGNcnRXMo/TohvZ/7dcVeltKU8HlSAbAd7A2S1xumzpyJ/5+p+UZRnl9FgYcfydNZEJ3Nmvx43Lw19xgcwWBtMQCOPSmu3KKeAuBdm02BoKG3f6wtAQbqetUO+pOu/XyagWwPAGpgKITAcP4suOpa8mNUUFRawuaEfMSVXOXrpwm11BwQEMHXqVCZPnoy/v3UHO3N+LnnffY0uNhrTpXNo/GviM+ItfEa+hWP1Wnb1XZ9zkWM7ZnJy73wMhdeoFhBmTb9o8xpOzpWTsiKl5NjV7RRbCmnv/2KltKE8HlSAbAcVICv3owJkRVEq6vQ+HWuik4lflk6JSdL2hWoMigyibX9/HBwe7Azp+ZWH2RaxkokZn9yYfU3ecoaEGdtp/lYX6g34ZSMQKSUn5u3BqCuixdhWFCxejX7mIoyJyRyp6say2s7EnTpKSUnJTW20bt2an3/++abPpMVC4c7N6BbOoDB+Azg64vnCcGv6RauOds0Em4yFnDm4iIT4KHLSjuHq7kdI5zdp2XUq3n7BFRgd5VmmAmQ7qABZuR8VICuK8qBczTCwYW4KG+akkJNmoHZDdwZOC6LPhAA8fR/M9sxxA77Au15VekQPB8CYV8zxL3aR/MNpXvxuEs6evzwIZyo0cuVwKof+/gPpuxIJnd6ddn/qQ9HmneijYijcvJMsJ/iuWTViU8+QdfUqALNmzWLq1Kl37YMx6Tz6RTPJXTkfS34uLi3a4Dt2Op4vvoqDi+1bd0spSTsfz9H4GSQmfA9AvZaDCQufTkCjHurhOsUuKkC2gwqQlftRAbKiKA+ayWhh13eZrIlK4uRuHa4eGp5/vTaDIoIIbu5V7nrNBhObX4+l+nOBtPl9HwAubTjJsVk7qNO7Ca1+1QNpsSBKd9ErS3/hClsnL+O53z1PcL9mABhPX0A3cxG5X6/CkJ/Hjw2qssrNwOptW/Gu6nfjXCklgwYNom3btrz11lvUqmVNrbAU5JO7OgZ9TBTGC6fQ+Pnj/eqb+IyailNN+x7Ey7uazLFdX3Bi91yKC3Lwq9WcsHAtTdqOwcml8lJWlKeHCpDtoAJk5X5UgKwoSmU6/7OeuKhkti1Jx2Sw0Or5qgzWBtF+gD8ax9sD2fs5/uVuzi05xOCNU8nYc5EDn2zGp0E1uvzrJZw9XW7kHoM1X/nCt0eo1bkeVVvUJm7AFwT2akzrt3uAEAghkBYLlvxC8r75Dl30IkxnL6KpUQ2ft0bg89ZIHGvXYPfu3XTp0gUAJycnhg0bhlarpWNHa2qFlJKi3T+ii42iYOsacHDAs8/L1vSLtt3smgkuMRZx9uelJMRHcSX1MM5uPoR0eIPQbhH4+Dewe7weprJjrzx8KkC2g1rFQrkftYqFoigPgz7byKZ5qayZmUx2ajHVg10ZFBFMv4kBePnZvipEUU4B26YuI3nTaaq2rE2N9kG0fa8Pbv5emE1mNE6aG2WllBz+11Z2/T4O7+AquNf0psmYtoRGhFNSZOTciiNcWncC9+pedPxkAM5eLhT+sAtdVAyF67eDRoPnsH68X5TCV6u/va0vbdq0Yfr06YwYMQIXF2tqhynlIrrFs8hd+RUW/TWcm4bhOyYSr0GjcHCz/UE8KSXpibtI2DGTC0dWYpFm6oYMICxcS52mfR7LQDTPeJXT+n3syFhODbd6jGrw/mPZz6eVCpDtoNZBVhRFUR4n5hILe+OyWD0jiWPbr+Hs6kCvMbUZrA2mXqjt6Rf5aXqQEs8AXwozc3F0c8LZ+87r/F45ksqOt7+jwwf9qdmxLhoXJ9a/8hX6C9k0GduO9J2JFGXlMWj9FFx8rHUYLySjnxlL7vxvMehz+aleFWId89h77vRt9fv7+zN58mSmTJlCYKA1tcJSVEhe3CJ0sVEYzxzDwdcPn2ET8Rk1DafAunaNWb4+jeM7rekXhXmZ+FZvQmi3CJq1H4ezm7dddVWmj35+mauGdFpV7cWJa7twdHDiz62+xcPJ51F37ZmgAmQ7qABZURRFeVxdPJbHmugktsakYSiy0KJbFQZPD6bzS9XtSr848dUejv5vG6OOvYeUkswDydRsH0xJsQlHVyf0idlcjDtGq1/3pKTIyNklh9j7/npePfDujXWUl7b5Jx0+fJF6A1vcVLclv4Dc2Dj0UTEYT57ntK8zS4Lc+e5MAgaD4aayGo2GL7/8kgkTJtz4TEpJ0YF49DFR5G/5HqTEo9dgfMdE4tapl10zrGaTgXNHVpAQH01m0j6cXLxo1mE8od0iqFKjic31VIYfLn/DzBNT+Sr8PFVdawMwZWcLpjWLJrRqj0fat2dFRQNk+xOeFEVRFEV54Oq19GL6nBbEpPZg4mdNuJJSzN+GH2F8vXiW/u0C+myjTfU0n9iJ4fveASB582kO/f0HCtL1OLpaV87IvZjDmdiD5CZdJT9Vx4VVCTR/s9ON4NhUaKSk0IRTmRUwMvYncXLBXooLLfhOeY2g4+sI+PEb2vQI58PjuWw31eG9Fp0IrF7jxjlms5muXbve1DchBO7tu1MraiV1t16kypu/p/jQTi6P703ygBbolnyBpSDfpuvUOLnQtN0YXn1nL8Pf2Uf9loM5vmsOsZ82ZfWsF7h4fC0Wi9mmuh6kXGMOa5Kiea3B+zeC46vF6bho3HEQmpvKPkuTlE8aNYOsKIqiKI8hs1lyYN0V4qKSOLwlBycXB7qPrMlgbTCN2tj2a3pjXjG731vD6W/203B4K5w8XLi8/TzV29ah9/zRnFtxmAMfb+KlLRG4V7emdCTGHeP4nF10+KA/XsF+JMzcwcmv9uDfKpCUH8/S5bMhhEWG33gIzXQpFf3sJei/XI7xmo74YB9iXYrwqleH9Rs33tSf9PR0/ve//zF16lTq1q0LgMVQTP66pehiojCc+BkHLx+8X5mAz5hInIPsexCvMDeT47vncnznbApy0/GuWp/Q8EhCOkzAxd3XrrrKa0fGSmadjGBxz4wbM+KHs7ewOmkGL9Z5i/bVB2CRFhyEdY7SbCnhjH4/jXza4uRge/65cm8qxcIOKkBWFEVRnkRJJ/NZE53EjwvTKC4wE9LZl4ERQXQdVhMn5/v/Mjg/Tc/hf/2IpcRCQPeG1OxUD8/aPmx4dT4aF0f6xrwOQEmRkQOfbkZ/IZu+sa+z693vyU/T03jkczR4OYzz3x3lxJe7GbLh9nWRLYVF5C1egy4qBmPCGUy+XlR/cwQ+U1/DqV4dAD744AM+/PBDHBwcGDRoEFqtll69et1Y/aL48B50MVHkb1oJZjPu4f3xfX067l363HG5ursxm00kHl3F0fgZpCfuwtHZnabtXic0PJKqtZrfv4IK+MuhAdR0q8e0kGgACkvyWJ/yBT9n/8D7rb/DzdGTEosJRwcnfrwcw67Mb9Ebr5BScJrBQVpGNfzLjeBZKb8nKsVCCBEphDgohDAIIb6+T9m3hRAZQohcIcR8IYRLmWN1hRA/CSEKhRCnhRC9K73zTxiNxrrs2K0vjeb+5z7Jbdeseee2a9as/LYrqiJ9f5KvW1GU+wsO8SRyVnNiL/dg8n+bci3TyD9HJzC+7nYWfXSeqxmGe57vWduHbv8ZSvj/htLwlVY30inMhhL8Qn75h+LSuhPkHEuj/kuh5F3K4eKa4zQZ3Zb6L4UC4B1cheKcAq4cvXxbGw7ubvhMepWgI3EExi+iSp+uXPvPAi416E3akKnoNmxjzpw5AFgsFlavXk3v3r1p0aIFs2fPpqCgALfnOlPrv0uoty0Zv2nvYzhxiLSJL5DUvxm6hVGY83NtGi+NxolGz73KsF/vZMRvD9Go9QhO7VvA4r+3YFX081xI+L5S0i+MFgNuGk+quda58dmJazs5djWe9v4DcHP0xGwpwdHBCZPFyNzTv6F5lW581GY9Mzsf4WD2Rk7r9j7wfin2e6gzyEKIoYAF6Ae4SSnH36VcP2Ah0AtIA1YBe6WUfyg9vgfYA/wJeBH4Cmgkpbxyr/afpRnkR7km77PadkWpNZgVRbGVxSI5uDGbNVFJHNyYjaOToNurNRkUGUzTDj42P+x2ZvFBEqLieWHZePKSr7F18lLqvxRKp08Hsj1iBcZ8A+Gfv4JrFeuSbKnbzrF+6FdMzPz0piXk7saUmoF+9mJy5y7DmH2VXYHeLPI08tPp47eV9fHxYcKECURERNCwYUPrdRoN5G9ciT4miuKj+xAenni/PB7fMZE417fvQbyivCuc2PsVx3fOJu9aMl5VgmjZdRohnSfh5lHVrrruZUPKl2xPX8LHbTdySreHpRc+oZZ7AyY1+Zc1QJZmNELDmqSZ/JgWw/86/RIQ/2ZvZ3oHjOfFOpNvpLCUTcdQbPdEplgIIT4BAu8RIC8GLkkp/1j6/nlgkZSyphCiMXAMqCalzCs9vqP0+Bf3alcFyFZPc5D6JAeKKkBWFKU8Lp8rYE10MpsXpFKUZ6ZRW2+GTA+m26u1cHa5d2BlKjSy8zerOLvkEDU718OnQTV6RA+nKKeATSO/JuSNjjQa+dyNgPv7vjPxqOVDn2/G3HWXvjuxFBvIX74e3YwYDIeOk+jhyPIG3iy/cJz8goKbygoh6N+/PwsXLqRq1V8C1+Kj+9HFRpO/fhnSZMS9a198xmrxCO+PsONXlBZzCYnH40jYHsXl89vQOLnSpM1oQrtr8Q8Is7meu8k15hB9ciqHsjdR17MlTXza82qD9/B19r+RWgGwNW0RP1xewEdt1uPk4ExG4UXmnv4NDb2fY1TD9zGYi9iRsYIDV9bh41ydcY0+UUvE2eFpDZCPAn+TUi4rfV8NuAJUA8JLjzUrUz4akFJK7R3qmgxMBggKCmqTlJT0gK/m8fSsBqlPcqCoAmRFUSqiMK+ErTFpxEUlkXK6AB9/Z/pPDmTA1CCqBbje81xjXjGWEgsuvm4IISi6kseaQXNp9XZPGo94DrCuZLGy038YdewP+IXUKlcfpZQU7z2CLiqG/BUbySsxsjbEnxhdKufTUm+Ua9iwIWfOnMHhDgF4SU4Wucvmols8G3NWGk516uMzOgLvYW+g8fa1qz/ZacdIiI/mzMFYSoyF1G7QjdBukdQPexmNxqlc13hdTnEaEkk11wCuGTJx1rjh4fjLOs2ZhZf49MhwetUeQ1v//sw/8zsOZm/k3x120cinDZ8cfoX0wgv0qj2WE9d2ojdm8VGb9SpIttETlYNsB09AX+b99T973eHY9eN3XFFdSjlXStlWStnW39//gXdUURRFUR4H7l6ODJwWxBcnuvLp5rY06+TLsr8lMi54O58OP8zxndfuuqyYs5crrlXcb8wUu1Rxx62a542fsDMPJLHzN6sImdip3MExWGeH3Tq1ptbi/1AveRvBf53OmKsOrE1z5evarekTYp3BjYiIuC04PnjwIGfOnMGxanX8pv2Zej9doub/lqGpEUD2P97hYrcAMv8yBcO5Ezb3p1rtlvQaOYcJH6XSZchn5OtS2fj1CBZ+WJ8Dmz6lMC+r3Nda1bU21VwDANh/ZS3v7u1y41i+SUcN97q82fTf7LuyhqUXPiXh6jbaVnuBRj5t2JT6Fad1e/mozXpeqfcOf3luFUZLMcev7Sh3fxT7PM4zyJ9KKZeXvq8KZPPLDPKnUsqQMuWjAO40g1yWSrGweppncZ/kmVQ1g6woyoOWnljIutnJbJqXSr6uhPphXgzWBtNjVC1c3O6dlnB26SG2TFhMzY7BmAqM+Dbyp/f8UWhcKjazeitpNJK3chP6qBiK9x4h2d2RuqOGUOedSTg3/WWZty5durB792769u2LVqulf//+aEpTKwwnj6CLmUHe2iVIQzFuHXviO0aLR69BCEdHm/tisZi5dGIdCfFRpJzZgoPGmcZtRhLaLZIawe0qdJ3F5kJcNe5kFSWzO3MVnaoPoYZ7XQDikqLZkDKHd0IXUtWlNv85Np4mPh0Y0+iDG+dO392GyJDZNzYaOaPbT1L+Cdr7D8DXpXqF+vY0elpTLBYDF6WUfyp93wtYXCYHOQHwL5ODHF96XOUgl9JowGK5/XMHBzBX8rrpj7LtmjUhM/P2z2vUgIyMym27oirS9yf5uhVFqXzFBSVsXZTOmugkLh3Lx8vPiX6TAhkUEUT1oDtvSQ1gKjBwdunPVAutTdUWtXB0c7Yr99jufh48Zk2/WLoOaTTh3qcLPtqxnKnpRdv27W8qW79+fSIiInjjjTfw9fUFwHwtB/2KeegXzaQkPQXH2kH4jJqGz/BJaKrY9yDe1czTJMRHc3rf15iMBdSs25HQcC0NWw1D41j+9YpNFiMLz/2Z7y99TqcaQygsyaWoJJ/eAePoX+dNdmSsYPH5j/l7uy03At+9WXGsT5nD6IYfUMM1mDXJM9mU+hUNvFtxJOdHJjb5jMHBkTce7FOesABZCOEIOAJ/BQKBN4ESKWXJLeVeAL7ml1UsvgP2l1nFYi+wE/gz0B9YgFrFQlEURVHuSUpJwrarrIlOZs/qLJCSjkNqMCgyiLCefo9NcFWSlUPul8vRz15MyeVMLgRWYYaPkY0nj96WJuLu7s7YsWOJjIykRQvr1tiypISCrWvQxUZRtPcnhIsrXoNG4TtGi0tIK7v6YijSc3r/NyTER6O7cg53rxq06DqVFl3ewsO7/Gtp5hSnsSn1K+p7h9HIu+2NXff+fmQEjg7O/DY0xtq+uYilFz4lvfACvw2LZd7pd7lqSCO81ki61HiZXZmr2Jgyl4/arH9s/v4eB09agPwB1uC4rA+B+cBJIERKmVxa9jfA7wE34FtgipTSUHqsLtYAugOQDERIKbfcr30VICuKoiiKVVZyEetmJ7Pxy1Ryc0zUbeHJoMggeo2pjauH7WkJlUmaTOR/vwVdVAzFOw6S6qphRWNfll46xbXcWx9Hgp49e/LOO+8wYMCAG58Zzh5HFxtN3uoYZFEhrm274TtWi2fvlxBOtqeLSIuF5NObSdgRzaUT63DQONGw1TDCwqdTo26HBxacfvjzEJr6dGREg/cA6858W9Ni6FFrFI182vLng/2Y3PQ/dPAfhBCCc/pDRJ+cyq+af0l974qvwvG0eKIC5EdNBciKoiiKcjNjsZltS9JZPSOJxCN5ePg40m9iIAMjgqhV3/1Rd+8Gw9FT6KJiyFu0hsLiIjY2rsbC4kxOJF+6qdyUKVOYPXv2beeb9dfI/XYB+kUzMaUk4lgjAJ/XpuA9YjKOVe3L4dVlnePYzlmc3DsfY3Eu1eu0ITRcS6PnRuDodO8VQ+7np7TFxCVF8V6rZWQVJzPj+GQ613iJcY0+ZebJCIrN+bzV7HO8nKoAkJCzjY+PDGVJz8wbS8gpKkC2iwqQFUVRFOXOpJSc3K0jbkYSO7/NRFok7Qb4M1gbTOveVXFweDx+fW/OuYb+q5XoZy3GlJTKz9U9WFzdgfWnEjCbzRw/fpzmzW/eTvry5csEBFhXlJBmMwXb16OPjaZw52aEkzOeA0biOyYS11D7HsQzGvI5vX8hCfHRXMs8hZunP807v0mLLlPwqlLn/hXcQbG5kC9P/4Zt6UsI8e1MLfcGTAuJJteYwz+OjqRvwBt0rzXyxoz1Hw/0xc+lFu+GfqM2FSlDBch2UAGyoiiKotxf9uVi1s9JYcOcFHRZRgIauzNYG0zvcQG4ez349Istbyyietsgmr7eHmdPF5vOkWYzBWu2oouKoWjrXjJcBPva1Ccy+t+4tr6x0BXZ2dnUqVOHtm3botVqefnll3EqTa0wXjiNLjaa3O+/QRbk49qqIz5jIvF6YTjC2fYH8aSUpJz9kYTtUVw8sQYhHGgQOpTQ8EhqN+hWrvSLwpI8zLIET0dfhBDojFf44NAgXq77Nt1rjQCsK1n8Zm8nZnU9RrBnyH1qfLaoANkOKkBWFEVRFNsZDRZ2rsggLiqJM/v1uHlp6D0ugMGRQQQ28XwwbeQVs6pXNFkHk3H2dqXZhA6ERobj29D2vQsMJ85Z0y9iViMLi3Dt8hy+2rF4Du3L//3737z33ns3ygYEBDBlyhQmT55M9erW1Apzfi55332NLjYa06VzaKrVwGfEW/i8NgXH6vat+5ybc4mEHTM5uWcehiId1QLCCA3X0rjNazg5lz9lxWwp4aPDL9Gz1mh61H6NM/oDzD31NkGeIfyqxdxy1/u0UgGyHVSArCiKoijlc3qfjjXRycQvS6fEJHmub1UGa4Np96J/hdMvpJRk7L1EQlQ851cewVJiIfiFZoRqwwnu19TmZeXM1/TkLvgW/cxFmBJT0NSuzr/rujB3fzwlJTctmIWzszMjRoxAq9XSrp01tUJaLBTu3IwuJorC7evB0RHPF4Zb0y9ad7JrJthkLOTMwUUkxEeRk3YMF/cqNO/0Ji27TsW7al2b6ylrW/pS/ntsAk19O1JsLqC2eyPebjkfZwfbZt2fJSpAtoMKkBVFURSlYq5mGNgw15p+kZNmoFYDdwZOq0PfNwLx9K34Q2IF6XqOz93N8S92UZiRi28jf1pGdKPZ+A64+Nx9zeaypMVC4Ybt6KJiKdy0gywn+K5pVRZdPkfm1Zzbynfo0AGtVsvw4cNxLk2tMCadR79oFrkrv8KSn4tL8+fwHTsdzwEjcHCx/UE8KSVpF3ZwdPsMEo99D1JSr+VgQsO1BDbqaXf6RXFJAdszllLXK5S6ni1w0bip3OM7UAGyHVSArCiKoigPRonJws5vM1kTncTJXTpcPTQ8/3ptBkUEEdzcq8L1m40lnF95hISoeDL2XsLJ04Wm49oTGtENv2a2rz9sPJOILjqW3K9XYcjPZ0v9KsQKPQcvnL2t7KpVq3jppZdu+sxSkE/u6hj0sdEYz59EU6Ua3iMm4zNqKk41A+26prxrKRzbOZsTu+dSXJCDX80QQsO1NG03FicXD7vqUu5NBch2UAGyoiiKojx45w/nEjcjiW1L0jEZLIT18mOwNpgOg6qj0VR89YvMg8kkRMVzdukhLEYzdfo0IUwbTvCLzXHQ2Jh+kZtP3sJV6KJjMZ25yIkqLiwJdOX7MwkYjUbq1KlDYmIijmW2pr4eIwkhkFJStGcruthoCn5cDQ4OePZ5Gd+xWlzb2vcgXompmHM/L+Xo9hlcST2Ms5sPIR3eILRbBD7+De5fgXJfKkC2gwqQFUVRFKXy6LONbJqXytpZyVxJKaZ6sCuDIoLp+0YA3lXLvz3zdUVX8jj+5R6OzdpBwWU93vWq0jKiGyETOuDqZ9sMrLRYKPxhF7qoGArXbyfbQfJ9s2rU6d+TiP/75KZAd9WqVXz66adotVpGjBiBq6s1tcKUegn94lnoV8zDor+Gc5NQfMdq8Ro0Cgc32x/Ek1KSfnE3CfHRXDiyEos0E9ysP2HdpxPUpE+lben9LFABsh1UgKwoiqIolc9cYmFvXBarZyRxbPs1nF0d6Dm6NkOmB1Mv9AGkX5jMXFydwNEZ8aTtuICjmxNNxrYjNDKcai1r21yP8UIy+pmx5M7/Fos+D5fWIfhOfx3PkQNwcHWhV69e/PTTTwBUq1aNyZMnM3XqVAIDrakVlqJC8uIWoYuNxngmAQefKvgMn4TPqGk4Bda165ry9Wkc3/kFJ3bPpTAvE9/qjQntFkmz9uNwdvO2qy5FBch2UQGyoiiKojxcFxPyiItO4qfYNAxFFlp0q8Lg6cF0fqk6GseKz5BeOXqZhKjtnFl0CHOxiYDuDQmd3p36g1vg4KixqQ5LfgG5sXHoo2IwnjyPploVikb2o+2Xn1FsKL6prEaj4eWXX0ar1dKtW7df0i8OxKOPjSb/h1UgJR49B+E7Votbp152pV+YTQbOHVlBQnwUmUn7cXLxpFmH8YR2i6RKjSZ2jU15maWZvxx8kTbV+tE38A08nXwfSrsPkgqQ7aACZEVRFEV5NPKumdg8P5W1M5PJuFhE1QAXBk4L4oU36+Dr/wDSL3IKOPnVHo7N3EFe8jU861Sh5bSuNJ/UCbdqtq3ZLKWk6Ke96KJiKIjbyjVpZnWIPzHZF0nJzLitfGhoKFqtllGjRuHubk2tMGWkWle/WP4l5mvZODcMwWdMJN5DxuLgYd/a0RlJ+0nYHsW5w8uxmI0ENe1LaLiW4JD+ODjYFvyXx9XidD49MoyTut24aNzpXXscg4IiCPZqfv+THxMqQLaDCpAVRVEU5dEymyUH1l0hLjqJwz/k4OTiQPiImgzWBtO4rU+F67eUmLm49gQJUfGkbj2LxtWJxq89R2hkONWfs337Z9OlVPSzl6CftwLj1WvEB/mwyK2YHWdO3Fa2du3aXLx48cYScQAWQzH565ahi5mB4cTPOHh64z3sDXxGR+Ac3NCuayrMy+LE7rkc2zmbAn0a3lXrExoeSUiHCbi4+9pVlz3O5x4mLimKbemLMVkMhPn1YnCwlg7+A9E4PPgdFR8kFSDbQQXIiqIoivL4SD6Vz5roZH5ceJmifDPNOvkyWBtEl1dq4uRc8fSLnBPpJETHc3rhAUoKjdTqUp9QbTgNhoahcbIx/aKomLzFa9BHx2I4corz3s4srefJyrMJFBYVATB+/HgWLFhwx/OllBQf2YsuJor8jSvAbMY9vD++r0/HvYt9D+KZzSYSj67iaPwM0hN34ejsTtN2YwkN11K1VuXN7uqN2WxKncea5JlkF6dS3TWIQcGR9AuYiJezX6W1WxEqQLaDCpAVRVEU5fFToDexecFl1s5MJu18IVVqujBgSh36Tw7Er5btm3LcjUFXyMkF+0iIjic3MQeP2j60mNKFFpM7417DtgfgpJQU7zyILiqW/O82ozebiAupTszVS6xcu4Y2bdrcVP4f//gHPj4+jB07Fk9Pa2pFSVY6+qVz0C/9AnN2Jk71GuM7OgKvoePReNr3IN6VlMMk7IjmzMFFmEsMBDbqSWj36dRrMajS0i/MlhL2ZsURlxxFwtVtODu40rP2aIYET6eeV2iltFleKkC2gwqQFUVRFOXxZbFIDm3KJi4qiYMbsnF0EnQdXpPBkUE07ehr965zt5IWC5c2nCJhxnaSN5/GwUlDo5HW9Iua7YNtrseUmoH+iyXkzl2G6UoOrs0a4hM5Bu+xQ3Dw8kSn0xEQEEBhYSE+Pj5MmDCBiIgIGja0plZYjAbyN65EHxtN8ZG9CA9PvF8ah++YSJwbNLXrmoryszm55ysSds4k/1oKXn7BtOwylZDOk3DzqGpXXfa4mJfAmqSZbE2LwWApokWVbgwO1tK5+suPRfqFCpDtoAJkRVEURXkypJ0vIC46mc3zUynKM9OojTeDpwcT/mpNnF0rPkN67UwmCTN3cOrrfZjyDNRoH0yoNpxGw1uhcbFty2xLsYH8ZevQRcdiOHgcB29PvCe8wjceBn77t49vKiuEoH///mi1Wvr27YtDaWpFccIBa/rF+mVIkxH3Ln3wGavFo/uLCI3t12kxl5B4bDXHdswk9dxPaJxcadJmNKHhkfgHtrK5HnvlGa+y6fJ81iXPIqPoItVcA3mxzhT615mMr7N/pbV7PypAtoMKkBVFURTlyVKUX8KPMWnEzUgi5XQBb/67CUN/U++B1W/MLeLUwgMkRMejO5NF9+hhhEaE21WHlJLivUfQR8eSt2IjRf4+bPv9SGbOnMnZs7dvad24cWMiIiIYP3483t7W1IqS7Exyl3+JbvFszFlp1J6/CY+ufct1Tdlpxzi2YyanD8QgELzxaQbOLvatoGEvszSzP2sta5JncjjnBzpVH8Jfnvu+Utu8FxUg20EIcQVIKufp1YDsB9idZ4Uat/JR42Y/NWblo8atfNS4lY8aN/upMSufJlLKcu9K8+iTRB4iKWW55/qFEAcr8pPIs0qNW/mocbOfGrPyUeNWPmrcykeNm/3UmJWPEKJCKQNqk29FURRFURRFKUMFyIqiKIqiKIpShgqQbTf3UXfgCaXGrXzUuNlPjVn5qHErHzVu5aPGzX5qzMqnQuP2TD2kpyiKoiiKoij3o2aQFUVRFEVRFKUMFSAriqIoiqIoShkqQFYURVEURVGUMlSAXIYQIlYIkS6EyBVCnBVCTLpH2beFEBmlZecLIVweZl8fF7aOmRBivBDCLITIL/Pq8XB7+/gRQjQSQhQLIWLvclwIIf5PCJFT+vo/IYR42P183Ngwbh8IIUy33G/1H3Y/HxdCiG2l43V9LM7cpZy630rZMWbqXruFEGKkEOKUEKJACHFBCNHtLuXU92gZtoyb+i79xS1jkF86LlH3KG/X/aYC5Jv9HagrpfQGBgOfCCHa3FpICNEP+APwPBAM1Ac+fJgdfYzYNGal9kgpPcu8tj20Xj6+ZgIH7nF8MvASEAaEAoOAtyq/W4+9+40bwLJb7rfEh9Gxx1hkmbFocpcy6n67mS1jBupeu0EI0Qf4P2AC4AWEA7eNh/oevZmt41ZKfZcCZccAqAkUASvuVLY895sKkMuQUp6QUhquvy19NbhD0XHAV6XlrwEfA+MfTi8fL3aMmXILIcRIQAf8eI9i44B/SylTpZSXgX/zjN5r19k4bkr5qPtNqagPgY+klHullBYp5eXSe+lW6nv0ZraOm3JnrwBZwI67HLf7flMB8i2EELOEEIXAaSAdWH+HYs2Bo2XeHwVqCCGqPoQuPnZsHDOA1kKI7NJUjPeFEM/UVudlCSG8gY+A39yn6J3uteaV1a/HnR3jBjBICHFVCHFCCDG1krv2JPh76f9/u+7xK1l1v93MljEDda8BIITQAG0BfyHEeSFEqhAiWgjhdofi6nu0lJ3jBuq79E7GAQvl3dcutvt+UwHyLaSU07D+eqMb8B1guEMxT0Bf5v31P3tVbu8eTzaOWTzQAqiO9Se914DfPqw+PoY+xvrTbOp9yt3pXvN8VvNCsX3clgPNAH/gTeAvQojXKrtzj7HfY/2VYgDWxfPXCCHu9Jsedb/9wtYxU/faL2oATsAwrN8HrYDWwJ/vUFZ9j/7CnnFT36W3EEIEA92Bb+5RzO77TQXIdyClNEspdwKBwJ1mA/IB7zLvr/85r7L79ri635hJKROllBdLf3V0DOss4LCH3c/HgRCiFdAb+K8Nxe90r+Xf46fkp5Y94yalPCmlTCu9L3cDn/OM3m8AUsp9Uso8KaVBSvkNsAt48Q5F1f1WytYxU/faTYpK/xslpUyXUmYD/8H2ew2eze9Rm8dNfZfe0Vhgp5Ty4j3K2H2/qQD53hy5cz7tCawPsVwXBmRKKXMeSq8eb3cbs1tJ4FmclQLoAdQFkoUQGcC7wCtCiJ/vUPZO99qJyu7gY6oHto/brZ7l++1O7jYe6n67O1vvoWf2XivN7UzFOgY3Pr5LcfU9WsrOcbvtdJ7R+62M17n37DGU435TAXIpIUT10iVWPIUQmtInHl/jzg8CLQQmCiFChBC+WH8N8vXD6+3jwZ4xE0L0F0LUKP1zU+B9YPXD7fFjYy7WHyJalb6+ANYB/e5QdiHwGyFEgBCiNvAOz+C9VsrmcRNCDBFCVBFW7YHpPKP3mxDCVwjRTwjhKoRwFEKMxvqE/MY7FFf3G/aNmbrXbrMA0JZ+P1QB3gbW3qGc+h69mU3jpr5LbyaE6Iw1DeqOq1eUYf/9JqVUL+tvD/2B7Vifjs8FjgFvlh4Lwjo9H1Sm/G+AzNKyCwCXR30Nj/OYAf8qHa8CrEvXfAQ4PepreBxewAdAbOmfu2H9lfb1YwL4J3C19PVPQDzqPj8Or/uM2xIgp/QePA1Mf9T9fYTj5I91Sby80v9X9wJ97jJu6n6zf8zUvXbz2DkBs0rHLQOYAbiq79EHM27qu/S2cZsDxNzh8wrfb6L0JEVRFEVRFEVRUCkWiqIoiqIoinITFSAriqIoiqIoShkqQFYURVEURVGUMlSArCiKoiiKoihlqABZURRFURRFUcpQAbKiKIqiKIqilKECZEVRlCeQEOKSEOLdexwfL4TIf5h9uhchxNdCiDttGKEoivLYUQGyoihKOZUGfbL0ZRJCJAoh/iWE8LDx/Lql57at7L4+LE/jNSmK8uxxfNQdUBRFecJtAcZi3QmrGzAP8ACmPspOKYqiKOWnZpAVRVEqxiClzJBSpkgpFwOLgJcAhNXvhBAXhBBFQohjQogxZc69WPrfA6WzrttKz2snhNgshMgWQuQKIXYKITpVtKNCiEFCiENCiGIhxEUhxKdCCOcyxy8JIf4shJhT2m6qEOK3t9TRWAixvbSOM0KIF4UQ+UKI8fe6pjLn/0oIcVkIcU0IsUAI4V7R61IURXnQVICsKIryYBVhnU0G+ASYCEQAIcDfgTlCiAGlx9uX/vcFoBYwtPS9FxCDdUa6PXAEWC+EqFreTgkh+mEN3qOB5sAbwDDgb7cUfRs4BjwH/B/wz+vBuRDCAVgFlAAdgfHAXwGXMuff7ZoovZ4WQG9gBPAy8KvyXpOiKEplUSkWiqIoD4gQoj0wCvixNA/5N0BfKeWO0iIXS8tEAOuAK6Wf50gpM67XI6Xceku9WuAVoD8QW87u/Qn4TEq5oPT9BSHE74FYIcRvpZSy9PPNUsro0j9HCSGmA88De4A+QJPSa7pc2re3gV1l2rnjNZXKBaZIKc3AKSHEitK6/17Oa1IURakUKkBWFEWpmBdKV4twxDpzvBrQYp0xdgU2CiFkmfJOwKV7VSiEqA58DPQEagAawA0IqkA/2wDtS4Pi6xxK660JpJd+lnDLeWlA9dI/NwXSrgfHpQ4AFhv7cLI0OC5bdwcbz1UURXloVICsKIpSMfHAZMCENXg0AQgh6pUeHwQk33KO6T51foM1MH4bazBtAH4EnO9xzv04AB8CK+5w7EqZP9/aN8mDS8erzLoVRVEeGBUgK4qiVEyhlPL8HT4/iTWwDb41ZaIMY+l/Nbd83hWYLqVcByCEqIE1n7cifgaa3qWvtjoN1BZC1JZSppV+1pabg9y7XZOiKMoTQwXIiqIolUBKmSeE+BfwLyGEwDrT7In14TaLlHIukIX1ob5+QohLQLGUUg+cBcYIIfZhXTLun/wSeJbXR8BaIUQSsBzrg3YtgPZSyt/ZWMcPwBngm9JNStyA/5TWdT2N5G7XpCiK8sRQv9pSFEWpPO8DHwDvAiewBpivULoUmpSyBJgOTMKaj7u69Lw3sAbTh4ClwHzuk7d8P1LKTcAArHnN+0tff+D29I971WHBuvKES+n53wCfYg2Oi+9zTYqiKE8M8cuDy4qiKIpiHyFEGNZl6NpKKQ894u4oiqI8ECpAVhRFUWwmhHgZKADOAXWxplgIoLVUXyiKojwlVA6yoiiKYg8vrBuI1AGuAduAt1VwrCjK00TNICuKoiiKoihKGeohPUVRFEVRFEUpQwXIiqIoiqIoilKGCpAVRVEURVEUpQwVICuKoiiKoihKGSpAVhRFURRFUZQy/h8mYCXzQs5GsQAAAABJRU5ErkJggg==\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "from sklearn.linear_model import LogisticRegression\n", "\n", "X = iris[\"data\"][:, (2, 3)] # petal length, petal width\n", "y = (iris[\"target\"] == 2).astype(np.int)\n", "\n", "log_reg = LogisticRegression(solver=\"lbfgs\", C=10**10, random_state=42)\n", "log_reg.fit(X, y)\n", "\n", "x0, x1 = np.meshgrid(\n", " np.linspace(2.9, 7, 500).reshape(-1, 1),\n", " np.linspace(0.8, 2.7, 200).reshape(-1, 1),\n", " )\n", "X_new = np.c_[x0.ravel(), x1.ravel()]\n", "\n", "y_proba = log_reg.predict_proba(X_new)\n", "\n", "plt.figure(figsize=(10, 4))\n", "plt.plot(X[y==0, 0], X[y==0, 1], \"bs\")\n", "plt.plot(X[y==1, 0], X[y==1, 1], \"g^\")\n", "\n", "zz = y_proba[:, 1].reshape(x0.shape)\n", "contour = plt.contour(x0, x1, zz, cmap=plt.cm.brg)\n", "\n", "\n", "left_right = np.array([2.9, 7])\n", "boundary = -(log_reg.coef_[0][0] * left_right + log_reg.intercept_[0]) / log_reg.coef_[0][1]\n", "\n", "plt.clabel(contour, inline=1, fontsize=12)\n", "plt.plot(left_right, boundary, \"k--\", linewidth=3)\n", "plt.text(3.5, 1.5, \"Not Iris virginica\", fontsize=14, color=\"b\", ha=\"center\")\n", "plt.text(6.5, 2.3, \"Iris virginica\", fontsize=14, color=\"g\", ha=\"center\")\n", "plt.xlabel(\"Petal length\", fontsize=14)\n", "plt.ylabel(\"Petal width\", fontsize=14)\n", "plt.axis([2.9, 7, 0.8, 2.7])\n", "save_fig(\"logistic_regression_contour_plot\")\n", "plt.show()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "**식 4-20: 소프트맥스 함수**\n", "\n", "$\n", "\\hat{p}_k = \\sigma\\left(\\mathbf{s}(\\mathbf{x})\\right)_k = \\dfrac{\\exp\\left(s_k(\\mathbf{x})\\right)}{\\sum\\limits_{j=1}^{K}{\\exp\\left(s_j(\\mathbf{x})\\right)}}\n", "$\n", "\n", "**식 4-22: 크로스 엔트로피 비용 함수**\n", "\n", "$\n", "J(\\boldsymbol{\\Theta}) = - \\dfrac{1}{m}\\sum\\limits_{i=1}^{m}\\sum\\limits_{k=1}^{K}{y_k^{(i)}\\log\\left(\\hat{p}_k^{(i)}\\right)}\n", "$\n", "\n", "**식 4-23: 클래스 k에 대한 크로스 엔트로피의 그레이디언트 벡터**\n", "\n", "$\n", "\\nabla_{\\boldsymbol{\\theta}^{(k)}} \\, J(\\boldsymbol{\\Theta}) = \\dfrac{1}{m} \\sum\\limits_{i=1}^{m}{ \\left ( \\hat{p}^{(i)}_k - y_k^{(i)} \\right ) \\mathbf{x}^{(i)}}\n", "$" ] }, { "cell_type": "code", "execution_count": 63, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "LogisticRegression(C=10, multi_class='multinomial', random_state=42)" ] }, "execution_count": 63, "metadata": {}, "output_type": "execute_result" } ], "source": [ "X = iris[\"data\"][:, (2, 3)] # 꽃잎 길이, 꽃잎 너비\n", "y = iris[\"target\"]\n", "\n", "softmax_reg = LogisticRegression(multi_class=\"multinomial\",solver=\"lbfgs\", C=10, random_state=42)\n", "softmax_reg.fit(X, y)" ] }, { "cell_type": "code", "execution_count": 64, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "그림 저장: softmax_regression_contour_plot\n" ] }, { "data": { "image/png": "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1VmjttwgatNVor4dKpQjhvu4HNlJKfdJKb8AhgO34QySrwHeq5upKapi6dKVbN26gwULfmLRol9Oez4zM4shQ+5h2LA72LFjDf/++xt33nlblf3deeetLFjwJ8eO/Zd5WbJkBRkZWdx++00APP/8a0yb9g0TJ77L9u2refrpR3nwwcf47beFJ/X1f//3Cg88cA/bt69m8ODreP7519m+fSfz5n3Prl1r+fzzSURGRlQ6DyklAwbcytKlK/nii0ls376a99577Xip6g0bNnPbbcO54YaBbNmygjfeeJG33vqIyZOnVvnaRowYzdq1G5gz51tWr/4LT09P+ve/mdLS/8q6lpWV8frr7/Hxxx+yfftqYmMbVNnfxYYQzvLSVWEpcy7kcwWtviYSC63rEguhRSIQbhcKqZsA2blATwXI5xqBhojSQVyR9S9XZWwgvGQw+30msygynrXBN5NjXF6jctbC1AN0znOVlBIhBNJhwX70TexZT6ENHIc27B2E1s/ZxprptIoL/xB9oyXoGvyMI/9L8ozr2THwR1bds49D7ccRnDKfy77pSPsfehC8dx4VXmsnyi/McQEc+KAv61PGceCt3njszaX5DT/Srs2nhE3dWO28PV6NwielNR4TY0gTh8mwZJ30vKvuE1oDNBpaRr91uSTO30day7+wC+dn1W63s2zzuc1CuuqsUVtuELXpKlHfDhXKEaNmuKpB7gRcBfQEugNGYCPwPk5NsqIe8fAw8sUXkzAajZU+f/hwJlarlZtuGkRsrLMcaKtWLarsr2/fXvj5+TJr1jzuuecuAGbO/ImePa8kIiKc4uJiPvxwCn/88TNXXOF09WvUKJZ16zYyZcrnXHddv+N9jR07iptv/q9U8MGDabRv35ZOnRIBjs+nMv76619WrVrHtm2raN48AYC4uIbHn//ww8n06NGdl176HwBNmzZh794U3nlnPGPHjjqtvz179jF//u/888+vXHlldwC++uoTGjZszbff/sS99zqz5na7nQkT3iExsV2Vc7tYaXWlg3ULdEx6QEe/e+34BEocDsjLFCyfpeXANsEdz7sWwGoMArvFcTyYcAm9zmUXC4TAoTWcRQa5dp0sBBqkcD/wUtQd/pYOdMz5mpb5b5PiM6Fcp/wz/ubLaFLwOJElN6LBteIuGlMnwFkCXQiBtB7CljEW7DloQ19CG3Dv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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "x0, x1 = np.meshgrid(\n", " np.linspace(0, 8, 500).reshape(-1, 1),\n", " np.linspace(0, 3.5, 200).reshape(-1, 1),\n", " )\n", "X_new = np.c_[x0.ravel(), x1.ravel()]\n", "\n", "\n", "y_proba = softmax_reg.predict_proba(X_new)\n", "y_predict = softmax_reg.predict(X_new)\n", "\n", "zz1 = y_proba[:, 1].reshape(x0.shape)\n", "zz = y_predict.reshape(x0.shape)\n", "\n", "plt.figure(figsize=(10, 4))\n", "plt.plot(X[y==2, 0], X[y==2, 1], \"g^\", label=\"Iris virginica\")\n", "plt.plot(X[y==1, 0], X[y==1, 1], \"bs\", label=\"Iris versicolor\")\n", "plt.plot(X[y==0, 0], X[y==0, 1], \"yo\", label=\"Iris setosa\")\n", "\n", "from matplotlib.colors import ListedColormap\n", "custom_cmap = ListedColormap(['#fafab0','#9898ff','#a0faa0'])\n", "\n", "plt.contourf(x0, x1, zz, cmap=custom_cmap)\n", "contour = plt.contour(x0, x1, zz1, cmap=plt.cm.brg)\n", "plt.clabel(contour, inline=1, fontsize=12)\n", "plt.xlabel(\"Petal length\", fontsize=14)\n", "plt.ylabel(\"Petal width\", fontsize=14)\n", "plt.legend(loc=\"center left\", fontsize=14)\n", "plt.axis([0, 7, 0, 3.5])\n", "save_fig(\"softmax_regression_contour_plot\")\n", "plt.show()" ] }, { "cell_type": "code", "execution_count": 65, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([2])" ] }, "execution_count": 65, "metadata": {}, "output_type": "execute_result" } ], "source": [ "softmax_reg.predict([[5, 2]])" ] }, { "cell_type": "code", "execution_count": 66, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([[6.38014896e-07, 5.74929995e-02, 9.42506362e-01]])" ] }, "execution_count": 66, "metadata": {}, "output_type": "execute_result" } ], "source": [ "softmax_reg.predict_proba([[5, 2]])" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# 연습문제 해답" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## 1. to 11." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "부록 A를 참고하세요." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## 12. 조기 종료를 사용한 배치 경사 하강법으로 소프트맥스 회귀 구현하기\n", "(사이킷런을 사용하지 않고)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "먼저 데이터를 로드합니다. 앞서 사용했던 Iris 데이터셋을 재사용하겠습니다." ] }, { "cell_type": "code", "execution_count": 67, "metadata": {}, "outputs": [], "source": [ "X = iris[\"data\"][:, (2, 3)] # 꽃잎 길이, 꽃잎 넓이\n", "y = iris[\"target\"]" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "모든 샘플에 편향을 추가합니다 ($x_0 = 1$):" ] }, { "cell_type": "code", "execution_count": 68, "metadata": {}, "outputs": [], "source": [ "X_with_bias = np.c_[np.ones([len(X), 1]), X]" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "결과를 일정하게 유지하기 위해 랜덤 시드를 지정합니다:" ] }, { "cell_type": "code", "execution_count": 69, "metadata": {}, "outputs": [], "source": [ "np.random.seed(2042)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "데이터셋을 훈련 세트, 검증 세트, 테스트 세트로 나누는 가장 쉬운 방법은 사이킷런의 `train_test_split()` 함수를 사용하는 것입니다. 하지만 이 연습문제의 목적은 직접 만들어 보면서 알고리즘을 이해하는 것이므로 다음과 같이 수동으로 나누어 보겠습니다:" ] }, { "cell_type": "code", "execution_count": 70, "metadata": {}, "outputs": [], "source": [ "test_ratio = 0.2\n", "validation_ratio = 0.2\n", "total_size = len(X_with_bias)\n", "\n", "test_size = int(total_size * test_ratio)\n", "validation_size = int(total_size * validation_ratio)\n", "train_size = total_size - test_size - validation_size\n", "\n", "rnd_indices = np.random.permutation(total_size)\n", "\n", "X_train = X_with_bias[rnd_indices[:train_size]]\n", "y_train = y[rnd_indices[:train_size]]\n", "X_valid = X_with_bias[rnd_indices[train_size:-test_size]]\n", "y_valid = y[rnd_indices[train_size:-test_size]]\n", "X_test = X_with_bias[rnd_indices[-test_size:]]\n", "y_test = y[rnd_indices[-test_size:]]" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "타깃은 클래스 인덱스(0, 1 그리고 2)이지만 소프트맥스 회귀 모델을 훈련시키기 위해 필요한 것은 타깃 클래스의 확률입니다. 각 샘플에서 확률이 1인 타깃 클래스를 제외한 다른 클래스의 확률은 0입니다(다른 말로하면 주어진 샘플에 대한 클래스 확률이 원-핫 벡터입니다). 클래스 인덱스를 원-핫 벡터로 바꾸는 간단한 함수를 작성하겠습니다:" ] }, { "cell_type": "code", "execution_count": 71, "metadata": {}, "outputs": [], "source": [ "def to_one_hot(y):\n", " n_classes = y.max() + 1\n", " m = len(y)\n", " Y_one_hot = np.zeros((m, n_classes))\n", " Y_one_hot[np.arange(m), y] = 1\n", " return Y_one_hot" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "10개 샘플만 넣어 이 함수를 테스트해 보죠:" ] }, { "cell_type": "code", "execution_count": 72, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([0, 1, 2, 1, 1, 0, 1, 1, 1, 0])" ] }, "execution_count": 72, "metadata": {}, "output_type": "execute_result" } ], "source": [ "y_train[:10]" ] }, { "cell_type": "code", "execution_count": 73, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([[1., 0., 0.],\n", " [0., 1., 0.],\n", " [0., 0., 1.],\n", " [0., 1., 0.],\n", " [0., 1., 0.],\n", " [1., 0., 0.],\n", " [0., 1., 0.],\n", " [0., 1., 0.],\n", " [0., 1., 0.],\n", " [1., 0., 0.]])" ] }, "execution_count": 73, "metadata": {}, "output_type": "execute_result" } ], "source": [ "to_one_hot(y_train[:10])" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "잘 되네요, 이제 훈련 세트와 테스트 세트의 타깃 클래스 확률을 담은 행렬을 만들겠습니다:" ] }, { "cell_type": "code", "execution_count": 74, "metadata": {}, "outputs": [], "source": [ "Y_train_one_hot = to_one_hot(y_train)\n", "Y_valid_one_hot = to_one_hot(y_valid)\n", "Y_test_one_hot = to_one_hot(y_test)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "이제 소프트맥스 함수를 만듭니다. 다음 공식을 참고하세요:\n", "\n", "$\\sigma\\left(\\mathbf{s}(\\mathbf{x})\\right)_k = \\dfrac{\\exp\\left(s_k(\\mathbf{x})\\right)}{\\sum\\limits_{j=1}^{K}{\\exp\\left(s_j(\\mathbf{x})\\right)}}$" ] }, { "cell_type": "code", "execution_count": 75, "metadata": {}, "outputs": [], "source": [ "def softmax(logits):\n", " exps = np.exp(logits)\n", " exp_sums = np.sum(exps, axis=1, keepdims=True)\n", " return exps / exp_sums" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "훈련을 위한 준비를 거의 마쳤습니다. 입력과 출력의 개수를 정의합니다:" ] }, { "cell_type": "code", "execution_count": 76, "metadata": {}, "outputs": [], "source": [ "n_inputs = X_train.shape[1] # == 3 (특성 2개와 편향)\n", "n_outputs = len(np.unique(y_train)) # == 3 (3개의 붓꽃 클래스)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "이제 좀 복잡한 훈련 파트입니다! 이론적으로는 간단합니다. 그냥 수학 공식을 파이썬 코드로 바꾸기만 하면 됩니다. 하지만 실제로는 꽤 까다로운 면이 있습니다. 특히, 항이나 인덱스의 순서가 뒤섞이기 쉽습니다. 제대로 작동할 것처럼 코드를 작성했더라도 실제 제대로 계산하지 못합니다. 확실하지 않을 때는 각 항의 크기를 기록하고 이에 상응하는 코드가 같은 크기를 만드는지 확인합니다. 각 항을 독립적으로 평가해서 출력해 보는 것도 좋습니다. 사실 사이킷런에 이미 잘 구현되어 있기 때문에 이렇게 할 필요는 없습니다. 하지만 직접 만들어 보면 어떻게 작동하는지 이해하는데 도움이 됩니다.\n", "\n", "구현할 공식은 비용함수입니다:\n", "\n", "$J(\\mathbf{\\Theta}) =\n", "- \\dfrac{1}{m}\\sum\\limits_{i=1}^{m}\\sum\\limits_{k=1}^{K}{y_k^{(i)}\\log\\left(\\hat{p}_k^{(i)}\\right)}$\n", "\n", "그리고 그레이디언트 공식입니다:\n", "\n", "$\\nabla_{\\mathbf{\\theta}^{(k)}} \\, J(\\mathbf{\\Theta}) = \\dfrac{1}{m} \\sum\\limits_{i=1}^{m}{ \\left ( \\hat{p}^{(i)}_k - y_k^{(i)} \\right ) \\mathbf{x}^{(i)}}$\n", "\n", "$\\hat{p}_k^{(i)} = 0$이면 $\\log\\left(\\hat{p}_k^{(i)}\\right)$를 계산할 수 없습니다. `nan` 값을 피하기 위해 $\\log\\left(\\hat{p}_k^{(i)}\\right)$에 아주 작은 값 $\\epsilon$을 추가하겠습니다." ] }, { "cell_type": "code", "execution_count": 77, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "0 5.446205811872683\n", "500 0.8350062641405651\n", "1000 0.6878801447192402\n", "1500 0.6012379137693314\n", "2000 0.5444496861981872\n", "2500 0.5038530181431525\n", "3000 0.4729228972192248\n", "3500 0.44824244188957774\n", "4000 0.4278651093928793\n", "4500 0.4106007142918715\n", "5000 0.3956780375390374\n" ] } ], "source": [ "eta = 0.01\n", "n_iterations = 5001\n", "m = len(X_train)\n", "epsilon = 1e-7\n", "\n", "Theta = np.random.randn(n_inputs, n_outputs)\n", "\n", "for iteration in range(n_iterations):\n", " logits = X_train.dot(Theta)\n", " Y_proba = softmax(logits)\n", " loss = -np.mean(np.sum(Y_train_one_hot * np.log(Y_proba + epsilon), axis=1))\n", " error = Y_proba - Y_train_one_hot\n", " if iteration % 500 == 0:\n", " print(iteration, loss)\n", " gradients = 1/m * X_train.T.dot(error)\n", " Theta = Theta - eta * gradients" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "바로 이겁니다! 소프트맥스 모델을 훈련시켰습니다. 모델 파라미터를 확인해 보겠습니다:" ] }, { "cell_type": "code", "execution_count": 78, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([[ 3.32094157, -0.6501102 , -2.99979416],\n", " [-1.1718465 , 0.11706172, 0.10507543],\n", " [-0.70224261, -0.09527802, 1.4786383 ]])" ] }, "execution_count": 78, "metadata": {}, "output_type": "execute_result" } ], "source": [ "Theta" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "검증 세트에 대한 예측과 정확도를 확인해 보겠습니다:" ] }, { "cell_type": "code", "execution_count": 79, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "0.9666666666666667" ] }, "execution_count": 79, "metadata": {}, "output_type": "execute_result" } ], "source": [ "logits = X_valid.dot(Theta)\n", "Y_proba = softmax(logits)\n", "y_predict = np.argmax(Y_proba, axis=1)\n", "\n", "accuracy_score = np.mean(y_predict == y_valid)\n", "accuracy_score" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "와우, 이 모델이 매우 잘 작동하는 것 같습니다. 연습을 위해서 $\\ell_2$ 규제를 조금 추가해 보겠습니다. 다음 코드는 위와 거의 동일하지만 손실에 $\\ell_2$ 페널티가 추가되었고 그래디언트에도 항이 추가되었습니다(`Theta`의 첫 번째 원소는 편향이므로 규제하지 않습니다). 학습률 `eta`도 증가시켜 보겠습니다." ] }, { "cell_type": "code", "execution_count": 80, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "0 6.629842469083912\n", "500 0.5339667976629506\n", "1000 0.503640075014894\n", "1500 0.4946891059460321\n", "2000 0.49129684180754774\n", "2500 0.489899247009333\n", "3000 0.4892990598451198\n", "3500 0.48903512443978603\n", "4000 0.4889173621830818\n", "4500 0.4888643337449303\n", "5000 0.4888403120738818\n" ] } ], "source": [ "eta = 0.1\n", "n_iterations = 5001\n", "m = len(X_train)\n", "epsilon = 1e-7\n", "alpha = 0.1 # 규제 하이퍼파라미터\n", "\n", "Theta = np.random.randn(n_inputs, n_outputs)\n", "\n", "for iteration in range(n_iterations):\n", " logits = X_train.dot(Theta)\n", " Y_proba = softmax(logits)\n", " xentropy_loss = -np.mean(np.sum(Y_train_one_hot * np.log(Y_proba + epsilon), axis=1))\n", " l2_loss = 1/2 * np.sum(np.square(Theta[1:]))\n", " loss = xentropy_loss + alpha * l2_loss\n", " error = Y_proba - Y_train_one_hot\n", " if iteration % 500 == 0:\n", " print(iteration, loss)\n", " gradients = 1/m * X_train.T.dot(error) + np.r_[np.zeros([1, n_outputs]), alpha * Theta[1:]]\n", " Theta = Theta - eta * gradients" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "추가된 $\\ell_2$ 페널티 때문에 이전보다 손실이 조금 커보이지만 더 잘 작동하는 모델이 되었을까요? 확인해 보죠:" ] }, { "cell_type": "code", "execution_count": 81, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "1.0" ] }, "execution_count": 81, "metadata": {}, "output_type": "execute_result" } ], "source": [ "logits = X_valid.dot(Theta)\n", "Y_proba = softmax(logits)\n", "y_predict = np.argmax(Y_proba, axis=1)\n", "\n", "accuracy_score = np.mean(y_predict == y_valid)\n", "accuracy_score" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "와우, 완벽한 정확도네요! 운이 좋은 검증 세트일지 모르지만 잘 된 것은 맞습니다." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "이제 조기 종료를 추가해 보죠. 이렇게 하려면 매 반복에서 검증 세트에 대한 손실을 계산해서 오차가 증가하기 시작할 때 멈춰야 합니다." ] }, { "cell_type": "code", "execution_count": 82, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "0 4.7096017363419875\n", "500 0.5739711987633518\n", "1000 0.5435638529109128\n", "1500 0.5355752782580261\n", "2000 0.5331959249285544\n", "2500 0.5325946767399383\n", "2765 0.5325460966791897\n", "2766 0.5325460971327975 조기 종료!\n" ] } ], "source": [ "eta = 0.1 \n", "n_iterations = 5001\n", "m = len(X_train)\n", "epsilon = 1e-7\n", "alpha = 0.1 # 규제 하이퍼파라미터\n", "best_loss = np.infty\n", "\n", "Theta = np.random.randn(n_inputs, n_outputs)\n", "\n", "for iteration in range(n_iterations):\n", " logits = X_train.dot(Theta)\n", " Y_proba = softmax(logits)\n", " xentropy_loss = -np.mean(np.sum(Y_train_one_hot * np.log(Y_proba + epsilon), axis=1))\n", " l2_loss = 1/2 * np.sum(np.square(Theta[1:]))\n", " loss = xentropy_loss + alpha * l2_loss\n", " error = Y_proba - Y_train_one_hot\n", " gradients = 1/m * X_train.T.dot(error) + np.r_[np.zeros([1, n_outputs]), alpha * Theta[1:]]\n", " Theta = Theta - eta * gradients\n", "\n", " logits = X_valid.dot(Theta)\n", " Y_proba = softmax(logits)\n", " xentropy_loss = -np.mean(np.sum(Y_valid_one_hot * np.log(Y_proba + epsilon), axis=1))\n", " l2_loss = 1/2 * np.sum(np.square(Theta[1:]))\n", " loss = xentropy_loss + alpha * l2_loss\n", " if iteration % 500 == 0:\n", " print(iteration, loss)\n", " if loss < best_loss:\n", " best_loss = loss\n", " else:\n", " print(iteration - 1, best_loss)\n", " print(iteration, loss, \"조기 종료!\")\n", " break" ] }, { "cell_type": "code", "execution_count": 83, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "1.0" ] }, "execution_count": 83, "metadata": {}, "output_type": "execute_result" } ], "source": [ "logits = X_valid.dot(Theta)\n", "Y_proba = softmax(logits)\n", "y_predict = np.argmax(Y_proba, axis=1)\n", "\n", "accuracy_score = np.mean(y_predict == y_valid)\n", "accuracy_score" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "여전히 완벽하지만 더 빠릅니다." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "이제 전체 데이터셋에 대한 모델의 예측을 그래프로 나타내 보겠습니다:" ] }, { "cell_type": "code", "execution_count": 84, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "x0, x1 = np.meshgrid(\n", " np.linspace(0, 8, 500).reshape(-1, 1),\n", " np.linspace(0, 3.5, 200).reshape(-1, 1),\n", " )\n", "X_new = np.c_[x0.ravel(), x1.ravel()]\n", "X_new_with_bias = np.c_[np.ones([len(X_new), 1]), X_new]\n", "\n", "logits = X_new_with_bias.dot(Theta)\n", "Y_proba = softmax(logits)\n", "y_predict = np.argmax(Y_proba, axis=1)\n", "\n", "zz1 = Y_proba[:, 1].reshape(x0.shape)\n", "zz = y_predict.reshape(x0.shape)\n", "\n", "plt.figure(figsize=(10, 4))\n", "plt.plot(X[y==2, 0], X[y==2, 1], \"g^\", label=\"Iris virginica\")\n", "plt.plot(X[y==1, 0], X[y==1, 1], \"bs\", label=\"Iris versicolor\")\n", "plt.plot(X[y==0, 0], X[y==0, 1], \"yo\", label=\"Iris setosa\")\n", "\n", "from matplotlib.colors import ListedColormap\n", "custom_cmap = ListedColormap(['#fafab0','#9898ff','#a0faa0'])\n", "\n", "plt.contourf(x0, x1, zz, cmap=custom_cmap)\n", "contour = plt.contour(x0, x1, zz1, cmap=plt.cm.brg)\n", "plt.clabel(contour, inline=1, fontsize=12)\n", "plt.xlabel(\"Petal length\", fontsize=14)\n", "plt.ylabel(\"Petal width\", fontsize=14)\n", "plt.legend(loc=\"upper left\", fontsize=14)\n", "plt.axis([0, 7, 0, 3.5])\n", "plt.show()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "이제 테스트 세트에 대한 모델의 최종 정확도를 측정해 보겠습니다:" ] }, { "cell_type": "code", "execution_count": 85, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "0.9333333333333333" ] }, "execution_count": 85, "metadata": {}, "output_type": "execute_result" } ], "source": [ "logits = X_test.dot(Theta)\n", "Y_proba = softmax(logits)\n", "y_predict = np.argmax(Y_proba, axis=1)\n", "\n", "accuracy_score = np.mean(y_predict == y_test)\n", "accuracy_score" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "완벽했던 최종 모델의 성능이 조금 떨어졌습니다. 이런 차이는 데이터셋이 작기 때문일 것입니다. 훈련 세트와 검증 세트, 테스트 세트를 어떻게 샘플링했는지에 따라 매우 다른 결과를 얻을 수 있습니다. 몇 번 랜덤 시드를 바꾸고 이 코드를 다시 실행해 보면 결과가 달라지는 것을 확인할 수 있습니다." ] } ], "metadata": { "kernelspec": { "display_name": "TensorFlow 2.4 on Python 3.8 & CUDA 11.1", "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.7" }, "nav_menu": {}, "toc": { "navigate_menu": true, "number_sections": true, "sideBar": true, "threshold": 6, "toc_cell": false, "toc_section_display": "block", "toc_window_display": false } }, "nbformat": 4, "nbformat_minor": 1 }