{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# Simple Demo of Scikit-Learn\n", "\n", "## Imports" ] }, { "cell_type": "code", "execution_count": 15, "metadata": {}, "outputs": [], "source": [ "import numpy as np\n", "import matplotlib.pyplot as plt\n", "%matplotlib inline" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Plotting setup" ] }, { "cell_type": "code", "execution_count": 16, "metadata": {}, "outputs": [], "source": [ "from matplotlib.colors import ListedColormap\n", "\n", "cmap_light = ListedColormap(['#FFAAAA', '#AAFFAA', '#AAAAFF'])\n", "labels=['sr','og','^b']\n", "colors=['r','g','b']\n", "\n", "def plot_data(x,y,title):\n", " #Plot the results\n", " for i in [1,2,3]:\n", " plt.plot(x[y==i,0],x[y==i,1],labels[i-1]);\n", " plt.axis('tight');\n", " plt.xlabel('area');\n", " plt.ylabel('compactness');\n", " plt.title(title);\n", " \n", "\n", "#Define classifier plotting function\n", "def plot_classifier(x,y,clf,title):\n", "\n", " #Prepare grid for plotting decision surface\n", " gx1, gx2 = np.meshgrid(np.arange(min(x[:,0]), max(x[:,0]),(max(x[:,0])-min(x[:,0]))/200.0 ),\n", " np.arange(min(x[:,1]), max(x[:,1]),(max(x[:,1])-min(x[:,1]))/200.0))\n", " gx1l = gx1.flatten()\n", " gx2l = gx2.flatten()\n", " gx = np.vstack((gx1l,gx2l)).T\n", "\n", " #Compute a prediction for every point in the grid\n", " gyhat = clf.predict(gx)\n", " gyhat = gyhat.reshape(gx1.shape)\n", "\n", " #Plot the results\n", " for i in [1,2,3]:\n", " plt.plot(x[y==i,0],x[y==i,1],labels[i-1]);\n", " plt.xlabel('area');\n", " plt.ylabel('compactness');\n", " plt.pcolormesh(gx1,gx2,gyhat,cmap=cmap_light)\n", " plt.colorbar();\n", " plt.axis('tight');\n", " plt.title(title);\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Load and plot seeds data set" ] }, { "cell_type": "code", "execution_count": 17, "metadata": {}, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAYsAAAEWCAYAAACXGLsWAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADl0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uIDMuMC4yLCBodHRwOi8vbWF0cGxvdGxpYi5vcmcvOIA7rQAAIABJREFUeJzt3Xu4XHV97/H3N5tskwgESWJQQhJoseUSTCBS8bRg5ViBlouXVjiJjVBNSYqVHm0bipTLPqkttRVascIjCZFsFfrUCwqW40MVtIAlmFsDIpyYhJgNhqARCLBJ9vf8sdaQ2bPXmrVmZq1Za2Y+L5959p41a2Z+awd/3/W7fX/m7oiIiNQzrugCiIhI+SlYiIhIIgULERFJpGAhIiKJFCxERCSRgoWIiCRSsBARkUQKFiINMLMtZvaimT1nZr8ws/vN7GIzS/z/kpnNNjM3swPaUVaRLClYiDTubHc/CJgF/C3wl8DNxRZJJF8KFiJNcvfd7n4H8H5gkZkdb2a/a2ZrzeyXZvakmV1V9Zb7wp+/MLPnzewUM/sVM/sPM9tlZs+Y2aCZHdL2ixFJoGAh0iJ3/y9gO/BbwAvAHwKHAL8LLDGz88JTTw1/HuLuB7r7A4ABnwTeCBwDHAFc1b7Si6SjYCGSjR3Aoe7+XXff6O4j7r4B+BJwWtyb3P0Jd/+2u7/s7juBf6x3vkhRNNAmko3DgWfN7DcIxjGOB/qB1wD/GvcmM3s98E8ErZKDCG7gfp57aUUapJaFSIvM7C0EweL7wBeBO4Aj3H0y8DmCriaAqBTPnwyPn+DuBwMLq84XKQ0FC5EmmdnBZvZ7wJeB1e6+kaB18Ky7v2RmJwP/q+otO4ER4KiqYwcBzxMMeh8O/Hl7Si/SGNN+FiLpmdkWYDqwl6DifwRYDXzO3feZ2fuAfwAOBe4FthAMaC8M338NsAQYD5wBPAd8Afg14AngVuDP3H1G+65KJJmChYiIJFI3lIiIJFKwEBGRRAoWIiKSSMFCREQSdc2ivKlTp/rs2bOLLoaISEd5+OGHn3H3aUnndU2wmD17NmvWrCm6GCIiHcXMtqY5T91QIiKSSMFCREQS5RoszOwMM3vMzJ4ws2URr88ys3vMbIOZfdfMZoTH55rZA2a2KXzt/XmWU0RE6sstWJhZH3ADcCZwLHCBmR1bc9qngC+4+wnANQRJ1QD2AH/o7scRpES4ThvCiIgUJ8+WxcnAE+6+2d2HCZKtnVtzzrHAPeHv36m87u4/dvfHw993AD8DEkfrRUQkH3kGi8OBJ6uebw+PVVsPvDf8/d3AQWY2pfqEMHNnP/D/ar/AzBab2RozW7Nz587MCi5tdNhhYDb2cdhhRZdMRKrkGSyicvLXZi38OHCama0l2B3spwTZPIMPMHsDQRbOC919ZMyHud/k7vPdff60aWp4dKSnn27suIgUIs91FtsJ9hOumEGw9eSrwi6m9wCY2YHAe919d/j8YOBO4BPu/mCO5RQRkQR5tiweAo42syPNrB84n2AHsVeZ2VQzq5ThMmBFeLwf+CrB4HfslpQiItIeuQULd98LXALcDTwK3O7um8zsGjM7Jzzt7cBjZvZjgg1llofH/wA4Ffigma0LH3PzKquIiNTXNZsfzZ8/35XuowNZne2mu+S/TZEyM7OH3X1+0nlawS3Fmj69seNpaIaVSOa6JpGgdKinnsr+MzXDSiRzalmIiEgiBQsREUmkYCEiIokULEREJJGChXSfPGZYifQ4zYaS7pPHDCuRHqeWhYi01eDGQWZfN5txV49j9nWzGdw4WHSRJAW1LESkbQY3DrL4G4vZ88oeALbu3sribywGYMGcBUUWTRKoZSEibXP5PZe/Gigq9ryyh8vvubygEklaChYi0jbbdm9r6LiUh4KFiLTNzMkzGzou5aFgIdLtSpRYcfnpy5k0ftKoY/19/Tw//HxTA95Rg+UaQM+HUpSLdLuSpYEf3DjI5fdczrbd2zh04qH88uVf8srIK6++Pmn8JG46+6bEAe/awXIIAo+7N/V5vSptinIFC5FuV7JgUW32dbPZunvrmONTJk7hwP4D2bZ7GzMnz2T56cvHVPZx740ya/Istly6JYsidx3tZyFSMuoeGStuYHvXi7vYunsrjr86vbb279XIoLgG0FunYCHSqhRjApUuk6QKsNekHdiunl5bCbpO+laRBtBbp2Ah5VeiAdpIKTZb0vqCaFED3nG27d42KuhG6e/rZ/y48aOOTRo/ieWnL2+5rL1OwULKrwt2vit0fUGJEysumLOAm86+iVmTZ2EYsybPYsrEKZHnzpw8MzLoVsyaPIsV565g5XkrR32eBrezoQFuKb8SD9ACqcoXNxirgdexomY5VWY0feArH4jsfjKMkStH2lnMrqEBbpESiepumTQMy1dsLWfXWoGiWhuV1kGaRX2aSJAPBQuRNhhTAf4CbvoGLNhYc2IHda3lacGcBWy5dAsjV46w5dItr3YjRQbdqjGJbppIULagp24oKb+yd0Mddlh0JT99evzeGmW/phKrXtRXuwajW7r76nXFZT3+okV50j2aqYzLTsEiF+OuHtcVYxrtDHoas5DsFD119amnggq09tGpgUJy0y2JCsuYnVfBQpJ1wdRVoPigJ5mJ689PGtPoFGUMerkGCzM7w8weM7MnzGxZxOuzzOweM9tgZt81sxlVry0ys8fDx6I8yyk9okxBb1zM//Xijve46uAw9dqpXPi1CyMHsevNpOokZQx6uY1ZmFkf8GPgncB24CHgAnd/pOqcfwW+6e6rzOwdwIXu/gEzOxRYA8wHHHgYOMndfx73fRqzyFEn9K+nGdco03WUqSwZqjf43Mpn1g72Rum0Qewkefwto5RhzOJk4Al33+zuw8CXgXNrzjkWuCf8/TtVr78L+La7PxsGiG8DZ+RYVul0ObYamp7C2AXdXo1c++DGQS76+kWj7vgv+vpFLU/5rLdqu1q3JQuMmz5crZ3Ta/MMFocDT1Y93x4eq7YeeG/4+7uBg8xsSsr3YmaLzWyNma3ZuXNnZgWXHhRTqbc0b79M3V5NaPTaP/qtjzK8b3jUseF9w3z0Wx9tqRxpg0Cj/fllW8fQqHavKckzWES1s2vb1x8HTjOztcBpwE+BvSnfi7vf5O7z3X3+tGnTWi1vTxgagtNOa3AiUYlzC+Xq6ad7OgFgo9e+68VdDR1P67X9r008p9H+/G5YvNfu/zbzDBbbgSOqns8AdlSf4O473P097j4PuDw8tjvNe6U5AwPw/e8HP1PrlqmrTQS3Mk5hbJcyXPvgxkGeH34+8jUL/9fMIHY33AS0+98nz2DxEHC0mR1pZv3A+cAd1SeY2VQzq5ThMmBF+PvdwO+Y2evM7HXA74THpAVDQ7ByJYyMBD87ra5vWVzQqyO3KYwd0Fpr9NrjssXGHU+jXuXdyH4WtcoQCFvV7um1uQULd98LXEJQyT8K3O7um8zsGjM7Jzzt7cBjZvZjYDqwPHzvs8AAQcB5CLgmPCYtGBgIAgXAvn2wbFkTXVJllVPlm9sUxg5orTV67defef2YvSTGjxvP9Wde33QZkirvZruQyriOoVHtnl6rdB89YmgIjjoKXnpp/7G+viB4LFkCN9zQpoKUMXVHwjTWpqcwlvFaG9TotWc93TOvfbbbmXspT1n8vZUbSkZZuhRuvhmGh8e+NnEibN7cphmdra4vyKMC7oJKvVulXWMBjed/atc6hrJTsJBR5s2DdeuiX+vvhw99qE2ti2aCRVxlnvb90tFqK/Xnh5+PnGHVZ32seveqnqzwW6FgIbGiuqTa1rpoJljUe0+a90tXqdfa6MSupKKVYQW3lFT1QHfFvn0NTqcVKUgl/1Of9Y15rdOmv3YSBYse9MADY8cuhofh/vuLKY9IoxbMWcCIR49PdNL0106iYNEtGshDtHZt9KzNtWvbUM4OWF/Qki7IB1WEZlJvdMP0105yQNEFkIx0Sh6ivGYXlSXYdMq/Q4nUjkFU1k0AY8Yeqge7D514KP19/aPyURWdxrubqWUh5RJ1Zx5n+vRSLmaTxqRNvVGbz2nXi7twd6ZMnNLRe1d0CrUspFzq3YFrtlNXSpt6IyqovDLyCgf2H8gzf/FMbuWTgFoWIlKotGMPcSu5067wltYoWIj0iLLu35A2x1HUVNl6x4swuHGQqddOxa427Gpj6rVTS/N3bpWCRbfo9llGnaKk/w5l3r8h7b7Z+3xf5PujjhcRGAc3DnLh1y4ctbp814u7MtktsAy0glsaMjQE558Pt92W02zQduxN3YO5oOIS8nXSvtVpr6GoJIH1kh6W+e+sFdySToPrApraPKmR7x0X859klnfmnTK9NcM1G92wf0Pa7qqiNjaq97fspL9zHAWLHjRqa9UGKs7EzZMaqdzivndkpPT7PLRNhkGtLAvYWukeSttdVVRgrPe37IaFggoWPajZ1kHt5klj3t8pd+wdYnAOzL4Uxl0Z/Byc0/xntXujnChpxk2SgsmCOQvYcukWRq4cYculWyK7lYoKjMtPXz5m8yeA/r7+rlgoqGDRY2pbB+uZw2l8l6eo381TeV8lp9TwcI9szVpQ+o7BjYMsPhu2HgJuwc/FZzcfMNLelecpqXsoq0H4ogLjgjkLWHneylHbyE6ZOIUV565o+e9chplsGuDuMdWbIPX3w9HDG3mUY7mYz3EDl4w+ueq/jajNk8bsg9HI4HQ7BrLjdEA5YwdzfwFbrsv3u/My7upxkftmVzYtanUQvjYVCMCzLz7b8Rsb5T1grwFuGSOqdbCJ4xmhj5VcWLd1US9T7dAQnNb/QGLrpDTKNL01bLkMnmDM/jNj3FXBz62/iJ5Vs21ym8uXoaTuoVbGGqJSgby490Vufc+tsd1VnaKoAftaChY9JGofi4p9jGOAK/YfqKk462WqHRiA779y8uj3Jymywn7qqfIMoj/9NINzGNPlFNeembmbwtdsNCupe6iVsYayVKh5KMtMNgWLLHRIWuqo1kGlWhpmAisn/glPDTVWcb46BlKvdRJVuZWpwi7Y5afDnv7Rx9yC7plqk8ZPYvlFqzv2b5Q0btLKWENZKtQ8lGUmm4JFFjpkFlB162DJkmDMoVozu+WNmiFV2zqpyKJy65CA3Iy4riXHCx2QzkO92UytDMKXpULNQxlmsoEGuLNR5GBtk+bNg3Xrxh6fOzf9JkiRe3mzh80cxWFUBcos/gZF/Y3z/l4zZl8adD3VKvOq37KoDGpv3b0Vw0YNoHfTftzVg/dZD9hrgFvqymK3vMi9vONaF2nFtSCy/ry0LZI64wOjBqU/3tf0dMbl98Ckmu7BScOMunMsw9TJsqke1IagJVbpuuuWllhFmvUleVOwkKZFzpBiAvfztv0HGh2MbabrLi4IxOWAauR7asdWQmMGpQ8aaS4x3/TpLNgIN30jmBZrHvy86d6DX60QypwEsEhRg9qVrrvaClXBtnXqhspCB3ZDlVYrrYiKyt88zWc1mjww/Mx2dh11QxLAVsR1wSSt26h+fx7rFPLsGmondUO1U5nm7UtjmpyEEDconcfsm26e6ZOkXqsq7aB2HtNqe7G1l2uwMLMzzOwxM3vCzJZFvD7TzL5jZmvNbIOZnRUeH29mq8xso5k9amaX5VnOlmkaaLlUxilyNHN3zPEcZt+UYaZPUd049Sr6tLOE8gi23byuI05uwcLM+oAbgDOBY4ELzOzYmtM+Adzu7vOA84HPhsd/H3iNu88BTgL+2Mxm51XWshmVFbaB10qv3mBzmgo+YuwgUhumLEcOSuc0nbHoqZNF3kXXq+jTTrXNI9j2Ymsvz5bFycAT7r7Z3YeBLwPn1pzjwMHh75OBHVXHX2tmBwATgWHglzmWtVTqZYXNbD+JUFuDT73B5qQKvixdemE5xgxKPzcut9k3aSvFvO7+i7yLTqro08wSyiPYlqG113bunvgAXguMC39/E3AOMD7hPe8DPl/1/APAZ2rOeQOwEdgO/Bw4KTw+niC47AReABbHfMdiYA2wZubMmd4NduxwnzAhuH2eONF9aCj+tXXr3E89dfQ5jVqyxH3cOPelS1sve6LozrrkR5Tp06PPjTve6Od3mNUbVvuk5ZOcq3j1MWn5JF+9YXXq98/69Cy3q8xnfXrWqPfZVTbqcysPu8ryupxR5Wrluqo/J+76iixXGQBrPEUcSNuyuA+YYGaHA/cAFwK3JLwnqk+htv/gAuAWd58BnAXcambjCFol+4A3AkcCHzOzo8Z8mPtN7j7f3edPmzYt5aWUW709I2pfW7CgtVZG4mZGZZblOFEXrApv5e4/qZupyLvorFKrx7VAKq0xu9o44JoDsKstVausDCnf2y3V1Fkz+6G7n2hmHwEmuvu1ZrbWg7GGuPecAlzl7u8Kn18G4O6frDpnE3CGuz8ZPt8MvBW4EnjQ3W8Nj68A/t3db4/7vm5IUR65InoibN4c1IO1r9We02gdV5uufFS68Tw0O+jc6PTjtFOZu2jKc9pppFGSpua2OvW0rFNMo66roptWfyfJeuqshZX/AuDO8NgBCe95CDjazI40s36CAew7as7ZBpwefsExwASCrqdtwDss8FqCAPKjlGXtWJErosPWRd2MsU3kdOrqzYx6cCpzK3f/SYO1rdxFl3mKaVRrrKLbZzY1I22wuBS4DPiqu28Ku4S+U+8N7r4XuAS4G3iUYNbTJjO7xszOCU/7GPBhM1sPfAn4YNiHdgNwIPDfBEFnpbtvaPDaOk69PSOiM8buP6fRir5eYMpFvWbP9OnZVvA9OJW5mUHcShdMVIsERgeaZtNNlHmKadLMpXbPbCr7KvOk1gEA7n4vcC9AOKbwjLv/aYr33QXcVXPsr6t+fwT4HxHve55g+mxPSZuXKWrXukpFn7YbqV5gykW92U5dXIm3S6XyTtvdU68LBrKbmlvmKaYzJ8+M7H6rfr1dav89Ki0woDRdYalaFmb2RTM7OOwSegR4zMz+PN+iSZwsKvosEgkWpovTlSeqc+2N3P3X64LJcrA278HxVu7Go1pjFXHBshunJ6eVthvqWHf/JXAeQUthJsFUWClAx1X0WVfiWe0f0oljGxlde9ydvWGZZjXNc0Fhq+Mh1WMxAH3WB8QHy7jvW3rn0pYDSJlbYBVpZ0NtAuYCXyRYK3Gvma139zfnXcC0umE2VNdKszI7q8/rsFlMDcvo2tuZnDCv2VDtTrAY931Z7KNRZLLIrGdD3QhsIVicd5+ZzaKHVlSL5KagLrV2phDJay+Gdt+Nx31u7QSBPa/sYdFXF7XcJVbEbnj1pAoW7v5P7n64u58VLvrbCvx2zmWTXpGmoqyuVLtJQVvydsOisnYvFmzkc/f5vqa7xMr675G2G2o68DfAG939zDAh4CnufnPeBUxL3VAl1s4KPs9uqLjNlBrdE6Nao91KvdwFVyNuseCiNy/irsfvyrzbK+r7aruganXCniNZd0PdQrBe4o3h8x8TrL2QTtWNM4ryHpguqBUwSicOyuck6m580ZsXsWr9qlGD0Au/spCp105lcONgS7OZor7v4vkXx86ognINULcqbcviIXd/S3WKDzNb5+5zcy9hSmpZNKidd6j1tjfNSpZlbqa8zX6/WgqZihsoBhg/bjxmxvC+/fPOs9oxb9FXF7HP9415rRdbFi+Y2RTCRIBm9lYgZvsXKYNS7XsRt6K6rGoCxeCcYBvVcVcGPwfnFFQuSVTvTv6VkVdGBQrIZi3DgjkLWPXuVaUfoG5V2mDxvwnyOv2Kmf0n8AXgI7mVSlqW9b4XvWpwDiw+O9hv2y34ufjsDAOGupViNdNl1MzgdhZdRZ0wQN2qVN1QAOFGRL9GkHr8MXd/Jc+CNUrdUPtVZ6+NzUhbhu6PrLqnWhlgjlL1t5l9aRAgas36BWy5rupAmVtKHajZTLdJaUyidEJXUZ6y7oaCYI+JNwMnEmyR+ofNFk7yVW9PjHbsT51aVPdUvTvtuO2Lcuxr2zY5xXG1AjLXSPqL6hbI5fdczqI3L2LKxCljzhs/bjz9ff2jjnVbV1Ge0uaGuhX4FPCbwFvCR2Ik6iWRYwRtnHFU+f716xNSjze7fWm7rqVkGWNnxozMzTxkVuFl62ZpF9xFpeBYtX4V1595Pavfs3pUt9DK81ay4twVXd1VlKe0s6EeJcgPVdq2dtHdUEuXwo03wsUXV2V+bWNXT+X7jzkGHn98dKLBURsbNVumMnRbNavR9RFV11oZs9hTdUPaSxvjFCVt+osi02R0i6y7of4b6OAJ+PkqenvS6u9/5JE2px7vBC2sj1iwEW76RjBGYZ5tRtZO0u69FtKmv+iEBHzdItV+FsBU4BEz+y/g5cpBdz8n/i29I2qMINPtSRPujKu/f/z4NmyP2mMWbAweAPiWIotSiCL2Wki7P0fcnhTt3IuiV6Tthjot6ni4KVIpFNUNVW/f7MPekFHXTZ0uoKEdXnff7vPPh9tuqxpaaKY7KWnWUtm7oRoZ0K+M2WSd1qODlbmrp9X9wSX7bqiz3P3e6gdwVmtF7A5t3560xrJl8PLLo49V79s9Zq1FM/P625nOomhPP126QfailbmrpxfWN5RF2mDxzohjZ2ZZkCK1stq57q51bVhwdeedY2/sh4fh3ntjxlGyrgg1bbRU8hhbaHd210bllQJdRqsbLMxsiZltBH7dzDZUPX4CbKz33k7SymrnurvW5XyHOsRhvPBC8PvEiUHQq3zFqafWWWuRpHaabD2dcLdd4oCWZeXe6s5xcTphrwXJX1LL4ovA2cDXw5+Vx0nu3hXhu+iZTI0a4jBO47s8xXQGuCIyIFSuKXatRZJu63aKCtolkFXlXgk4C7+yMJd9nLPo6mn3bCrJXtoB7rcCm9z9ufD5QQTrLn6Qc/lSa3aAe+lSuPnmoEIdtR6hTKoGmJdyAzfyx3yAL3Ab5/MSE189rTKwfc01+6+poqFra2RAuCQVb8NKsG4ki4HjNOktDGPkypHY1/OmQehyy3qA+1+A56uevxAe62gt34G3S3hnPLTDWTlhKSP0sbrvQvaNnzjqtErrou44Spay6t7pxr01Ushi4DgqLUatoscWGkndIeWVNlhY9eptdx8h/RqN0ip6JlOjatdzvFKTyrESEOqOo7SqZuwlk1ToRWwqVIJsr1kMHCcFljKMLZR5NpWklzZYbDazPzWz8eHjo8DmPAvWDm27A89AbSsIxg5qZxYQGijTSSfB975X3gAbqwTTY7MYOK4XWAxj0ZsXFd7VU/bZVJJO2mBxMfA24KfAduA3gMV5Fapdcr0Dz1jaVlAmd/op77qXLdsfrErZfVdyWQwcRwWcCse56/G7sipu0zSbqjuk3s+i7IpOJJi3efNg3bqxx+fOHR3cIhMa5mBoCI44IghYAP28zIf4PDdwyf6T0q54LsFgcycb3DjIwq8sjHyt6MHtisGNg4mpO6QYaQe4086GmgD8EXAcMKFy3N0vSnjfGcD1QB/weXf/25rXZwKrgEPCc5a5+13haycANwIHAyPAW9z9JWJ0e7BII9WmRxlZtAi+8IXRxyayh80cxWFUjTWkqewVLFrWyswqVeS9LevZULcSZJ19F3AvMAN4LqEAfcANBCu9jyXYMOnYmtM+Adzu7vOA84HPhu89AFgNXOzuxwFvB0q1M1+U6i6gIvbArrvpUYaGhmAwYpr8PvoY4IrGP7AEg82drtmunrwW8kn3SRssftXdrwBecPdVwO8CSbsQnww84e6b3X0Y+DJwbs05TtByAJgM7Ah//x1gg7uvB3D3Xe6+L2VZM9NohV+9Erzde2C3cxrwwMD+7qdqw7yG+3lb4x9YgsHmomS1WK3Z8Y9umNaqBX/tkTZYVO7qf2FmxxNU7LMT3nM48GTV8+3hsWpXAQvNbDtwF/CR8PibADezu83sh2b2F1FfYGaLzWyNma3ZuXNnyktJr5EKv3ol+IoVwaOdq8LbOQ34gQeij89lLWs5sfUv6KB1F61UVFnf1TeTI6nTp7WqZdQ+aYPFTWb2OuAK4A7gEeDvEt4T1RFd2wF9AXCLu88gyGJ7q5mNI1jD8ZvAgvDnu83s9DEf5n6Tu8939/nTpk1LeSnpNJoGpLqyHh7evwaiXoXdaldV9fvbOQ14zCwyDMeyCRRQzLqLJrRaUZXhrr7Tp7WW4W/YK1IFC3f/vLv/PExPfpS7v97db0x423bgiKrnM9jfzVTxR8Dt4Xc8QDB4PjV8773u/oy77yFodWRUE6XTSP9/bRfQyMjowBEXbFrtqqp+f6HTgHt0zKHViqoMd/WdPq21DH/DXpEqWJjZFDP757BL6GEzu87MpiS87SHgaDM70sz6CQaw76g5ZxtwevgdxxAEi53A3cAJZjYpHOw+jaA10xaN9v9HdQFVi1sP0UoCw7j3J7ZW8uji6dExh1YrqjLc1Xf6fhBl+Bv2irTdUF8Gfga8F3gf8AxwW703uPte4BKCiv9RgllPm8zsGjOrbMf6MeDDZrYe+BLwQQ/8HPhHgoCzDvihu9/Z2KU1r5H+/6GhYAppbRdQtcr+EnHf0czYQtz7o1orowJIh3TxdIJWK6qy3NV38n4QZfkb9gR3T3wAD0ccW5Pmve16nHTSSZ6VuXOjbpOD47WWLHEfN8596VL3HTvcJ0wIzp040X1oaPTrFdXnVR6V89OIe/+6dWO/v7aMkRdWeZRFI2WcPj36vOnTcy/m6g2rfdLySc5VvPqYtHySr96wuqHPmPXpWW5Xmc/69KyG3isB/Q1bk7YuTxssPkXQjTQufPwBcHWa97brkWWwSKs2OCxa5N7fHzzv7w+ex1XelfMqj/7+0QGlnrj3H3fc6O+PDGDEVK5lChaNBICCg58qKul0WQeL5whWUe8NHyPhseeAX6b5jLwfRQSL6kp7/Hj3vr7RdVVfX3C8Nhg00nKJEvd+s9HPowLYUj4TW7nu2OF+6qnpWzil0AktJZESSxsslBuqSdWpNdLKMwVH9SZOFf39wXhG9QK6yJQclc9Y4m3JK5WZqk2hInXJf9sieco63QdmdoKZnWNm76k8WitiZ0uaARUlzxQccessaldax6XkGJo6p6O2lwU0KC/SRmmnzq4AVhDMhqr/Ihf1AAAQTElEQVTsw/17OZar9KIqZwiywLoHP2vluVdG1DqLyDLwGu6f+ydjTh74/Q1tyStVVwet3AalmZDekjbr7CPuXpsEsFS6Kevs0BCcfz7cdlt76smoLrW8s9ZGajT7bL3z06ZHb5L2lZZukXU31AMRGWMlJ+1OQthp28umknM/mtJMSK9JGyxWEQSMx8xsg5ltNLMNeRasE2WRlrzVld3N6KTtZctCaSak16QNFiuADwBnsH+84uy8CtWpsmgRxK3MznN/jE7aXnaUAnNSKc2E9Jq0wWKbu9/h7j9x962VR64l6zBZtAiGhoLU5lE5qdrdNdURCsxJpTQT0mvSBosfmdkXzewCTZ2NlsUudQMD+1ObV+zbB8uWZds1VcQufql0UPbaTk/AJ9KotLOhVkYcdk/Yg7udipwNldVsouOPh02bxh6fMgWeey5oafT3w4c+1NqiuaVL6azFdyKSm0xnQ7n7hRGP0gSKomU1m+jUU4NgAMHPpUthxw544YVstksdGoJTTmlsF7/StkJEpK3SLsqbYWZfNbOfmdnTZvZvZjYj78J1iixmE8XtoXHZZdlNax0YgAcfTLeLX/V7NFYiImnHLFYSbFz0RoJ9tL8RHhPSzSZKukOPa53ceWc201org+eQbhe/yns6LgWIiOQibbCY5u4r3X1v+LgFyHbT6y6XdIce1zqZMSObaa1Rg+dQv3WRxaC9iHSHtMHiGTNbaGZ94WMhsCvPgnWTNHfoWa91qG7JVH9/reFhuP+za8eMxDe6tayIdLe0weIigg2PngKGCLZWvTCvQnWb2jv0E0/MptKt17VV3ZKJ6uLq5yWWcgOOsZYTx2Rw7coUIFIqSsTYWdIGiwFgkbtPc/fXEwSPq3IrVReJukMfGgoGrlsV17VV25K5776ILi4mcD9vi/1spQCRPFUSMW7dvRXH2bp7K4u/sVgBo8TSBosT3P3nlSfu/iwwL58idZe4fS9uvbW11sW6dcFaiaiurdqWzGmnVXVtYa8+1nJi7Od3bAoQ6QhKxNh50gaLcWb2usoTMzsUOCCfInWXuH0vWu3SWbgwPoeUxhqk7JSIsfOkDRb/ANxvZgNmdg1wP3BtfsXqHpU79B07YMKE0a81W4mvWzd6pXdtDimNNUjZKRFj50m7gvsLBLvkPQ3sBN7j7rfmWbBuk2UlvnDh2GOVz4oba1i1KgxMHZR/SbqXEjF2ntR7cLv7I+7+GXf/Z3d/JM9CdbK4GUpZDRgPDcEjEX/9ymdFjTUsWQIvvhgGpgIztYpUKBFj50mVSLATlGVb1TyT9A0NwUknwa5dowNPveSC1UkOC9kqVURKLettVSWFvNNjDAwE39FIC0WrsEUkCwoWGcqzYq4EIghaCENDyVNaNTNKRLKSa7AwszPCfbufMLNlEa/PNLPvmNnacG/vsyJef97MPp5nObOQd8XcTCDSzCgRyUpuwcLM+oAbgDOBY4ELzOzYmtM+Adzu7vOA84HP1rz+aeBbeZWxEc1mjc2iYh4agpX/8uLoQPTZPTxlh9UdgNAqbBHJSp4ti5OBJ9x9s7sPA18Gzq05x4GDw98nAzsqL5jZecBmIGLvuPZrNmtsFhXzwACMYKOO7WMcA1wxJqdTNa3CFpGs5BksDgeerHq+PTxW7SpgoZltB+4CPgJgZq8F/hK4ut4XmNliM1tjZmt27tyZVbnHaDZr7I4dcPDBrXdFPfBAkMupWlJuJxGRLOUZLCziWO083QuAW9x9BnAWcKuZjSMIEp929+frfYG73+Tu8919/rRp+W2v0ezA9cAAfO97rWeZXbt2dE6nNLmdRESylGew2A4cUfV8BlXdTKE/Am4HcPcHgAnAVOA3gGvNbAtwKfBXZnZJjmWN1ezAdeV97sHvy8YM74uIdI48g8VDwNFmdqSZ9RMMYN9Rc8424HQAMzuGIFjsdPffcvfZ7j4buA74G3f/TI5ljdXswPXAQHBexerVmrIqIp0rt2Dh7nuBS4C7gUcJZj1tMrNrzOyc8LSPAR82s/XAl4APesmWlDcycF2ZMbV+fdCqqN7GdN++FlsXyukkIgVSuo8Uli6Fm28OgkS91BpLl8LnPhcsmhsehr17R7/e1wfbtyvdhoiUh9J9ZCTtmEX1GMWePWMDBWhBnIh0LgWLBGnHLGrHKOJoQZyIdCIFiwRpxiwqrYrqMQqARYv2r7c49dTgPC2IE5FOpGARoTq1R5pV0HGtisoMqKTV31mWV0QkDwoWERqt3B94YGyrAvbPgMozbTnkH4xERBQsajSzJ8XatTB3bvRr3/xmvvtJ5L2HhogIKFiM0Wxqj7jcUC+8kO9+EtrcSETaQcGiStZ7UuS9n4Q2NxKRdlGwqJJ15Z73fhLa3EhE2uWAogtQJllX7nlPk9XmRiLSLmpZVMl6s6C8p7RqcyMRaRcFixxpSquIdAsFi5xoSquIdBMFi5w0O6VVq7FFpIwULHLQypRWdV2JSBkpWGSkukUQN6V12bL6rQZ1XYlIWSlYZKS6RRA3pfWb36zfatBqbBEpKwWLOtKOHwwNwYoVQUW/YgV861vxqT/iWg1ajS0iZaZgUUfa8YOBgf1ZZ4eHo89PajXUW42tQW8RKZr24I4xNARHHQUvvRTsqb15c/Te2UNDcOSR8PLL+49NmAA/+cn+86s/q6L2M+fNg3Xrxn7+3Llwyilw441w8cXRe3+LiDRLe3C3KO34QXWroqK2dZEmh1Pcauy77tKgt4gUT8EiQiPjB/fdNzYQjIzAvffuf95KDicNeotIGShYRGgkm+upp0J//+hj/f3BGENFszmcNOgtImWhYBGhkZZAnplflYJcRMpCKcojNJK1Nc8Mr0pBLiJloWBRYko1LiJlkWs3lJmdYWaPmdkTZrYs4vWZZvYdM1trZhvM7Kzw+DvN7GEz2xj+fEee5RQRkfpyCxZm1gfcAJwJHAtcYGbH1pz2CeB2d58HnA98Njz+DHC2u88BFgG35lXOItRbZKcFeCJSRnm2LE4GnnD3ze4+DHwZOLfmHAcODn+fDOwAcPe17r4jPL4JmGBmr8mxrG1Vb2W4ss6KSBnlGSwOB56ser49PFbtKmChmW0H7gI+EvE57wXWuvvLEa8VopW7/3qZZZV1VkTKKs9gYRHHanOLXADc4u4zgLOAW83s1TKZ2XHA3wF/HPkFZovNbI2Zrdm5c2dGxU7Wyt1/vUV2WoAnImWVW24oMzsFuMrd3xU+vwzA3T9Zdc4m4Ax3fzJ8vhl4q7v/zMxmAP8BXOju/5n0fVnnhoqTNmdU0nsrKp/hnpw/SkQka2XIDfUQcLSZHWlm/QQD2HfUnLMNOB3AzI4BJgA7zewQ4E7gsjSBop3i7v7TdE3VW2SnBXgiUma5BQt33wtcAtwNPEow62mTmV1jZueEp30M+LCZrQe+BHzQg6bOJcCvAleY2brw8fq8yppWvfQbabqm6i2y0wI8ESkzpShvwNKlcPPNoyv1/n644AK47bbmuqZERIpUhm6orlNvu1QNTItIN1OwaEBU9tjKdqnKDCsi3UzBokUamBaRXqBg0SINTItIL1DW2RYpM6yI9AK1LEREJJGChYiIJFKwEBGRRAoWMbSvhIjIfgoWMbSvhIjIfgoWEar3lVixAk45RS0MEeltChYRqhfaDQ/Dgw+qhSEivU3BokZtZtlK0FixQq0LEeldChY1otJ3QBA88mxdNDKgrsF3EWk3BYsaUek7IP99sRsZUNfgu4i0m4JFjUpm2SVLgr0qquWVILB6QD0pIDVyrohIVhQsYrQzQWDcVq2tnisikhXtlFewoSE46qhgl72KuN32GjlXRCQN7ZTXIRrZD0N7Z4hIURQsCtZId5f2zhCRomg/i4I1sh+G9s4QkaKoZSEiIokULEREJJGChYiIJFKwEBGRRAoWIiKSqGsW5ZnZTmBr0eXI0VTgmaIL0Qa9cJ29cI3QG9fZDdc4y92nJZ3UNcGi25nZmjSrLDtdL1xnL1wj9MZ19sI1VqgbSkREEilYiIhIIgWLznFT0QVok164zl64RuiN6+yFawQ0ZiEiIimoZSEiIokULEREJJGCRQmZ2Qoz+5mZ/XfVsb83sx+Z2QYz+6qZHVJkGVsVdY1Vr33czNzMphZRtizFXaeZfcTMHjOzTWZ2bVHly0LMf69zzexBM1tnZmvM7OQiy5gFMzvCzL5jZo+G/24fDY8fambfNrPHw5+vK7qseVCwKKdbgDNqjn0bON7dTwB+DFzW7kJl7BbGXiNmdgTwTmBbuwuUk1uouU4z+23gXOAEdz8O+FQB5crSLYz9t7wWuNrd5wJ/HT7vdHuBj7n7McBbgT8xs2OBZcA97n40cE/4vOsoWJSQu98HPFtz7P+6+97w6YPAjLYXLENR1xj6NPAXQFfMvIi5ziXA37r7y+E5P2t7wTIUc40OHBz+PhnY0dZC5cDdh9z9h+HvzwGPAocTBP5V4WmrgPOKKWG+FCw600XAt4ouRNbM7Bzgp+6+vuiy5OxNwG+Z2Q/M7F4ze0vRBcrBpcDfm9mTBC2nTm8Jj2Jms4F5wA+A6e4+BEFAAV5fXMnyo2DRYczscoLm8GDRZcmSmU0CLifosuh2BwCvI+jK+HPgdjOzYouUuSXAn7n7EcCfATcXXJ7MmNmBwL8Bl7r7L4suT7soWHQQM1sE/B6wwLtvgcyvAEcC681sC0E32w/N7LBCS5WP7cBXPPBfwAhBQrpusgj4Svj7vwIdP8ANYGbjCQLFoLtXru9pM3tD+PobgI7uVoyjYNEhzOwM4C+Bc9x9T9HlyZq7b3T317v7bHefTVChnujuTxVctDx8DXgHgJm9Cein8zOX1toBnBb+/g7g8QLLkomw9Xcz8Ki7/2PVS3cQBEfCn19vd9naQSu4S8jMvgS8neBu82ngSoI+39cAu8LTHnT3iwspYAairtHdb656fQsw3907uhKN+be8FVgBzAWGgY+7+38UVcZWxVzjY8D1BF1uLwFL3f3hosqYBTP7TeB7wEaC1iDAXxGMW9wOzCSYxff77h41eaOjKViIiEgidUOJiEgiBQsREUmkYCEiIokULEREJJGChYiIJFKwEBGRRAoWIjkys76iyyCSBQULkRaY2dfM7OFwf4PF4bHnzewaM/sBcIqZnRQmDHzYzO6uSg3xYTN7yMzWm9m/hfmxREpJi/JEWmBmh7r7s2Y2EXiIIMXFM8D73f32MJfQvcC57r7TzN4PvMvdLzKzKe6+K/yc/wM87e7/XNS1iNRzQNEFEOlwf2pm7w5/PwI4GthHkGwO4NeA44Fvh4ll+4Ch8LXjwyBxCHAgcHe7Ci3SKAULkSaZ2duB/wmc4u57zOy7wATgJXffVzkN2OTup0R8xC3Aee6+3sw+SJBfSaSUNGYh0rzJwM/DQPHrBPtT1HoMmGZmp0CQ4trMjgtfOwgYCruqFrSlxCJNUrAQad6/AweY2QZggGC721HcfRh4H/B3ZrYeWAe8LXz5CoKMpd8GftSWEos0SQPcIiKSSC0LERFJpGAhIiKJFCxERCSRgoWIiCRSsBARkUQKFiIikkjBQkREEv1/829gdIJxCMAAAAAASUVORK5CYII=\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "data = np.loadtxt('seeds_dataset.txt')\n", "x = data[:,[0,2]]\n", "y = data[:,-1]\n", "\n", "plot_data(x, y, 'Data')" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Multiclass classification!" ] }, { "cell_type": "code", "execution_count": 20, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "[1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1.\n", " 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1.\n", " 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 2. 2.\n", " 2. 2. 2. 2. 2. 2. 2. 2. 2. 2. 2. 2. 2. 2. 2. 2. 2. 2. 2. 2. 2. 2. 2. 2.\n", " 2. 2. 2. 2. 2. 2. 2. 2. 2. 2. 2. 2. 2. 2. 2. 2. 2. 2. 2. 2. 2. 2. 2. 2.\n", " 2. 2. 2. 2. 2. 2. 2. 2. 2. 2. 2. 2. 2. 2. 2. 2. 2. 2. 2. 2. 3. 3. 3. 3.\n", " 3. 3. 3. 3. 3. 3. 3. 3. 3. 3. 3. 3. 3. 3. 3. 3. 3. 3. 3. 3. 3. 3. 3. 3.\n", " 3. 3. 3. 3. 3. 3. 3. 3. 3. 3. 3. 3. 3. 3. 3. 3. 3. 3. 3. 3. 3. 3. 3. 3.\n", " 3. 3. 3. 3. 3. 3. 3. 3. 3. 3. 3. 3. 3. 3. 3. 3. 3. 3.]\n" ] } ], "source": [ "print(y)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Fit a (multiclass) logistic regression model" ] }, { "cell_type": "code", "execution_count": 12, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "from sklearn import linear_model\n", "\n", "clf = linear_model.LogisticRegression(C=.1, solver='lbfgs', multi_class='auto') # C = 1/lambda --> regularization!\n", "clf.fit(x, y)\n", "plot_classifier(x,y,clf,'Logisitic Regression')" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Fit an LDA model (Linear Discriminant Analysis)\n" ] }, { "cell_type": "code", "execution_count": 13, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "from sklearn.discriminant_analysis import LinearDiscriminantAnalysis\n", "\n", "clf = LinearDiscriminantAnalysis()\n", "clf.fit(x, y)\n", "\n", "plt.figure(figsize=(11,4))\n", "plt.subplot(1,2,1)\n", "plot_classifier(x,y,clf,'LDA')" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Fit a (Gaussian) Naive Bayes model" ] }, { "cell_type": "code", "execution_count": 21, "metadata": {}, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAU8AAAEWCAYAAADmTBXNAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADl0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uIDMuMC4yLCBodHRwOi8vbWF0cGxvdGxpYi5vcmcvOIA7rQAAIABJREFUeJztnXu4neOZ/z/fHLY47pCNtIhoqzPSUtTQVlMqajCjenDKaKdSFRo6w08Nqo6paasddW6FEtWIJkLLlKIRtRUt4hCEMBqEEGFnkxKxk/v3x/Ou5N1rv+9a71p7nff9ua517bWe9/TsRb77fp77JDPDcRzHKY1B9Z6A4zhOM+Li6TiOUwYuno7jOGXg4uk4jlMGLp6O4zhl4OLpOI5TBi6eTh8k3SbpG/WeRxKSlkv6UL3n4Tgung2ApMMk/UXS3yUtid5PkqR6zMfM9jOzayp9X0lHSDJJJ+WNL5K0Z8a5bWBmz1d4XntKWh0J83JJL0s6u5LPcFoPF886I+lE4ELgJ8BIYHPgGGB3oK2OU6sWbwInS9qo3hPJ45VImDcAPgscKelL9Z6U07i4eNYRSe3AOcAkM7vBzN62wCNmdriZvRed9y+SHpH0lqSXJJ0Vu8eekhbl3XehpL2j97tKeii69jVJ50fjwyT9WtIbkpZJelDS5tGxuyV9K3r/YUl3RectlTRN0vC8Z31X0uOSuiX9RtKwAr/2fOB+4ISU72RXSfdHc1os6RJJbbHjJukjkj4l6VVJg2PHvizp8ej9IEmnSPq/aO4zJG2S5b+Lmf0NuA8YE7v3hdF3/5akhyWNjcZHSnpH0ojYuZ+U9LqkodHnb0qaL6lL0u2Sto7GJeln0WqjO/oOP55ljk79cfGsL58G1gF+V+S8vwP/DgwH/gX4dglW0YXAhWa2EfBhYEY0/g2gHdgKGEGwdt9NuF7AD4EPAttF55+Vd84hwL7ANsAOwBFF5nQ6cEKKmK0iCGsH4fsZB0zKP8nMHiB8L3vFhv8NuC56/x/Al4A9orl3AZcWmRcAkrYlWP4PxIYfBHYENomeMVPSMDN7Fbib8B3k+BpwvZm9H/13+h7wFWBToBOYHp23D/A54KOE/7aHAm9kmaNTf1w860sHsNTMenIDku6LrK53JX0OwMzuNrN5ZrbazB4n/OPbI+Mz3gc+IqnDzJZHopMbHwF8xMxWmdnDZvZW/sVm9pyZ3Wlm75nZ68D5Cc++yMxeMbM3gVsIIpOKmT0K3AGcnHDsYTN7wMx6zGwhcHmB33U6MB5A0obA/qwVpqOB08xsUWTBnwUcJGlIyr0+GH3vbwELgL8A98bm9WszeyOa1/8Q/uj9Q3T4GoJgElnC44FrY/P4oZnNj/47/zewY2R9vg9sCPwjoOicxSnzcxoMF8/68gbQEf8HbWafMbPh0bFBAJJ2kzQnWgp2E6zEjozPOJJg2TwdLc3/NRq/FrgduF7SK5LOyy0z40jaTNL1kRPlLeDXCc9+Nfb+HWCDDPM6g2BBj8x73kcl/W+0JH+LIDZpv+t1wFckrUOw7Oaa2QvRsa2BmyJBXEbYLlhF2FNO4hUzGx5Z6MMJVvgap5mkE6Old3d0v/bYvH4HjFGIAvgC0G1mf43N48LYPN4kWPNbmNldwCUEi/g1SVMacC/YScHFs77cD7wHHFjkvOuAm4GtzKwd+AXhHyCEpet6uRMjy2fT3Gcze9bMxgObAT8GbpC0vpm9b2Znm9kY4DPAvxK2BvL5IWDADpGwfC327LIxs6eBGwlL2jg/B54Gto2e972055nZU8ALwH70XrIDvATsFwli7jXMzF7OMLfu6F4HAET7mycTluYbR3/cunPzMrMVhO2Qw4Gvs9bqzM3j6Lx5rGtm90XXXmRmnwQ+Rvgj1ysSwWlcXDzriJktA84GLpN0kKQNIkfHjsD6sVM3BN40sxWSdiUIRY4FwDAFp9JQ4PuEJSUAkr4maVMzWw0si4ZXSfq8pO0jsX2LsIRclTDNDYHlwDJJW1DZf9xnAxMIll78eW8ByyX9I/DtIve4jrC/+TlgZmz8F8C5MefMppKK/ZEiOncD4DDgydiceoDXgSGSzgDyLcRfEfZ6v0iwzuPzOFXSx6J7t0s6OHr/T9GqYijhj+AKkv8bOA2Ii2edMbPzgP8H/BewBHiNsM93MsHjC8Fhco6ktwnL3Rmx67uj41cCLxP+Eca97/sCT0paTnAeHRZZSiOBGwhCNR/4E73/0ec4G9iZYGn9nmAtVoTIq30tvf9QfJfwx+Ft4ArgN0VuMx3YE7jLzJbGxi8kWOt3RN/bA8BuBe7zQUVxngRrdhOCJQlhe+M2wh+qFwgi91Le7/JnYDVh62BhbPwmgsV/fbQN8QTBUoYgwFcQnFkvELZqflrk93UaBHkxZMepDJLuAq4zsyvrPRen+rh4Ok4FkPRPwJ2Efem36z0fp/r4st1x+omka4A/Ase7cNYHhaSPv0p6TNKTSkivlbSOQhLHcwop0KNjx06Nxp+R9M+ZnumWp+M4zY4kAeub2fLIAXcv8J+xuGYkTSJEjRwj6TDgy2Z2qKQxhL3zXQkJFX8EPmpmBZ13bnk6jtP0RGnNy6OPQ6NXvmV4IGtjd28AxkWieyAhI+y9yIn5HEFIC5KWbdF0dHR02OjRo+s9DccZkDz88MNLzWzT4mf2Zscd97W3315a9Lznn3/4SUKUQ44pZjYlfk4Udvcw8BHgUjP7S95ttiCKkjCznijhZEQ0Hk/FXRSNFaRlxHP06NE89NBD9Z6G4wxIJL1Q/Ky+vP32Un70o+L/bg85RCvMbJdC50TL7B0VCtfcJOnjZvZEfJpJlxUYL4gv2x3HaSmi5JO7CTHOcRYRCtsQpUS3E9Jl14xHbAm8Uuw5Lp6O4zQ9UQbZ8Oj9usDehDTfODcTqokBHERIrLBo/LDIG78NsC3wV4pQVfGUtG/k+n9O0ikJx7eWNDuqY3i3pC2j8R0Vajo+GR07tJrzdByn6fkAMEehnuuDwJ1m9r+SzpH0xeicXwIjJD1HyOo7BcDMniRk7T0F/AE4tpinHaq45xlt3l5KqDKzCHhQ0s1RMYccPwV+ZWbXSNqLUITi64TKPP9uZs9K+iDwsKTbI3PccRynF1Gpxp0Sxs+IvV8BHJxy/bnAuaU8s5qW567Ac2b2vJmtBK6nb/WgMcDs6P2c3HEzW2Bmz0bvXyHkfJfsyXMcx6kW1RTPNWEBEUnu/8eAr0bvvwxsqFg7AwhtGQi9fP6vSvN0HMcpmWqKZxb3/3eBPSQ9QqgW/jKh9Fe4gfQBQtWdCVFJtd4PkCYq9Od56PXXX6/czJuZkSNB6vsaObL4tY7jZKaa4lnU/R+1bviKme0EnBaNdQNEFbV/D3w/nmKVd/0UM9vFzHbZdFNf1QPw2muljTuOUxbVFM8HgW0lbaPQ/fAwQkjAGiR1SMrN4VTgqmi8DbiJ4EyKF7h1HMdpCKrmbY/Sn44jFJIdDFxlZk9KOgd4yMxuJhSx/aEkA+4Bjo0uP4RQGXyEpCOisSOixmGJdHXBzBrJ7ME0qZ7X6gsqg5mJPlCnXhyc7JR2YlQ1PdPMbgVuzRuLhw7cQEjQz7/u1yRXNXccx2kIWia33eknRx0F3d19x9vb4Yoraj8fx2lwPD2z1WhvL208R5JwFhp3nAGOW56thluJjlMT3PJ0HMcpAxdPx3GcMnDxdBzHKQMXTydQrqPJcQYo7jByAu5ocpyScMuzDGZ69oXjDHjc8nScjHTO62T67Om80f0GI9pHMH7ceMZuP7be03LqhIun42Sgc14nl99yOSvfXwnA0u6lXH7L5QAuoAMUX7Y7Tgamz56+RjhzrHx/JdNnT6/TjJw4kraSNEfS/Kj32X8mnHOSpEej1xOSVknaJDq2UNK86FimHuZueTpOBt7ofqOkcafm9AAnmtlcSRsS+p7dGe+ZZmY/AX4CIOkA4AQzezN2j8+b2dKsD3TL03EyMKJ9REnjTm0xs8VmNjd6/zYwn75tf+KMB/q1bHDL02kJDhh5FMNe61vEZMXm7dzyav/DsMaPG99rzxOgbWgb48eNz3wPdzjVBkmjCZ00/5JyfD1gX+C42LABd0S1hS83synFnuPi6bQEScJZaLxUciKXE78N1t0Aw7jkxkuYPnt6qhDmBHNpd+/VoDucSqYjby9ySpLASdoAmAUcb2ZvpdzrAODPeUv23c3sFUmbAXdKetrM7ik0IRdPx8nI2O3HMnb7sZk97/nn5ZNzOLl4ZmKpme1S6ARJQwnCOc3Mbixw6mHkLdmjFueY2RJJNxFapxcUT9/zdGrOtGWdjF4wiUFPHcroBZOYtqyz3lMqiTTP+8U3XsykCybROa8z9bx83OFUGSQJ+CUw38zOL3BeO6FT7+9iY+tHTiYkrQ/sAzxR7JlueTrVIaUy/bRd12Xiv6ziHQui8kLPUiYuvpwj5zXP8rWQ4MWt0CzC6A6nirE78HVgnqRcr7PvAaMAzOwX0diXgTvM7O+xazcHbgr6yxDgOjP7Q7EHung61SGlAv1pn3mXd6z32DvWXMvXEe0j+uxhxln5/kquvu1qJGFmqeeV6nBy0jGzewFlOG8qMDVv7HngE6U+08WzTGZycHN10WyQHkUvphRp6u/ydcXm7ane9kqT5HnPZ/m7ywveo6O9w73tTY6L50ChQXoUjeqGF4b3He/v8rUS4UhZiXveC1mg+QzSII798rEumC2CO4ycmnLubFhPbb3G1lPzLV/Hbj+Wy46/jO985Tu0DW0rfgFgZi6cLYRbnk5NOXwe8J2jOW3JdF58fymjuuHc2Ss5/MyLgYuBygW214L8+M8R7SN4b+V7vP3u233OHdE+oqEC5RtpLs2Ii6dTHdrbU/dYDx8+lsOHj4VDDkm8tFKB7bUiF/+ZIym+s21oGztvu3PDVGbyKlH9x8XTqQ4DuDJ9kjU6ftz4gpWZai1YjTSXZsXFc6BQwBJ0Kk++NQpwyY2XJJ5bj0B5rxLVf1w8+0HFw5WqGU40gC3BRiEtPrQegfKNNJdmxcWzkWiQcCKgYeJCm5l8h8zO2+7M3Y/d3a/KTJWiElWiBjpVFU9J+wIXAoOBK83sR3nHtwauAjYF3gS+ZmaLomPfAL4fnfoDM7ummnN18qi2kB91VOqhagS214pCVZTufuxu9vzEnsx9dm7dPdxp+7K+35mdqomnpMHApcAXgEXAg5Jujld2Bn4K/MrMrpG0F/BD4OtRafwzgV0IdfYejq7tqtZ8ByxpFma1KfDMeocplRvCk6WK0txn53LZ8ZdVesplkbQv62SnmpbnrsBzUd4okq4HDgTi4jkGOCF6Pwf4bfT+n4E7c/X2JN1JKF7qDWMqTQWEc9qyzhC32fMGo4aM4NzNxodQpDj1Euk8iglj57xOfv67n9OzqgcIFuPPf/dzoHgIT6tUUeqc18lJs0/ixe4XGdU+inPHncvh2x9e72k1HNUUzy2Al2KfFwG75Z3zGPBVwtL+y8CGkkakXNunpL6kicBEgI6OURWbuFOEWHxmWpUkoLeANohwFottnHrb1DXCmaNnVQ9Tb5taVDz7U0WpUQLW87+jF7pfYOItEwFcQPOoZnpmUoWT/BIz3wX2kPQIocbey4RGTlmuxcymmNkuZrbLRhtt2t/5Vp3FXcPY48w9eHXZOsknpIUNNXA4UaiS1NvaesdWctqSxlskZOmAmZQZVGg8zgbrblDweJpDJidYS7uXYtgaUc/VBa0lSd/RO++/w2mzT6v5XBqdalqei4CtYp+3BF6JnxBVb/4KrCmf/1Uz65a0CNgz79q7qzjXsiklXGnyrO249+lNmXzDGC791iN9T2hCL3ZalaQXexpveVrt2MaVPelL9kJVlBopYD3tu3ix+8WazqMZqKbl+SCwraRtJLURSt/fHD9BUoek3BxOJXjeAW4H9pG0saSNCZWdb6/iXKvO4q5hXD1nNKtNXH336HTrs5GYMWPtK4VRKavxUUPKixespqc9SwfMNOuxmFUJ8N7775U1r0YKWE/7jka1+7ZYPlUTTzPrIXSnu53QBnSGmT0p6RxJX4xO2xN4RtICQjXnc6Nr3wQmEwT4QeCcvGZNTcfkWdux2sJuxKpVYuf/2rsxBLSfWwVpVZLO3ayEeMEZM5hp4VVNT/v4ceP7VEDKX0pP2G8CgwcN7nXO4EGDmbDfhH49u9BSvJHaGid9R+sNXY9zx51b87k0OlWN8zSzW4Fb88bOiL2/Abgh5dqrWGuJNjU5q3NlT/hHuXLVYBYvW5dTp23P1cc+VOTqKtPPrYJeVZIKedsbID00S2xjf+IfN1h3g4JFkNOW4o0UsJ6b282zb3ZvexE8w6gGxK3OtYhrO7fmh4fPY+Tw8pZ7ayglG6jczKEsVZIK0SD7uVliG8uNf5yw3wQu++1lrFq9KvWcpKV4owWsj91+LBdtf1Fdnt1MuHjWgPsXjFhjdcZZtVrpzqNSKCUbqNzMoQYRv0YmS4X5tKW4B6z3D0lbAb8CRgKrCX3dL8w7Z09C18y/RUM3mtk50bGC2ZBJeCX5CjCTgwsef+S8P2IzZvLK5bcwbGg8hrCGzqOjjkqtn9kIHNxE7aAKUazC/M7b7lyHWQ0IeoATzWw74FPAsZLGJJzXaWY7Rq+ccOayIfcjJO6MT7m2Fy6eNSRp+Z6zPqtOAwSpDyTGbj+WPT+xZ5/xux+7uy7xm62OmS02s7nR+7cJTuo+iTUprMmGNLOVQC4bsiAunjUkafm+smcw9y3wMmCtyNxn5/YZyw/KdzLTIemh2Gti2omSRgM7AX9JOPxpSY9Juk3Sx6KxTBmN+fieZw155Lw/1nsKTg1ppPjNFmCpme1S7KQo2WYWcLyZvZV3eC6wtZktl7Q/oZbGtmTMaMzHxbOS1KsGZiXCgKoVMtSidUGz5KJ7weHaImkoQTinmdmN+cfjYmpmt0q6TFIHGbIhk3DxrBAzOZiDu1McMtXeb+yvCBXIIOo3jVTguUJkKTDSOa+TFStX9LnWCw5XB0kCfgnMN7PzU84ZCbxmZiZpV8K25RvAMqJsSEJ9jcOAfyv2TBfPViVrCbgGLjrSqBTLRU+r67nhuhtyxH5HeEhSddgd+DowT9Kj0dj3gFEAZvYL4CDg25J6gHeBw8zMgB5JuWzIwcBVZvZksQe6eLYqhYSzmpbmAKDYXubU26Ym1vVcp20dF84qYWb3krx3GT/nEiCxC19SNmQxXDwdp0QK7WV2zutMLV9XTUdRo9QDHUi4eDotRS1EpFAueqEwpGo5iq78/ZXc8dAdaz4n7cE6lcfjPCvIivbNkw8M5H3FGhZ4rlVR4bHbj+XoA46mo70DITraOzj6gKMZu/3Ygtbl+HHj6ZzXyaQLJnHo2Ycy6YJJ/Z5b57zOXsKZw+NJq49bnhXkliterVgf98Vdwzjsgt34zQkP9L9wSH/ob6hRDcORallUOC0XPW1Jn6sHWsxLXyqFBNLjSauLi2c9yCBIRavOZ71n0jNKoQ6hRgeMPIphr/W9/4rN2wvW+2yEoPS0Jf2E/SZURdwL/W4eT1pdXDwrTLG2HIu7hnFY9+/4DYcyktd6H4wEKb/q/OkHPRWsz0Ki20Le9SThLDSeoxGC0guVl7vkxkRHb7/EPe13BjyetMq4eNaYybO24162YTKncynHpZ6zpup8vGxdCwacJzFtezhtXOiPNKo7VKs/fF7x66pdVDjJGQXJQlnKkr4/4p70OwPss8s+7iyqMi6eNWSNRclgruKbzGUnbuIrvSzQPlXnewavtT7rNfE0qpB62Tmvk18eAO9E1dxeGA4TDwjviwloNYsKJ2UVXfbby5DUq8d7oT3Maoh7oxVSHki4eNaQuEW5kqE8wKf6WKCFytZdWtPZZqCQJXzUUWUJ6PTZ09cIZ4532oIlmsX6rFZR4aT9yqSK8YX2MKsldP39nZMs6oO3L1yj1nHxrBn5FuXq6Ku/igmczuQ11mda2bpr7hjJ6Wzed5+02hQqOlJouyDrVkJkvU7bHk67D5a2k5gnktbiuFaUsi+ZdG6+QB33leMawjpMy9Pfjd28b1ERXDyrQJLTKLmPEaykba312d6eWLZu0pU7cfkdhfdJq9ZgrZD1WInK9JFwTowt1ZMY1V3dtsTFKOSYSTo3TpZCIvUiLQLgtNmnuXgWYcCJ5wFHjWRYd1/rbUX75txyxatVe25aH6PVDOHqtqM5/ZKtEuM54/ukV+dZqWto8vJup40rLJxtQ9v44jeP5paf1U9okvYrBw8a3GvPE5L3MGsZf1oqaRb1i90v1ngmzceAE88k4Sw0XilyFuWkK3fil3dt00tICzWC6+V5Z1Cy9dnEwgmFl+Qd7R0N4QBJ269MGsufayPEn6aRZlGPah9Vmwls3NW0DawGnHjWirR4z1JacfTxvDMs3frMQqW948X2PTMyqjt41fPpaO/gsuMv6/f9K0WaY6aQsHfO60QSofJZbxohiD0tAuDccefWcVbNgYtnjSmlFUei5z3N+sxCljjRUgT2iiv6nN8rRnPBJM7dbHzRnu7nzu6757neyrW54M0ahpPb61xtq/sca5SiyGkWte93FsfFs4FJtFIZxn18Zu1AmkMoa7pmjkMOKWxJpo3nBPWoo5g2qruXCL7Qs5SJL1wMkC6g7e0cPi/cOx4Yf9aD6zL3sMrngteSpL1OgEEatKaQSCPgPePLw8WzgSlspRZJuSxnOd2fJXh3d6Lj552hcNqS6eniGYnv4dFrZiy8cPoFkxrW0ZKFtD1NM1tTcb5ZrWpnAIrnivbNU73tThFy1mnK/mia4+fFnvIcI43saEkjLoiF9jr7G77kwlt/MomnpPWBd81staSPAv8I3GZm71d1dlWgmuFI+RQrEtKUFLBO0xw/o4aU5xhphEIfpZAviEnCGS+aXK5V3chxo/VC0lbAr4CRwGpgipldmHfO4cDJ0cflwLfN7LHo2ELgbWAV0JOlzXHWYsj3AMMkbQHMBiYAU4tdJGlfSc9Iek7SKQnHR0maI+kRSY9HvZSRNFTSNZLmSZov6dSM83Qg7HfWgXNnB0dPnPVWwrmblecYGT9uPG1De+8DVMrRUumixFB4jzNr0eQsVnUh4R3A9AAnmtl2wKeAYyWNyTvnb8AeZrYDMBmYknf882a2YxbhhOzLdpnZO5KOBC42s/MkFSwyKWkwcCnwBUJf5Acl3WxmT8VO+z4ww8x+Hv2itwKjgYOBdcxse0nrAU9Jmm5mCzPOtyp0dcEFF8AJJ8Dw4eljNaVUx1AVyeWe96mIdHp51lC1csGrZbkV2uP8zZm/6TXWH6u6Gbczqo2ZLQYWR+/fljQf2AJ4KnbOfbFLHiD0Zy+bzOIp6dOEPf0jM167K/CcmT0f3eB64EBivwxgwEbR+3bWNpo3YH1JQ4B1gZXAW9SZWbPg6afhhhvgW99KH8tCxSrFlyqcOe98pQU38tQfPi+vgEc/00PTPMH92fOrVsZPKYLYnwpLzbadUSE6JD0U+zzFzPItRwAkjQZ2Av5S4H5HArfFPhtwhyQDLk+7d5ys4nk8cCpwk5k9KelDwJwi12wBvBT7vAjYLe+cs6IJfwdYH9g7Gr+BILSLgfWAE8zszfwHSJoITATo6KhuRkRXF8yZA2Zw991w0EHhfW5szhz429/gpJN6W6Bp+54lV4qvFGnB8P3NU69hllMplmOSyFbLcitFEJOs6p233Znps6dzyY2XFPyDUO26pQ3K0izLaUkbALOA480s0eCS9HmCeH42Nry7mb0iaTPgTklPm9k9hZ6VSTzN7E/An6IHD4p+kf8o9nsk3Srv83hgqpn9T2TZXivp4wSrdRXwQWBjoFPSH3NWbGxeU4j2LT784V367s5XkFmzgkgCrF4dLM0wh/CzpweefTabBZpaKb5ZyAltnXLqs1qOaSK7/rrrs/zd5X3u21/LrdRthrhVnTTXi2+8mKtvu5oJ+03odQ+v4ZmMpKEE4ZxmZjemnLMDcCWwn5mt+WtpZq9EP5dIuomgQf0XT0nXAccQBO1hoF3S+Wb2kwKXLQK2in3ekrXL8hxHAvtGk75f0jCgA/g34A+RN3+JpD8DuwDPUwdyVmdPVP+hp2etxZkby4nonDnBKi20/5laKb7ZqNNea1bLMU1k1xmyDm1D2zJZbqVuD5QbcJ7mbFr+7vJEq9oD23sjScAvgflmdn7KOaOAG4Gvm9mC2Pj6wKBor3R9YB/gnGLPzOptHxOZwF8iOHVGAV8vcs2DwLaStpHUBhwG3Jx3zovAuOgX2A4YBrweje+lwPoE79nTGedaceJWZ46eHljVtxYuPT1rrdIcM1kb+Z1WKf7VZetUetp9KbT/WMMWwf0lzULMH08T2eXvLk9tHRynVq2MC80V3JOekd0JmrSXpEej1/6SjpF0THTOGcAI4LLoeG4PdXPgXkmPAX8Ffm9mfyj2wKx7nkMjk/hLwCVm9n60sZqKmfVIOg64HRgMXBXtl54DPGRmNwMnAldIOoGwpD/CzEzSpcDVwBOE5f/VZvZ4xrlWnAUL1lqYORJC+NaM5/ZEk6zPgpXiS7U+C4UklbqkrnbdzgqSZc+vWEGOLJZbLUvJFasXWilPeqsG15vZvSRvFcbP+RbQZ1Mt2g78RKnPzCqelwMLgceAeyRtTQbvt5ndSrBU42NnxN4/RfiLkX/dcqBh+gCcd176sSuvhLvu6i2uuT3RpL3PUqoqFaXQsrnJy9QVotieX6UKctQyJCitkVuOSnjSPbi+smR1GF0EXBQbeiHyWA14kqzSnp4wnkQpVZWqRhUat9WaQpZjpQpyVCIkKKullxubettU3n737V7H4oLfiCFaA5WsDqPNgf8GPmhm+0UB7Z8mbNAOaApZpXEaKlWz1MpJ1WrxkcDBM3sXBwE4YORRiT3bV2zezi2v9hX7YgU5stLfkKBSLb3cH4Q0gUzzyF9848WZikZ7cH1lybpsn0rYgzwt+rwA+A0ungODOlujScJZaLxSQeT9DQkq19JLs6rTLGrItgQfoMH1VSOreHaY2YxcjnnkDErwNTtOiSRsIRxMulWZhUoGkfcnJKjSll6x61a+v5JLbwoNqj24vvpkFc+/SxpBFOQu6VNAYySEf8bZAAAgAElEQVRUNxE1XbrHPeSNvJeZslWQZlVmoVGCyCtt6WXp4LnaVqdaoI3yvbQKWcXz/xFiND8cBaxvChxUtVk5laW7u/rhRg3mhGqEIPK0jpvvrXyPQ88+tGTxKuaRz1Foa6ARvpdWIau3fa6kPYB/IMRSPdOMtTzrzQFHjYSkLp2NYhn2xwFUqhNqAJBv6a2/7vqsWLlijTc95/CZ88gcXn3z1cwe+emzpxe1QN0JVH1KqSS/K6Fc3BBg5ygA+VdVmVWLktreuFyBqVD3SgBmFGnrUUdWbN6e6m1vdOKW3qQLJiXm1D/xtyfWvM/qkYfgzb/0pksT41ndCVR9soYqXQt8GHiUkN8OYf/TxbMAVa/1mW+t1ioTKKlj5vF5NTznFbi+RMp1HDUaWa3BrLGXuePuBKoPWS3PXQj57VWtXNRqlFvrs+HJE85eHTOHh8+QUUBTrOdmsCpLJYvDJ0dWoXUnUP3IKp5PEHqDLK7iXFqKpPqfVaeSy/iMJHbMbAvjmcQzYa83P0i+GciS+TN+3HguvvHiTPcrZdntTqD6kDnOk9AK46/AmsKTZvbFqsyqBUiq/1n1zkJxISqlPYcK1lMoSGrHzNx4A1ZlqjRZM4nGbj+WZ158hjseuqPg/XzZ3RxkFc+zqjmJVqKrC37601BVPl7/s/OOd3mVzRlJire90tTIe5/aMXNoB8y4rCZzqDfFMonyrdJ9dtmHuc/O7VVBPv7Zl93NQVbx3N/MTo4PSPoxUXX5ZiPuyPn6SSNT+7iX06Z41qxQUT7fmFuFmMzpXMpxfS/KYjE2SjhTHufO7r3nCbCe2srumNmMFMokSrJK737s7pIKlDiNSVbx/AJr+x3n2C9hrCmIO3KOSgkfSg0rKkBunxP61vtcyTDu4zPFb9II8ZIlCHifjplDOzh3s/EcPrx8YUgqDtLIFMok8kpGrUtB8ZT0bWASIbMoXox4Q+C+5Ksam3xHTupSugzi+5xDhsBee631sh98SPn7ijWnRAHv1TGzSZbqlSwKXChn/JIbL0m8xoPYm59ilud1hPacPwROiY2/ndTNshnId+SkLqULcMBRfZf6ixnJv/M8PawLhH3OQhXlm5oalqirBpUuClwoXCgtG8iD2JufguJpZt1At6QLgTfN7G0ASRtK2s3MCvVFbjiSGrldzQROZ3JJ1mfSkn4yp7M6rwvA6tUwbRosWQJjs1i4hdpqNArNUnCkANVYSqeFC3klo9ogaStC0s5IYDWhr/uFeecIuBDYH3iH0PZnbnTsG8D3o1N/YGbXFHtm1gZwPwfieWV/j8aaiqRGbqsYxGRO7/e97+FzrGRYr7GeHpg7N+yvntn2w8TrVrRvvvZDs+WBN9t8I2pZFHjs9mMzNZtz+k0PcKKZbUdoGHlsVLQ9zn7AttFrIpGGSdoEOBPYjZCGfqakjYs9MKvDSPHsIjNbLamUvPiq88orsGxZ4SVyUsuMNEdOL1HLwOe4h/lsx977DF6zz9nVBccdFwR7KhPYZcqExPllKlPXJEviWlLuvmWtiwJ7EHv1MbPFREk8UQvh+cAWwFOx0w4EfhVp2QOShkv6ALAncGduK1LSnYSW6AVblmYVwOcl/Qdrrc1J1KmHehorVhRPg0xvmbETMyk/83QxI7maCaxmcK99zqRA+bLTNGu5PK5hptK0ZZ2ctmQ6L/a8waghIzJ76vuzb+lL6aakI9YqGMKyfErSiZJGAzsB+duKWwAvxT4visbSxguSVTyPITSA+z6hIMhsgtnbUNTDQbOYkXySh1gV7XfmRPKrX+27v5o0v9QydfUkLtRVLDYybVknExdfzjsWROyFnqVMXBwEsI10AUyrJlRqQY2sVmurtuttMpaa2S7FTpK0ATALON7M8jv8JoW8WIHxgmSt57kEOCzLufWk39ZdRla0b77GaXQKP2QxHyT3/edE8r33+u6vJs2vnHjSVuG0JdPXCGeOd2wlpy2Zzk9SxLNQW2EoraBGFgH0dr3Ng6ShBOGcZmY3JpyyCNgq9nlL4JVofM+88buLPS9rSbphwJHAx2CtV8TMvpnl+lpRq/CgXOZRVxf8+tsE316M1auDo6iUlsQFadT9zn7O68WeZKFLG4fCTdCg8vuWHuTeHESe9F8C883s/JTTbgaOk3Q9wTnUbWaLJd0O/HfMSbQPcGqxZ2Zdtl8LPA38M3AOcDgwP+O1NaVW1ieEPc3VCQZQTw+MGAG/7G9v0XIKFFc6vbNQTGc/92FHDRnBCz19HTejhqQLYCHLshr7lt6ut2nYHfg6ME/So9HY94BRAGb2C+BWQpjSc4RQpQnRsTclTQYejK47J0sce1bx/IiZHSzpQDO7RtJ1wO0Zr60pZVt3JRJPxczR1gaXXFJ5q3dx1zAOu2A3fnPCA4wc/l7hkyud3llFR9W5m43vtecJxfPiC9XE3PMTe1bcGvR2vc2Bmd1L8t5l/BwDjk05dhVwVSnPzBrnmetXtEzSx4F2QkuOhuFDHwqG2owZhbzqlSMpZjRn9VaSxV3D+OTJ4+h8elMm35AfttbcHD58LFM+cDRbDwkxkFsP6WDKB44u6G0vZFnOfXZuxec4ftx42ob2LljqnnkHsovnlGg/4HTCvsFTwI+rNqsmIClmNGf1dnXBmWeGuNNipMaTRvuJp1z3cRYvWxczcfXdo3l12Tr9nHljcfjwsSz86GWsHvMbFn70sjXCeXBK6Gshy9KD3J1aktXbfmX09k/Ah7LeXNK+hHSowcCVZvajvOOjgGuA4dE5p5jZrdGxHYDLgY0ILpl/MrMVWZ9dbQpZt1demb39Rn7Zu3jA/OKuYUy7Z2tyq5FVK1cxeeJLa3PxmzQ9sr90tHdkXkpXIszIg9ydJDJZnpJGSLpY0lxJD0u6QFLBTR9Jg4FLCSlRY4DxCelS3wdmmNlOhFCoy6JrhwC/Bo4xs48Rwggq2uo4bh2WYilmuW+8alN/7nnKdR9nla3dxlnJOlzNBF4lslabND2yv2RdSufCjJZ2L8WwNWFGnfM6azldp0XJumy/HlgCfBU4CFgK/KbINbsCz5nZ82a2MrrHgXnnGMGyhLCP+kr0fh/gcTN7DMDM3jCzVZRAMUGM1/SMv+8vSVlF5ZBvdeZYxeDCufhp4UONGu5UBlmX0oXCjGpJ57xOJl0wiUPPPpRJF0xy8W4RsnrbNzGzybHPP5D0pSLXJKU87ZZ3zlnAHZK+A6wP7B2NfxSwKP5qU+B6M+uzUJY0kSjTqaNjVK9jhTpXxq3D3M94o7ZyveVJVZtKvedMDuZgZjJ51na9rM4cK1mncFHltKr03d1rs4UaaLlfbnpmlqV0I4QZeZB965LV8pwj6TBJg6LXIcDvi1yTJeVpPDDVzLYkxF9dK2kQQdQ/S4gn/SzwZUnj+tzMbIqZ7WJmu2y00aZrxostnePWYU8PrIps2v5Yil1dcPLJfeM+y73n/QtGkPQV7sgjPMLO2W5Sp6r005Z1MnrBJAY9dSijF0xi2rJkSyuXnvlCT1hW59Iz084vlbRwolqGGTWK9etUnqzieTShMPLK6HU98P8kvS0pP380R1oqVJwjgRkAZnY/IXupI7r2T2a21MzeIQS3ZlSMwkvnfOswZ3XCWksxJ7al7IXOmhXOW5W3uVBu3Okj5/0RmzEzvNCaV2bhrBOlCGKh9MxK0AhhRo1g/TrVIZN4mtmGZjbIzIZEr0HR2IZmtlHKZQ8C20raRlIbwSF0c945LwLjACRtRxDP1wkB+DtIWi9yHu1B79JSqaQtnXMCmBSfGScutln3QuMB821twRO/3XYwZUp5caczyWvg00T7mKUIYjnpmaXQCGFGjWD9OtUhc03OKHRodPyalOT73LEeSccRhHAwcJWZPSnpHOAhM7sZOBG4QtIJhCX9EVEWQJek8wkCbMCtZlZsmwAoHLz+rW8lx2fGicdqxpf+hfYt8y3diy6Cl1/uu9+a1L4DMnTqbJD9ySyUIojlpGeWSr3DjLz8XeuStTDIVcAOwJOsLYNhQKp4AkQxm7fmjZ0Re/8UISc16dpfE8KVSqJQ8DrAqaeubTt8ww1w553whS+EEnK58eHDQ6xmllqcSZbuokXhfU50zcK9x3aHHgH51KWyUpVaHJciiOWkZzYbpZa/c5qHrJbnp8ysKXIDiy2Rc0vxadPgvvvWWpbvvbd2iZ61FmfufmnbAPEtgKefLq3ZXM7r3i8KFfWokjOpFEHMedXTvO3N1oI4jXpbv051yCqe90saE1mKTUt8Kd7ZCYqc2atWwT339BbSLLU4ofA2QE9P71CocprN9YtCFmSVihwXE8Sk8/vT491x6kVW8byGIKCvAu8RYmjMzHao2syqQP7eZI64h7zUWpxxS/fKK+Guu3pfG3+fazYXtz4XM5LDuJ6vFem/1Ey4IDoDgazieRVRrTz6lP5tDvL3JtPo6QmW55QppYtZkhUat2BXMqyP9TmZ07mXzzIswaqtyNLdcZyqkDXO80Uzu9nM/mZmL+ReVZ1ZhSkWohSn3MD2885bWxZvxgzYZx8YkvfnKd7qOL9xXCVy6x3HqQ1ZLc+nowLItxCW7UDhUKVGI21vcuhQeD+v5EilCiqntTq+dfSxzDzvWK68EnruAnqqUAG/St70YpSbbuk4zUZW8VyXIJr7xMaKhio1EpUokNzV1TucqT/PzJoHX/bSvQ6pmYW6YbqAOq1G1gyjCQmvhmr+VguqVX0pRzUq0deSaqdbOk4hJF0laYmkJ1KOnyTp0ej1hKRVkjaJji2UNC869lDS9flkree5paSboom9JmmWpC2z/1qNR6k1PCtZpxOKB/M3I9VOt3ScIkwF9k07aGY/MbMdzWxHQnfMP+U1evt8dLxof3jIvmy/mlAYJBey/LVo7AsZr284CpWsSzs/HuY0bRosWZJ9CZ9PKdsIVfG6FwqgL5NapFs6Thpmdo+k0RlPHw/0a0mUVTw3NbOrY5+nSjq+Pw+uJ6XkrcfPj+9PdnbWts1xxamC06ga6ZatkmXk9JuOvOX0FDObUs6NJK1HsFDj6X5GqC1swOVZ7p01VGmppK9JGhy9vgY07Vqs1GrvSf3Zc58bNsSoDpWYyumG6TgZWZqr3Ru9yhLOiAOAP+ct2Xc3s50JbYOOlfS5YjfJanl+E7gE+BlBoe8jahjfbJRT7X3Bgr51OnOUan2W6rEvmzpVYvLsIqcJOIy8JbuZvRL9XCLpJkIboXsK3SSr5TkZ+IaZbWpmmxHE9KxSZ9wIlOPlPvXUEA8K4WfuPfStF5rl+eV47PvU+HQcp2QktRPqA/8uNra+pA1z7wkhmYke+zhZxXMHM+vKfYjM3Z1KmXSjUI6XO79tR/71WZb+XV1w2mkh9z3NY1/JLp6OM9CQNB24H/gHSYskHSnpGEnHxE77MnCHmf09NrY5cK+kx4C/Ar83sz8Ue17WZfsgSRvnBDSKjcpcSLmRKBa4nr+kTmrbkU+WEKNZs+DZZ9dWckpa7pcaAeA4zlrMrKhn0symEkKa4mPPA58o9XlZLc//Ae6TNDmqBH8fUIGcncYiaUmdtMwfMiTkrcfz2LNkE0HhfknF4kh96e44jUPWDKNfEXq2v0boMfQVM7u2mhOrNWni1Z9g9twy/LrrkvPq8/slVaLfu+M4tSHz0jsqhNzUxZALkSRe3/pW/3LiZ82C+fPhmWfSl/uv/nEeXV/dvt/93h3HqS1Zl+0tTVL40p13wgslFN3Ld/bEl+r5MaJtrGASl2KIx1bvUFIEgC/d60vnvE4mXTCJQ88+lEkXTKJzXmV6zDvNR1M6fSpNkniZwYUXwvnnZ79H3NlTqH7oSoZxH59Z87kV89wrSaNkGXXO6+zVCXNp91IuvyVUjfIeReWxcVf479uMuHiSXutz0aJgSRZbOi9cGCzV3H7p3nv3rVq/Lu/wPB9K7F9UiXJ5TvWZPnt6rxbCACvfX8n02dNdPAcgvmyndwX4ePX3IUOyOW4uuqhv3/Z8qzNeQb6/zORgX77XgTe6kzOS08ad1sbFM0Za6mahoPWFC9f2ac9d8/LLyRXk40t1p/kY0Z5cHSpt3GltXDxjlJO6edFFfccGD+4dB3r55fDZwfdzG/v1OXdF++b9nLVTK8aPG0/b0LZeY21D2xg/rvyqUU7zMqD3PPMzikp13HR19bY6066ZNQv+vPrTfGOfVyuaOeTdNWtLbl9z+uzpvNH9BiPaRzB+3Hjf7xygDGjxzPeQl+q4mTat79iQIbDXXmvTK0utHeo0NmO3H+ti6QADeNleibYajzzSdyzJ6vTMIcdpPQasePZX1Lq6YMWK8L6tDaZM6ZvnXo4DqlQGite9WWMBndalquIpaV9Jz0h6TtIpCcdHSZoj6RFJj0vaP+H4cknfreS8KiFqWcS3FTtkOo4TqJp4ShoMXEooaz8GGC9pTN5p3wdmmNlOhOrOl+Ud/xlwW6Xn1l9R6+qCe+54t3dPozveYewhIzngqJFrzqtV5tBAsT4dp5GopsNoV+C5qFYekq4HDqR3cREDNoretwOv5A5I+hLwPBAvWloySTU6+ytqs2bBatRrLBcEf2n32p5SnjnkOK1LNcVzC+Cl2OdFwG5555xF6Fj3HWB9YG9YUwr/ZEJr49Qlu6SJwESAjo5RieckFRjOF7W4wGZhwYIQ9B7Hg+AdZ2BRzT1PJYzll8oYD0w1sy2B/YFrJQ0CzgZ+ZmbLCz3AzKbkuulttNGmfY5n9aiX2lfovPPAUJ/XI+yc7QZVwJfujlNbqimei4CtYp+3JLYsjzgSmAFgZvcDw4AOgoV6nqSFwPHA9yQdR4nEWwavWpUsjnGBLbUMneM4jYOkqyQtkZTYvE3SnpK6JT0avc6IHSvo3E6imuL5ILCtpG0ktREcQjfnnfMiMA5A0nYE8XzdzMaa2WgzGw1cAPy3mV1SysNzophrGbxqVbL1GXce5crQOY7TlEwF9i1yTqeZ7Ri9zoHMzu0+VE08zawHOA64HZhP8Ko/KekcSV+MTjsROCrqWjcdOMIsrQpmacStzhz51md+yBKEdMss1mdaTno9c9VbfenusZ5OIczsHuDNMi5d49w2s5VAzrldkKqmZ5rZrcCteWNnxN4/Bexe5B5nlfPsBQvWWp05Vq1a61Hv6oL/+i94//2+12YpgnzLFa+WMy3HccqjQ9JDsc9TzGxKGff5dGSsvQJ818yeJJtzuw8tm2F06qkwdGjvsbY2+N73wvtZs6C7O/nal1/23umO02AszTmHo1c5wjkX2NrMPgFcDPw2Gs/i3O5Dy4pnoUD4ri646670awcPbt4soFZfujtOuZjZW7kInmhVPFRSB9mc231oWfEsFAg/a1bfJX3SeY7jtA6SRkpS9H5Xgv69QTbndh9atiRdWnZPVxcce2xfq3ToUBg9Gk46qfyScUnZTI7j1AZJ04E9Cfuji4AzgaEAZvYL4CDg25J6gHeBwyIHdU8UCnk7MBi4KtoLLUjLiWcxAUuzOt9/H559tncmUqkkZTM5jlMbzKxgSf8o3DEx5DHJuV2Mllu2F8sWWrAgvSUwlF8yrhL1QSuF73s6TvVpKfHMImDxTplJHTPLLRnnRY8dZ2DRUuJZjoBVorZnLYoeOwEPlHcahZYRz56e8gSsEgWLG7HosS/dHae6tIx4LltWnoBVomBxrYoeO47TOLSMt33FivIErBIFi73oseMMPFpGPLfcEn70o/KubdX4TO/r7jjVo2WW7f2h1GLIjuM4A148Gyk+sxq448hxqsOAF0+Pz2w+PFzJaQQGtHiWEp/Z1QVnntl6lqnjOOUxIMUzJ4TXXZc9vKmZ90V96e44lWdAimdOCOfOTQ5v+tOfeluYrb4v6jhO6bSseKYts3OFkM1CbOiUKX3z3Feu7G1h+r6o4zj5tKx4pi2z4yXpenqSG8LFLcy0fdGFC5trD9SX7o5TWVpSPNOW2XGrE8LPOXPWHk+yMNPy1i+6qHn3QB3H6T8tKZ5py+ykQsg56zPNwnzqqeR90Zdf9j3QeuLhSk69aTnxLBR+9NRTfa1IszCeZmGOGZNc/3Pw4LXnNIv16Ut3x6kcLSeehcrDjRmztuhxjiFDwnjWykheu9NxGhNJV0laIumJlOOHS3o8et0n6ROxYwslzZP0aF5/+FRapjBIjmIimHYsa2WkQuLsfYscp65MJfQo+lXK8b8Be5hZl6T9gCnAbrHjnzezpVkf1nLiWe3ycM1eu9MrLTmtipndI2l0geP3xT4+QOjPXjYtJ57Vxmt3Ok5LcCRwW+yzAXdIMuByM5tS7AYtt+fpFMcdR04T0iHpodhrYrk3kvR5gnieHBve3cx2BvYDjpX0uWL3qap4StpX0jOSnpN0SsLxUZLmSHok2sTdPxr/gqSHow3chyXtVc15Os2JhysNKJaa2S6xV1HLMAlJOwBXAgea2Ru5cTN7Jfq5BLgJ2LXYvaomnpIGA5cSlHwMMF7SmLzTvg/MMLOdgMOAy6LxpcABZrY98A3g2mrNM4mk1E6vquQ4zY2kUcCNwNfNbEFsfH1JG+beA/sAiR77ONW0PHcFnjOz581sJXA9cGDeOQZsFL1vB3Lq/0juLwHwJDBM0jpVnGsvklI7m7mqUhIzOdiX705LIWk6cD/wD5IWSTpS0jGSjolOOQMYAVyWF5K0OXCvpMeAvwK/N7M/FHteNR1GWwAvxT4vondYAMBZhE3a7wDrA3sn3OerwCNm9l7+gWjfYyJAR8eogpPJ2qcoP7XzoIPWpnHGx1qp15HjtAJmNr7I8W8BfQIKzex54BN9ryhMNS1PJYzlRUgyHphqZlsC+wPXSlozJ0kfA34MHJ30ADObktsD2WijTQtOJqvlWCy/vZkyihzHqR7VFM9FwFaxz1sSLctjHAnMADCz+4FhQAeApC0JG7f/bmb/15+JZK3HmZQ9NGeOZxQ5jtOXaorng8C2kraR1EZwCN2cd86LwDgASdsRxPN1ScOB3wOnmtmf+zuRrJZjUvZQT0/foPhWsj5939NxyqNq4mlmPcBxwO3AfIJX/UlJ50j6YnTaicBR0UbtdOAIM7Pouo8Ap0cbu49K2qyceZRSjzMpe8gsWVCbJaPIcZzqUNUMIzO7Fbg1b+yM2PungN0TrvsB8INKzKFQPc6XX+6dk+7ZQ83HwTNhphvPTh1o+QyjtFz0RYu8HmcOX7o7Tum0fG57kjV55ZWhonxPj1dEchynPFre8szH63Em49an45TGgBPPQvU4HcdxsjLgxLPZ63E6jtMYtPyeZz7uUU+nWQsl56orudfdqSUDzvJ0HMepBC6ejuM4ZeDi6fTCve6Ok42WFE8vXOw4TrVpSfGcNQvmz4eTT3YBdRynOrSceOaC4HPvp02r73yakWZduntPI6eWtJx4zpoVgt5zdHa69ek4TuVpKfHMWZ2rVq0dW73arc9yaFbr03FqRUuJZ77VmaO/1mchB5Q7pxynMZB0laQlkhI7XypwUdQK/XFJO8eOfUPSs9HrG1me11LiuWBBb6szR39z1wv1P2q1rpqO08RMBfYtcHw/YNvoNRH4OYCkTYAzCQ0qdwXOlLRxsYe1lHiedx6MHp18rNzc9UL9j7L2RmpWfOnuNBNmdg/wZoFTDgR+ZYEHgOGSPgD8M3Cnmb1pZl3AnRQWYQBk+SWGmhRJrwMvVP7O24yCjTtACjL55lJY+GI4tvVHYcQGyccagg5gab0nUQCfX/9opPltbWaFW9gmIOkPRE0fizAMWBH7PMXMpiTcbzTwv2b28YRj/wv8yMzujT7PBk4G9gSGRR0skHQ68K6Z/bTQhFqmMEg5/+H6i6SHzBbuUuvnZiXMz3x+ZeLzqz5mVtTCqyBp7dCztEnvQ0st2x3HcQqQ1g49S5v0Prh4Oo4zULgZ+PfI6/4poNvMFhM6/O4jaePIUbRPNFaQllm214k+ey4Nhs+vf/j8mghJ0wn7lx2SFhE86EMBzOwXhE6++wPPAe8AE6Jjb0qaDDwY3eocMyvkeArPaxWHkeM4Ti3xZbvjOE4ZuHg6juOUgYtnRpJSvyT9RNLTUarXTZKGN9L8Yse+K8kkZYmnqwpp85P0HUnPSHpSUt06TKX8991R0gOSHpX0kKRd6zi/rSTNkTQ/+q7+MxrfRNKdUVrhnVkyY5zK4OKZnan0zTq4E/i4me0ALABOrfWkYkwlIStC0lbAF4B6B+9PJW9+kj5PyPrYwcw+BhQMSq4yU+n7/Z0HnG1mOwJnRJ/rRQ9wopltB3wKOFbSGOAUYLaZbQvMjj47NcDFMyNJqV9mdoeZ5RoZP0CID6sLBVLTfgb8FxmCfqtJyvy+Tcj4eC86Z0nNJxaRMj8DNoret5Mh9q9amNliM5sbvX8bmA9sQfjjc0102jXAl+ozw4GHi2fl+CZwW70nEUfSF4GXzeyxes8lhY8CYyX9RdKfJP1TvSeUx/HATyS9RLCK67myWEOUgrgT8Bdg8yhWkejnZvWb2cDCxbMCSDqNsKxqmMqhktYDTiMsNxuVIcDGhGXoScAMSUmpcvXi28AJZrYVcALwyzrPB0kbALOA483srXrPZyDj4tlPotp//wocbo0VNPthYBvgMUkLCVsKcyWNrOuserMIuDGqcvNXYDXZikTUim8AN0bvZxLKldUNSUMJwjnNzHLzei2qDET0s25bHwMNF89+IGlfQlWWL5rZO/WeTxwzm2dmm5nZaDMbTRCqnc3s1TpPLc5vgb0AJH0UaKNxqgRB2OPcI3q/F/BsvSYSWeS/BOab2fmxQzcTRJ7o5+9qPbcBi5n5K8MLmA4sBt4nCNGRhDSvl4BHo9cvGml+eccXAh2NND+CWP4aeAKYC+zVYPP7LPAw8Bhhf/GTdZzfZwkOrMdj/7/tD4wgeNmfjX5uUq85DrSXp2c6juOUgS/bHcdxysDF03EcpwxcPB3HccrAxdNxHKcMXDwdx3HKwMXTcSNL7C8AAAFpSURBVBynDFw8nboiaXC95+A45eDi6VQVSb+V9HBUg3JiNLZc0jmS/gJ8WtIno8IgD0u6PZZueJSkByU9JmlWlK/vOA2BB8k7VUXSJhYabK1LaLC1ByEF81AzmxHla/8JONDMXpd0KPDPZvZNSSPM7I3oPj8AXjOzi+v1uzhOHO+e6VSb/5D05ej9VsC2wCpCgQuAfwA+DtwZFVQaTEiTBPh4JJrDgQ3I0A7WcWqFi6dTNSTtCewNfNrM3pF0NzAMWGFmq3KnAU+a2acTbjEV+JKZPSbpCEJbWcdpCHzP06km7UBXJJz/SKjbmc8zwKaSPg2h7Jqkj0XHNgQWR0v7w2syY8fJiIunU03+AAyR9DgwmdCqpBdmthI4CPixpMcI1YI+Ex0+nVDN6E7g6ZrM2HEy4g4jx3GcMnDL03EcpwxcPB3HccrAxdNxHKcMXDwdx3HKwMXTcRynDFw8HcdxysDF03Ecpwz+Pys83iI1V59KAAAAAElFTkSuQmCC\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "from sklearn.naive_bayes import GaussianNB\n", "\n", "clf = GaussianNB()\n", "clf.fit(x, y)\n", "\n", "plt.figure(figsize=(11,4))\n", "plt.subplot(1,2,1)\n", "plot_classifier(x,y,clf,'Gaussian Naive Bayes')" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": true }, "outputs": [], "source": [] } ], "metadata": { "anaconda-cloud": {}, "kernelspec": { "display_name": "Python 3", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.7.1" } }, "nbformat": 4, "nbformat_minor": 1 }