From 998030513aaa675535f52cb1c5bb8ebda09d5142 Mon Sep 17 00:00:00 2001 From: Gerardo Marx Date: Mon, 20 Oct 2025 22:18:43 -0600 Subject: [PATCH] Adding monday --- monday.ipynb | 509 +++++++++++++++++++++++++++++++++++ monday.md | 329 ++++++++++++++++++++++ monday_files/monday_13_1.png | Bin 0 -> 11976 bytes monday_files/monday_15_0.png | Bin 0 -> 24291 bytes monday_files/monday_3_0.png | Bin 0 -> 12395 bytes monday_files/monday_4_0.png | Bin 0 -> 16830 bytes monday_files/monday_6_0.png | Bin 0 -> 14587 bytes 7 files changed, 838 insertions(+) create mode 100644 monday.ipynb create mode 100644 monday.md create mode 100644 monday_files/monday_13_1.png create mode 100644 monday_files/monday_15_0.png create mode 100644 monday_files/monday_3_0.png create mode 100644 monday_files/monday_4_0.png create mode 100644 monday_files/monday_6_0.png diff --git a/monday.ipynb b/monday.ipynb new file mode 100644 index 0000000..1c23e8a --- /dev/null +++ b/monday.ipynb @@ -0,0 +1,509 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "id": "6d673024", + "metadata": {}, + "source": [ + "# Data exploration and visualization" + ] + }, + { + "cell_type": "code", + "execution_count": 80, + "id": "17472992", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Requirement already satisfied: scikit-learn in /Users/gmarx/lwc/courses/aia/lab-sessions-25b/.venv/lib/python3.13/site-packages (1.7.2)\n", + "Requirement already satisfied: numpy>=1.22.0 in /Users/gmarx/lwc/courses/aia/lab-sessions-25b/.venv/lib/python3.13/site-packages (from scikit-learn) (2.3.2)\n", + "Requirement already satisfied: scipy>=1.8.0 in /Users/gmarx/lwc/courses/aia/lab-sessions-25b/.venv/lib/python3.13/site-packages (from scikit-learn) (1.16.2)\n", + "Requirement already satisfied: joblib>=1.2.0 in /Users/gmarx/lwc/courses/aia/lab-sessions-25b/.venv/lib/python3.13/site-packages (from scikit-learn) (1.5.2)\n", + "Requirement already satisfied: threadpoolctl>=3.1.0 in /Users/gmarx/lwc/courses/aia/lab-sessions-25b/.venv/lib/python3.13/site-packages (from scikit-learn) (3.6.0)\n", + "\n", + "\u001b[1m[\u001b[0m\u001b[34;49mnotice\u001b[0m\u001b[1;39;49m]\u001b[0m\u001b[39;49m A new release of pip is available: \u001b[0m\u001b[31;49m25.1.1\u001b[0m\u001b[39;49m -> \u001b[0m\u001b[32;49m25.2\u001b[0m\n", + "\u001b[1m[\u001b[0m\u001b[34;49mnotice\u001b[0m\u001b[1;39;49m]\u001b[0m\u001b[39;49m To update, run: \u001b[0m\u001b[32;49mpip install --upgrade pip\u001b[0m\n" + ] + } + ], + "source": [ + "!pip3 install scikit-learn" + ] + }, + { + "cell_type": "code", + "execution_count": 81, + "id": "2d4552f4", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + ".. _iris_dataset:\n", + "\n", + "Iris plants dataset\n", + "--------------------\n", + "\n", + "**Data Set Characteristics:**\n", + "\n", + ":Number of Instances: 150 (50 in each of three classes)\n", + ":Number of Attributes: 4 numeric, predictive attributes and the class\n", + ":Attribute Information:\n", + " - sepal length in cm\n", + " - sepal width in cm\n", + " - petal length in cm\n", + " - petal width in cm\n", + " - class:\n", + " - Iris-Setosa\n", + " - Iris-Versicolour\n", + " - Iris-Virginica\n", + "\n", + ":Summary Statistics:\n", + "\n", + "============== ==== ==== ======= ===== ====================\n", + " Min Max Mean SD Class Correlation\n", + "============== ==== ==== ======= ===== ====================\n", + "sepal length: 4.3 7.9 5.84 0.83 0.7826\n", + "sepal width: 2.0 4.4 3.05 0.43 -0.4194\n", + "petal length: 1.0 6.9 3.76 1.76 0.9490 (high!)\n", + "petal width: 0.1 2.5 1.20 0.76 0.9565 (high!)\n", + "============== ==== ==== ======= ===== ====================\n", + "\n", + ":Missing Attribute Values: None\n", + ":Class Distribution: 33.3% for each of 3 classes.\n", + ":Creator: R.A. Fisher\n", + ":Donor: Michael Marshall (MARSHALL%PLU@io.arc.nasa.gov)\n", + ":Date: July, 1988\n", + "\n", + "The famous Iris database, first used by Sir R.A. Fisher. The dataset is taken\n", + "from Fisher's paper. Note that it's the same as in R, but not as in the UCI\n", + "Machine Learning Repository, which has two wrong data points.\n", + "\n", + "This is perhaps the best known database to be found in the\n", + "pattern recognition literature. Fisher's paper is a classic in the field and\n", + "is referenced frequently to this day. (See Duda & Hart, for example.) The\n", + "data set contains 3 classes of 50 instances each, where each class refers to a\n", + "type of iris plant. One class is linearly separable from the other 2; the\n", + "latter are NOT linearly separable from each other.\n", + "\n", + ".. dropdown:: References\n", + "\n", + " - Fisher, R.A. \"The use of multiple measurements in taxonomic problems\"\n", + " Annual Eugenics, 7, Part II, 179-188 (1936); also in \"Contributions to\n", + " Mathematical Statistics\" (John Wiley, NY, 1950).\n", + " - Duda, R.O., & Hart, P.E. (1973) Pattern Classification and Scene Analysis.\n", + " (Q327.D83) John Wiley & Sons. ISBN 0-471-22361-1. See page 218.\n", + " - Dasarathy, B.V. (1980) \"Nosing Around the Neighborhood: A New System\n", + " Structure and Classification Rule for Recognition in Partially Exposed\n", + " Environments\". IEEE Transactions on Pattern Analysis and Machine\n", + " Intelligence, Vol. PAMI-2, No. 1, 67-71.\n", + " - Gates, G.W. (1972) \"The Reduced Nearest Neighbor Rule\". IEEE Transactions\n", + " on Information Theory, May 1972, 431-433.\n", + " - See also: 1988 MLC Proceedings, 54-64. Cheeseman et al\"s AUTOCLASS II\n", + " conceptual clustering system finds 3 classes in the data.\n", + " - Many, many more ...\n", + "\n" + ] + } + ], + "source": [ + "from sklearn import datasets\n", + "iris = datasets.load_iris()\n", + "print(iris.DESCR)" + ] + }, + { + "cell_type": "code", + "execution_count": 82, + "id": "d238e7f5", + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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cv/998vKlSvl0ksvlR49esiIESPE5ban6HHffSXLfffdV2y7tukXVMr69evllFNOkTPOOMPpcz1ou105z9Wtt94qf/7zn+Wvf/2rf63TwPuiiy7yV1z91a9+JQU713XaL1rn66+/9vr06eOtWLHCO/HEE72JEydmLDt//nyvS5cunu2uv/5670c/+lHO5c8880xv1KhRaduOO+4477LLLvNcb7srx/zaa6/1fvKTnwT6mWuuucY74ogj0radddZZ3ogRIzzX2/7cc8/pn5Pel19+6blEr2+9e/f2du3a5fy5HqTdrpznSo/fxRdf7O1u9OjR3nnnnecV8lznkU0e6C08jQyHDx+eU/kdO3bIgQce6CcmqqiokA0bNoiN9C9ETZh08MEHy3nnnSeffPJJxrIvv/xyk/7RqFm3u952V475Y489Jsccc4z/F6L+lX/kkUfKPffck/VnXDnuYdqeMmjQIP+vRP3r+sUXXxSb7dy5UxYuXCgXX3xxxr/+XTnmQdvtynmuhg4d6t/heO+99/z3b775pvzrX/+Sn/3sZ5JJPo47AUkrLV682L8Vqbcnc9G3b1+577775NFHH/V/wTWTsR78LVu2iE2OO+44//ngk08+6d/a09t1w4YN87M6Nkefm3fv3j1tm7637Xl6mLa7csw//PBDv719+vSRp556Sq644gr/9q3e1s0k03HXTKHffvutuNx2DULuvvtuWbp0qf/SL6ny8nL/emGrRx55RL766iu58MILM5Zx6VwP0m5XznM1ZcoUOfvss/1xQO3atfMDcB0bqX98FfRcz/leCpr45JNPvH333dd78803G7a19MimsZ07d/q3AadNm+bZTG9Ld+7c2bv33nub/bxdu3beokWL0rb96U9/8vvPdi213ZVjrsdwyJAhadt++ctfeoMHD874M/oo8+abb07b9sQTT/iPMmpraz2X296cE044wTv//PM9W5166qneaaedlrWMi+d6Lu125TxXDzzwgFdaWur/+6233vL+9re/ed26dfMWLFjgFfJc5w5JK6xZs0Y+//xzf1SxDmrU16pVq+SPf/yj/9+7D4jKJBV9fvDBB2KzH/zgB3LooYdmbMd+++0nn332Wdo2fa/bbddS21055voX/+GHH5627bDDDsv6uCrTcdfBfzp63+W2N+fHP/6xdcc95eOPP/YHcutAxWxcO9dzbbcr57mqrKxsuEuis6TGjh0rV111VdYnAfk41wlIWuHkk0+WdevWydq1axte+pxZb2vpfxcXF7f4/9CgRf8fesGzmT47raqqytiOIUOG+M8kd7dixQp/u+1aarsrx1xnmew+g0DpM2Z9Zp6JK8c9TNubo9cF2457yvz58/3xMzpeLhtXjnnQdrtynqva2lpp0yY9PNDvM30MVdDjntN9FOSs8SObsWPHelOmTGl4P336dO+pp57yqqqqvDVr1nhnn32216FDB2/Dhg2eTX796197zz//vLdp0ybvxRdf9IYPH+798Ic/9D7//PNm261l2rZt6912223eO++8489U0Vu769at82wTtO2uHPP//Oc//jH8wx/+4L3//vve/fff73Xs2NFbuHBhQxltt7Y/5cMPP/TLVFZW+sddb90XFxd7Tz75pOd62++8807vkUce8cvr77leF9q0aeM988wznm3q6+u9Aw44wJ9t1JjL53qQdrtynqsLLrjA69mzp/f444/717lly5b51zidSVPIc52ApMABib7Xg5syadIk/xe8ffv2Xvfu3b2RI0d6r7/+umcbnc7Vo0cPvx36i6vvP/jgg4ztVg8++KB36KGH+j+j08P0+aKNgrbdlWOu/vGPf3j9+/f3SkpKvH79+nl/+ctf0j7Xdmv7G09/HTRokN/+gw8+2J8emYS233rrrf4YAv1S0ufv5eXl3rPPPuvZSL9o9e/XjRs3NvnM5XM9SLtdOs+3b9/uf49pe/T3V8/b3/zmN15dXV1Bz/Ui/Ufu91MAAADyjzEkAAAgdgQkAAAgdgQkAAAgdgQkAAAgdgQkAAAgdgQkAAAgdgQkAAAgdgQkAAAgdgQkAAAgdgQkAAAgdgQkAAAgdgQkAABA4vZ/+cCR4l/PHcoAAAAASUVORK5CYII=", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "text/plain": [ + "(150, 1)" + ] + }, + "execution_count": 82, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "import numpy as np\n", + "import matplotlib.pyplot as plt\n", + "sl = iris.data[:,0].reshape(-1,1)\n", + "sw = iris.data[:,1].reshape(-1,1)\n", + "plt.plot(sl, sw, 'ok')\n", + "plt.show()\n", + "sl.shape" + ] + }, + { + "cell_type": "code", + "execution_count": 83, + "id": "431f7877", + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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rvLSSy/JlClTTFLq0KFDZeDAgTJixAizbe+99zbDOw8//LD83//9n8krKSoqMkM4K1eulIKCAvN36Pv69+8vZ555psyYMUO+//57c7flqKOOMu8JCndIgIjRH3RDiobI6f1PN38SjAC5cbeyS5cuJuH01ltvlSOPPFL69etnhmwuvPBCue2228w03kceecS8dt5555mA5LTTTjOF73bbbbf6HBTNPdFpwzo1eN68eeZ9ixcvlh133NG8VwMUXePkn//8pwQpz9H6wZZzU74YAIDmfPvtt+YuQa9evdpUnZa6Ui2fTzff3wzZAADQhruV8AdDNgAAIHQEJAAAIHQEJAAAIHQEJAAAIHQEJAAAIHQEJAAAIHQEJAAAIHQEJAAAIHQEJAAAICNdWn7RokWSbQQkAAB4oVVzly0TmTev7s9GVXT99otf/MLUoWlKeXm5CRxef/113/dbXV0txx9/vGQbAQkAAG6VlYkUFYkcfbTIGWfU/anPdXuWjB07VpYsWSLr16/f6rU5c+aYyrxaBdiN2traFtt0795dOnbsKNlGQAIAgBsadIwaJdI4MKiqqtuepaDkpJNOMhV6586dm7Z906ZNcv/995uA5dlnn5XBgwfLtttuK4WFhfKb3/xGvv766/q2RUVFcsMNN8iYMWNMsbtf/vKXJii59NJLJT8/3xTH22OPPWTy5Mn172HIBgAA2+iwTEmJiONs/Vpq2/jxWRm+ad++vQkkNCBxGuxfg5FkMikDBw40Qzonn3yyGbr55z//aQIUDTYamjZtmvz0pz+VV199Va6++mr585//LA8++KDcd999smbNGrnnnntM4BK0PKdhryzlpnwxAADN+fbbb6WiokJ69epl7gi4orkiOjzTkqefFhnifyXgt99+W/r27StPP/20DPnh7z/yyCPNXQ0dVkkkEjJ79uz69hqQHHXUUeYuifZVA40DDjhAHnjggfo2ehdl9erV8uSTT5q7IY3pNm0/YsQI1+fTzfc3d0gAHyW3JGXZB8tk3qp55k99DiBGqqv9befSPvvsI4MGDZI777zTPH/vvfdMQqsO17z22mvm7kmXLl3qH8OGDZMtW7aYgCFFc00aOvfcc2XlypXSp08fE5w88cQTEob2oewViKGyt8qk5LESWb/xx3Hlgm4FMvO4mTKy78hQjw2AT/Lz/W3nwdixY+XXv/61/OUvfzHJrMXFxeYuiOaS/OpXvzJBRWM9e/as///tttsu7bUDDzzQBCyPPvqouUsyevRoGTp0qCxYsECCxB0SwKdgZNR9o9KCEVW1scps19cBxMDgwSIFBTqO0fTrur2wsK5dlowePVratWsn9957r9x1111y/vnnm2EVDSzefPNN2WuvvbZ6dOjQodm/U4dTTj31VLnjjjtM7snChQvls88+kyARkABtpMMyemfEka3TsVLbxj82nuEbIA4SCZGZM+v+v3FQkno+Y0Zduyzp0qWLCR4mTZpk1gjRIRd1+eWXy/PPP2+SWHUI5t1335XFixdvldTa2PTp02XevHkmP+Wdd94xSbI61XeHHXaQIBGQAG1Uvq58qzsjjYOSyo2Vph2AGBg5UkSHM3r0SN+ud050u76eZWPHjpXPP//c5IjsvvvuZpuuQbJ8+XITVOjUX01eveaaa+pfz6Rr164yZcoUk1tyyCGHyAcffCCPPPKIuQsTJHJIgDaq/qra13YAIkCDjuHDdYnUugRWzRnRYZos3hlpSKf4NjVJVgOK5pJSNdho7MILLzSPTIKajEtAArRRftd8X9sBiAgNPrIwtTdXMWQDtNHgnoPNbJo8aTrJTbcXdis07QAATSMgAdoo0S5hpvaqxkFJ6vmM42aYdgCAphGQAD7QdUYWjF4gPbqlJ7npnRPdzjokANA8ckgAn2jQMbzPcDObRhNYNWdEh2m4MwIALSMgAXykwceQIpLcAMAthmwAAEDoCEgAAEDoGLJBZOlS7ORrAEA8cIcEkaTF6opmFsnR/zhazig7w/ypzyliByCXXXfddTJgwIA2/z3Lli0zBfu++OILCQoBCSKHyroAbJBM6he3yLx5dX/q82z6xS9+Iccdd1yTr5WXl5sAYuTIkbJ06dI272vQoEGmcN/2228vQSEgQaRQWReADcrKRIqKRI4+WuSMM+r+1Oe6PZsF9ZYsWSLr129dzHPOnDmmOJ4W2Nt5550z/h21tbWt2leHDh1MxV8NcoJCQIJIobIugLBp0DFqlEjjuKCqqm57toKSk046SXbZZReZO3du2vZNmzbJ/fffbwKWxkM25557rowYMUL++Mc/mqq/ffr0Mduff/55065Tp04mkFm0aJEJPlauXGleZ8gGaAGVdQGESYdlSkq0Au7Wr6W2jR+fneGb9u3by5gxY0xA0rACrwYjyWRSTj/99Cbfp0M4a9asMXdXHnroIdm4caMZ/unfv7+88sorcsMNN8jll18uYSMgQaRQWRdAmMrLt74z0pDGCZWVde2y4fzzz5e1a9fK8uXL04ZrTj755Iz5Htttt538/e9/l/3228887r33XnP344477pB9991Xjj/+eCktLZWwEZAgUqisCyBM1dX+tnNrn332MQmnd955p3n+3nvvmYRWHa7JRO+EaE5Iit4t0VwTHa5JOfTQQyVsBCSIFCrrAghTfr6/7bwYO3asLFy4UL766itzd6S4uFiOOuqojO31DkkUEJAgcqisCyAsgweLFBSIZJp8otsLC+vaZcvo0aOlXbt2ZujlrrvuMsM4bmbDaGLrqlWrZPPmzfXbXnzxRQkbK7UikqisCyAMiYTIzJl1s2k0BmiY3JqKCWbMqGuXLV26dJFTTz1VJk2aZBJUdSaNG2eccYb8/ve/l1/+8pdyxRVXyLp162TatGnmtSCn+TbGHRJEvrLu6f1PN38SjAAIwsiRIgsWiPRIv0lr7pzodn0928aOHSuff/65DBs2zEzndaNbt27yr3/9y0zx1am/Gpxcc8015rWGeSVBy3Mazh2ylEaAmj385ZdfmhMJAIBX3377rVRUVEivXr3a9AWsU3t1No0msGrOiA7TZPPOSDbdc889ct5555nv2W233da38+nm+5shGwAAPNDgY8gQiaS77rpL9txzT+nRo4e89tprZh0SzU1xG4z4iYAEyAFURgbQ0IYNG8wwjf6Zn58vp5xyilnNNUxtyiG5+eabTQLMeF2Wrhm6ipzOndZbOTof+pFHHmnLbgG4QGVkAI1NnDhRPvjgg/rhlltvvVU6d+4skQxIdIrQ7NmzzeIqzdH18nU5W03AefXVV82a+vp44403vO4aQCtRGRlAVHgKSLSQz5lnnmmWnd1xxx2bbTtz5kxTLlmXpe3bt69ZM//AAw+U2267zesxA2gFKiMDiH1Acskll8iJJ54oQ4cObbHtihUrtmqn05R0eya6WItm5jZ8AHCHyshA8yIwyTSnzqPrpNb58+eb6oCtXdVNE2Z22223tG36XLdnMnnyZLn++uvdHhqABqiMDDRtm222MX/W1NSEOqskLmpqatLOayABSWVlpZSUlJgSxtlcPEVXn5swYUL9c71DUqhr8QJoNSojA01LJBKyww47yCef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6N69u3z88cdp2/S5bs+kY8eO5oGI0am9+u9BE1ibSk1K5ZBoOwAAvN4h0fxXDUYeeOABeeqpp6RXr14tvmfgwIGydOnStG06Q0e3I2Y0UXXmzB+Dj4ZSz2fMIKEVANC2gESHae6++2659957zVokmgeij2+++aa+zZgxY8yQS0pJSYk89thj8qc//Unefvttue666+Sll14ygQ1iaORIkQULRHr0SN+ud0Z0u74OAEBbpv3mNf6t9wdz5syRc8891/z/kCFDpKioSObOnZu2MNpVV10lH3zwgfTu3VumTJkiJ5xwQmt3y7TfKGKlVgDIeRtdfH+3aR2SoBCQAAAQPYGtQwIAAOAHAhIAABA6AhIAABA6AhIAABA6AhIAABA6AhIAABA6AhIAABA6AhIAABA6AhIAABDNar9BSy0mqyu+AQCAaEh9b7dmUfhIBCRfffWV+bOwsDDsQwEAAB6+x3UJ+cjXstmyZYt89NFHpsJwpgJ/NkeHGkhVVlbmXB2eXO17rvZb0ffc63uu9lvR98IW+64hhgYju+++u7Rr1y76d0i0EwVavj7C9ILl2j/YXO97rvZb0ffc63uu9lvR927NtmnpzkgKSa0AACB0BCQAACB0BCRZ1rFjR7n22mvNn7kmV/ueq/1W9D33+p6r/Vb0/Vpf+x6JpFYAABBv3CEBAAChIyABAAChIyABAAChIyABAAChIyDx0c0332xWkh0/fnzGNnPnzjVtGj46deokUXPddddt1Y999tmn2ffcf//9po32t3///vLII49IFLnte1yuuaqqqpKzzjpLdt55Z9l2223NdXzppZeafc+yZcvkwAMPNNn4e+21lzkfudB37Xfj666PDRs2SJQUFRU12Y9LLrkk1p91t/2O0+c8mUzK1VdfLb169TL/1ouLi+WGG25osR5NWz/rkVipNQpefPFFmT17tuy///4tttVV7dasWVP/PGrL4afst99+8uSTT9Y/b98+8z+n559/Xk4//XSZPHmynHTSSXLvvffKiBEj5JVXXpF+/fpJnPsel2v++eefyxFHHCFHH320PProo7LLLrvIu+++KzvuuGPG91RUVMiJJ54oF110kdxzzz2ydOlSueCCCyQ/P1+GDRsmce57il73hitZ7rrrrhK1n236BZXyxhtvyLHHHiunnHJKrD/rbvsdl8+5uuWWW+Svf/2r/OMf/zA/6zTwPu+888yKq7/5zW8ka591nfaLtvnqq6+c3r17O0uWLHGOOuoop6SkJGPbOXPmONtvv70Tdddee63z05/+tNXtR48e7Zx44olp2w477DDnV7/6lRP3vsflml9++eXO//zP/7h6z8SJE5399tsvbdupp57qDBs2zIl7359++mn9ddL5/PPPnTjRn2/FxcXOli1bYv9Zd9PvuHzOlV6/888/32lo5MiRzplnnulk87POkI0P9BaeRoZDhw5tVftNmzbJHnvsYQoTDR8+XFavXi1RpL8hasGkPffcU84880xZt25dxrYrVqzY6vxo1Kzb4973uFzzBx98UA4++GDzG6L+ln/AAQfIHXfc0ex74nLdvfQ9ZcCAAea3RP3t+rnnnpMoq62tlbvvvlvOP//8jL/9x+Wau+13XD7natCgQeYOxzvvvGOev/baa/Lss8/K8ccfL5n4cd0JSNpo/vz55lak3p5sjT59+sidd94pixcvNv/AtZKxXvz169dLlBx22GFmfPCxxx4zt/b0dt3gwYNNVcem6Lj5brvtlrZNn0dtPN1L3+Nyzd9//33T3969e8vjjz8uF198sbl9q7d1M8l03bVS6DfffCNx7rsGIbfffrssXLjQPPRLasiQIebnRVQtWrRIvvjiCzn33HMztonTZ91Nv+PyOVdXXHGFnHbaaSYPaJtttjEBuOZG6i9fWf2st/peCraybt06Z9ddd3Vee+21+m0tDdk0Vltba24DXnXVVU6U6W3pbt26OX//+9+bfH2bbbZx7r333rRtf/nLX8z5i7qW+h6Xa67XcODAgWnbfv3rXzuHH354xvfoUOZNN92Utu3hhx82Qxk1NTVOnPvelCOPPNI566yznKj6+c9/7px00knNtonjZ701/Y7L51zNmzfPKSgoMH++/vrrzl133eXstNNOzty5c51sfta5Q9IGL7/8snzyyScmq1iTGvWxfPly+fOf/2z+v2FCVCap6PO9996TKNthhx1k7733ztiP7t27y8cff5y2TZ/r9qhrqe9xueb6G/++++6btq1v377NDldluu6a/KfZ+3Hue1MOPfTQyF33lA8//NAkcmuiYnPi9llvbb/j8jlXpaWl9XdJdJbU2WefLZdddlmzIwF+fNYJSNrgmGOOkVWrVsnKlSvrHzrOrLe19P8TiUSLf4cGLfp36A+8KNOx07Vr12bsx8CBA82YZENLliwx26Oupb7H5ZrrLJOGMwiUjjHrmHkmcbnuXvreFP25ELXrnjJnzhyTP6P5cs2JyzV32++4fM5VTU2NtGuXHh7o95kOQ2X1urfqPgparfGQzdlnn+1cccUV9c+vv/565/HHH3fWrl3rvPzyy85pp53mdOrUyVm9erUTJb/97W+dZcuWORUVFc5zzz3nDB061PnJT37ifPLJJ032W9u0b9/emTZtmvPWW2+ZmSp6a3fVqlVO1Ljte1yu+QsvvGCu4R//+Efn3Xffde655x6nc+fOzt13313fRvut/U95//33TZvS0lJz3fXWfSKRcB577DEn7n2/9dZbnUWLFpn2+u9cfy60a9fOefLJJ52oSSaTTs+ePc1so8bi/Fl30++4fM7VOeec4/To0cN56KGHzM+5srIy8zNOZ9Jk87NOQJLlgESf68VNGT9+vPkH3qFDB2e33XZzTjjhBOeVV15xokanc+Xn55t+6D9cff7ee+9l7Le67777nL333tu8R6eH6fhiFLnte1yuufrXv/7l9OvXz+nYsaOzzz77OH/729/SXtd+a/8bT38dMGCA6f+ee+5ppkfmQt9vueUWk0OgX0o6/j5kyBDnqaeecqJIv2j199c1a9Zs9VqcP+tu+h2nz/nGjRvN95j2R//96uf297//vbN58+asftbz9D+tv58CAADgP3JIAABA6AhIAABA6AhIAABA6AhIAABA6AhIAABA6AhIAABA6AhIAABA6AhIAABA6AhIAABA6AhIAABA6AhIAABA6AhIAACAhO3/A0pGNsfKkaZiAAAAAElFTkSuQmCC", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "tg = iris.target\n", + "tg.shape\n", + "plt.plot(sl[tg==0,0], sw[tg==0,0], 'og', label=\"Seto\")\n", + "plt.plot(sl[tg==1,0], sw[tg==1,0], 'or', label=\"Versi\")\n", + "plt.plot(sl[tg==2,0], sw[tg==2,0], 'ob', label=\"Virgi\")\n", + "plt.legend()\n", + "plt.show()" + ] + }, + { + "cell_type": "markdown", + "id": "69e04585", + "metadata": {}, + "source": [ + "# Binary classifier with one parameter" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "8fdd3031", + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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zz5r+3MYji5PNWnSpEZFVl3/73V/NOPtYsyYMYEE/Gh/yz799NPN8qaeK7vT99BFF11U62t16vlTmjj79ttvRz0r6aTzl/mP86DnRH+psejt7t27x+19HJO4ZcO4POl23759gX3PPPOMSbr95ptv6ky63bJlS2DfG2+8YaukW02s0iTNe+65J6bHb9iwwRzj//zP//js7pVXXjHn8PDhw3Um3S5btiyw77PPPrN10u2ePXt8nTp18g0dOtT33XffOfocarLemDFjQpL12rdvX2fS7U9/+tOQfb1797Zt0qa+1zQZURMQ//d//zem59Bz3LlzZ9/48eN9dnf06FHfOeec45szZ44rzl/1BGNNSP32229dc/6klqTbxx9/PLCvoqIioqTbaN7HMb1Wn8d98cUXvvfff983bdo031lnnWX+rpu+6awftC5duviuvfZa3wcffOBbvXq1qaopKCgIPMd7771nfhj1S8Ry3XXX+S6//HJzn34x6JfLsGHDfHbx9ttvmx9UrYapTo9Dj0dfu9q5c6epItIArKSkxLdy5Upfx44dfT/5yU98drNx40ZTIaTnateuXSZY0fM1fPjwWo9P3Xnnnb7zzjvP984775jj1A9Q3exIX/+FF17o69+/v/l7eXl5YHPiOVy8eLH5MFywYIEJ9u+44w7f2WefHajM+9WvfuWbOHFiYPx///d/+0477TTzgao/v/ologHn3/72N58djR492vwyVFxcHHKuvv7668CY6seon0f6S47+DG/dutUEps2aNfN9/PHHPrvRX3r02PTnSs9NXl6er1WrVqYayg3nL/gLWD8jHnjggRr3Oe38HT16NPBdp98DM2fONH/X70P12GOPmfegfk58+OGHvsGDB5tfcP/+978HnuOf/umffE8++WTE7+N48HzAMmLECHPCqm9r164NjPn88899AwcO9DVv3ty8EfUNGhxh61h9jL5hLYcOHTIBigZBOhszcuTIQBBkB/ra+vTpE/Y+PY7g/welpaXmiy0jI8P8QOqX5X333WeibrvRDwctkdQvCP2A+OEPf+j77W9/GzIbVv34lL4R/+3f/s38ZnjGGWf4fvazn4UEAHabDQz3Mxs8Yeq0c6gffPpl0LRpU/Ob2rvvvhtSjq3v02BFRUW+iy66yIy/9NJLfX/+8599dlXbudLzWNsxjhs3LvD/o23btr5/+Zd/8W3bts1nR/n5+b6srCzzWvU3ar2tAbJbzp9FAxA9b9u3b69xn9PO39p/fGdV36xj0FmWhx56yLx2/bzQX46qH7e2j9BgM9L3cTyk6H/it8AEAAAQf/RhAQAAtkfAAgAAbI+ABQAA2B4BCwAAsD0CFgAAYHsELAAAwPYIWAAAgO0RsAAAANsjYAEAALZHwAIAAGyPgAUAANgeAQsAABC7+3/qmCsTI9gqpQAAAABJRU5ErkJggg==", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "z = np.linspace(-10, 10, 100)\n", + "sig = 1/(1+np.exp(-z-4)) + 1/(1+np.exp(-z+4))\n", + "plt.plot(z, sig, 'ob')\n", + "plt.show()" + ] + }, + { + "cell_type": "markdown", + "id": "cb11e50e", + "metadata": {}, + "source": [ + "# First classifier\n", + "$$z = \\theta_1\\times x_1 + \\theta_0$$" + ] + }, + { + "cell_type": "code", + "execution_count": 149, + "id": "fbabeabe", + "metadata": {}, + "outputs": [], + "source": [ + "pw = iris.data[:, 3].reshape(-1,1)\n", + "X = np.c_[np.ones_like(pw), pw]\n", + "y = (iris.target==0).astype(int).reshape(-1,1) #Setosa " + ] + }, + { + "cell_type": "code", + "execution_count": 150, + "id": "2108be89", + "metadata": {}, + "outputs": [], + "source": [ + "def sigmoid(z):\n", + " #z = np.clip(z, -50, 50)\n", + " sig = 1/(1+np.exp(-z))\n", + " return sig" + ] + }, + { + "cell_type": "code", + "execution_count": 151, + "id": "0c64a3cf", + "metadata": {}, + "outputs": [], + "source": [ + "def logLoss(y, yModel):\n", + " #yModel = np.clip(yModel, 1e-12, 1-1e-12)\n", + " loss = -np.mean(y*np.log(yModel)+(1-y)*np.log(1-yModel))\n", + " return loss" + ] + }, + { + "cell_type": "code", + "execution_count": 172, + "id": "1938a4c7", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "array([[0.77132064],\n", + " [0.02075195]])" + ] + }, + "execution_count": 172, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "# Gradient descent\n", + "lr = 0.1\n", + "epochs = 5000\n", + "m = X.shape[0]\n", + "np.random.seed(10)\n", + "theta = np.random.rand(2,1)\n", + "theta" + ] + }, + { + "cell_type": "code", + "execution_count": 173, + "id": "90aabefe", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Epoch 0, Loss: 0.909705\n", + "Epoch 100, Loss: 0.262854\n", + "Epoch 200, Loss: 0.194549\n", + "Epoch 300, Loss: 0.154778\n", + "Epoch 400, Loss: 0.128995\n", + "Epoch 500, Loss: 0.110967\n", + "Epoch 600, Loss: 0.097650\n", + "Epoch 700, Loss: 0.087403\n", + "Epoch 800, Loss: 0.079264\n", + "Epoch 900, Loss: 0.072636\n", + "Epoch 1000, Loss: 0.067129\n", + "Epoch 1100, Loss: 0.062475\n", + "Epoch 1200, Loss: 0.058488\n", + "Epoch 1300, Loss: 0.055030\n", + "Epoch 1400, Loss: 0.052002\n", + "Epoch 1500, Loss: 0.049325\n", + "Epoch 1600, Loss: 0.046941\n", + "Epoch 1700, Loss: 0.044803\n", + "Epoch 1800, Loss: 0.042874\n", + "Epoch 1900, Loss: 0.041124\n", + "Epoch 2000, Loss: 0.039528\n", + "Epoch 2100, Loss: 0.038066\n", + "Epoch 2200, Loss: 0.036723\n", + "Epoch 2300, Loss: 0.035482\n", + "Epoch 2400, Loss: 0.034334\n", + "Epoch 2500, Loss: 0.033267\n", + "Epoch 2600, Loss: 0.032273\n", + "Epoch 2700, Loss: 0.031345\n", + "Epoch 2800, Loss: 0.030475\n", + "Epoch 2900, Loss: 0.029660\n", + "Epoch 3000, Loss: 0.028892\n", + "Epoch 3100, Loss: 0.028169\n", + "Epoch 3200, Loss: 0.027486\n", + "Epoch 3300, Loss: 0.026840\n", + "Epoch 3400, Loss: 0.026227\n", + "Epoch 3500, Loss: 0.025647\n", + "Epoch 3600, Loss: 0.025094\n", + "Epoch 3700, Loss: 0.024569\n", + "Epoch 3800, Loss: 0.024068\n", + "Epoch 3900, Loss: 0.023591\n", + "Epoch 4000, Loss: 0.023134\n", + "Epoch 4100, Loss: 0.022698\n", + "Epoch 4200, Loss: 0.022280\n", + "Epoch 4300, Loss: 0.021879\n", + "Epoch 4400, Loss: 0.021495\n", + "Epoch 4500, Loss: 0.021126\n", + "Epoch 4600, Loss: 0.020771\n", + "Epoch 4700, Loss: 0.020430\n", + "Epoch 4800, Loss: 0.020102\n", + "Epoch 4900, Loss: 0.019785\n" + ] + }, + { + "data": { + "text/plain": [ + "array([[ 5.73789762],\n", + " [-7.93887721]])" + ] + }, + "execution_count": 173, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "xNew = np.linspace(-1,3, m)\n", + "Xnew = np.c_[np.ones_like(xNew), xNew]\n", + "losses = []\n", + "\n", + "for i in range(epochs):\n", + " z = X@theta\n", + " h = sigmoid(z)\n", + " grad = (X.T@(h-y))/m\n", + " theta = theta - lr*grad\n", + " lossValue = logLoss(y, h)\n", + " losses.append(lossValue)\n", + " if(i%100==0):\n", + " print(f\"Epoch {i:4d}, Loss: {lossValue:.6f}\")\n", + "theta" + ] + }, + { + "cell_type": "code", + "execution_count": 174, + "id": "2ac3bc1a", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "[]" + ] + }, + "execution_count": 174, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "image/png": "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AACAeYQRAABgFGEEAAAYRRgBAABGWR1GVqxYIfn5+ZKamiqFhYWyefNm00WKWf/4xz9kxowZehY9NQvuU089FfG66ge9ePFiGTBggKSlpcn06dNl165dEeccO3ZMrrvuOj2pTq9eveSGG26Q6urqiHPee+89ueiii/R/EzUj4P333y82Wbp0qZx77rl6tuH+/fvL1VdfLTt37ow4p76+Xm6++Wbp27ev9OzZU77+9a9LaWlpxDkHDhyQK6+8UtLT0/X73H777dLc3BxxzoYNG+Scc87RPehHjBghq1evFls8/PDDMmHChNAkT9OmTZPnn38+9Dr3uGvcd999+vfH9773vdAx7nXn+PGPf6zvbfgyZsyY+LnPjqXWrFnjJCcnO6tWrXI++OADZ+7cuU6vXr2c0tJS00WLSc8995xz1113OX/5y1/U6CvnySefjHj9vvvuc7KyspynnnrKeffdd52rrrrKGTZsmFNXVxc65ytf+YpTUFDgvPHGG86rr77qjBgxwrn22mtDr1dUVDg5OTnOdddd52zfvt354x//6KSlpTm//vWvHVsUFRU5v/3tb/XPv23bNueKK65whgwZ4lRXV4fOmTdvnpOXl+esX7/eefvtt53zzjvPOf/880OvNzc3O+PGjXOmT5/uvPPOO/q/XXZ2trNw4cLQOXv27HHS09Od+fPnOx9++KHz3//9347X63XWrVvn2ODpp592nn32Wefjjz92du7c6dx5551OUlKSvu8K97jzbd682cnPz3cmTJjg3HrrraHj3OvOsWTJEucLX/iCc/jw4dBy5MiRuLnP1oaRqVOnOjfffHNo3+fzOQMHDnSWLl1qtFzx4OQw4vf7ndzcXOe//uu/QsdOnDjhpKSk6EChqC+uuu6tt94KnfP88887CQkJzsGDB/X+Qw895PTu3dtpaGgInXPHHXc4o0ePdmxVVlam79srr7wSuq/qj+YTTzwROmfHjh36nE2bNul99UvE4/E4JSUloXMefvhhJzMzM3Rvf/jDH+pfXOFmzpypw5Ct1HfvN7/5Dfe4C1RVVTkjR450XnzxReeSSy4JhRHudeeGkYKCglZfi4f7bGUzTWNjo2zZskU3JYQ//0btb9q0yWjZ4tHevXulpKQk4n6qZxGopi/3fqq1apqZMmVK6Bx1vrrvb775Zuiciy++WJKTk0PnFBUV6WaK48ePi40qKir0uk+fPnqtvrdNTU0R91pVxQ4ZMiTiXo8fP15ycnIi7qN6GNYHH3wQOif8PdxzbPz++3w+WbNmjdTU1OjmGu5x51PNA6r6/+T7wb3uXLt27dJN6cOHD9dN4qrZJV7us5VhpLy8XP8CCr/pitpXf1TRMe49O939VGvVBhkuMTFR/5ENP6e19wj/DJuop1WrtvULLrhAxo0bF7oPKqypYHe6e32m+9jWOeoXT11dndjg/fff123nqu173rx58uSTT8rYsWO5x51MBb2tW7fq/lAn4153nsLCQt1/Y926dbpPlPpHoup/p56YGw/3OS6e2gvYSP1rcvv27fLaa6+ZLkq3NHr0aNm2bZuuffrzn/8ss2fPlldeecV0sboV9Uj6W2+9VV588UXdKR1d5/LLLw9tq87ZKpwMHTpU/vSnP+lBBbHOypqR7Oxs8Xq9p/QkVvu5ubnGyhWv3Ht2uvup1mVlZRGvq17aaoRN+DmtvUf4Z9jiO9/5jjzzzDPy8ssvy+DBg0PH1X1QzYwnTpw47b0+031s6xw1siQefnF1BvUvRTUaYPLkyfpf7QUFBfLLX/6Se9yJVPOA+v+9Gn2hakLVogLfr371K72t/lXNve4aqhZk1KhRsnv37rj4TlsZRtQvIfULaP369RFV4mpftRmjY4YNG6a/pOH3U1Xbqb4g7v1Ua/V/BPXLyfXSSy/p+64SvHuOGkKs2jZd6l9U6l+wvXv3Fhuo/sEqiKgmA3V/1L0Np763SUlJEfda9alRbcPh91o1QYSHP3Uf1S8M1QzhnhP+Hu45Nn//1XexoaGBe9yJLr30Un2fVA2Uu6h+Y6o/g7vNve4aatqETz75RE+3EBffacfiob1qtMfq1av1SI8bb7xRD+0N70mMyN7wariXWtTXZtmyZXp7//79oaG96v799a9/dd577z3nq1/9aqtDeydNmuS8+eabzmuvvaZ714cP7VU9vtXQ3uuvv14PsVT/jdQwMpuG9t500016iPSGDRsihujV1tZGDNFTw31feuklPURv2rRpejl5iN5ll12mhwerYXf9+vVrdYje7bffrnvVr1ixwqqhkAsWLNAjlPbu3au/r2pfjex64YUX9Ovc464TPppG4V53ju9///v694b6Tr/++ut6iK4amqtG5MXDfbY2jChqjLT6j6PmG1FDfdX8F2jdyy+/rEPIycvs2bNDw3sXLVqkw4QKeZdeeqmevyHc0aNHdfjo2bOnHi42Z84cHXLCqTlKLrzwQv0egwYN0iHHJq3dY7WouUdcKuD953/+px6Kqn4xXHPNNTqwhNu3b59z+eWX63la1C8k9YuqqanplP+mEydO1N//4cOHR3xGd/etb33LGTp0qP7Z1S9c9X11g4jCPY5eGOFedw41xHbAgAH651e/O9X+7t274+Y+J6j/+fz1KwAAAJ+NlX1GAABA7CCMAAAAowgjAADAKMIIAAAwijACAACMIowAAACjCCMAAMAowggAADCKMAIAAIwijAAAAKMIIwAAwCjCCAAAEJP+P/+k3j6bciPvAAAAAElFTkSuQmCC", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "plt.plot(losses)" + ] + }, + { + "cell_type": "code", + "execution_count": 175, + "id": "2ae78ab9", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "0.019479899336526857\n" + ] + } + ], + "source": [ + "xNew = np.linspace(-0.5,3, m)\n", + "Xnew = np.c_[np.ones_like(xNew), xNew]\n", + "yMod = sigmoid(Xnew@theta)\n", + "yJitter = y+np.random.uniform(-0.1, 0.1, size=y.shape)\n", + "logloss = logLoss(y, sigmoid(X@theta))\n", + "print(logloss)" + ] + }, + { + "cell_type": "code", + "execution_count": 169, + "id": "3820d814", + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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jjvsLoGISNQJqGXkwQcfxOjRo5GcnIw5c+ZgxYoVhz3/3nvvxaRJk5CSkoKRI0fi+uuvR4vmcxAREZFAgpFnnnkGixYtwq233orVq1dj+vTpmD9/PsrLy32e/9e//hWLFy8252/YsAF/+MMfzHPcdNNNwSi/SPCVlgK/+hVw//12l0REJCrEOBwOhz8PYEvIcccdhwceeMBsd3V1mdaOH/7whybo8PaDH/zABCFvvvmma9+Pf/xjfPzxx3jvvff69Zp1dXXIyspCbW0tMjMz/SmuiP9efBH42teA4mJg924gLs7uEomIhKX+1t9+tYy0tbVh1apVmDdvXvcTxMaa7Q8//NDnY0444QTzGKsrZ/v27XjllVdw1lln9fo6ra2t5gLcbyJDhn+bZ54J3Hor0Nlpd2lERCKeXwmslZWV6OzsREFBgcd+bm/cuNHnYy688ELzuC984QtgI0xHRwe+//3vH7abZunSpbjtttv8KZpI8CQmAq+8YncpRESixqAP7X3nnXdwxx134He/+53JMfnb3/6Gl19+Gbfffnuvj1myZIlp0rFue/bsGexiioiISDi0jOTm5iIuLg5lZWUe+7ldWFjo8zE333wzLrnkElxxxRVme9q0aWhsbMRVV12Fn/70p6abx1tSUpK5idiqrQ149VUgJ8e5mJ6IiNjfMpKYmIhZs2Z5JKMygZXbc+fO9fmYpqamHgEHAxryM3dWZGhxRM255wJ33213SUREIprf3TQc1vvoo4/iiSeeMKNkrr76atPScfnll5vjl156qelmsSxYsAAPPfQQnn76aezYsQOvv/66aS3hfisoEQlJX/0qUFICTJ5sd0lERCKa3zOwXnDBBaioqMAtt9yC0tJSzJgxA8uXL3clte7evdujJeRnP/sZYmJizP2+ffuQl5dnApFf/OIXwb0SkWA76ihg1y4OGbO7JCIiEc3veUbsoHlGREREws+gzDMiErU2b2YClN2lEBGJSApGRPryla8AkyZp7hERkUGiYESkLwxE4uOBrVvtLomISERSzohIX7gIZEKCc74REREJev3t92gakaiTn293CUREIpq6aUT8EfoNiSIiYUfBiEh/cAmEb34TmDiR0w7bXRoRkYiiYESkP5gv8vrrziTWlSvtLo2ISERRzohIfyQmAr//PTBuHDBzpt2lERGJKApGRPrrggvsLoGI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", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "plt.plot(pw, yJitter, 'og', alpha=0.3)\n", + "plt.plot(xNew, yMod, ':r')\n", + "plt.show()" + ] + }, + { + "cell_type": "code", + "execution_count": 176, + "id": "75e177bf", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Train accuracy: 1.000\n" + ] + } + ], + "source": [ + "p_train = sigmoid(X @ theta)\n", + "y_hat = (p_train >= 0.5).astype(int) # 0.5 is default; tune if needed\n", + "acc = (y_hat == y).mean()\n", + "print(f\"Train accuracy: {acc:.3f}\")" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "2767cfe0", + "metadata": {}, + "outputs": [], + "source": [] + } + ], + "metadata": { + "kernelspec": { + "display_name": ".venv (3.13.5)", + "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.13.5" + } + }, + "nbformat": 4, + "nbformat_minor": 5 +} diff --git a/monday.md b/monday.md new file mode 100644 index 0000000..09ab88a --- /dev/null +++ b/monday.md @@ -0,0 +1,329 @@ +# Data exploration and visualization + + +```python +!pip3 install scikit-learn +``` + + Requirement already satisfied: scikit-learn in /Users/gmarx/lwc/courses/aia/lab-sessions-25b/.venv/lib/python3.13/site-packages (1.7.2) + Requirement already satisfied: numpy>=1.22.0 in /Users/gmarx/lwc/courses/aia/lab-sessions-25b/.venv/lib/python3.13/site-packages (from scikit-learn) (2.3.2) + Requirement already satisfied: scipy>=1.8.0 in /Users/gmarx/lwc/courses/aia/lab-sessions-25b/.venv/lib/python3.13/site-packages (from scikit-learn) (1.16.2) + Requirement already satisfied: joblib>=1.2.0 in /Users/gmarx/lwc/courses/aia/lab-sessions-25b/.venv/lib/python3.13/site-packages (from scikit-learn) (1.5.2) + Requirement already satisfied: threadpoolctl>=3.1.0 in /Users/gmarx/lwc/courses/aia/lab-sessions-25b/.venv/lib/python3.13/site-packages (from scikit-learn) (3.6.0) + + [notice] A new release of pip is available: 25.1.1 -> 25.2 + [notice] To update, run: pip install --upgrade pip + + + +```python +from sklearn import datasets +iris = datasets.load_iris() +print(iris.DESCR) +``` + + .. _iris_dataset: + + Iris plants dataset + -------------------- + + **Data Set Characteristics:** + + :Number of Instances: 150 (50 in each of three classes) + :Number of Attributes: 4 numeric, predictive attributes and the class + :Attribute Information: + - sepal length in cm + - sepal width in cm + - petal length in cm + - petal width in cm + - class: + - Iris-Setosa + - Iris-Versicolour + - Iris-Virginica + + :Summary Statistics: + + ============== ==== ==== ======= ===== ==================== + Min Max Mean SD Class Correlation + ============== ==== ==== ======= ===== ==================== + sepal length: 4.3 7.9 5.84 0.83 0.7826 + sepal width: 2.0 4.4 3.05 0.43 -0.4194 + petal length: 1.0 6.9 3.76 1.76 0.9490 (high!) + petal width: 0.1 2.5 1.20 0.76 0.9565 (high!) + ============== ==== ==== ======= ===== ==================== + + :Missing Attribute Values: None + :Class Distribution: 33.3% for each of 3 classes. + :Creator: R.A. Fisher + :Donor: Michael Marshall (MARSHALL%PLU@io.arc.nasa.gov) + :Date: July, 1988 + + The famous Iris database, first used by Sir R.A. Fisher. The dataset is taken + from Fisher's paper. Note that it's the same as in R, but not as in the UCI + Machine Learning Repository, which has two wrong data points. + + This is perhaps the best known database to be found in the + pattern recognition literature. Fisher's paper is a classic in the field and + is referenced frequently to this day. (See Duda & Hart, for example.) The + data set contains 3 classes of 50 instances each, where each class refers to a + type of iris plant. One class is linearly separable from the other 2; the + latter are NOT linearly separable from each other. + + .. dropdown:: References + + - Fisher, R.A. "The use of multiple measurements in taxonomic problems" + Annual Eugenics, 7, Part II, 179-188 (1936); also in "Contributions to + Mathematical Statistics" (John Wiley, NY, 1950). + - Duda, R.O., & Hart, P.E. (1973) Pattern Classification and Scene Analysis. + (Q327.D83) John Wiley & Sons. ISBN 0-471-22361-1. See page 218. + - Dasarathy, B.V. (1980) "Nosing Around the Neighborhood: A New System + Structure and Classification Rule for Recognition in Partially Exposed + Environments". IEEE Transactions on Pattern Analysis and Machine + Intelligence, Vol. PAMI-2, No. 1, 67-71. + - Gates, G.W. (1972) "The Reduced Nearest Neighbor Rule". IEEE Transactions + on Information Theory, May 1972, 431-433. + - See also: 1988 MLC Proceedings, 54-64. Cheeseman et al"s AUTOCLASS II + conceptual clustering system finds 3 classes in the data. + - Many, many more ... + + + + +```python +import numpy as np +import matplotlib.pyplot as plt +sl = iris.data[:,0].reshape(-1,1) +sw = iris.data[:,1].reshape(-1,1) +plt.plot(sl, sw, 'ok') +plt.show() +sl.shape +``` + + + +![png](monday_files/monday_3_0.png) + + + + + + + (150, 1) + + + + +```python +tg = iris.target +tg.shape +plt.plot(sl[tg==0,0], sw[tg==0,0], 'og', label="Seto") +plt.plot(sl[tg==1,0], sw[tg==1,0], 'or', label="Versi") +plt.plot(sl[tg==2,0], sw[tg==2,0], 'ob', label="Virgi") +plt.legend() +plt.show() +``` + + + +![png](monday_files/monday_4_0.png) + + + +# Binary classifier with one parameter + + +```python +z = np.linspace(-10, 10, 100) +sig = 1/(1+np.exp(-z-4)) + 1/(1+np.exp(-z+4)) +plt.plot(z, sig, 'ob') +plt.show() +``` + + + +![png](monday_files/monday_6_0.png) + + + +# First classifier +$$z = \theta_1\times x_1 + \theta_0$$ + + +```python +pw = iris.data[:, 3].reshape(-1,1) +X = np.c_[np.ones_like(pw), pw] +y = (iris.target==0).astype(int).reshape(-1,1) #Setosa +``` + + +```python +def sigmoid(z): + #z = np.clip(z, -50, 50) + sig = 1/(1+np.exp(-z)) + return sig +``` + + +```python +def logLoss(y, yModel): + #yModel = np.clip(yModel, 1e-12, 1-1e-12) + loss = -np.mean(y*np.log(yModel)+(1-y)*np.log(1-yModel)) + return loss +``` + + +```python +# Gradient descent +lr = 0.1 +epochs = 5000 +m = X.shape[0] +np.random.seed(10) +theta = np.random.rand(2,1) +theta +``` + + + + + array([[0.77132064], + [0.02075195]]) + + + + +```python +xNew = np.linspace(-1,3, m) +Xnew = np.c_[np.ones_like(xNew), xNew] +losses = [] + +for i in range(epochs): + z = X@theta + h = sigmoid(z) + grad = (X.T@(h-y))/m + theta = theta - lr*grad + lossValue = logLoss(y, h) + losses.append(lossValue) + if(i%100==0): + print(f"Epoch {i:4d}, Loss: {lossValue:.6f}") +theta +``` + + Epoch 0, Loss: 0.909705 + Epoch 100, Loss: 0.262854 + Epoch 200, Loss: 0.194549 + Epoch 300, Loss: 0.154778 + Epoch 400, Loss: 0.128995 + Epoch 500, Loss: 0.110967 + Epoch 600, Loss: 0.097650 + Epoch 700, Loss: 0.087403 + Epoch 800, Loss: 0.079264 + Epoch 900, Loss: 0.072636 + Epoch 1000, Loss: 0.067129 + Epoch 1100, Loss: 0.062475 + Epoch 1200, Loss: 0.058488 + Epoch 1300, Loss: 0.055030 + Epoch 1400, Loss: 0.052002 + Epoch 1500, Loss: 0.049325 + Epoch 1600, Loss: 0.046941 + Epoch 1700, Loss: 0.044803 + Epoch 1800, Loss: 0.042874 + Epoch 1900, Loss: 0.041124 + Epoch 2000, Loss: 0.039528 + Epoch 2100, Loss: 0.038066 + Epoch 2200, Loss: 0.036723 + Epoch 2300, Loss: 0.035482 + Epoch 2400, Loss: 0.034334 + Epoch 2500, Loss: 0.033267 + Epoch 2600, Loss: 0.032273 + Epoch 2700, Loss: 0.031345 + Epoch 2800, Loss: 0.030475 + Epoch 2900, Loss: 0.029660 + Epoch 3000, Loss: 0.028892 + Epoch 3100, Loss: 0.028169 + Epoch 3200, Loss: 0.027486 + Epoch 3300, Loss: 0.026840 + Epoch 3400, Loss: 0.026227 + Epoch 3500, Loss: 0.025647 + Epoch 3600, Loss: 0.025094 + Epoch 3700, Loss: 0.024569 + Epoch 3800, Loss: 0.024068 + Epoch 3900, Loss: 0.023591 + Epoch 4000, Loss: 0.023134 + Epoch 4100, Loss: 0.022698 + Epoch 4200, Loss: 0.022280 + Epoch 4300, Loss: 0.021879 + Epoch 4400, Loss: 0.021495 + Epoch 4500, Loss: 0.021126 + Epoch 4600, Loss: 0.020771 + Epoch 4700, Loss: 0.020430 + Epoch 4800, Loss: 0.020102 + Epoch 4900, Loss: 0.019785 + + + + + + array([[ 5.73789762], + [-7.93887721]]) + + + + +```python +plt.plot(losses) +``` + + + + + [] + + + + + +![png](monday_files/monday_13_1.png) + + + + +```python +xNew = np.linspace(-0.5,3, m) +Xnew = np.c_[np.ones_like(xNew), xNew] +yMod = sigmoid(Xnew@theta) +yJitter = y+np.random.uniform(-0.1, 0.1, size=y.shape) +logloss = logLoss(y, sigmoid(X@theta)) +print(logloss) +``` + + 0.019479899336526857 + + + +```python +plt.plot(pw, yJitter, 'og', alpha=0.3) +plt.plot(xNew, yMod, ':r') +plt.show() +``` + + + +![png](monday_files/monday_15_0.png) + + + + +```python +p_train = sigmoid(X @ theta) +y_hat = (p_train >= 0.5).astype(int) # 0.5 is default; tune if needed +acc = (y_hat == y).mean() +print(f"Train accuracy: {acc:.3f}") +``` + + Train accuracy: 1.000 + + + +```python + +``` diff --git a/monday_files/monday_13_1.png b/monday_files/monday_13_1.png new file mode 100644 index 0000000000000000000000000000000000000000..aa535b8302d8b76a2ad3233bccec4a60547abaee GIT binary patch literal 11976 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 !~S z4T`#kgz%(glfSQgH4h2au->Nlo4$aICa4!U4IOYA&2b4?$TO@d5znN+Uj!B6x$fU- z=b$X6r2;~j7a&3JUWF$L@7gLEp$DLD*S5aam>Uub9adnt4clK~Ty@gl&uQIf4H z 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 Wy5gF^vH^VaM{XG0(MMf#jQ$_wMz=!% literal 0 HcmV?d00001 diff --git a/monday_files/monday_3_0.png b/monday_files/monday_3_0.png new file mode 100644 index 0000000000000000000000000000000000000000..1d2de9d554c1582e78a62ebeb0e3a957f38128a1 GIT binary patch literal 12395 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 EAGjdX!vFvP literal 0 HcmV?d00001 diff --git a/monday_files/monday_6_0.png b/monday_files/monday_6_0.png new file mode 100644 index 0000000000000000000000000000000000000000..7d41f8d07a95b20743334ad896351404f50a152b GIT binary patch literal 14587 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