{ "cells": [ { "cell_type": "markdown", "metadata": { "id": "BYH7l0wAKdeD" }, "source": [ "# Lab 01 - Machine Learning 2022/23\n" ] }, { "cell_type": "markdown", "metadata": { "id": "6z_EDUh6PziZ" }, "source": [ "## Why Python\n", "* Several modules for the analysis and the visualization of data;\n", "* Easy to learn;\n", "* Efficient;\n", "* Universal." ] }, { "cell_type": "markdown", "metadata": { "id": "E8Cz598jNq1e" }, "source": [ "## The Python's scientific ecosystem \n", "* **Numpy**: numeric computation;\n", "* **Scipy**: high level numeric functions, sparse structures;\n", "* **Matplotlib**: 2D (and ~3D) visualization;\n", "* **Scikit-learn**: machine learning." ] }, { "cell_type": "markdown", "metadata": { "id": "PZaHIjQNRWk8" }, "source": [ "# Numpy" ] }, { "cell_type": "markdown", "metadata": { "id": "XU7SmHQfOYMe" }, "source": [ "### Importing modules" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "cellView": "both", "id": "OcTvrdCXo5HC", "vscode": { "languageId": "python" } }, "outputs": [], "source": [ "import numpy as np # \"as\" is useful to give a handy alias to the module in the code" ] }, { "cell_type": "markdown", "metadata": { "id": "FPniYrR8S0CS" }, "source": [ "### Creating arrays" ] }, { "cell_type": "markdown", "metadata": { "id": "OuIDhy9IV9SP" }, "source": [ "One-dimensional arrays" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "cellView": "both", "id": "KI32_qnZpJd_", "vscode": { "languageId": "python" } }, "outputs": [], "source": [ "a1d = np.array(range(10)) #from a range" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "4Nqyx-o6SwuU", "vscode": { "languageId": "python" } }, "outputs": [], "source": [ "a1d = np.array([0,1,2,3,4,5,6,7,8,9]) #from a sequence of values" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "I4mGNFuDVjgi", "vscode": { "languageId": "python" } }, "outputs": [], "source": [ "def print_info(x):\n", " print(\"Type: %s\" %x.dtype)\n", " print(\"# dimensions and shape: %d, %s\" %(x.ndim, x.shape))\n", " print(\"# of rows: %d\\n\" %len(x))" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "colab": { "base_uri": "https://localhost:8080/" }, "id": "grMgfS8BVotK", "outputId": "b1aefa79-6f76-47e9-f1b3-9de7f29b67bb", "vscode": { "languageId": "python" } }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Type: int64\n", "# dimensions and shape: 1, (10,)\n", "# of rows: 10\n", "\n" ] } ], "source": [ "print_info(a1d)" ] }, { "cell_type": "markdown", "metadata": { "id": "9o6fwfodV_td" }, "source": [ "Two-dimensional arrays (matrices)" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "wL4h1iYLVwnc", "vscode": { "languageId": "python" } }, "outputs": [], "source": [ "mat = np.array([[1,2,3], [4,5,6]], dtype=float)" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "colab": { "base_uri": "https://localhost:8080/" }, "id": "gttbLOiWWDjw", "outputId": "2e05317a-e982-4c17-f81a-cefc30969f1c", "vscode": { "languageId": "python" } }, "outputs": [ { "data": { "text/plain": [ "array([[1., 2., 3.],\n", " [4., 5., 6.]])" ] }, "execution_count": 47, "metadata": {}, "output_type": "execute_result" } ], "source": [ "mat" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "colab": { "base_uri": "https://localhost:8080/" }, "id": "4wdJZtn9WEGS", "outputId": "749c31b1-6e82-4ed3-ddfd-76ac1655a1d4", "vscode": { "languageId": "python" } }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Type: float64\n", "# dimensions and shape: 2, (2, 3)\n", "# of rows: 2\n", "\n" ] } ], "source": [ "print_info(mat)" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "colab": { "base_uri": "https://localhost:8080/" }, "id": "t-6Tt-DQWFVW", "outputId": "5cc4e8a3-ea17-4421-9cde-f66228a4dc7c", "vscode": { "languageId": "python" } }, "outputs": [ { "data": { "text/plain": [ "array([[0., 0., 0., 0.],\n", " [0., 0., 0., 0.],\n", " [0., 0., 0., 0.]])" ] }, "execution_count": 49, "metadata": {}, "output_type": "execute_result" } ], "source": [ "np.zeros((3,4))" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "colab": { "base_uri": "https://localhost:8080/" }, "id": "OKF2YRVwWJmR", "outputId": "ea968c55-cef2-41cb-f2c7-22b17e19a7f7", "vscode": { "languageId": "python" } }, "outputs": [ { "data": { "text/plain": [ "array([[1., 1., 1.],\n", " [1., 1., 1.]])" ] }, "execution_count": 50, "metadata": {}, "output_type": "execute_result" } ], "source": [ "np.ones((2,3))" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "colab": { "base_uri": "https://localhost:8080/" }, "id": "95GCKt6QWLUM", "outputId": "f2725e04-f471-41cb-baa7-88294fd6b6e8", "vscode": { "languageId": "python" } }, "outputs": [ { "data": { "text/plain": [ "array([[1., 0., 0., 0., 0.],\n", " [0., 1., 0., 0., 0.],\n", " [0., 0., 1., 0., 0.],\n", " [0., 0., 0., 1., 0.],\n", " [0., 0., 0., 0., 1.]])" ] }, "execution_count": 51, "metadata": {}, "output_type": "execute_result" } ], "source": [ "np.identity(5) #np.eye(5, [k]) #identity matrix" ] }, { "cell_type": "markdown", "metadata": { "id": "LeOxmEAGWVAz" }, "source": [ "### Utilities" ] }, { "cell_type": "markdown", "metadata": { "id": "RXmO6tQdWtF4" }, "source": [ "Reshaping: changing the shape of an array\n", "\n", "```\n", "- reshape(dimension): convert the dimension of an array\n", "- flatten(): \"unroll\" the array in a one-dimensional array\n", "```\n", "\n", "\n", "\n" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "QsHeM-CiWOIU", "vscode": { "languageId": "python" } }, "outputs": [], "source": [ "a2d = a1d.reshape((5,2))" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "colab": { "base_uri": "https://localhost:8080/" }, "id": "dL3HC63SWzPR", "outputId": "d6286829-bbe3-4e42-f5f0-fded76f4a1c6", "vscode": { "languageId": "python" } }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Type: int64\n", "# dimensions and shape: 2, (5, 2)\n", "# of rows: 5\n", "\n" ] } ], "source": [ "print_info(a2d)" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "VMlQ-qmUW1-Q", "vscode": { "languageId": "python" } }, "outputs": [], "source": [ "a1d_again = a2d.flatten()" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "colab": { "base_uri": "https://localhost:8080/" }, "id": "PYXAWz7LW-XV", "outputId": "a82d5a19-6ba1-4492-d4b5-859b99143c60", "vscode": { "languageId": "python" } }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Type: int64\n", "# dimensions and shape: 1, (10,)\n", "# of rows: 10\n", "\n" ] } ], "source": [ "print_info(a1d)" ] }, { "cell_type": "markdown", "metadata": { "id": "HFem5SKdXJa3" }, "source": [ "Comparison and matching functions\n", "\n", "```\n", "- any(): exists\n", "- all(): for all\n", "- where(condition): return the list of indices where the condition is satisfied\n", "```\n", "\n", "\n", "\n" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "colab": { "base_uri": "https://localhost:8080/" }, "id": "AhU0NEEEXAZ6", "outputId": "dcbfc26d-87ca-45d4-e995-3dab4af65550", "vscode": { "languageId": "python" } }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Type: int64\n", "# dimensions and shape: 2, (5, 2)\n", "# of rows: 5\n", "\n" ] } ], "source": [ "a2d_copy = a2d.copy() #copy of an array\n", "print_info(a2d_copy)" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "colab": { "base_uri": "https://localhost:8080/" }, "id": "tvtSNg6vXbUQ", "outputId": "fa6d9317-b7ce-4574-835c-779b06d1b6c3", "vscode": { "languageId": "python" } }, "outputs": [ { "data": { "text/plain": [ "True" ] }, "execution_count": 57, "metadata": {}, "output_type": "execute_result" } ], "source": [ "(a2d == a2d_copy).all()" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "colab": { "base_uri": "https://localhost:8080/" }, "id": "lZ6eE_bfXdMn", "outputId": "c0035e04-e987-4ec6-a873-1d48fd33fd8a", "vscode": { "languageId": "python" } }, "outputs": [ { "data": { "text/plain": [ "False" ] }, "execution_count": 58, "metadata": {}, "output_type": "execute_result" } ], "source": [ "(a2d != a2d_copy).any()" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "colab": { "base_uri": "https://localhost:8080/" }, "id": "HqHcTcrfXeyW", "outputId": "9ae8e2d2-bde6-4216-e5b5-eadfb50f0667", "vscode": { "languageId": "python" } }, "outputs": [ { "data": { "text/plain": [ "(array([3]),)" ] }, "execution_count": 59, "metadata": {}, "output_type": "execute_result" } ], "source": [ "np.where(a1d==3)" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "I5FYz_SrYIdE", "vscode": { "languageId": "python" } }, "outputs": [], "source": [ "a1d[np.where(a1d==3)] = 5" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "colab": { "base_uri": "https://localhost:8080/" }, "id": "4HEYQnEtYJ7G", "outputId": "376acf00-049e-489f-9ddc-82e87784e2f6", "vscode": { "languageId": "python" } }, "outputs": [ { "data": { "text/plain": [ "array([0, 1, 2, 5, 4, 5, 6, 7, 8, 9])" ] }, "execution_count": 61, "metadata": {}, "output_type": "execute_result" } ], "source": [ "a1d" ] }, { "cell_type": "markdown", "metadata": { "id": "urdCn5kEYb_u" }, "source": [ "Methods for matrices\n", "```\n", "- transpose() or (T)\n", "- sum()\n", "- prod()\n", "- mean()\n", "- dot(np.array): dot-product between arrays\n", "```" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "V5uImutaYS__", "vscode": { "languageId": "python" } }, "outputs": [], "source": [ "mat_t = mat.transpose() #= mat.T" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "colab": { "base_uri": "https://localhost:8080/" }, "id": "fj7KYH1EY_6g", "outputId": "17f649da-c35d-4b19-9860-61aa8d40acd7", "vscode": { "languageId": "python" } }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "[[1. 2. 3.]\n", " [4. 5. 6.]]\n", "[[1. 4.]\n", " [2. 5.]\n", " [3. 6.]]\n" ] } ], "source": [ "print(mat)\n", "print(mat_t)" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "colab": { "base_uri": "https://localhost:8080/" }, "id": "s0ELgAuXZBIG", "outputId": "e82229f5-0bc4-4a2f-dd5d-38313c33eed6", "vscode": { "languageId": "python" } }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "6.0\n", "1.0\n", "1.0\n" ] } ], "source": [ "print(np.ones((2,3)).sum())\n", "print(np.ones((2,3)).prod())\n", "print(np.ones((2,3)).mean())\n", "#var(), std(), min(), max(), argmin(), argmax()" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "colab": { "base_uri": "https://localhost:8080/" }, "id": "06g-mH5RZNHX", "outputId": "533b3fa1-5bc4-4a91-93e1-9e50c68a1775", "vscode": { "languageId": "python" } }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "dot [47.]\n" ] } ], "source": [ "print(\"dot\", np.dot(a1d, np.ones((10, 1))))" ] }, { "cell_type": "markdown", "metadata": { "id": "eUj9d2i2Zcgw" }, "source": [ "## Linalg module\n", "Sub-module of the module *numpy*, ```linalg``` gives us basic tools of linear algebra" ] }, { "cell_type": "markdown", "metadata": { "id": "VxQF3z_JZ1rV" }, "source": [ "### Determinant" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "colab": { "base_uri": "https://localhost:8080/" }, "id": "C6o9yCg8ZUax", "outputId": "64ff2b13-c557-4ce6-89e8-39f9e7e0ac7f", "vscode": { "languageId": "python" } }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "-48.00000000000003\n" ] } ], "source": [ "q = np.array([[4,2,0], [9,3,7], [1,2,1]], float)\n", "print(np.linalg.det(q))" ] }, { "cell_type": "markdown", "metadata": { "id": "qyEWrrZ3Z8C-" }, "source": [ "### Eigenvalues/Eigenvectors" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "colab": { "base_uri": "https://localhost:8080/" }, "id": "mn50E49zZ6KC", "outputId": "2fcfbccc-1ab2-4373-b56f-28a376a6a3de", "vscode": { "languageId": "python" } }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "[ 8.85591316 1.9391628 -2.79507597]\n", "[[-0.3663565 -0.54736745 0.25928158]\n", " [-0.88949768 0.5640176 -0.88091903]\n", " [-0.27308752 0.61828231 0.39592263]]\n" ] } ], "source": [ "evals, evecs = np.linalg.eig(q)\n", "print(evals)\n", "print(evecs)" ] }, { "cell_type": "markdown", "metadata": { "id": "zahs6qFOaDIs" }, "source": [ "### Generation of random numbers/distribution\n", "NOTE: random numbers can also be generated using the Python ```random``` module\n", "\n" ] }, { "cell_type": "markdown", "metadata": { "id": "wDpbBOnSaWfY" }, "source": [ "The importance of the seed in the generation of random numbers" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "colab": { "base_uri": "https://localhost:8080/" }, "id": "-i9XTRaiaAt-", "outputId": "e42a3ffc-7b19-4acc-b53a-4cfc8b3b7645", "vscode": { "languageId": "python" } }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "0.45120370596487314\n", "0.12252262421091398\n" ] } ], "source": [ "# No seed set\n", "print(np.random.random())\n", "print(np.random.random())" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "colab": { "base_uri": "https://localhost:8080/" }, "id": "zhzdr-fZafGe", "outputId": "13bfc03a-1d23-4a59-bf06-a24b80779d7f", "vscode": { "languageId": "python" } }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "0.3745401188473625\n", "0.9507143064099162\n", "0.3745401188473625\n", "0.9507143064099162\n" ] } ], "source": [ "# Fixed seed\n", "np.random.seed(42)\n", "print(np.random.random())\n", "print(np.random.random())\n", "\n", "np.random.seed(42)\n", "print(np.random.random())\n", "print(np.random.random())" ] }, { "cell_type": "markdown", "metadata": { "id": "kRwSoXblanH6" }, "source": [ "Sample e distribuzioni normali" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "colab": { "base_uri": "https://localhost:8080/" }, "id": "j93aXs-pajNN", "outputId": "ceea1afc-ad42-411a-ff69-b1742fa94e36", "vscode": { "languageId": "python" } }, "outputs": [ { "data": { "text/plain": [ "array([ 0.64768854, 1.52302986, -0.23415337, -0.23413696, 1.57921282,\n", " 0.76743473, -0.46947439, 0.54256004, -0.46341769, -0.46572975])" ] }, "execution_count": 70, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# Normal distribution with mean 0 and variance 1\"\n", "np.random.normal(0, 1, size=10)" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "colab": { "base_uri": "https://localhost:8080/" }, "id": "g-hieeDuat6Y", "outputId": "74713473-603a-4b31-e9b6-f825e15cdb6f", "vscode": { "languageId": "python" } }, "outputs": [ { "data": { "text/plain": [ "array([459, 313, 21, 252, 747, 856, 560, 474, 58, 510, 681, 475, 699,\n", " 975, 782, 189, 957, 686, 957, 562, 875, 566, 243, 831, 504, 130,\n", " 484, 818, 646, 20, 840, 166, 273, 387, 600, 315, 13, 241, 776,\n", " 345, 564, 897, 339, 91, 366, 955, 454, 427, 508, 775, 942, 34,\n", " 205, 80, 931, 561, 871, 387, 1, 389, 565, 105, 771, 821, 476,\n", " 702, 401, 729, 555, 161, 201, 957, 995, 269, 862, 815, 270, 455,\n", " 461, 726, 251, 701, 295, 724, 719, 748, 337, 878, 52, 791, 921,\n", " 216, 763, 187, 379, 492, 40, 156, 14, 812])" ] }, "execution_count": 71, "metadata": {}, "output_type": "execute_result" } ], "source": [ "#Sample of 100 values drawn out from a pool of 1000 randomly generated \n", "np.random.choice(range(1000), 100)" ] }, { "cell_type": "markdown", "metadata": { "id": "LHQ-z8Jpz7pr" }, "source": [ "# Matplotlib" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "at3P3_Uta0QJ", "vscode": { "languageId": "python" } }, "outputs": [], "source": [ "#the following command is useful to the notebook to display plots inline\n", "%matplotlib inline \n", "import matplotlib.pyplot as plt" ] }, { "cell_type": "markdown", "metadata": { "id": "f-jjXgeu0HZa" }, "source": [ "### Plot of a simple curve" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "colab": { "base_uri": "https://localhost:8080/" }, "id": "iTHte7uYz_rw", "outputId": "e387bf98-ff8b-4ced-8bd8-f0a527ebedac", "vscode": { "languageId": "python" } }, "outputs": [ { "data": { "text/plain": [ "array([ 0., 1., 2., 3., 4., 5., 6., 7., 8., 9., 10., 11., 12.,\n", " 13., 14., 15., 16., 17., 18., 19., 20., 21., 22., 23., 24., 25.,\n", " 26., 27., 28., 29., 30., 31., 32., 33., 34., 35., 36., 37., 38.,\n", " 39., 40., 41., 42., 43., 44., 45., 46., 47., 48., 49., 50.])" ] }, "execution_count": 73, "metadata": {}, "output_type": "execute_result" } ], "source": [ "#x = np.array(range(50))\n", "x = np.linspace(0, 50,51) #Return evenly spaced numbers over a specified interval\n", "x" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "colab": { "base_uri": "https://localhost:8080/", "height": 265 }, "id": "TBsaNi5K0MVV", "outputId": "45df45db-065a-4f82-8e3a-d8d9c90f5a5e", "vscode": { "languageId": "python" } }, "outputs": [ { "data": { "image/png": "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", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "y = x**2 #target value\n", "plt.plot(x,y)\n", "plt.show() #consume the plot: not necessary for notebooks, but necessary in general" ] }, { "cell_type": "markdown", "metadata": { "id": "MPhX328m0Ys9" }, "source": [ "### Plot of two curves on a same graph" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "colab": { "base_uri": "https://localhost:8080/", "height": 265 }, "id": "6j8Bf36E0Tj_", "outputId": "27ae1ad2-982c-4e00-c807-e988e41565d2", "vscode": { "languageId": "python" } }, "outputs": [ { "data": { "image/png": "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", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "y1 = x**1.8\n", "plt.plot(x,y)\n", "plt.plot(x,y1)\n", "plt.show()" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "colab": { "base_uri": "https://localhost:8080/", "height": 269 }, "id": "SR7Pk9Cv0ihG", "outputId": "59e163df-8474-43f6-cc60-3715160b3704", "vscode": { "languageId": "python" } }, "outputs": [ { "data": { "image/png": "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", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "# Create a figure of size 8x6 inches, 80 dots per inch\n", "#plt.figure(figsize=(8, 6), dpi=80)\n", "\n", "# Create a new subplot from a grid of 1x1\n", "plt.subplot(2, 1, 1)\n", "\n", "x = np.linspace(-np.pi, np.pi, 256)\n", "c, s = np.cos(x), np.sin(x)\n", "\n", "# Plot cosine with a blue continuous line of width 1 (pixels)\n", "plt.plot(x, c, color=\"blue\", linewidth=1.0, linestyle=\"-\", label=\"blue\")\n", "\n", "# Plot sine with a green continuous line of width 1 (pixels)\n", "plt.plot(x, s, color=\"green\", linewidth=1.0, linestyle=\"--\", label=\"green\")\n", "\n", "# Set x limits\n", "plt.xlim(-4.0, 4.0)\n", "\n", "# Set x ticks\n", "plt.xticks(np.linspace(-4, 4, 9, endpoint=True))\n", "\n", "# Set y limits\n", "plt.ylim(-1.0, 1.0)\n", "\n", "# Set y ticks\n", "plt.yticks(np.linspace(-1, 1, 5, endpoint=True))\n", "\n", "# Save figure using 72 dots per inch\n", "# plt.savefig(\"exercice_2.png\", dpi=72)\n", "\n", "plt.legend(loc='upper left')\n", "\n", "plt.subplot(2, 1, 2)\n", "h = np.random.normal(0,1,100)\n", "plt.hist(h) #histogram\n", "plt.show()" ] }, { "cell_type": "markdown", "metadata": { "id": "9bDzLjYm4mjP" }, "source": [ "# Ridge regression\n", "$\\min_\\mathbf{w} \\|y - X\\mathbf{w}\\|^2_2 + \\alpha \\|\\mathbf{w}\\|^2_2$" ] }, { "cell_type": "markdown", "metadata": { "id": "Pay-VTEd41_Q" }, "source": [ "### Training set \n", "$\\{(x_i, y_i)\\}_{i=1}^n$ where $y = \\sin(2\\pi x) + \\epsilon$" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "OAW-0c-2gjsU", "vscode": { "languageId": "python" } }, "outputs": [], "source": [ "#target function\n", "def f(x):\n", " return np.sin(2 * np.pi * x)" ] }, { "cell_type": "markdown", "metadata": { "id": "UPemmXMVs-xp" }, "source": [ "### Dataset (artificial)" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "colab": { "base_uri": "https://localhost:8080/" }, "id": "-fx4rA2qeipw", "outputId": "00f1584c-05fa-40a2-e480-b5c6dcc54e15", "vscode": { "languageId": "python" } }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Type: float64\n", "# dimensions and shape: 2, (100, 1)\n", "# of rows: 100\n", "\n", "Type: float64\n", "# dimensions and shape: 2, (100, 1)\n", "# of rows: 100\n", "\n" ] } ], "source": [ "np.random.seed(9)\n", "n_samples = 100\n", "X = np.random.uniform(0, 1, size=n_samples)[:, np.newaxis] # add a dimension to the array (useful to have a column matrix)\n", "y = f(X) + np.random.normal(scale=0.3, size=n_samples)[:, np.newaxis] #add a dimension to the array (useful to have a column matrix)\n", "print_info(X)\n", "print_info(y)" ] }, { "cell_type": "markdown", "metadata": { "id": "hGLmn6xltCSF" }, "source": [ "### Training set and test set" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "ArTtNvJ1tGOD", "vscode": { "languageId": "python" } }, "outputs": [], "source": [ "from sklearn.model_selection import train_test_split\n", "X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.8)" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "colab": { "base_uri": "https://localhost:8080/", "height": 283 }, "id": "_bDlAj_osn8D", "outputId": "b3f392a3-87c6-4c8d-d19c-4ddf33ef8818", "vscode": { "languageId": "python" } }, "outputs": [ { "data": { "image/png": "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", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "x_plot = np.linspace(0, 1, 100)\n", "ax = plt.gca()\n", "ax.plot(x_plot, f(x_plot), color='green')\n", "ax.scatter(X_train, y_train, s=10)\n", "ax.set_ylim((-2, 2))\n", "ax.set_xlim((0, 1))\n", "ax.set_ylabel('y')\n", "ax.set_xlabel('x')\n", "plt.show()" ] }, { "cell_type": "markdown", "metadata": { "id": "UeGoJpUhv3WG" }, "source": [ "Utility for graph plotting" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "xCur2C2JhcK7", "vscode": { "languageId": "python" } }, "outputs": [], "source": [ "def plot_approximation(est, X_train, y_train, x_plot, ax, label):\n", " ax.plot(x_plot, f(x_plot), color='green')\n", " ax.scatter(X_train, y_train)\n", " ax.plot(x_plot, est.predict(x_plot[:, np.newaxis]), color='red', label=label)\n", " ax.set_ylim((-2, 2))\n", " ax.set_xlim((0, 1))\n", " ax.set_ylabel('y')\n", " ax.set_xlabel('x')\n", " ax.legend()" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "G13ywJkLiWtC", "vscode": { "languageId": "python" } }, "outputs": [], "source": [ "def plot_coefficients(est, ax, label):\n", " coef = est.steps[-1][1].coef_.flatten()\n", " print(coef.shape)\n", " ax.semilogy(np.abs(coef[1:]), marker='o', label=label)\n", " ax.set_ylim((1e-10, 1e8))" ] }, { "cell_type": "markdown", "metadata": { "id": "BrGGRNNSv8C4" }, "source": [ "### Training the model\n", "The effect of the regularization hyper-parameter ($\\alpha$)" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "colab": { "base_uri": "https://localhost:8080/", "height": 1000 }, "id": "32pUyXnLjAyc", "outputId": "d7ee5eb3-de64-417f-923e-0a8026a56210", "vscode": { "languageId": "python" } }, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [ "/usr/local/lib/python3.7/dist-packages/sklearn/linear_model/_ridge.py:190: UserWarning: Singular matrix in solving dual problem. Using least-squares solution instead.\n", " warnings.warn(\"Singular matrix in solving dual problem. Using \"\n" ] }, { "name": "stdout", "output_type": "stream", "text": [ "(21,)\n", "(21,)\n", "(21,)\n", "(21,)\n" ] }, { "data": { "image/png": "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sIGLLrqIunXrcsstt3DkyBEAxo4dS6VKlWjatClNmzZl1KhRee/s0CEI8fmJiIh/lGSLSMy69tpr+fbbb095+7/97W88+OCDrFu3jnLlyjF69Ojjr91yyy0sXbqUpUuXctddd+W9s1SVmBYRKUyUZItIRHXt2pULLriA8847j5EjR57w2saNG2nQoAG33nor5557LjfeeCMHDhw4/vorr7xC8+bNady4MatXrwbg22+/5eKLL6ZZs2ZccsklrFmzJuhYWrZsSZUqVU5avn37dm644QZatGhBixYtmDt37knrOOeYOXMmNwb6Uffq1YuJEycGfeyTqKuIiEihouoiIrHogQdg6dK818uPpk3h5ZfzXG3MmDGUL1+egwcP0qJFC2644YYTXl+zZg2jR4+mVatW3Hnnnbz22msMHDgQgIoVK/Ldd9/x2muv8fzzzzNq1CgaNGjA119/TdGiRZkxYwaPPvoo48aNY82aNdxyyy3ZxjB79mzKli2bY4wDBgzgwQcfpHXr1vz888+0b9+eVatWnbDOzp07KVu2LEWLepfR6tWrk5qpNXrcuHHMmTOHc845h5deeokaNWqQKyXZIiKFipJsEYmoYcOGMWHCBAA2b97M2rVrT3i9Ro0atGrVCoDbbruNYcOGHU+yu3XrBsAFF1zA+PHjAdizZw+9evVi7dq1mBlHjx4FoH79+iw9xX8kZsyYwcqVK48/37t3L/v27Qu67/a1115Ljx49KFasGG+88Qa9evVi5syZuW+kJFtEpFBRki0Si4JocQ6H2bNnM2PGDObPn0+JEiVo27btSWXsslbdyPy8WLFiAMTFxZGWlgbA3//+dy6//HImTJjAxo0badu2LcBptWSnp6ezYMECihcvfsLy9u3bs23bNpKTk3nzzTfZvXs3aWlpFC1alJSUFKpVqwZAhQoVjm9z11138fDDD+f2tnhSUqBMGdizJ+91RUQk6inJFpGI2bNnD+XKlaNEiRKsXr2aBQsWnLTOzz//zPz587n44ot57733aN26dZ77zEhux44de3z56bRkX3311bzyyisMGjQIgKVLl9K0aVOmTZt2wnqXX345n3zyCd27d+ett96iS5cuAGzduvV4X+9JkyZx7rnn5n3QlBSoXl1JtohIIaGBjyISMR06dCAtLY1zzz2XwYMH07Jly5PWqV+/PsOHD+fcc8/l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", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "from sklearn.linear_model import Ridge\n", "from sklearn.preprocessing import PolynomialFeatures\n", "from sklearn.pipeline import make_pipeline\n", "\n", "_, ax_rows = plt.subplots(4, 2, figsize=(12, 16))\n", "degree = 20\n", "alphas = [0.0, 1e-8, 1e-5, 1e-1]\n", "for alpha, ax_row in zip(alphas, ax_rows):\n", " est = make_pipeline(PolynomialFeatures(degree), Ridge(alpha=alpha)) #pipeline: Creation of polynomial features -> Training of the Ridge model\n", " est.fit(X_train, y_train)\n", " plot_approximation(est, X_train, y_train, x_plot, ax_row[0], label='alpha=%r' % alpha)\n", " plot_coefficients(est, ax_row[1], label='Ridge(alpha=%r) coefficients' % alpha)\n", "plt.show()" ] }, { "cell_type": "markdown", "metadata": { "id": "gm8rpCYAwEVe" }, "source": [ "### Evaluation\n", "Mean Squared Error (MSE) evaluation on the test set " ] }, { "cell_type": "code", "execution_count": null, "metadata": { "colab": { "base_uri": "https://localhost:8080/", "height": 283 }, "id": "JJRFEZQYmCgw", "outputId": "0ca8890a-c79d-4516-b50e-cf66c2e39ed7", "vscode": { "languageId": "python" } }, "outputs": [ { "data": { "image/png": "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", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "from sklearn.metrics import mean_squared_error #import MSE\n", "train_error = np.empty(10)\n", "test_error = np.empty(10)\n", "\n", "for degree in range(10):\n", " #est = make_pipeline(PolynomialFeatures(degree), Ridge(alpha=1e-5))\n", " est = make_pipeline(PolynomialFeatures(degree), Ridge(alpha=0.000001))\n", " est.fit(X_train, y_train)\n", " train_error[degree] = mean_squared_error(y_train, est.predict(X_train))\n", " test_error[degree] = mean_squared_error(y_test, est.predict(X_test))\n", "\n", "plt.plot(np.arange(10), train_error, color='green', label='train')\n", "plt.plot(np.arange(10), test_error, color='red', label='test')\n", "plt.ylim((0.0, 1.))\n", "plt.ylabel('MSE')\n", "plt.xlabel('degree')\n", "plt.legend()\n", "plt.show()" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "id": "FACx2oFZOEdy", "vscode": { "languageId": "python" } }, "outputs": [], "source": [] } ], "metadata": { "colab": { "collapsed_sections": [], "name": "Lab01_ML2122.ipynb", "provenance": [] }, "kernelspec": { "display_name": "Python 3", "name": "python3" } }, "nbformat": 4, "nbformat_minor": 0 }