{ "cells": [ { "cell_type": "code", "execution_count": 1, "metadata": { "collapsed": true }, "outputs": [], "source": [ "%matplotlib inline\n", "\n", "import matplotlib.pyplot as plt\n", "import seaborn as sns\n", "import numpy as np\n", "import pandas as pd\n", "\n", "import sys\n", "sys.path.append('/Users/kaonpark/workspace/github.com/likejazz/kaon-learn')\n", "import kaonlearn\n", "from kaonlearn.plots import plot_decision_regions" ] }, { "cell_type": "code", "execution_count": 2, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Test set score: 0.88\n" ] } ], "source": [ "from sklearn.datasets import make_blobs\n", "from sklearn.linear_model import LogisticRegression\n", "from sklearn.model_selection import train_test_split\n", "\n", "# create a synthetic dataset\n", "X, y = make_blobs(random_state=0)\n", "# split data and labels into a training and a test set\n", "X_train, X_test, y_train, y_test = train_test_split(X, y, random_state=0)\n", "# instantiate a model and fit it to the training set\n", "logreg = LogisticRegression().fit(X_train, y_train)\n", "# evaluate the model on the test set\n", "print(\"Test set score: {:.2f}\".format(logreg.score(X_test, y_test)))" ] }, { "cell_type": "code", "execution_count": 3, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "" ] }, "execution_count": 3, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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\nRU5ErkJggg==\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "plot_decision_regions(X, y, logreg)" ] }, { "cell_type": "code", "execution_count": 4, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "" ] }, "execution_count": 4, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "plot_decision_regions(X_train, y_train, logreg)" ] }, { "cell_type": "code", "execution_count": 5, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "" ] }, "execution_count": 5, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAdkAAAFJCAYAAADXIVdBAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAIABJREFUeJzt3Xt02/V9//GXJEtKbPlrKbcWkgFJpowediGh2yHbyUIT\nh2T00MMtIRfSH+P0xthpc8ZaTrKcjA4a6Onh0LXncO05nC1jK6FjjJYzTgGznUIvvxICa7YAxjb9\n5UKDHcuW5SSSbH1/fyhyFCNbsv396nvR83FOD5W/ivX+yJJf/nz0uQRM0zQFAAAsF3S6AAAA/IqQ\nBQDAJoQsAAA2IWQBALAJIQsAgE0IWQAAbNJk9Tf86U9ft/pbVmUYs5ROn7Ht+6fTg1qyZKkkyTQL\nSiTm2vZYJXa3qd781h7Jf23yW3sk/7XJb+2R/NGmBQvaJrzmi55sKBRyugTLhUK++NGM8Vt7JP+1\nyW/tkfzXJr+1R/Jnm8r5u3UAADiIkAUAwCaEbA0Mo03d3V3q7u6SJKVSJx2uCADgBYRsjQyj+MF2\nT0+PpGLQErYAgMlUnV38zDPP6N/+7d8kSdlsVocPH9Zrr70mwzBsL85tDKNN6fSgenp6tGTJUplm\nQanUybrMNgYAeE/VnuwNN9ygffv2ad++fbrsssu0e/fuhgzYklKPtru7S4FA8emjRwsAqKTm4eJf\n/epXeu+993TzzTfbWY8nlIJW0ljQAgAwXs2bUTz66KO64447qt7PMGY5sm41kWip6+OZZlbxeLMk\naWRkRIlEs+WPYcf3dJLf2iP5r01+a4/kvzb5rT2SP9tUUlPIptNp9fT06Morr6zhvvXfuSORaFEq\nNVzXxxwaOqOBgVOSirtANTWdsvT7JxLNSqWs/Z5O8lt7JP+1yW/tkfzXJr+1R/JHm2a849Mvf/lL\nrVy50rKC/KK0pAcAgEpqCtmenh4tWrTI7lo8pXwClMSSHgDAR9U0XPy5z33O7jo8iSU9AOBOQ6dy\nOto7rEXzW9TaHKl4n5GREf35n2/ViRMnFAyGdO+99+uTn/wjS+uw/BSeRlMK2lKPdvHixQQtADgk\nNzKqvfve0LHeYRVMKRiQFs5v0a7tKxRpOn9S7mOPPaxcbkQ//vF/6Yc/fFb33PO3+vd//w9L62H9\niQUMo63ijlAAgPrau+8NHfmwGLCSVDClIx8Oa+++Nz5y3wMH/q9WrvxjSdK1116ngYGU5fUQshYq\nBS1rZwGg/oZO5XSst/JKk2O9wxo6lTvva6dPn1Y8Hj/va9mstStkSAMAgC8c7T3Xgx2vYBavl5s9\ne7bS6fR5X4tGZ1laEyELAPCFRfNbFAxUvhYMFK+XW7Hik3rttVclST/84bNqbbV+y2AmPtmICVAA\nUD+tzREtnN+iIx9+dMh4YYVZxl/84h36+c9f09VXXyXJ1Ne/vtfymghZG3R3d7GkBwAcsGv7igln\nF4/X1NSkffv221oPIWsxlvQAgHMiTSHd/ed/WNM62XrgM1kbsKQHAJzV2hzRJy5OOBqwEiFrq/Kg\nDQSCbL0IAA2GkLUZZ88CQOPitz4AADYhZAEAsAkhCwDwnUwuo3dS7ymTy1S9749+9O/asGGNLXWw\nhKdOSmtnJTapAAC75EZzeuCNh/VB5oQKKiiooC6IfUx3rrhdkdBHZxr/9V/v0BtvvK6mcSf0WIWe\nbB2UlvR0d3expAcAbPTAGw/rWOYDFVSQJBVU0LHMB3rgjYcr3n/x4sW6//4HbKuHkK0jlvQAgH0y\nuYw+yJyoeO2DzImKQ8d33PEVRaP2raUlZOusFLTd3V1jS3oIWgCYuWPDvxnrwY5XUEHHhn9T54oI\nWUcwfAwA1lvY8nEFJ4i1oIJa2PLxOldEyDqK4WMAsE4sEtMFsY9VvHZB7GOKRWJ1roiQdRzDxwBg\nnTtX3K6FsQvGerRBBbUwdoHuXHH7hP/mD/5guX784/+ypR6W8LhAedCWjsjr7e1VU1NLlX/pf9n8\nqAYzObXFIoqG7ZliD8A/IqGIdv7hV5TJZXRs+Dda2PJxR3qwJYSsC7HHsTRaKGh/R5cOdvapP53V\nHCOq5cl52rRmqUJBnh8Ak4tFYvqdyG87XQYhC3fa39Gllw4cG7t9Mp0du72lPelUWQAwJXQJ4DrZ\n/KgOdvZVvHaws0/Z/GidKwKA6SFkXaa7u8vpEhw3mMmpP52teC01lNVgJlfnigBgeghZFymfANXU\n1NSwS3raYhHNMaIVryVao2qL2bc7CwBYiZB1mVLQdnZ2NuySnmg4pOXJeRWvLU/OY5YxgKpGhoY0\nfPiwRoaGJrzPmTNntGnTdVq//lNat+5P9dhjlfc3ngkmPrmQYbQpkWgZGzpevHhxw53cs2lN8cSi\ng519Sg1llWg9N7sYACZSyOV05L5vKHf8mFQoSMGgIhcu1G/t/BsFI+ePgj344LcUi8W0f/+zOnbs\niLZu3agvfGHi9bTTQci6mGG0KZ0eVE9Pj5YsWdpQQRsKBrWlPakbVi9hnSyAmh257xvKHT1y7guF\ngnJHj+jIfd/QxX/79fPu+4Uv3C7TNM/ezVQgELC8HkLW5UpB26ii4ZAWJGY7XQYADxgZGir2YCvI\nHT+mkaEhNbW2jn1t7tzix1J9fb36whdu1Wc+c73lNfGZLADAF7JHjxaHiCspFIrXx/mf/zmkzZtv\n1KpVV+mv/uprltdUU0/20UcfVUdHh/L5vLZs2aKNGzdaXggAADMRXbRICgYrB20wWLxeprv7Pf3l\nX35Rn//8l7R163Zbaqrak/3FL36hgwcP6l/+5V+0b98+/eY39T+PD+c02kxjAKhVU2urIhcurHgt\ncuHC84aKJemee/5Wo6Mj+sd/fEIbNqzRhg1rLP94rmpP9tVXX9WyZct0xx13KJPJ6Gtfs747jerK\nDw9opAlQADAVv7XzbyacXTzeE088aXs9AbM0tWoCu3fv1vHjx/XII4/o6NGjuv322/XCCy9MOAvr\n0KFDCoWYBWqH/v5+ScUlPZI0f/58J8sBANfKp9M69ev/p+aLL1LYMGx9rHA4POG1qj3ZeDyuJUuW\nKBKJaMmSJYpGo+rv79fcuZV7Uun0melXOk2JRItSqeG6P66dKrUpEIgqnR7Uf//3YS1evFhDQ0fO\n3tf9vdpEolmp1Cmny7CU39rkt/ZI/muT39oj2dmmJmnREmVGJdn8nC1Y0DbhtaqfyV5xxRX6yU9+\nItM0deLECZ0+fVrxeNzSAlG70o5QPT09DbsjFAB4RdWe7Kc+9Sn98pe/1E033STTNLVnzx6Ggx1W\nvnY2EAjKNCeYsg4AcFRNS3iY7AQAwNSxGQUAzFA2P6oPU6c56xgfwbaKACaVzY+yf/QERgsF7e/o\n0sHOPvWns5pjnDvIIhSkDwNC1rMMo62hT+mB/QiQ6vZ3dOmlA+f2yj2Zzo7d3tKedKosuAjvFA8r\nn2ksqWEPeYc9SgFyMp2VqXMBsr+jy+nSXCGbH9XBzr6K1w529jF0DEmErOexpAd2IECqG8zk1J/O\nVryWGspqMJOrc0VwI0LWB0pB293ddV6vFpguAqS6tlhEc4xoxWuJ1qjaYpGK19BYCFmfMIw2ho9h\nGQKkumg4pOXJeRWvLU/OY5IYJBGyvsPwMaxAgNRm05qlar9ioeYaUQUD0lwjqvYrFmrTmqVOlwaX\nYHaxD5V2hGL2MWaiFBQHO/uUGsoq0XpudjGKQsGgtrQndcPqJSxzQkWErE+VerTp9ODY1osELaaC\nAKldNBzSgsRsp8uACxGyDYI9jjFdBAgwfXwmCwCATQhZAABsQsg2gNIEKABAfRGyPle+UUUgEGTt\nLADUESHbAMYHrcTaWQCwQrXfpYRsgyjtCMXWiwBgjVp+hxKyDWb8jlAELQBMXel3Z2l0cCKsk21A\npR2hAABTU2u4ltCTBQCgBlMNWImQBQCgqukErMRwMST2NAaACUw3XEvoyTYwlvQAwMRmGrASIduw\nWNIDABOzImAlQrbhVVrSQ9gCaFTlvwNnGrASIQuxIxQASOf3Xq0IWImQxVmloJWs+esNALzEyt5r\nOWYXAwAaQrUROjs6GIQsAMD37OqpVsO4IADA15wKWImeLMqUlvRI0uLFi9mkAoCnORmuJfRkcR6W\n9ADwAzcErFRjT/b6669XLBaTJC1atEj33XefrUXBWaVTerq7u7RkyVKZZoFeLQDPcEvASjWEbDab\nlWma2rdvXz3qgUuUr52VGD4G4H5uCteSqpW8/fbbOn36tG677TZ99rOf1ZtvvlmPuuASDB8D8AI3\nBqwkBUzTNCe7wzvvvKO33npLGzdu1Pvvv6/Pf/7zeuGFF9TUVLkTfOjQIYVCIVuKhXP6+/slSclk\nUiMjI5Kk+fPnO1kSgAbT29s76fWJcsluCxYsmPBa1YoWL16siy++WIFAQIsXL1Y8Hldvb68uuOCC\nivdPp89Mv9JpSiRalEoN1/1x7eS2NgUCUUnSG2/8SlLxdTE0dKTm4eNEolmp1Cnb6nOC39rkt/ZI\n/muT39oj1d6m2nqqOYuqmppJMrb6cPEPfvAD3X///ZKkEydOKJPJ0IOxkZnPy0ylZOacebFUUxo+\nZo9jAPXi1qHgWlTtyd50003auXOntmzZokAgoL179zrWJfczs1CQOl6WOt+V0mkNJuIyl/y2tGat\nAkF3vrACgaBMs+B0GQB8qvyPeC8GrFRDyEYiET3wwAP1qKWxdbwsHXh97GYhNXDudvs6h4oCAGd4\nufdaztvV+4SZzxd7sJV0dhavA0CD8EvASoSsO2QyUjpd+dpQunjdZUrrZyU+lwVgHT8FrETIukMs\nJhlG5WutRvG6i3DIu39k86P6MHVa2fyo06WgwZXW4Ft5YLobMIPJBQLhsMzksvM+kx2TTCoQDte/\nqCrYEcrbRgsF7e/o0sHOPvWns5pjRLXy9y7QZ/74IoVcOtEO/uW33ms5/7XIq9asla74pGS0SYGA\ngolE8faatU5XNqnyHaEksSOUR+zv6NJLB47pZDorU9LJdFY/eu197e/oqvpvASuVNpjwY8BK9GRd\nIxAMSu3rZK6+Sspk1LZogQaGvTHhqXSgQE9Pz9iBAnCvbH5UBzv7Kl472NmnG1YvUTTMrm2wV+mP\n8UQi5tuAlejJuk4gHFYgkVAgEnG6lCkp9WjhfoOZnPrT2YrXUkNZDWbcuREK/MPPw8Pj0ZMFGkxb\nLKI5RlQnKwRtojWqtpi3/sCDO1X72KgRAlaiJws0nGg4pOXJeRWvLU/OY6gYM1beU53of42Cnixs\nwUxjd9u0Zqmk4mewqaGsEq3nZhcDM9FIQ8G1IGRhKZb0eEMoGNSW9qRuWL1Eg5mc2mIRfXxBq+9O\neEH9+GGfYTvwTMAyhtHGkh6PiYZDWpCYzRAxZmT88DDO4dmA5cqDtvSGq3bYMgBvYnh4cjwrsAVb\nLwL+Vj5KRcBOjGcGtilfO8sZxIB/MDxcO37zAQAqmmz0iXCtDSELADgPw8DW4RmE7crPngXgbgSs\ntXgWYavS57KdnZ2SWNIDuBkBaz2eSdiu0pIeghZwD78emO4GPJuoizlz5kgqDh2Xb1QBwFn0Xu3F\ns4q6mWhHKADOIGDtxzOLuhs/fMzntEB9MTxcPyzhgSMMo03p9KC6u7u0ZMlSmWaBAwUAi7HO1XmE\nLBxTvvWixMk9gFU4Ecc9ePbhuFLYloauGDoGpo8tD92FnwAA+AQTmdyHnwQ8JZsf1Yep08rmR50u\nBXDV65GAdSc+k4UnjBYK2t/RpYOdfepPZzXHiGp5cp42rVmqUJBfKqgvN70eCVd346cC1yjf43j8\n57L7O7r00oFjOpnOypR0Mp3VSweOaX8H+yKj/tzyeiRg3Y+fDFxhskPes/lRHezsq/jvDnb2uWKo\nDo3DLa9HAtYbGC6Ga0y0pCevZvWnsxX/TWooq8FMTgsSs+tWJxrbYCbn6OuRcPWWmn5KJ0+e1OrV\nq9XVxdAc7Dd+RyhzJKN4LFzxvonWqNpikXqWhwbXFotojhGteM3u12Nvb68kAtZLqv6k8vm89uzZ\no1mzZtWjHkDS+b3aaLhJl11iVLzf8uQ8RcOhepaGBhcNh7Q8Oa/iNTtfj/RgvanqT+ub3/ymNm/e\nrAULFtSjHmBMKWgl6dorL1D7FQs114gqGJDmGlG1X7FQm9YsdbBCNKpNa5bW7fVYvs9wUxOf8HnN\npD+xZ555RnPmzNGqVav02GOP1fQNDWOWQqH69ywSiZa6P6bd/Nam6bTHNLOKx5s1MjKiv9h4kbK5\nUaWGzijROkvRiPM92ESi2ekSLOW39kj2tekvNv6Bpa/H0lDweK2ts84L13jcfz8jP7apJGCapjnR\nxW3btikQCCgQCOjw4cO65JJL9PDDD2v+/PkTfsOf/vR1WwqdTCLRolRquO6Paye/tWm67UmnB8cO\nEHDbnsaJRLNSqVO2fO9sflSDmZzaYpG6DYfb2R6neKFNU9lnOB5v1sCAu9szVX5o07Jll0x4bdKe\n7JNPPjn2/7dv366777570oAF7NQIhwe4aZMD2I/PWf2PnyxczTDa1N3d1TCHvLtlkwPYj4BtDDX/\ndPft26elS5lkgvprlEPe3bLJAexV/volYP2PnzA8YbIdofyilk0O4G0cQ9d4+CnDMwyjbWz42I9B\n6+QmB7AfvdfGxE8bnuW3X1ZObXIAezE83NhY2Qy4SGkzg4OdfUoNZZVoPTe7GO422agK4dq4CFnA\nRULBoLa0J3XD6iV1XyeL6aOnionwioAnlZ8960fRcEgLErMJWJcr3/KQgEUlvCrgOeNnGvt1SQ/c\njd4rasGrYxJmPi8zlZKZzztdCsZphCU9cC8CFrXiM9kKzEJB6nhZ6nxXSqclw5CZXCatWasAW9u5\nxkSHvJe2XixksxoZHFRTW5uC0cpLY4CpIFwxVYRsJR0vSwfKDjpIp8/dbl/nTE2YkGG0KZ0eVE9P\njxYvXqz+vg81/PyPNHL4sEb6+9U0Z45ily/XvI03K+DACVHwBwIW08GrZRwzny/2YCvp7GTo2KXK\nt14cfv55nXn1VY2cPCmZpkZOntTAyy+p7+mnHK4SXkXAYrp4xYyXyRR7rpUMpYvX4UqG0Sbl8xp+\n82DF65k3D6qQrbxtIVAJG0lgpnjVjBeLSYZR+VqrUbwO12oNhhSa4A+hkVRKI4ODda4IXsU+w7AC\nr5xxAuGwlFxW+WIyWbwO95rkj6SmREJNbW11LgheRO8VVmHiUyVr1hb/29lZHCJuNaRk8tzX4VqB\ncLg4E7x84tpZscuXM8sYkypfBkbAwgqEbAWBYFBqXydz9VXFz2BjMXqwXnL2j6HRd99RKJNRMB5X\n5LLLNG/jzQ4XBrdgn2HUCyE7iUA4LCUSTpeBKSr9kXRq+XJdPHeegoYhhZtYvgNJDAWjvniVwb/C\nYf06PahApHgOKztCNTb2GYYTeKXBt8p3hOrp6ZFE0DYqeq9wCq84+JphtJ23UYUkDhRoMAQsnMSr\nDg2hPGg5UKAxpFIn1dvby/AwHMUrDw2j0sk98KfSH1BNTczthLP4TYOG0jq7WYHBQZm5nNOlwCYM\nD8NN+DMPDaH8+MKWdFr9iYQil12m+C3/h6U9HsQ6V3gFIYvGUHZ8YUBSIZXSmVdfVV90luZv3ups\nbZgSeqrwEl6l8L3Jji9Mv3GAk3k8ghNx4EW8UuF/kxxfWBgYUP+R9+tbD6aME3HgVbxa4X+TnMwz\nGospZMRZO+ti9F7hZbxq4XuTHV84csli9Rw9wtpZF7JreDiXL6hvMKtcvmDZ9wQmwsQnNIYJji+M\nrlmrWcGguru7tGTJUplmQanUSSUSc52tt8HZEa6jBVM//NlxHXp/UAOZvOKxsH73kjZdu/JChYIB\nyx4HKEfIoiHUenxhIBCUadLDcZJdw8M//Nlx/eRQ37nHyeTHbl/3JwstfSyghOFieJqZz8tMpYoz\niGsQCIcVSCQ4H9il7ArYXL6gQ+8PVrx26P1Bho5hm6o92dHRUe3evfvsnq8Bff3rX9eyZZU/3wLq\npXxzCaXTkmHITC6T1qwt9lrhKXZPbkqfymsgU/kPsYHhvNKn8prXFrXlsdHYqr6iX3nlFUnS97//\nfe3YsUMPPvig7UUBVZU2lygtzUmni7c7Xp72t+zu7rKoOExFPWYPG81hxWOVRy/iLWEZzYxswB5V\nX9Xt7e265557JEnHjx+XMcFSCKBeJttcQp2dNQ8dlxt/eABLeuqjXstzIuGgfveStorXfveSNkXC\njH7AHjVNfGpqatJdd92lF198Ud/5zncmva9hzFLIgb1gE4mWuj+m3fzWJqvaM3rypAaHhipfHEqr\nLTSqUCI+5e+bSLSov79fvb3HlEwmNTIyopGRYc2fP3+Sf9M85cdxMzva09vbO8njxSx/vPHi8WKb\ntv/ZbysabdLBzpRSQ1klWqNankxo05pLPDW7uNQeP/Fjm0oCpmmatd65t7dXmzZt0vPPP6/m5spP\nyk9/+rplxdUqkWhRKjVc98e1k9/aZGV7zHxe+t5jlXdxMtqkz31+xhOb0uniJJnFixdLUsUlPYlE\ns1KpUzN6HDexoz1ObyQRjzdrYOD8NuXyBaVP5WU0hz3Xg63UHq/zQ5uWLbtkwmtVX2HPPvusHn30\nUUnS7NmzFQgEFGRiCRw02eYSSiYtmTk8/pB3ho+npvR8uXEbxEg4qHltUc8F7HSw8Ybzqg4XX331\n1dq5c6e2bdumkZER7dq1S7NmzapHbcDEJthcYuzrFjCMNqXTg2xUMUVO917BxhtuUjVkm5ub9fd/\n//f1qAWoWa2bS8xU+YQoqTh8TNBOjIB1BzbecA/eCfC0em0uUWn4eLIJPY2GY+jcg4033IV3A1Cj\nUtBKBEk5jqFzl1o23kD98I4AMG30Xt2HjTfchQMCAEyq2qxqAtZdShtvlH8mW8LGG/VHyAKYED1V\nb7p25YWSip/BDgznFW85N7sY9UXIAlNUWtIjydczjQlY7woFA7ruTxbqmj+6wLMbb/gFIQtMQfmS\nntbWWZo37wLfBS3h6h+ljTfgHN5FwDT4dUcoAhawFu8kYJrmzJkj6dzJPVL1SUJuVlr3S8AC1uHd\nBMyAYbTJMNrOC1qvKfXCm5qaPNsGwK14RwENjOFhwF68s4AGRcAC9mN2MdBgCFegfniXARYpndTj\n5slPBCxQX7zTAAt4YUkPAQvUH8PFgEXccMg7+wwD7kLIAhZy8pB3eqrwklwhr6F8Rs2j/o4hf7cO\ncEipVxsIBOvSoyVg4RWjZkEvHOvQ4YFODebTSkTj+h1jqTYsXKOQD1+/hCxgs1LQ2oFwhde8cKxD\nP+s9MHa7PzswdvvTi9qdKss2vDMBjyJg4TW5Ql6HBzorXnt7oFO5Qr7OFdmPdyc8w8znZaZSMvP+\neyNOFQELLxrKZzSYT1e8NpAf0lA+U+eK7Mdwsc+Z+byUyUixmALhsNPlTItZKEgdL0ud70rptGQY\nMpPLpDVrFQi6O2SsPnuWcIWXtYZjagsbGqgQtPFwq1rDMQeqshchayE3BZqXg+kjOl6WDrx+7nY6\nfe52+zpnaqqB1Ut6CFh4XSQY1ifiyfM+ky25NJ5UJOjNjsBkCFkLuDLQPBpM45n5fPF5raSzU+bq\nqxz/g2Yy5UErVV/SwzpX+N2GhWskFT+DHcgPaU60TcvOzi72I0LWCi4LNK8H03kymeLzWclQung9\nkahvTVNUWjubTg+qp6dnLGglnRe29FTRCEKBoD69qF3rLlytoXxGvzVvvk4NjThdlm14N89Q1UBz\nYpJOLcHkFbGYZBiVr7UaxeseUQrbQCD4kSAlYNFoIsGw5kYTioQiTpdiK97RM+XGQPNRMAXCYSm5\nrPLFZNI7PfKzSge8l5TvcUzAAv7Du3qmXBhofgsmrVkrXfFJyWiTAoHif6/4ZPHrHlYK1Uo9WwD+\nwGeyMxQIh4uTnMo/ky1xMtBKAdTZWexRtxpSMunJYAoEg1L7Opmrr3LN7G2rEK6AvxGyVnBhoPkx\nmALhsOsnOdWiNGRcWj8LwL8IWQu4OdD8EkwA4EWErIUINABAuUlDNp/Pa9euXTp27JhyuZxuv/12\nrV3rvc/0AABwwqQh+9xzzykej+tb3/qWBgYGdN111xGygA/lCnn1nu6XWQj5cms7wCmThuyGDRu0\nfv16SZJpmgqFQnUpCkB9nH+A9pDawq36RDzp2wO0gXqbNGRbWlokSZlMRl/+8pe1Y8eOqt/QMGY5\nEsaJREvdH9NufmuT39ojTb9NpplVPN5scTVT94PO/zhvs/aBfFo/6z2gaDSsm5J/5mBl1nHD82wl\nv7VH8mebSqpOfPrggw90xx13aOvWrbr22murfsN0+owlhU1FItGiVGq47o9rJ7+1yW/tkWbWpqGh\nMxoYOGVxRVOTK+T15on/rXjtrRP/qz+d+8eeHzqOx5un/DznCnkN5TNqDcdc1/7ptMft/NCmBQsm\nvjZpyPb19em2227Tnj17tHLlSqvrAhpOOj0oSa5YI1vLAdpzo40zW/78ofO02sIGQ+eYsUlfOY88\n8ojS6bQeeughbd++Xdu3b9eZM/XvqQJ+4KaAlc4doF2JXw/QnswLxzr0s94DGsinZerc0PkLxzqc\nLg0eNmlPdvfu3dq9e3e9agF8y20BKzXmAdoTyRXyOjzQWfHa2wOdWnfh6oZ6PmAdNqMAbFQKV8ld\nAVsy/gDteLhVl54dIm0kDJ3DLoQsYDM3hmtJ+QHagdmjMk835jrZ0tD5QIWgbcShc1iHT/MBKBIM\na/7sOQ0ZsNK5ofNKGm3oHNaiJwsAYugc9iBkAUDnD527dZ0svIeQBYAykWCYSU6wDJ/JAgBgE0IW\nAACbELIAANiEkPUQM5+XmUrJzOedLgUAUAMmPnmAWShIHS9Lne9K6bRkGDKTy6Q1axUI8ncSALgV\nIesFHS9LB14/dzudPne7fZ0zNQEAqqIb5HJmPl/swVbS2cnQMQC4GCHrdplMsedayVC6eB2uVH44\ngJ/lCnmdzKaUK/AHHzAew8VuF4tJhlE5aFuN4nW4jhuPtrMah5wD1fFOcLlAOCwll1W+mEwWr8M1\n0unBhgjsSbfPAAAJC0lEQVRYiUPOgVrQk/WCNWuL/+3sLA4RtxpSMnnu63CFRglXiUPOgVoRsh4Q\nCAal9nUyV19V/Aw2FqMH61KNELASh5wDtWK42EMC4bACiQQBC8eVDjmvhEPOgXMIWTiGHay8i0PO\np4/Z2I2F4WLUHTtY+QOHnE8Ns7EbEyGL+mMHK1/gkPOpKc3GLinNxpakTy9qd6os2Iw/n1BX7GDl\nP6VDzgnYiVWbjc3QsX8RsqgvdrBCA6plNjb8iZBFfZV2sKqEHazgU8zGblyELOqKHazQiJiN3biY\n+IT6YwcrNCBmYzcmQhZ1xw5WaETMxm5MhCwcEwiHpQRb76GxlGZjozHwmSxggUY5OxbA1NCTBWag\nPFwb5XAAALUjZIFp6u/vl0S4AphYTcPFb731lrZv3253LYBnNNLZsQCmr2pP9vHHH9dzzz2n2bNn\n16MewDOSyaQGBk45XQYAF6vak73ooov03e9+tx61AADgK1V7suvXr9fRo0dr/oaGMUuhUGhGRU1H\nItFS98e0m9/a5Kf2mGZWkhSPNztcibX81h7Jf23yW3skf7apxPKJT+n0Gau/ZVWJRItSqeG6P66d\n/NYmv7VnaKj4OvfTcHE83uyr9kj+a5Pf2iP5o00LFkx8jXWyAADYhJAFAMAmNYXsokWLtH//frtr\nAQDAV+jJAgBgE3Z8AqaAPYrhpNxoTiezKU7w8RBCFqgRuzzBKaNmQS8c69A76S6lsgNqCxv6xNmz\naEMBBiTdjJAFakDAwkkvHOvQz3oPjN0eyKfHbn96UbtTZaEG/AkEVEHAwkm5Ql6HBzorXnt7oFO5\nQr7OFWEqCFmgBgQsnDKUz2gwn654bSA/pKF8ps4VYSoIWQBwsdZwTG1ho+K1eLhVreFYnSvCVBCy\nAOBikWBYn4gnK167NJ5klrHLMfEJAFxuw8I1kqR3013qzw4qHm7VpWdnF8PdCFkAcLlQIKhPL2rX\nxtYNOtLXyzpZDyFkAcAjIqGI5kYTTpeBKeAzWQAAbELIAgBgE0IWAACbELIAANiEkAUAwCaELDAJ\njrYDMBOELDABDgYAMFOELFABAQvACoQsMA4BC8Aq7PgEnEW4ArAaPVmgDAELwEqELAAANiFkAQCw\nCSELAIBNCFkAAGxCyAIAYBNCFgAAmxCyAADYhJAFAMAmhCwAADapuq1ioVDQ3XffrXfeeUeRSET3\n3nuvLr744nrUBgCAp1Xtyb700kvK5XJ66qmndOedd+r++++vR10AAHhe1ZA9cOCAVq1aJUm6/PLL\ndejQIduLAuqNw9kB2KFqyGYyGcVisbHboVBIIyMjthYF1BOn7wCwS9XPZGOxmIaHh8duFwoFNTVN\n/M8MY5ZCoZA11U1BItFS98e0m9/a5Lb29Pf3S5JWrPi9aX+PeLzZqnJcwW/tkfzXJr+1R/Jnm0qq\nhuyKFSv0yiuv6JprrtGbb76pZcuWTXr/dPqMZcXVKpFoUSo1XP2OHuK3NrmtPeW914GBU9P6HvF4\n87T/rRv5rT2S/9rkt/ZI/mjTggUTX6sasuvWrdNrr72mzZs3yzRN7d2718raAMcwPAzAblVDNhgM\n6u/+7u/qUQsAAL7CZhQAANiEkAUAwCaELAAANiFkAQCwCSELAIBNCFkAAGwSME3TdLoIAAD8iJ4s\nAAA2IWQBALAJIQsAgE0IWQAAbELIAgBgE0IWAACb+CJkT506pdtvv13btm3TrbfeqhMnTjhd0owN\nDQ3pS1/6km655RbdfPPNOnjwoNMlWeLFF1/UnXfe6XQZ01YoFLRnzx7dfPPN2r59u3796187XZJl\n3nrrLW3fvt3pMmYsn8/rq1/9qrZu3aqbbrpJL7/8stMlzdjo6Kh27typzZs3a8uWLXr33XedLskS\nJ0+e1OrVq9XV1eV0KbbxRcju379fl112mZ588kl95jOf0eOPP+50STP2xBNP6Morr9Q//dM/6b77\n7vPFcYP33nuvHnjgARUKBadLmbaXXnpJuVxOTz31lO68807df//9Tpdkiccff1y7d+9WNpt1upQZ\ne+655xSPx/XP//zP+t73vqd77rnH6ZJm7JVXXpEkff/739eOHTv04IMPOlzRzOXzee3Zs0ezZs1y\nuhRbVT1P1gtuvfVWjY6OSpKOHz8uwzAcrmjmbr31VkUiEUnFv2Kj0ajDFc3cihUr1N7erqeeesrp\nUqbtwIEDWrVqlSTp8ssv16FDhxyuyBoXXXSRvvvd7+prX/ua06XM2IYNG7R+/XpJkmmaCoVCDlc0\nc+3t7brqqqsk+ed33De/+U1t3rxZjz32mNOl2MpzIfv000/rH/7hH8772t69e/X7v//7+uxnP6t3\n331XTzzxhEPVTc9kbert7dVXv/pV7dq1y6Hqpm6i9lxzzTX6xS9+4VBV1shkMorFYmO3Q6GQRkZG\n1NTkubfSedavX6+jR486XYYlWlpaJBV/Vl/+8pe1Y8cOhyuyRlNTk+666y69+OKL+s53vuN0OTPy\nzDPPaM6cOVq1apXvQ1amz7z33nvm2rVrnS7DEm+//bZ5zTXXmP/5n//pdCmW+fnPf27u2LHD6TKm\nbe/evebzzz8/dnvVqlUOVmOtI0eOmBs3bnS6DEscP37cvP76682nn37a6VIs9+GHH5pXXXWVOTw8\n7HQp07Z161Zz27Zt5i233GJeccUV5o033mh++OGHTpdlC2//+X3Wo48+qo997GO67rrr1NLS4ovh\noffee09f+cpX9O1vf1uXXnqp0+XgrBUrVuiVV17RNddcozfffFPLli1zuiSM09fXp9tuu0179uzR\nypUrnS7HEs8++6xOnDihL37xi5o9e7YCgYCCQe9OqXnyySfH/v/27dt19913a/78+Q5WZB9fhOyN\nN96ou+66S//6r/+q0dFR7d271+mSZuyBBx5QLpfTN77xDUlSLBbTww8/7HBVWLdunV577TVt3rxZ\npmn64rXmN4888ojS6bQeeughPfTQQ5KKE7u8PMHm6quv1s6dO7Vt2zaNjIxo165dnm5PI+EUHgAA\nbOLd8QYAAFyOkAUAwCaELAAANiFkAQCwCSELAIBNCFkAAGxCyAIAYBNCFgAAm/x/8Xb+miF6TuoA\nAAAASUVORK5CYII=\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "plot_decision_regions(X_test, y_test, logreg)" ] }, { "cell_type": "code", "execution_count": 6, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([[ 1.28535145, 1.43691285],\n", " [ 0.94808785, 4.7321192 ],\n", " [ 3.00251949, 0.74265357],\n", " [-0.6700734 , 2.26685667],\n", " [ 2.11567076, 3.06896151],\n", " [-2.56114686, 3.59947678],\n", " [-1.62535654, 2.25440397],\n", " [ 3.97820955, 2.37817845],\n", " [-2.02493646, 4.84741432],\n", " [-0.33887422, 3.23482487],\n", " [ 2.2635425 , 1.8743027 ],\n", " [-0.42724442, 3.57314599],\n", " [-1.88089792, 1.54293097],\n", " [ 2.50904929, 5.7731461 ],\n", " [-0.57748321, 3.0054335 ],\n", " [ 1.12031365, 5.75806083],\n", " [-0.88677249, 1.30092622],\n", " [ 0.9845149 , 1.95211539],\n", " [ 2.47034915, 4.09862906],\n", " [ 2.72756228, 1.3051255 ],\n", " [-0.73000011, 6.25456272],\n", " [-2.33031368, 2.22833248],\n", " [-0.63762777, 4.09104705],\n", " [ 3.2460247 , 2.84942165],\n", " [ 0.4666179 , 3.86571303]])" ] }, "execution_count": 6, "metadata": {}, "output_type": "execute_result" } ], "source": [ "X_test" ] }, { "cell_type": "code", "execution_count": 7, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([1, 0, 1, 2, 0, 2, 2, 1, 2, 2, 1, 2, 2, 0, 2, 0, 2, 1, 0, 1, 0, 2, 0,\n", " 0, 0])" ] }, "execution_count": 7, "metadata": {}, "output_type": "execute_result" } ], "source": [ "y_test" ] }, { "cell_type": "code", "execution_count": 8, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Cross-validation scores: [ 0.88235294 0.84848485 0.90909091]\n" ] } ], "source": [ "from sklearn.model_selection import cross_val_score\n", "from sklearn.datasets import load_iris\n", "from sklearn.linear_model import LogisticRegression\n", "\n", "scores = cross_val_score(logreg, X, y)\n", "print(\"Cross-validation scores: {}\".format(scores))" ] }, { "cell_type": "code", "execution_count": 9, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Cross-validation scores: [ 0.9047619 0.85714286 0.9047619 0.89473684 0.88888889]\n" ] } ], "source": [ "scores = cross_val_score(logreg, X, y, cv=5)\n", "print(\"Cross-validation scores: {}\".format(scores))" ] }, { "cell_type": "code", "execution_count": 10, "metadata": { "collapsed": true }, "outputs": [], "source": [ "from sklearn.model_selection import KFold\n", "kfold = KFold(n_splits=5)" ] }, { "cell_type": "code", "execution_count": 11, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Cross-validation scores:\n", "[ 0.85 0.9 0.95 0.8 0.95]\n" ] } ], "source": [ "print(\"Cross-validation scores:\\n{}\".format(\n", " cross_val_score(logreg, X, y, cv=kfold)))" ] }, { "cell_type": "code", "execution_count": 12, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Cross-validation scores:\n", "[ 0.88235294 0.93939394 0.84848485]\n" ] } ], "source": [ "kfold = KFold(n_splits=3)\n", "print(\"Cross-validation scores:\\n{}\".format(\n", " cross_val_score(logreg, X, y, cv=kfold)))" ] }, { "cell_type": "code", "execution_count": 13, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Cross-validation scores:\n", "[ 0.91176471 0.87878788 0.93939394]\n" ] } ], "source": [ "kfold = KFold(n_splits=3, shuffle=True, random_state=0)\n", "print(\"Cross-validation scores:\\n{}\".format(\n", " cross_val_score(logreg, X, y, cv=kfold)))" ] }, { "cell_type": "code", "execution_count": 14, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Cross-validation scores:\n", "[ 0.84 0.88 0.9 0.86 0.9 0.86 0.86 0.92 0.94 0.9 ]\n" ] } ], "source": [ "from sklearn.model_selection import ShuffleSplit\n", "shuffle_split = ShuffleSplit(test_size=.5, train_size=.5, n_splits=10)\n", "scores = cross_val_score(logreg, X, y, cv=shuffle_split)\n", "print(\"Cross-validation scores:\\n{}\".format(scores))" ] }, { "cell_type": "code", "execution_count": 15, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Parameter grid:\n", "{'C': [0.001, 0.01, 0.1, 1, 10, 100], 'gamma': [0.001, 0.01, 0.1, 1, 10, 100]}\n" ] } ], "source": [ "param_grid = {'C': [0.001, 0.01, 0.1, 1, 10, 100],\n", " 'gamma': [0.001, 0.01, 0.1, 1, 10, 100]}\n", "print(\"Parameter grid:\\n{}\".format(param_grid))" ] }, { "cell_type": "code", "execution_count": 16, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Test set score: 0.88\n", "Best parameters: {'C': 1, 'gamma': 1}\n", "Best cross-validation score: 0.95\n" ] } ], "source": [ "from sklearn.model_selection import GridSearchCV\n", "from sklearn.svm import SVC\n", "grid_search = GridSearchCV(SVC(), param_grid, cv=5)\n", "X_train, X_test, y_train, y_test = train_test_split(\n", " X, y, random_state=0)\n", "grid_search.fit(X_train, y_train)\n", "print(\"Test set score: {:.2f}\".format(grid_search.score(X_test, y_test)))\n", "print(\"Best parameters: {}\".format(grid_search.best_params_))\n", "print(\"Best cross-validation score: {:.2f}\".format(grid_search.best_score_))" ] }, { "cell_type": "code", "execution_count": 17, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Best estimator:\n", "SVC(C=1, cache_size=200, class_weight=None, coef0=0.0,\n", " decision_function_shape=None, degree=3, gamma=1, kernel='rbf',\n", " max_iter=-1, probability=False, random_state=None, shrinking=True,\n", " tol=0.001, verbose=False)\n" ] } ], "source": [ "print(\"Best estimator:\\n{}\".format(grid_search.best_estimator_))" ] }, { "cell_type": "code", "execution_count": 18, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
mean_fit_timemean_score_timemean_test_scoremean_train_scoreparam_Cparam_gammaparamsrank_test_scoresplit0_test_scoresplit0_train_score...split2_test_scoresplit2_train_scoresplit3_test_scoresplit3_train_scoresplit4_test_scoresplit4_train_scorestd_fit_timestd_score_timestd_test_scorestd_train_score
00.0008520.0004250.360.3599690.0010.001{'C': 0.001, 'gamma': 0.001}200.3750.355932...0.3333330.3666670.3571430.3606560.3571430.3606560.0002820.0001710.0155330.00396
10.0005340.0002620.360.3599690.0010.01{'C': 0.001, 'gamma': 0.01}200.3750.355932...0.3333330.3666670.3571430.3606560.3571430.3606560.0001180.0000560.0155330.00396
20.0004940.0002300.360.3599690.0010.1{'C': 0.001, 'gamma': 0.1}200.3750.355932...0.3333330.3666670.3571430.3606560.3571430.3606560.0000390.0000140.0155330.00396
30.0006560.0003210.360.3599690.0011{'C': 0.001, 'gamma': 1}200.3750.355932...0.3333330.3666670.3571430.3606560.3571430.3606560.0001380.0000820.0155330.00396
40.0007700.0004020.360.3599690.00110{'C': 0.001, 'gamma': 10}200.3750.355932...0.3333330.3666670.3571430.3606560.3571430.3606560.0002110.0001590.0155330.00396
\n", "

5 rows × 22 columns

\n", "
" ], "text/plain": [ " mean_fit_time mean_score_time mean_test_score mean_train_score param_C \\\n", "0 0.000852 0.000425 0.36 0.359969 0.001 \n", "1 0.000534 0.000262 0.36 0.359969 0.001 \n", "2 0.000494 0.000230 0.36 0.359969 0.001 \n", "3 0.000656 0.000321 0.36 0.359969 0.001 \n", "4 0.000770 0.000402 0.36 0.359969 0.001 \n", "\n", " param_gamma params rank_test_score \\\n", "0 0.001 {'C': 0.001, 'gamma': 0.001} 20 \n", "1 0.01 {'C': 0.001, 'gamma': 0.01} 20 \n", "2 0.1 {'C': 0.001, 'gamma': 0.1} 20 \n", "3 1 {'C': 0.001, 'gamma': 1} 20 \n", "4 10 {'C': 0.001, 'gamma': 10} 20 \n", "\n", " split0_test_score split0_train_score ... split2_test_score \\\n", "0 0.375 0.355932 ... 0.333333 \n", "1 0.375 0.355932 ... 0.333333 \n", "2 0.375 0.355932 ... 0.333333 \n", "3 0.375 0.355932 ... 0.333333 \n", "4 0.375 0.355932 ... 0.333333 \n", "\n", " split2_train_score split3_test_score split3_train_score \\\n", "0 0.366667 0.357143 0.360656 \n", "1 0.366667 0.357143 0.360656 \n", "2 0.366667 0.357143 0.360656 \n", "3 0.366667 0.357143 0.360656 \n", "4 0.366667 0.357143 0.360656 \n", "\n", " split4_test_score split4_train_score std_fit_time std_score_time \\\n", "0 0.357143 0.360656 0.000282 0.000171 \n", "1 0.357143 0.360656 0.000118 0.000056 \n", "2 0.357143 0.360656 0.000039 0.000014 \n", "3 0.357143 0.360656 0.000138 0.000082 \n", "4 0.357143 0.360656 0.000211 0.000159 \n", "\n", " std_test_score std_train_score \n", "0 0.015533 0.00396 \n", "1 0.015533 0.00396 \n", "2 0.015533 0.00396 \n", "3 0.015533 0.00396 \n", "4 0.015533 0.00396 \n", "\n", "[5 rows x 22 columns]" ] }, "execution_count": 18, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# convert to DataFrame\n", "results = pd.DataFrame(grid_search.cv_results_)\n", "# show the first 5 rows\n", "results.head()" ] }, { "cell_type": "code", "execution_count": 19, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "" ] }, "execution_count": 19, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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\njX8Anb+Si+Pn4moAAAAASUVORK5CYII=\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "scores = np.array(results.mean_test_score).reshape(6, 6)\n", "sns.heatmap(scores, xticklabels=param_grid['gamma'],\n", " yticklabels=param_grid['C'], annot=True)" ] }, { "cell_type": "code", "execution_count": 20, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "List of grids:\n", "[{'kernel': ['rbf'], 'C': [0.001, 0.01, 0.1, 1, 10, 100], 'gamma': [0.001, 0.01, 0.1, 1, 10, 100]}, {'kernel': ['linear'], 'C': [0.001, 0.01, 0.1, 1, 10, 100]}]\n" ] } ], "source": [ "param_grid = [{'kernel': ['rbf'],\n", " 'C': [0.001, 0.01, 0.1, 1, 10, 100],\n", " 'gamma': [0.001, 0.01, 0.1, 1, 10, 100]},\n", " {'kernel': ['linear'],\n", " 'C': [0.001, 0.01, 0.1, 1, 10, 100]}]\n", "print(\"List of grids:\\n{}\".format(param_grid))" ] }, { "cell_type": "code", "execution_count": 21, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Best parameters: {'C': 1, 'gamma': 1, 'kernel': 'rbf'}\n", "Best cross-validation score: 0.95\n" ] } ], "source": [ "grid_search = GridSearchCV(SVC(), param_grid, cv=5)\n", "grid_search.fit(X_train, y_train)\n", "print(\"Best parameters: {}\".format(grid_search.best_params_))\n", "print(\"Best cross-validation score: {:.2f}\".format(grid_search.best_score_))" ] }, { "cell_type": "code", "execution_count": 22, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
0123456789...32333435363738394041
mean_fit_time0.0006007190.0008836270.001116660.00113530.0009963510.001135780.0008730890.0005919460.0004972460.000456381...0.0003864290.0004539970.0005328180.0005251410.0003467560.0003307340.0003045560.0003061770.0003302570.000708103
mean_score_time0.0002576830.0008519170.0005381580.0005984780.0004192830.0006288050.0004880910.00029850.0002299310.000209188...0.0001842020.0001918320.0002192020.0002044680.0001897810.0001811980.000185490.0001755710.0001834870.000184298
mean_test_score0.360.360.360.360.360.360.360.360.360.36...0.920.920.7466670.4533330.360.9066670.8933330.8933330.8933330.893333
mean_train_score0.3599690.3599690.3599690.3599690.3599690.3599690.3599690.3599690.3599690.359969...0.9733820.976772110.3599690.9132580.9199810.9365410.9333190.946654
param_C0.0010.0010.0010.0010.0010.0010.010.010.010.01...1001001001000.0010.010.1110100
param_gamma0.0010.010.11101000.0010.010.11...0.1110100NaNNaNNaNNaNNaNNaN
param_kernelrbfrbfrbfrbfrbfrbfrbfrbfrbfrbf...rbfrbfrbfrbflinearlinearlinearlinearlinearlinear
params{'C': 0.001, 'gamma': 0.001, 'kernel': 'rbf'}{'C': 0.001, 'gamma': 0.01, 'kernel': 'rbf'}{'C': 0.001, 'gamma': 0.1, 'kernel': 'rbf'}{'C': 0.001, 'gamma': 1, 'kernel': 'rbf'}{'C': 0.001, 'gamma': 10, 'kernel': 'rbf'}{'C': 0.001, 'gamma': 100, 'kernel': 'rbf'}{'C': 0.01, 'gamma': 0.001, 'kernel': 'rbf'}{'C': 0.01, 'gamma': 0.01, 'kernel': 'rbf'}{'C': 0.01, 'gamma': 0.1, 'kernel': 'rbf'}{'C': 0.01, 'gamma': 1, 'kernel': 'rbf'}...{'C': 100, 'gamma': 0.1, 'kernel': 'rbf'}{'C': 100, 'gamma': 1, 'kernel': 'rbf'}{'C': 100, 'gamma': 10, 'kernel': 'rbf'}{'C': 100, 'gamma': 100, 'kernel': 'rbf'}{'C': 0.001, 'kernel': 'linear'}{'C': 0.01, 'kernel': 'linear'}{'C': 0.1, 'kernel': 'linear'}{'C': 1, 'kernel': 'linear'}{'C': 10, 'kernel': 'linear'}{'C': 100, 'kernel': 'linear'}
rank_test_score25252525252525252525...33192225710101010
split0_test_score0.3750.3750.3750.3750.3750.3750.3750.3750.3750.375...10.93750.750.43750.3750.93750.8750.8750.8750.875
split0_train_score0.3559320.3559320.3559320.3559320.3559320.3559320.3559320.3559320.3559320.355932...0.9661020.966102110.3559320.9152540.8983050.8983050.9152540.915254
split1_test_score0.3750.3750.3750.3750.3750.3750.3750.3750.3750.375...0.8750.8750.81250.43750.3750.8750.8750.8750.93750.9375
split1_train_score0.3559320.3559320.3559320.3559320.3559320.3559320.3559320.3559320.3559320.355932...0.9830511110.3559320.8983050.9322030.9491530.9491530.966102
split2_test_score0.3333330.3333330.3333330.3333330.3333330.3333330.3333330.3333330.3333330.333333...0.80.9333330.6666670.40.3333330.8666670.8666670.8666670.80.8
split2_train_score0.3666670.3666670.3666670.3666670.3666670.3666670.3666670.3666670.3666670.366667...0.9833330.983333110.3666670.9166670.9333330.950.9333330.966667
split3_test_score0.3571430.3571430.3571430.3571430.3571430.3571430.3571430.3571430.3571430.357143...0.9285710.9285710.6428570.50.3571430.8571430.8571430.8571430.8571430.857143
split3_train_score0.3606560.3606560.3606560.3606560.3606560.3606560.3606560.3606560.3606560.360656...0.9672130.967213110.3606560.9344260.9344260.950820.9344260.95082
split4_test_score0.3571430.3571430.3571430.3571430.3571430.3571430.3571430.3571430.3571430.357143...10.9285710.8571430.50.35714311111
split4_train_score0.3606560.3606560.3606560.3606560.3606560.3606560.3606560.3606560.3606560.360656...0.9672130.967213110.3606560.9016390.9016390.9344260.9344260.934426
std_fit_time0.0001496390.0004197990.0004351660.0002154380.000383840.0002996980.0002537430.0001200458.02341e-053.29161e-05...3.51941e-053.22151e-058.05663e-052.90466e-051.13799e-056.73911e-066.78819e-068.73719e-062.1366e-050.00031625
std_score_time2.08539e-050.001040850.0001594950.0001701870.0001427390.0001412390.0002113965.26278e-051.89746e-051.90744e-05...6.81327e-069.67004e-063.48269e-056.07401e-066.18971e-064.4604e-061.68924e-051.94629e-061.54289e-051.03067e-05
std_test_score0.01553290.01553290.01553290.01553290.01553290.01553290.01553290.01553290.01553290.0155329...0.07671840.0236710.08060290.03858610.01553290.05310960.05151670.05151670.06781160.0678116
std_train_score0.003959630.003959630.003959630.003959630.003959630.003959630.003959630.003959630.003959630.00395963...0.008020330.0132604000.003959630.0128240.01638660.02005260.01076560.0196547
\n", "

23 rows × 42 columns

\n", "
" ], "text/plain": [ " 0 \\\n", "mean_fit_time 0.000600719 \n", "mean_score_time 0.000257683 \n", "mean_test_score 0.36 \n", "mean_train_score 0.359969 \n", "param_C 0.001 \n", "param_gamma 0.001 \n", "param_kernel rbf \n", "params {'C': 0.001, 'gamma': 0.001, 'kernel': 'rbf'} \n", "rank_test_score 25 \n", "split0_test_score 0.375 \n", "split0_train_score 0.355932 \n", "split1_test_score 0.375 \n", "split1_train_score 0.355932 \n", "split2_test_score 0.333333 \n", "split2_train_score 0.366667 \n", "split3_test_score 0.357143 \n", "split3_train_score 0.360656 \n", "split4_test_score 0.357143 \n", "split4_train_score 0.360656 \n", "std_fit_time 0.000149639 \n", "std_score_time 2.08539e-05 \n", "std_test_score 0.0155329 \n", "std_train_score 0.00395963 \n", "\n", " 1 \\\n", "mean_fit_time 0.000883627 \n", "mean_score_time 0.000851917 \n", "mean_test_score 0.36 \n", "mean_train_score 0.359969 \n", "param_C 0.001 \n", "param_gamma 0.01 \n", "param_kernel rbf \n", "params {'C': 0.001, 'gamma': 0.01, 'kernel': 'rbf'} \n", "rank_test_score 25 \n", "split0_test_score 0.375 \n", "split0_train_score 0.355932 \n", "split1_test_score 0.375 \n", "split1_train_score 0.355932 \n", "split2_test_score 0.333333 \n", "split2_train_score 0.366667 \n", "split3_test_score 0.357143 \n", "split3_train_score 0.360656 \n", "split4_test_score 0.357143 \n", "split4_train_score 0.360656 \n", "std_fit_time 0.000419799 \n", "std_score_time 0.00104085 \n", "std_test_score 0.0155329 \n", "std_train_score 0.00395963 \n", "\n", " 2 \\\n", "mean_fit_time 0.00111666 \n", "mean_score_time 0.000538158 \n", "mean_test_score 0.36 \n", "mean_train_score 0.359969 \n", "param_C 0.001 \n", "param_gamma 0.1 \n", "param_kernel rbf \n", "params {'C': 0.001, 'gamma': 0.1, 'kernel': 'rbf'} \n", "rank_test_score 25 \n", "split0_test_score 0.375 \n", "split0_train_score 0.355932 \n", "split1_test_score 0.375 \n", "split1_train_score 0.355932 \n", "split2_test_score 0.333333 \n", "split2_train_score 0.366667 \n", "split3_test_score 0.357143 \n", "split3_train_score 0.360656 \n", "split4_test_score 0.357143 \n", "split4_train_score 0.360656 \n", "std_fit_time 0.000435166 \n", "std_score_time 0.000159495 \n", "std_test_score 0.0155329 \n", "std_train_score 0.00395963 \n", "\n", " 3 \\\n", "mean_fit_time 0.0011353 \n", "mean_score_time 0.000598478 \n", "mean_test_score 0.36 \n", "mean_train_score 0.359969 \n", "param_C 0.001 \n", "param_gamma 1 \n", "param_kernel rbf \n", "params {'C': 0.001, 'gamma': 1, 'kernel': 'rbf'} \n", "rank_test_score 25 \n", "split0_test_score 0.375 \n", "split0_train_score 0.355932 \n", "split1_test_score 0.375 \n", "split1_train_score 0.355932 \n", "split2_test_score 0.333333 \n", "split2_train_score 0.366667 \n", "split3_test_score 0.357143 \n", "split3_train_score 0.360656 \n", "split4_test_score 0.357143 \n", "split4_train_score 0.360656 \n", "std_fit_time 0.000215438 \n", "std_score_time 0.000170187 \n", "std_test_score 0.0155329 \n", "std_train_score 0.00395963 \n", "\n", " 4 \\\n", "mean_fit_time 0.000996351 \n", "mean_score_time 0.000419283 \n", "mean_test_score 0.36 \n", "mean_train_score 0.359969 \n", "param_C 0.001 \n", "param_gamma 10 \n", "param_kernel rbf \n", "params {'C': 0.001, 'gamma': 10, 'kernel': 'rbf'} \n", "rank_test_score 25 \n", "split0_test_score 0.375 \n", "split0_train_score 0.355932 \n", "split1_test_score 0.375 \n", "split1_train_score 0.355932 \n", "split2_test_score 0.333333 \n", "split2_train_score 0.366667 \n", "split3_test_score 0.357143 \n", "split3_train_score 0.360656 \n", "split4_test_score 0.357143 \n", "split4_train_score 0.360656 \n", "std_fit_time 0.00038384 \n", "std_score_time 0.000142739 \n", "std_test_score 0.0155329 \n", "std_train_score 0.00395963 \n", "\n", " 5 \\\n", "mean_fit_time 0.00113578 \n", "mean_score_time 0.000628805 \n", "mean_test_score 0.36 \n", "mean_train_score 0.359969 \n", "param_C 0.001 \n", "param_gamma 100 \n", "param_kernel rbf \n", "params {'C': 0.001, 'gamma': 100, 'kernel': 'rbf'} \n", "rank_test_score 25 \n", "split0_test_score 0.375 \n", "split0_train_score 0.355932 \n", "split1_test_score 0.375 \n", "split1_train_score 0.355932 \n", "split2_test_score 0.333333 \n", "split2_train_score 0.366667 \n", "split3_test_score 0.357143 \n", "split3_train_score 0.360656 \n", "split4_test_score 0.357143 \n", "split4_train_score 0.360656 \n", "std_fit_time 0.000299698 \n", "std_score_time 0.000141239 \n", "std_test_score 0.0155329 \n", "std_train_score 0.00395963 \n", "\n", " 6 \\\n", "mean_fit_time 0.000873089 \n", "mean_score_time 0.000488091 \n", "mean_test_score 0.36 \n", "mean_train_score 0.359969 \n", "param_C 0.01 \n", "param_gamma 0.001 \n", "param_kernel rbf \n", "params {'C': 0.01, 'gamma': 0.001, 'kernel': 'rbf'} \n", "rank_test_score 25 \n", "split0_test_score 0.375 \n", "split0_train_score 0.355932 \n", "split1_test_score 0.375 \n", "split1_train_score 0.355932 \n", "split2_test_score 0.333333 \n", "split2_train_score 0.366667 \n", "split3_test_score 0.357143 \n", "split3_train_score 0.360656 \n", "split4_test_score 0.357143 \n", "split4_train_score 0.360656 \n", "std_fit_time 0.000253743 \n", "std_score_time 0.000211396 \n", "std_test_score 0.0155329 \n", "std_train_score 0.00395963 \n", "\n", " 7 \\\n", "mean_fit_time 0.000591946 \n", "mean_score_time 0.0002985 \n", "mean_test_score 0.36 \n", "mean_train_score 0.359969 \n", "param_C 0.01 \n", "param_gamma 0.01 \n", "param_kernel rbf \n", "params {'C': 0.01, 'gamma': 0.01, 'kernel': 'rbf'} \n", "rank_test_score 25 \n", "split0_test_score 0.375 \n", "split0_train_score 0.355932 \n", "split1_test_score 0.375 \n", "split1_train_score 0.355932 \n", "split2_test_score 0.333333 \n", "split2_train_score 0.366667 \n", "split3_test_score 0.357143 \n", "split3_train_score 0.360656 \n", "split4_test_score 0.357143 \n", "split4_train_score 0.360656 \n", "std_fit_time 0.000120045 \n", "std_score_time 5.26278e-05 \n", "std_test_score 0.0155329 \n", "std_train_score 0.00395963 \n", "\n", " 8 \\\n", "mean_fit_time 0.000497246 \n", "mean_score_time 0.000229931 \n", "mean_test_score 0.36 \n", "mean_train_score 0.359969 \n", "param_C 0.01 \n", "param_gamma 0.1 \n", "param_kernel rbf \n", "params {'C': 0.01, 'gamma': 0.1, 'kernel': 'rbf'} \n", "rank_test_score 25 \n", "split0_test_score 0.375 \n", "split0_train_score 0.355932 \n", "split1_test_score 0.375 \n", "split1_train_score 0.355932 \n", "split2_test_score 0.333333 \n", "split2_train_score 0.366667 \n", "split3_test_score 0.357143 \n", "split3_train_score 0.360656 \n", "split4_test_score 0.357143 \n", "split4_train_score 0.360656 \n", "std_fit_time 8.02341e-05 \n", "std_score_time 1.89746e-05 \n", "std_test_score 0.0155329 \n", "std_train_score 0.00395963 \n", "\n", " 9 \\\n", "mean_fit_time 0.000456381 \n", "mean_score_time 0.000209188 \n", "mean_test_score 0.36 \n", "mean_train_score 0.359969 \n", "param_C 0.01 \n", "param_gamma 1 \n", "param_kernel rbf \n", "params {'C': 0.01, 'gamma': 1, 'kernel': 'rbf'} \n", "rank_test_score 25 \n", "split0_test_score 0.375 \n", "split0_train_score 0.355932 \n", "split1_test_score 0.375 \n", "split1_train_score 0.355932 \n", "split2_test_score 0.333333 \n", "split2_train_score 0.366667 \n", "split3_test_score 0.357143 \n", "split3_train_score 0.360656 \n", "split4_test_score 0.357143 \n", "split4_train_score 0.360656 \n", "std_fit_time 3.29161e-05 \n", "std_score_time 1.90744e-05 \n", "std_test_score 0.0155329 \n", "std_train_score 0.00395963 \n", "\n", " ... \\\n", "mean_fit_time ... \n", "mean_score_time ... \n", "mean_test_score ... \n", "mean_train_score ... \n", "param_C ... \n", "param_gamma ... \n", "param_kernel ... \n", "params ... \n", "rank_test_score ... \n", "split0_test_score ... \n", "split0_train_score ... \n", "split1_test_score ... \n", "split1_train_score ... \n", "split2_test_score ... \n", "split2_train_score ... \n", "split3_test_score ... \n", "split3_train_score ... \n", "split4_test_score ... \n", "split4_train_score ... \n", "std_fit_time ... \n", "std_score_time ... \n", "std_test_score ... \n", "std_train_score ... \n", "\n", " 32 \\\n", "mean_fit_time 0.000386429 \n", "mean_score_time 0.000184202 \n", "mean_test_score 0.92 \n", "mean_train_score 0.973382 \n", "param_C 100 \n", "param_gamma 0.1 \n", "param_kernel rbf \n", "params {'C': 100, 'gamma': 0.1, 'kernel': 'rbf'} \n", "rank_test_score 3 \n", "split0_test_score 1 \n", "split0_train_score 0.966102 \n", "split1_test_score 0.875 \n", "split1_train_score 0.983051 \n", "split2_test_score 0.8 \n", "split2_train_score 0.983333 \n", "split3_test_score 0.928571 \n", "split3_train_score 0.967213 \n", "split4_test_score 1 \n", "split4_train_score 0.967213 \n", "std_fit_time 3.51941e-05 \n", "std_score_time 6.81327e-06 \n", "std_test_score 0.0767184 \n", "std_train_score 0.00802033 \n", "\n", " 33 \\\n", "mean_fit_time 0.000453997 \n", "mean_score_time 0.000191832 \n", "mean_test_score 0.92 \n", "mean_train_score 0.976772 \n", "param_C 100 \n", "param_gamma 1 \n", "param_kernel rbf \n", "params {'C': 100, 'gamma': 1, 'kernel': 'rbf'} \n", "rank_test_score 3 \n", "split0_test_score 0.9375 \n", "split0_train_score 0.966102 \n", "split1_test_score 0.875 \n", "split1_train_score 1 \n", "split2_test_score 0.933333 \n", "split2_train_score 0.983333 \n", "split3_test_score 0.928571 \n", "split3_train_score 0.967213 \n", "split4_test_score 0.928571 \n", "split4_train_score 0.967213 \n", "std_fit_time 3.22151e-05 \n", "std_score_time 9.67004e-06 \n", "std_test_score 0.023671 \n", "std_train_score 0.0132604 \n", "\n", " 34 \\\n", "mean_fit_time 0.000532818 \n", "mean_score_time 0.000219202 \n", "mean_test_score 0.746667 \n", "mean_train_score 1 \n", "param_C 100 \n", "param_gamma 10 \n", "param_kernel rbf \n", "params {'C': 100, 'gamma': 10, 'kernel': 'rbf'} \n", "rank_test_score 19 \n", "split0_test_score 0.75 \n", "split0_train_score 1 \n", "split1_test_score 0.8125 \n", "split1_train_score 1 \n", "split2_test_score 0.666667 \n", "split2_train_score 1 \n", "split3_test_score 0.642857 \n", "split3_train_score 1 \n", "split4_test_score 0.857143 \n", "split4_train_score 1 \n", "std_fit_time 8.05663e-05 \n", "std_score_time 3.48269e-05 \n", "std_test_score 0.0806029 \n", "std_train_score 0 \n", "\n", " 35 \\\n", "mean_fit_time 0.000525141 \n", "mean_score_time 0.000204468 \n", "mean_test_score 0.453333 \n", "mean_train_score 1 \n", "param_C 100 \n", "param_gamma 100 \n", "param_kernel rbf \n", "params {'C': 100, 'gamma': 100, 'kernel': 'rbf'} \n", "rank_test_score 22 \n", "split0_test_score 0.4375 \n", "split0_train_score 1 \n", "split1_test_score 0.4375 \n", "split1_train_score 1 \n", "split2_test_score 0.4 \n", "split2_train_score 1 \n", "split3_test_score 0.5 \n", "split3_train_score 1 \n", "split4_test_score 0.5 \n", "split4_train_score 1 \n", "std_fit_time 2.90466e-05 \n", "std_score_time 6.07401e-06 \n", "std_test_score 0.0385861 \n", "std_train_score 0 \n", "\n", " 36 \\\n", "mean_fit_time 0.000346756 \n", "mean_score_time 0.000189781 \n", "mean_test_score 0.36 \n", "mean_train_score 0.359969 \n", "param_C 0.001 \n", "param_gamma NaN \n", "param_kernel linear \n", "params {'C': 0.001, 'kernel': 'linear'} \n", "rank_test_score 25 \n", "split0_test_score 0.375 \n", "split0_train_score 0.355932 \n", "split1_test_score 0.375 \n", "split1_train_score 0.355932 \n", "split2_test_score 0.333333 \n", "split2_train_score 0.366667 \n", "split3_test_score 0.357143 \n", "split3_train_score 0.360656 \n", "split4_test_score 0.357143 \n", "split4_train_score 0.360656 \n", "std_fit_time 1.13799e-05 \n", "std_score_time 6.18971e-06 \n", "std_test_score 0.0155329 \n", "std_train_score 0.00395963 \n", "\n", " 37 \\\n", "mean_fit_time 0.000330734 \n", "mean_score_time 0.000181198 \n", "mean_test_score 0.906667 \n", "mean_train_score 0.913258 \n", "param_C 0.01 \n", "param_gamma NaN \n", "param_kernel linear \n", "params {'C': 0.01, 'kernel': 'linear'} \n", "rank_test_score 7 \n", "split0_test_score 0.9375 \n", "split0_train_score 0.915254 \n", "split1_test_score 0.875 \n", "split1_train_score 0.898305 \n", "split2_test_score 0.866667 \n", "split2_train_score 0.916667 \n", "split3_test_score 0.857143 \n", "split3_train_score 0.934426 \n", "split4_test_score 1 \n", "split4_train_score 0.901639 \n", "std_fit_time 6.73911e-06 \n", "std_score_time 4.4604e-06 \n", "std_test_score 0.0531096 \n", "std_train_score 0.012824 \n", "\n", " 38 \\\n", "mean_fit_time 0.000304556 \n", "mean_score_time 0.00018549 \n", "mean_test_score 0.893333 \n", "mean_train_score 0.919981 \n", "param_C 0.1 \n", "param_gamma NaN \n", "param_kernel linear \n", "params {'C': 0.1, 'kernel': 'linear'} \n", "rank_test_score 10 \n", "split0_test_score 0.875 \n", "split0_train_score 0.898305 \n", "split1_test_score 0.875 \n", "split1_train_score 0.932203 \n", "split2_test_score 0.866667 \n", "split2_train_score 0.933333 \n", "split3_test_score 0.857143 \n", "split3_train_score 0.934426 \n", "split4_test_score 1 \n", "split4_train_score 0.901639 \n", "std_fit_time 6.78819e-06 \n", "std_score_time 1.68924e-05 \n", "std_test_score 0.0515167 \n", "std_train_score 0.0163866 \n", "\n", " 39 \\\n", "mean_fit_time 0.000306177 \n", "mean_score_time 0.000175571 \n", "mean_test_score 0.893333 \n", "mean_train_score 0.936541 \n", "param_C 1 \n", "param_gamma NaN \n", "param_kernel linear \n", "params {'C': 1, 'kernel': 'linear'} \n", "rank_test_score 10 \n", "split0_test_score 0.875 \n", "split0_train_score 0.898305 \n", "split1_test_score 0.875 \n", "split1_train_score 0.949153 \n", "split2_test_score 0.866667 \n", "split2_train_score 0.95 \n", "split3_test_score 0.857143 \n", "split3_train_score 0.95082 \n", "split4_test_score 1 \n", "split4_train_score 0.934426 \n", "std_fit_time 8.73719e-06 \n", "std_score_time 1.94629e-06 \n", "std_test_score 0.0515167 \n", "std_train_score 0.0200526 \n", "\n", " 40 \\\n", "mean_fit_time 0.000330257 \n", "mean_score_time 0.000183487 \n", "mean_test_score 0.893333 \n", "mean_train_score 0.933319 \n", "param_C 10 \n", "param_gamma NaN \n", "param_kernel linear \n", "params {'C': 10, 'kernel': 'linear'} \n", "rank_test_score 10 \n", "split0_test_score 0.875 \n", "split0_train_score 0.915254 \n", "split1_test_score 0.9375 \n", "split1_train_score 0.949153 \n", "split2_test_score 0.8 \n", "split2_train_score 0.933333 \n", "split3_test_score 0.857143 \n", "split3_train_score 0.934426 \n", "split4_test_score 1 \n", "split4_train_score 0.934426 \n", "std_fit_time 2.1366e-05 \n", "std_score_time 1.54289e-05 \n", "std_test_score 0.0678116 \n", "std_train_score 0.0107656 \n", "\n", " 41 \n", "mean_fit_time 0.000708103 \n", "mean_score_time 0.000184298 \n", "mean_test_score 0.893333 \n", "mean_train_score 0.946654 \n", "param_C 100 \n", "param_gamma NaN \n", "param_kernel linear \n", "params {'C': 100, 'kernel': 'linear'} \n", "rank_test_score 10 \n", "split0_test_score 0.875 \n", "split0_train_score 0.915254 \n", "split1_test_score 0.9375 \n", "split1_train_score 0.966102 \n", "split2_test_score 0.8 \n", "split2_train_score 0.966667 \n", "split3_test_score 0.857143 \n", "split3_train_score 0.95082 \n", "split4_test_score 1 \n", "split4_train_score 0.934426 \n", "std_fit_time 0.00031625 \n", "std_score_time 1.03067e-05 \n", "std_test_score 0.0678116 \n", "std_train_score 0.0196547 \n", "\n", "[23 rows x 42 columns]" ] }, "execution_count": 22, "metadata": {}, "output_type": "execute_result" } ], "source": [ "results = pd.DataFrame(grid_search.cv_results_)\n", "# we display the transposed table so that it better fits on the page:\n", "results.T" ] }, { "cell_type": "code", "execution_count": 23, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Confusion matrix:\n", "[[ 6 2 1]\n", " [ 0 6 0]\n", " [ 0 0 10]]\n" ] } ], "source": [ "from sklearn.metrics import confusion_matrix\n", "\n", "confusion = confusion_matrix(y_test, grid_search.predict(X_test))\n", "print(\"Confusion matrix:\\n{}\".format(confusion))" ] }, { "cell_type": "code", "execution_count": 24, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "25" ] }, "execution_count": 24, "metadata": {}, "output_type": "execute_result" } ], "source": [ "len(y_test)" ] }, { "cell_type": "code", "execution_count": 25, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "" ] }, "execution_count": 25, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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\nAUtETsHhYvIUWR5huBKRYwiqqqp2F0FERORFHC4mIiIyCUOWiIjIJAxZIiIikzBkiYiITMKQJSIi\nMglDloiIyCSeCNmzZ89i69at2LJlC26++WacPn3a7pJqlkql8OUvfxk33ngjrr/+ehw8eNDukgzx\n0ksvYdu2bXaXUbV8Po+dO3fi+uuvR3d3N/7617/aXZJhXn/9dXR3d9tdRs0URcE3vvEN3HDDDbj2\n2muxf/9+u0uq2cTEBLZv345NmzZh8+bNOHr0qN0lGWJwcBCrVq1Cb2+v3aWYxhMhu3fvXlx44YV4\n6qmn8KlPfQqPP/643SXV7Mknn8Tll1+On/zkJ/jOd77jicsNfutb38L999+PfD5vdylVe/nll5HN\nZrFnzx5s27YN9913n90lGeLxxx/Hjh07kMlk7C6lZi+88AJisRh++tOf4oknnsC9995rd0k1e+WV\nVwAATz/9NG6//XZ873vfs7mi2imKgp07d6KhocHuUkzliRWfbr75ZkxMTAAATpw4AVEUba6odjff\nfDNCoRCAwl5sOBy2uaLaXXrppejq6sKePXvsLqVqBw4cwBVXXAEAuPjii3H48GGbKzLGOeecgwcf\nfBB33HGH3aXU7KqrrsK6desAAKqqwu/321xR7bq6unDllVcC8M533He/+11s2rQJjz32mN2lmMp1\nIfvMM8/gxz/+8bSf7dq1Cx/60Idw00034ejRo3jyySdtqq46pdrU39+Pb3zjG7jrrrtsqm7+5mrP\n+vXr8cc//tGmqoyRTqcRiUQmb/v9fuRyOQQCrvsoTbNu3Tq88847dpdhiObmZgCF1+prX/sabr/9\ndpsrMkYgEMCdd96Jl156CQ888IDd5dTk2WefxYIFC3DFFVd4PmShesxbb72lrlmzxu4yDPHmm2+q\n69evV3/961/bXYph/vCHP6i333673WVUbdeuXeqLL744efuKK66wsRpj/e1vf1Ovu+46u8swxIkT\nJ9Srr75afeaZZ+wuxXBnzpxRr7zySnV0dNTuUqp2ww03qFu2bFFvvPFGdcWKFeo111yjnjlzxu6y\nTOHu3e93Pfroo3jPe96Dz3zmM2hubvbE8NBbb72Fr3/96/j+97+P888/3+5y6F2XXnopXnnlFaxf\nvx6HDh1CZ2en3SXRDAMDA7jllluwc+dOrFy50u5yDPH888/j9OnT+NKXvoTGxkYIggCfz71Tap56\n6qnJf3d3d+Puu+9Ga2urjRWZxxMhe8011+DOO+/EL37xC0xMTGDXrl12l1Sz+++/H9lsFt/+9rcB\nAJFIBA8//LDNVdHatWvx6quvYtOmTVBV1RPvNa955JFHIMsyHnroITz00EMAChO73DzB5mMf+xi2\nb9+OLVu2IJfL4a677nJ1e+oJr8JDRERkEveONxARETkcQ5aIiMgkDFkiIiKTMGSJiIhMwpAlIiIy\nCUOWiIjIJAxZIiIikzBkiYiITPL/Ad9aV3sJFq8eAAAAAElFTkSuQmCC\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "plot_decision_regions(X_test, y_test, grid_search)" ] }, { "cell_type": "code", "execution_count": 26, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "" ] }, "execution_count": 26, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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\nCSELAIBNCFkAAGxCyAIAYBNCFgAAmxCyAADYhJAFAMAmhCwAADapuq1ioVDQ3XffrXfeeUeRSET3\n3nuvLr744nrUBgCAp1Xtyb700kvK5XJ66qmndOedd+r++++vR10AAHhe1ZA9cOCAVq1aJUm6/PLL\ndejQIduLAuqNw9kB2KFqyGYyGcVisbHboVBIIyMjthYF1BOn7wCwS9XPZGOxmIaHh8duFwoFNTVN\n/M8MY5ZCoZA11U1BItFS98e0m9/a5Lb29Pf3S5JWrPi9aX+PeLzZqnJcwW/tkfzXJr+1R/Jnm0qq\nhuyKFSv0yiuv6JprrtGbb76pZcuWTXr/dPqMZcXVKpFoUSo1XP2OHuK3NrmtPeW914GBU9P6HvF4\n87T/rRv5rT2S/9rkt/ZI/mjTggUTX6sasuvWrdNrr72mzZs3yzRN7d2718raAMcwPAzAblVDNhgM\n6u/+7u/qUQsAAL7CZhQAANiEkAUAwCaELAAANiFkAQCwCSELAIBNCFkAAGwSME3TdLoIAAD8iJ4s\nAAA2IWQBALAJIQsAgE0IWQAAbELIAgBgE0IWAACb+CJkT506pdtvv13btm3TrbfeqhMnTjhd0owN\nDQ3pS1/6km655RbdfPPNOnjwoNMlWeLFF1/UnXfe6XQZ01YoFLRnzx7dfPPN2r59u3796187XZJl\n3nrrLW3fvt3pMmYsn8/rq1/9qrZu3aqbbrpJL7/8stMlzdjo6Kh27typzZs3a8uWLXr33XedLskS\nJ0+e1OrVq9XV1eV0KbbxRcju379fl112mZ588kl95jOf0eOPP+50STP2xBNP6Morr9Q//dM/6b77\n7vPFcYP33nuvHnjgARUKBadLmbaXXnpJuVxOTz31lO68807df//9Tpdkiccff1y7d+9WNpt1upQZ\ne+655xSPx/XP//zP+t73vqd77rnH6ZJm7JVXXpEkff/739eOHTv04IMPOlzRzOXzee3Zs0ezZs1y\nuhRbVT1P1gtuvfVWjY6OSpKOHz8uwzAcrmjmbr31VkUiEUnFv2Kj0ajDFc3cihUr1N7erqeeesrp\nUqbtwIEDWrVqlSTp8ssv16FDhxyuyBoXXXSRvvvd7+prX/ua06XM2IYNG7R+/XpJkmmaCoVCDlc0\nc+3t7brqqqsk+ed33De/+U1t3rxZjz32mNOl2MpzIfv000/rH/7hH8772t69e/X7v//7+uxnP6t3\n331XTzzxhEPVTc9kbert7dVXv/pV7dq1y6Hqpm6i9lxzzTX6xS9+4VBV1shkMorFYmO3Q6GQRkZG\n1NTkubfSedavX6+jR486XYYlWlpaJBV/Vl/+8pe1Y8cOhyuyRlNTk+666y69+OKL+s53vuN0OTPy\nzDPPaM6cOVq1apXvQ1amz7z33nvm2rVrnS7DEm+//bZ5zTXXmP/5n//pdCmW+fnPf27u2LHD6TKm\nbe/evebzzz8/dnvVqlUOVmOtI0eOmBs3bnS6DEscP37cvP76682nn37a6VIs9+GHH5pXXXWVOTw8\n7HQp07Z161Zz27Zt5i233GJeccUV5o033mh++OGHTpdlC2//+X3Wo48+qo997GO67rrr1NLS4ovh\noffee09f+cpX9O1vf1uXXnqp0+XgrBUrVuiVV17RNddcozfffFPLli1zuiSM09fXp9tuu0179uzR\nypUrnS7HEs8++6xOnDihL37xi5o9e7YCgYCCQe9OqXnyySfH/v/27dt19913a/78+Q5WZB9fhOyN\nN96ou+66S//6r/+q0dFR7d271+mSZuyBBx5QLpfTN77xDUlSLBbTww8/7HBVWLdunV577TVt3rxZ\npmn64rXmN4888ojS6bQeeughPfTQQ5KKE7u8PMHm6quv1s6dO7Vt2zaNjIxo165dnm5PI+EUHgAA\nbOLd8QYAAFyOkAUAwCaELAAANiFkAQCwCSELAIBNCFkAAGxCyAIAYBNCFgAAm/x/8Xb+miF6TuoA\nAAAASUVORK5CYII=\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "plot_decision_regions(X_test, y_test, logreg)" ] }, { "cell_type": "code", "execution_count": 27, "metadata": {}, "outputs": [ { "data": { "image/png": "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\nfNihj5MnT6pXr16qWrWqSpYsqbp162rEiBEPVSA1ex3iet2CgoIUFhamAQMGqFq1aipVqpRef/11\nrVix4qF9jdYoBQUFqW/fvtq9e7dCQkJUrlw5VaxYUe+//77hef/666+HfoaXXnpJU6dOfegX3Oi1\nQvzt3LldCxbMddhepUo1vfpqo2QbR2Sk+YMnzYJNQpn1FxlJUAJSsxMnQtWjR1fTu9wKF35avXv/\nN5lHlXLi/Apat25d3bhxQ6tWrVL16tVVtmxZZcyYUWfPnpUkTZo0SX5+fmrVqpWOHz+uEiVKaP78\n+U4NoE+fPlq8eLGKFCmiZs2a6c6dO1q2bJmaNWumqVOnqkqVKnEev3btWodt58+fV7NmzVSwYEE1\nadJEJ0+e1Jo1a7R3716tWLFCWbNmlST98ccfatu2re7evavatWsrX7582rt3r7766iutWbNGc+bM\nUebMmU1fh8dp166drl+/rpdeekm3b9/WkiVL1L17d02fPl3Vq1eP89iDBw+qdevWCg4OVvPmzbVv\n3z4tW7ZMBw4c0NKlS+Xj4xO7X5s2bXT37l3Vq1dPgYGB2rlzp0aPHq0dO3Zo6tSpsR94Rq8VHi88\nPFxDhgyS3W5/aHvGjJnUp8/HyTqWuGZzPD2TZ0bp/n2CEpBaHTt2VD16dI3j7toADR8+JtUv4P63\neAelGjVqqG3btg+137p1Sz/99FOC67csW7ZMixcvVoMGDTR8+PDYSwedOnVS48aN1adPH61cuTI2\nFMTX6dOn1bJlS3388cfy8PCQJH388cf64YcftGLFCjVv3lz3799X7969FRERoalTp6pmzZqxx48c\nOVJffvmlRowYoSFDhjz2dTDj6empX375JXbtSJUqVdSrVy/9+OOPjw1KR48e1Ycffqi33npL0oOZ\nt7feeksbN27U1q1bVbNmTdntdvXt21cRERGaO3euSpYsGXv80KFDNXPmTM2dO1ctW7Z05uXDI0aN\nGqZLly46bO/Zs4+yZXPdLfnxEdc6qOhox+e/JYbR8+Qkydvb26XnwQPUUUJK27//D3344fumM0mZ\nMmXSmDGTXPqgXXeQqDVK5cuXT1SRuwULHtzh0a9fv4fWV+TLl0/NmjXTxYsXtXmzccn0x+nYsWNs\nSJKkWrVqSVLsbNiePXt06tQpvfzyyw+FJEl67733lDNnTi1ZssT0Vuz4aNmy5UMLbB8dQ1zSpk2r\n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\nczVu3EiX95s3bz5NnPilsmXL5vSxdrtdw4YN1q+//uzycZUtW16jRo2Xr29al/edkghKcIpVPmSR\nMFYJStHR0erRo6t27dphuk9AQIBefrmhKlasrNy5A+Xn56fr16/r2LGj2rBhbZxrmTw9PTVy5DhV\nrPhsUv0IyYqg5H42bFirjz7qZdqeNm1avfTSK6pSpZqKFCmqTJkyKyIiQlevXtEff+zRb78t0969\nu02Pf+aZkpo8ebq8vJy77+qLLyZo1qxv4twnd+48qlu3nipXrqIcOXLKzy+9rl69otDQ41q7dpU2\nbVpv+t6rVOlZDR8+JlWtFyQowSlW+JBFwlklKP3yy2INGzbYtL158xB16PC20qY1/2b611+nNGhQ\nPx09esSwPUeOnJoz58dU8e2WoORebtwIU6tWTXTt2lXD9ho1aql3737KkiVrnP1s3bpZNtsAXb/+\nj2H7W291Vtu2b8V7XJs2bVCfPj1M29OlS6d27TqpSZPmcQaw0NDjGjlyiPbv32fY3qJFiN55p3u8\nx2V1cQUl6igBcLm7d+/qyy+/MG3v06e/unbtHmdIkqQCBQpq8uSvFBxc0bD90qWLmjPn+0SNFUiI\nKVMmmoakxo2baujQUY8NSZL07LNVNW3aTGXNGmDYPnv2dwoLux6vMd25c0cjRnxm2p4lS1ZNnjxd\nLVqEPHaWqnDhpzVhwjTTBdxz587Snj274jUud0dQAuByGzeu09WrVwzbmjZt4dTaorRp02rw4OHK\nlSu3Yfu8ebMVFRWVoHECCXH9+nUtX77UsK1ixcp6772eTvUXGJhHgwcPN2y7ffuWliz5KV79zJs3\ny/R9lyFDRk2a9KWKFAmK97i8vLw0YMBnevbZqg5t0dHRGj9+1BNRQJOgBMDlNm5cb7g9c+Ys6tDh\nbaf7y5gxo95+u6thW3j4De3bt9fpPq1m164DXHZzEz//vFAREfcctnt7e6tHjw+VJo3zH61lypRV\nrVq1Ddt+/33FY4+PjIyMs/xG374fJ6hGU5o0adSv3yAFBDjOeB07dlTr1q12uk93Q1AC4HJmU/J1\n6tSVn1/6BPVZp85/lDFjJsO2rVs3JahPICFWr15puL1u3brKn79ggvutW/cFw+0nThzXzZs34zx2\n27YtppcC69T5j2kIi48sWbKoZcu2hm2zZn2b4H7dBUEJgEvdv39f//xzzbCtXLngBPfr6emp8uWN\n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\n48ePq0SJEpo/37gehZk+ffpo8eLFKlKkiJo1a6Y7d+5o2bJlatasmaZOnaoqVarEefzatWsdtp0/\nf17NmjVTwYIF1aRJE508eVJr1qzR3r17tWLFCmXNmjXOPr///nsdPXpU9erVU40aNfT777/r66+/\n1qVLlzRq1KjY/ebPn6+PP/5YWbNmVf369eXn56dVq1ape/fu6tGjhzp37ixJypcvn44cedw3AsA1\n7t+/r379emvz5g2m+3h7e6tWrTp69tmqeuaZEsqSJUC+vr66fv0fnT9/Xjt3btPatat08uQJw+M3\nb96ojh3baPToCQoMzJNUPwqQKBUqVNJLLzVQUFBxBQRkU4YMGXTjRpguXbqk3bt3av36NTpwYJ/h\nsXa7Xd9/P1N37txWjx69H3uuIkWC9PrrTbRgwVzD9p9+WqBTp06oe/deKlIk7i/NFy5c0KRJY7Vm\nzcqHtnt6ehqGLW/v1HH3qRG3Cko1atRQ27ZtH2q/deuWfvrppzjrSMRl2bJlWrx4sRo0aKDhw4fL\ny+vBS9KpUyc1btxYffr00cqVK51eV3H69Gm1bNlSH3/8cWyF4o8//lg//PCDVqxYoebNm8d5/OHD\nhzVr1iyVK/fg0QxdunRRvXr1tHz5cn366adKnz69Lly4oE8//VSFChXSrFmzlCVLFklSjx491LZt\nW40bN0516tRhFgnJbsyYz+MMSc8997y6du2u3LkDHdpy5MipHDlyqkyZsmrfvpNWr/5dEyeONawH\nc+bM3+rZ811NnTpDGTO67lENKcFmGyiJ8gCpTdu2bzlsy5o1QFmzBqhYseJq0SJE27dv1ahRw3T2\n7BnDPn788Qflz19Ab7zR9LHn69Klm/bt26ujRw8btu/du1sdOrRS5cpVVL16LRUv/oyyZs0mT09P\n/fPPVZ04EapNmzZo3bo1ioh4eF1T1qwBevHF+po923GGKbWU6TBi+aD0OOXLl09wSJKkBQse1C7p\n169fbEiSHszANGvWTFOmTNHmzZv13HPPOd13x44dH3qMQ61atfTDDz/EzobFpWLFirEhSXrwMMJy\n5cpp1apVunDhggoXLqyff/5ZEREReu+992JDkvRgwfZ7772ndu3aadGiRerTp49T486SxU9eXq4r\ne4/klz27+TOZktq2bdv0008LDNs8PDzUq1cvvfWW44eHmWbN3lDdurX07rvvavfu3Q7tp0//rZEj\n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\nAqijBFgTQQkAAMAEQQkAAMAEQQkAAMAEQQkAAMAEdZQAwAKoowRYEzNKAAAAJghKAGABNht1lAAr\nIhDfcvEAAA+1SURBVCgBgAVQRwmwJoISAACACYISAACACYISAACACYISAACACeooAYAFUEcJsCZm\nlAAAAEwQlADAAmw26igBVkRQAgALoI4SYE0EJQAAABMEJQAAABMEJQAAABMEJQAAABPUUQIAC6CO\nEmBNzCgBAACYICgBgAXYbNRRAqyIoAQAFkAdJcCaCEoAAAAmCEoAAAAmCEoAAAAmCEoAAAAmPOx2\nuz2lBwEAAGBFzCgBAACYICgBAACYICgBAACYICgBAACYICgBAACYICgBAACYICgBj1i5cqWCgoI0\nYcKE2G19+/ZVUFCQDh065HR/9+7d09dff+3KIUqSbty4oaCgIIWEhMS538KFCxUUFKS+ffu6fAxG\nNm7cqH379rm0z8S8/s5I7tcKrsf792F16tRRhQoVEnSsM2Je44ULFyb5uZKbV0oPAHAHdevWVZ48\neZQtWzanj23VqpVOnjyp9u3bJ8HIrGX27NkaNGiQJk2a5NJ+E/P6A0/y+7d169aKiIhI6WG4NYIS\nEA9169ZV3bp1E3Ts1atXXTwa56RNm/ahf5NSUv2siXn9nZGcrxWSz5P8/m3btq0LR2PO19dXUup8\n73DpDUjlChUqJEkqUqRICo/E+nitYDXu8jtZuHBhSdYfZ0IQlGAJMde3r169qg8//FAVKlRQpUqV\n9M477+jYsWOG++7bt0/169dXqVKl1KxZM8U8jeevv/5Sr169VLVqVZUsWVIvvfSSpk6dqsjISIfz\n7ty5U23atFFwcLCqVq2qYcOG6e7du6bje3SNw8qVKxUSEqIKFSqocuXKatu2rXbs2CFJOnPmjIKC\ngnT27FmFh4c7rDO4efOmRo4cqbp166pkyZKqUaOGBgwYYPgN9syZM7E/U7ly5dStWzedO3cuXq9t\noUKF5OXlpaJFi8ZuixnL7t27FRISonLlyqlixYp6//33debMGYc+9u3bp3feeUeVK1dWqVKlVL9+\nfU2ZMuWhKf2QkBBNnDhRktS1a1cFBQXFOa6QkBDVqVNHFy5cUM+ePVW5cmWVKVNGLVu21LZt2x7a\n99HXP+a1nTBhglatWqXGjRurdOnSqlKlivr3769r1645nO/gwYOxP0Pp0qXVsGFDzZkzR/9+ipPR\n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\nQmCC\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "kaonlearn.plots.plot_confusion_matrix_illustration()" ] }, { "cell_type": "code", "execution_count": 28, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "kaonlearn.plots.plot_binary_confusion_matrix()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "We call correctly classified samples belonging to the positive class `true positives` and correctly classified samples belonging to the negative class `true negatives`. These terms are usually abbreviated FP, FN, TP, and TN and lead to the following interpretation for the confusion matrix" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "$ Accuracy = \\frac{TP+TN}{TP+TN+FP+FN} $" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "$ Precision = \\frac{TP}{TP+FP} $" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "$ Recall = \\frac{TP}{TP+FN} $" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "$ F_1 = 2\\frac{precision*recall}{precision+recall} $" ] }, { "cell_type": "code", "execution_count": 29, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ " precision recall f1-score support\n", "\n", " 0 1.00 0.67 0.80 9\n", " 1 0.75 1.00 0.86 6\n", " 2 0.91 1.00 0.95 10\n", "\n", "avg / total 0.90 0.88 0.87 25\n", "\n" ] } ], "source": [ "from sklearn.metrics import classification_report\n", "print(classification_report(y_test, grid_search.predict(X_test)))" ] }, { "cell_type": "code", "execution_count": 30, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ " precision recall f1-score support\n", "\n", " 0 0.88 0.78 0.82 9\n", " 1 0.75 1.00 0.86 6\n", " 2 1.00 0.90 0.95 10\n", "\n", "avg / total 0.90 0.88 0.88 25\n", "\n" ] } ], "source": [ "from sklearn.metrics import classification_report\n", "print(classification_report(y_test, logreg.predict(X_test)))" ] }, { "cell_type": "code", "execution_count": 31, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Accuracy: 0.953\n", "Confusion matrix:\n", "[[37 0 0 0 0 0 0 0 0 0]\n", " [ 0 39 0 0 0 0 2 0 2 0]\n", " [ 0 0 41 3 0 0 0 0 0 0]\n", " [ 0 0 1 43 0 0 0 0 0 1]\n", " [ 0 0 0 0 38 0 0 0 0 0]\n", " [ 0 1 0 0 0 47 0 0 0 0]\n", " [ 0 0 0 0 0 0 52 0 0 0]\n", " [ 0 1 0 1 1 0 0 45 0 0]\n", " [ 0 3 1 0 0 0 0 0 43 1]\n", " [ 0 0 0 1 0 1 0 0 1 44]]\n" ] } ], "source": [ "from sklearn.metrics import accuracy_score\n", "from sklearn.datasets import load_digits\n", "\n", "digits = load_digits()\n", "X_train, X_test, y_train, y_test = train_test_split(\n", " digits.data, digits.target, random_state=0)\n", "lr = LogisticRegression().fit(X_train, y_train)\n", "pred = lr.predict(X_test)\n", "print(\"Accuracy: {:.3f}\".format(accuracy_score(y_test, pred)))\n", "print(\"Confusion matrix:\\n{}\".format(confusion_matrix(y_test, pred)))" ] }, { "cell_type": "code", "execution_count": 32, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "" ] }, "execution_count": 32, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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\n+39ngwT5Lf3JiAAAAABJRU5ErkJggg==\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "sns.heatmap(confusion_matrix(y_test, pred), annot=True)" ] }, { "cell_type": "code", "execution_count": 33, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ " precision recall f1-score support\n", "\n", " 0 1.00 1.00 1.00 37\n", " 1 0.89 0.91 0.90 43\n", " 2 0.95 0.93 0.94 44\n", " 3 0.90 0.96 0.92 45\n", " 4 0.97 1.00 0.99 38\n", " 5 0.98 0.98 0.98 48\n", " 6 0.96 1.00 0.98 52\n", " 7 1.00 0.94 0.97 48\n", " 8 0.93 0.90 0.91 48\n", " 9 0.96 0.94 0.95 47\n", "\n", "avg / total 0.95 0.95 0.95 450\n", "\n" ] } ], "source": [ "print(classification_report(y_test, pred))" ] } ], "metadata": { "kernelspec": { "display_name": "Python 3", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.6.1" } }, "nbformat": 4, "nbformat_minor": 2 }