{ "cells": [ { "cell_type": "markdown", "id": "c63e966d", "metadata": {}, "source": [ "# Linear Regression" ] }, { "cell_type": "code", "execution_count": 1, "id": "05abcb9a", "metadata": {}, "outputs": [], "source": [ "import numpy as np\n", "import seaborn as sns\n", "import matplotlib.pyplot as plt\n", "from sklearn import datasets, linear_model\n", "from sklearn.metrics import mean_squared_error, r2_score\n", "from sklearn.model_selection import train_test_split\n", "import pandas as pd\n", "sns.set_theme(font_scale=2,palette='colorblind')" ] }, { "cell_type": "markdown", "id": "0ccdb53f", "metadata": {}, "source": [ "## Setting upa linear regression" ] }, { "cell_type": "code", "execution_count": 2, "id": "1659e88e", "metadata": {}, "outputs": [], "source": [ "tips = sns.load_dataset(\"tips\")" ] }, { "cell_type": "code", "execution_count": 3, "id": "edcadada", "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", "
total_billtipsexsmokerdaytimesize
016.991.01FemaleNoSunDinner2
\n", "
" ], "text/plain": [ " total_bill tip sex smoker day time size\n", "0 16.99 1.01 Female No Sun Dinner 2" ] }, "execution_count": 3, "metadata": {}, "output_type": "execute_result" } ], "source": [ "tips.head(1)" ] }, { "cell_type": "markdown", "id": "99708294", "metadata": {}, "source": [ "We're going to predict **tip** from **total bill** using 80% of the data for training.\n", "This is a regression problem because the target, *tip* is a continuous value,\n", "the problems we've seen so far were all classification, species of iris and the\n", "character in that corners data were both categorical. \n", "\n", "Using linear regression is also a good choice because it makes sense that the tip\n", "would be approximately linearly related to the total bill, most people pick some\n", "percentage of the total bill. If we our prior knowledge was that people\n", "typically tipped with some more complicated function, this would not be a good\n", "model." ] }, { "cell_type": "code", "execution_count": 4, "id": "19db7a6c", "metadata": {}, "outputs": [], "source": [ "# sklearn requires 2D object of features even for 1 feature\n", "tips_X = tips['total_bill'].values\n", "tips_X = tips_X[:,np.newaxis] # add an axis\n", "tips_y = tips['tip']\n", "\n", "tips_X_train,tips_X_test, tips_y_train, tips_y_test = train_test_split(\n", " tips_X,\n", " tips_y,\n", " train_size=.8,\n", " random_state=0)" ] }, { "cell_type": "markdown", "id": "3e07dac2", "metadata": {}, "source": [ "To see what that new bit of code did, we can examine the shapes:" ] }, { "cell_type": "code", "execution_count": 5, "id": "7c8f4928", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "(244, 1)" ] }, "execution_count": 5, "metadata": {}, "output_type": "execute_result" } ], "source": [ "tips_X.shape" ] }, { "cell_type": "markdown", "id": "b8906d08", "metadata": {}, "source": [ "what we ended up is 2 dimensions (there are two numbers) even though the second\n", "one is 1." ] }, { "cell_type": "code", "execution_count": 6, "id": "40337d93", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "(244,)" ] }, "execution_count": 6, "metadata": {}, "output_type": "execute_result" } ], "source": [ "tips['total_bill'].values.shape" ] }, { "cell_type": "markdown", "id": "87be68d6", "metadata": {}, "source": [ "this, without the `newaxis` is one dimension, we can see that because there is\n", "no number after the comma. \n", "\n", "Now that our data is ready, we create the linear regression estimator object" ] }, { "cell_type": "code", "execution_count": 7, "id": "33e323b4", "metadata": {}, "outputs": [], "source": [ "regr = linear_model.LinearRegression()" ] }, { "cell_type": "markdown", "id": "bc0222cf", "metadata": {}, "source": [ "Now we fit the model." ] }, { "cell_type": "code", "execution_count": 8, "id": "900fd9fb", "metadata": {}, "outputs": [ { "data": { "text/html": [ "
LinearRegression()
In a Jupyter environment, please rerun this cell to show the HTML representation or trust the notebook.
On GitHub, the HTML representation is unable to render, please try loading this page with nbviewer.org.
" ], "text/plain": [ "LinearRegression()" ] }, "execution_count": 8, "metadata": {}, "output_type": "execute_result" } ], "source": [ "regr.fit(tips_X_train,tips_y_train)" ] }, { "cell_type": "markdown", "id": "188b9d7a", "metadata": {}, "source": [ "We can examine the coefficients and intercept." ] }, { "cell_type": "code", "execution_count": 9, "id": "55f904e4", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "(array([0.0968534]), 1.0285439454607272)" ] }, "execution_count": 9, "metadata": {}, "output_type": "execute_result" } ], "source": [ "regr.coef_, regr.intercept_" ] }, { "cell_type": "markdown", "id": "fdeacda9", "metadata": {}, "source": [ "These define a line (y = mx+b) coef is the slope.\n", "\n", "\n", "```{important}\n", "This is what our model *predicts* the tip will be based on the past data. It is\n", "important to note that this is not what the tip *should* be by any sort of\n", "virtues. For example, a typical normative rule for tipping is to tip 15% or 20%.\n", "the model we learned, from this data, however is ~%10 + $1. (it's actually\n", "9.68% + $1.028)\n", "```\n", "\n", "To interpret this, we can apply it for a single value. We trained this to\n", "predict the tip from the total bill. So, we can put in any value that's a\n", "plausible total bill and get the predicted tip." ] }, { "cell_type": "code", "execution_count": 10, "id": "11c1fc61", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([2.75059744])" ] }, "execution_count": 10, "metadata": {}, "output_type": "execute_result" } ], "source": [ "my_bill = np.asarray([17.78]).reshape(1,-1)\n", "regr.predict(my_bill)" ] }, { "cell_type": "markdown", "id": "de866f10", "metadata": {}, "source": [ "We can also apply the function, as usual." ] }, { "cell_type": "code", "execution_count": 11, "id": "2aa9ba5d", "metadata": {}, "outputs": [], "source": [ "tips_y_pred = regr.predict(tips_X_test)" ] }, { "cell_type": "markdown", "id": "1696ff02", "metadata": {}, "source": [ "This gives a vector of values." ] }, { "cell_type": "code", "execution_count": 12, "id": "1073fcd5", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([2.7321953 , 2.79999268, 2.91621676, 1.73073111, 2.60434881,\n", " 1.58545101, 2.76415692, 3.28813383, 2.7864332 , 4.38451435,\n", " 3.47699796, 3.47021823, 2.39127132, 2.28763818, 2.32831661,\n", " 3.97288739, 1.83726986, 2.38449158, 2.84745085, 3.26585755,\n", " 3.93995723, 3.05471713, 2.57819839, 2.48521912, 2.33703342,\n", " 2.61693975, 2.20628132, 3.91477534, 3.4779665 , 2.55592211,\n", " 2.45519457, 2.23727441, 2.52202341, 2.05422148, 2.79999268,\n", " 2.32541101, 2.66827205, 2.02903959, 5.7094689 , 2.57626132,\n", " 1.85954614, 2.23243174, 2.54817383, 3.91961801, 2.26439336,\n", " 2.67214619, 2.79515001, 3.11864037, 2.68183153])" ] }, "execution_count": 12, "metadata": {}, "output_type": "execute_result" } ], "source": [ "tips_y_pred" ] }, { "cell_type": "markdown", "id": "191f9628", "metadata": {}, "source": [ "To visualize in more detail, we'll plot the data as black points and the\n", "predictions as blue points. To highlight that this is a perfectly linear\n", "prediction, we'll also add a line for the prediction." ] }, { "cell_type": "code", "execution_count": 13, "id": "199372f5", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "" ] }, "execution_count": 13, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "filenames": { "image/png": "/home/runner/work/BrownFall21/BrownFall21/_build/jupyter_execute/notes/2021-10-25_24_1.png" }, "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "plt.scatter(tips_X_test,tips_y_test, color='black')\n", "plt.plot(tips_X_test,tips_y_pred, color='blue')\n", "plt.scatter(tips_X_test,tips_y_pred, color='blue')" ] }, { "cell_type": "markdown", "id": "bf38a493", "metadata": {}, "source": [ "## Evaluating Regression - Mean Squared Error\n", "\n", "From the plot, we can see that there is some error for each point, so accuracy\n", "that we've been using, won't work. One idea is to look at how much error there\n", "is in each prediction, we can look at that visually first." ] }, { "cell_type": "code", "execution_count": 14, "id": "7687d3a3", "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "filenames": { "image/png": "/home/runner/work/BrownFall21/BrownFall21/_build/jupyter_execute/notes/2021-10-25_26_0.png" }, "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "plt.scatter(tips_X_test, tips_y_test, color='black')\n", "plt.plot(tips_X_test, tips_y_pred, color='blue', linewidth=3)\n", "\n", "# draw vertical lines frome each data point to its predict value\n", "[plt.plot([x,x],[yp,yt], color='red', linewidth=3)\n", " for x, yp, yt in zip(tips_X_test, tips_y_pred,tips_y_test)];" ] }, { "cell_type": "markdown", "id": "706f85d4", "metadata": {}, "source": [ "We can use the average length of these red lines to capture the error. To get\n", "the length, we can take the difference between the prediction and the data for\n", "each point. Some would be positive and others negative, so we will square each\n", "one then take the average." ] }, { "cell_type": "code", "execution_count": 15, "id": "39dcc42e", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "0.821309064276629" ] }, "execution_count": 15, "metadata": {}, "output_type": "execute_result" } ], "source": [ "mean_squared_error(tips_y_test, tips_y_pred)" ] }, { "cell_type": "markdown", "id": "c4a1c597", "metadata": {}, "source": [ "We can get back to the units being dollars, by taking the square root." ] }, { "cell_type": "code", "execution_count": 16, "id": "f5bdb7d7", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "0.9062610353957787" ] }, "execution_count": 16, "metadata": {}, "output_type": "execute_result" } ], "source": [ "np.sqrt(mean_squared_error(tips_y_test, tips_y_pred))" ] }, { "cell_type": "markdown", "id": "18fd6034", "metadata": {}, "source": [ "This is equivalent to using absolute value instead" ] }, { "cell_type": "code", "execution_count": 17, "id": "3c001a04", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "0.6564074900962107" ] }, "execution_count": 17, "metadata": {}, "output_type": "execute_result" } ], "source": [ "np.mean(np.abs(tips_y_test - tips_y_pred))" ] }, { "cell_type": "markdown", "id": "94c8bfa0", "metadata": {}, "source": [ "## Evaluating Regression - R2\n", "\n", "We can also use the $R^2$ regression coefficient." ] }, { "cell_type": "code", "execution_count": 18, "id": "54cd4edb", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "0.5906895098589039" ] }, "execution_count": 18, "metadata": {}, "output_type": "execute_result" } ], "source": [ "r2_score(tips_y_test,tips_y_pred)" ] }, { "cell_type": "markdown", "id": "2629dae8", "metadata": {}, "source": [ "This is a bit harder to interpret, but we can use some additional plots to\n", "visualize.\n", "This code simulates data by randomly picking 20 points, spreading them out\n", "and makes the “predicted” y values by picking a slope of 3. Then I simulated various levels of noise, by sampling noise and multiplying the same noise vector by different scales and adding all of those to a data frame with the column name the r score for if that column of target values was the truth.\n", "\n", "Then I added some columns of y values that were with different slopes and different functions of x. These all have the small amount of noise.\n", "\n", "````{margin}\n", "```{tip}\n", "[Facet Grids](https://seaborn.pydata.org/generated/seaborn.FacetGrid.html) allow more customization than the figure level plotting functions\n", "we have used otherwise, but each of those combines a FacetGrid with a\n", "particular type of plot.\n", "```\n", "````" ] }, { "cell_type": "code", "execution_count": 19, "id": "2584b655", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "" ] }, "execution_count": 19, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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iGSW89CNUtEYORFJ8fzzz3DWWafHphky5Db69t2oRDlKookAJYkKxFJ1dttte77++qvYNCNHjqZdu/YlypGISHpffOHsuefOsWn69z+BI4/sX6IcxdAwEZGqV+wJ/ApFEwFKMv3HpdmbMmUyG2ywVmyaPn3W5K67HihRjkREMttjjx358ssvYtO8994ntGzZskQ5EhFJ76OPPuDAA/eOTXPxxYPZYYf4ir1S00SAkkz/cWmWBg++hIceui82zfDhI+jWrVuJciQikt748ePYYov4LoO77bYn5513UYlyJCKSWZ8+K1BbG98FpEmGbuRAEwFKMhWIpVmYNWsma68dv3D7rEWXZ/ymJ80bJ9Ktu8aJiEjTOOGEo3n99Vdj07z99gcssMACpcmQiEgG33zzNbvuul1smlJN4FcomghQkqlALBXrrrtu49prr4xN8+KLrzKn80L0vWmkxomISJOZPHkyG24YP3RDrcAiUi522mlrvv8+fqXV0aM/pUWLFiXKUYFpIkBJotKAVIxsFm5ffPFePPfcsPleGzN+isaJiEjJXXLJBTz66MOxad544106depUohyJiKSXzaobxx9/MocfflSJclQCmghQIioNSHmK1oZ77PFHuePyC2OTPv74c/ztb8tk3K5xIiJSCjNnzmSddeKHbqy//gbcdNMd8QfS2pgiUgJHHXUYb789IjbNO+98SJs2ul+S5k0FYikrtbW19OmzQoPpcpmyX+NERKRYHnzwXi677F+xaV566XV69Fg4uwNqbUwRKZJshm7svfd+nHnmeSXKkUh5UIFYmtw77/yXI488JDbNX9sO5I3zDsivi7PGiYhIgWQzdGPppf/GE088n9fxtTamiBTSVVcN5t5774pN89Zbo+jQoWOJciRSfvTtKk0im4Xbf9n35vmeN2rMr8aJiEienn/+Gc466/TYNJN2/RdT2najXeuWHL/nqlBDXnFGa2OKSGPMmDGDddddLTbNzjvvxoUXxvdsEakm+naV4kkaBzf5x684/pC9YpPfcstdrLvu+vwyfTbrDxkJGvMrIk0gm6EbPXsuzvPPv8zP02YXdBZ7zXkgIrm67767uPLKwbFphg8fQbdu3cITzVMgMh8ViKU4auDg/v354K3hscnSjQXWmF8RKbVPPvmI/fffMzbNI488idn8vVsK3aKr+CciDclm6EbGCfyKMU+BCthS4VQgloLJZsr+My++kr132D7+QBrzKyIlsN9+e/Dppx9n3F5TU8OY9z+LjT0Fb9FV/BORNEaMeJP+/f8Rm+a554ax+OK9YtMUfJ4CTQQozYAKxNIogwZdxMMPP5Bxe22Llvy61/VQExZut/XWye7AGvMrIgX27bdfs8su28WmGbfN2cxecAkgFGx/njo79iaxKC26in8iVa+2tpZNN12fP//8M2OaTbfZgYNOuzCnVtlC92rRRIDSHOhKlZxMnPgnG2+8Xmyaq666gRX6bsL6Q0ZqHJyINKmTTjqWV199OeP2JZZYimeeeZEx46ewzR3vzrctq5tEteiKSIF89NEHHHjg3rFpnntuGIv36jWvVfbBO97NqVW20L1aNBGgNAe6UqVBt9xyIzfddH1smlGjPqZVq6TLqQaNgxORkvv111/YZptNY9Pceef9rLHG/GtxNuomUS26IpKnvffeFffPMm5fZ531uPXWu+d7rTGtsoXu1aKJAKU5UIFY6pk6dQp9+64Zm+aCCy5hl112z5xArSYiUiKXXHIBjz76cMbtbdu2ZeTIMdTU1GRMo8msRKpAGUz+9NVXX7L77jvEpnn00adYbjnLuL1RrbIFvj9T7JTmQAViAeCRRx7k0kv/GZvmv/99n7Zt22Z/ULWaiEgR/PHHH2y66fqxaa69dggbb7xZ9gdVJZ5I89aEkz8dd9xRvPnmaxm3/+1vy/L4489mfbxGt8oW8v5MsVOaARWIq9SsWTNZe+1VY9OcfPLpHHzw4SXKkYhIZkOGXMettw6JTfPee5/QsmXL/E+iSjyRZquUkz/9/PNPbLfd5rFp7rrrQfr0WSOv45ddq6xip1Q4FYiryP/933MMHHhqbJo33niXTp06lShHIlLxitQFccqUyWywwVqxaf75z0vZaaddG38yEWn2ij3504UXnsMTTwzNuL1jx0688cY7sUM3sqZWWZGCUoG4Gctm4faDDz6ck08+vUQ5EpFmpcBdEB966D4GD74kNs3bb3/AAgsskGeGRaRaFXryp99/n8Bmm20Qm+aGG25lww375XX8BqlVVqRgVCBuZkaMeIP+/Y+ITfPyy2/SvftCJcqRiDRXje2COHPmTNZZJ37oxmmnnckBBxxckPyKSPUqRDfj6667kjvvvC02TaOHbohIyalAXG5y7H5YW1vLRhutw+TJf2VMs8MOO3PxxYOLkFkRqWb5dEF8/vlnOOus+F4pb745io4dOxYsnyIi+XQznjx5MhtuGD9045JLLmf77XcscGZFpJRUIC4nWXY//PDD9znooH1iD/Xcc8NYfPFeRc6wiFSzbLogzpkzhzXXXCn2OIcddiQnnHBK0fIpIgJk1c34vvvu4sor4xsR3nnnQ9q00Tq7Is2FCsRlJK774YkH7cYXX/wv477rr78BN910R6myKiKSsQviV++9xXbHHRW77/DhI+jWrVuJcioikt6MGTNYd93VYtMMGHA2++57YIlyJCKlpgJxOYi6SX/5xzRO6fc37hn1A7W//8jcf58DwHb3pt9t6NCnWXbZv5cwoyIiSaIuiG8dvR67b74u06dN5ZQM8WrXXffk/PMvKm3+RETSePrpJzjvvDNj04wY8R7t23coUY5EpCmpQNzUkrpJt3j/OTp/+GTGpMsssxyPPfZM6fImIpLBt99+zS67bBeb5vnnX6Znz8VLlCMRkfTmzp3LcccdyYgRb2ZMc+SR/enf/4QS5kpEyoUKxE1o2rSpXHfrrTx01810zZBm/JZnMGuhv9GudUuuP2b9UmZPRGQ+b731BoMGXcQPP3yfdnu/fptw3XU3lzhXIiL1/fbbWK677iqeffapjGlefXUkXbsuWMJciUg5arYFYjPbDzgGWBVoCXwO3AXc5O5zmypfH330IZdddgkfffRB2u1Tl+7LsWf9k38N/3K+1wu5eLyISDYmTZrEbbcN4b777s6YZuLug7njkE3yXntYRKQQamtrGTbsRQYPvoTx48elTXP8wPM5fN99FatEZD7NsnRlZjcC/YHpwMvALGBz4AZgczPbo1SF4hkzZnD//Xdz/fVXp92+1Y678mjbDZjaqm6JkVYtWxR08XgRkWyNGvUOgwdfnHYSv969l+YfJ5/Jce/VzBefznnRuXef1flr+qyslosTESmE33//nSFDrmXo0EfSbj/mmONZarM9OPqZ/zFt1hwu+rklS38/URV4IjKfZlcgNrPdCYXhX4F+7v5F9PoiwCvArsDxwLXFysP//udcfvm/ePfdt+tt69q1KwMHnsvWW29HTU0N1MA2KUst9VmsU6MXjxcRycbUqVO4887buP329F2d9933AI4++ji6dOkKwJjxU5j233fnbe/VpS2Hr7MkW9z6duxycSIihfDGG68xaNBF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SugyfXs0cD8bJxEKw58Cm7n7WJjXCvUGcIKZDXf3p4qRUREREREREakcZdtlOldR6/AZ0dNjEoVhAHf/gjCuAODsUudNREREREREyk+zKRAD6xMG0v/o7q+n2f4oYdKdtS2s3SUiIiIiIiJVrBK6TG9qZqsSBr+PBd4EXnL3uSnp+kSPadfgc/epZvYJYXD66oTJd7LRCuhFmAQh4zqCIiJlQPFKRCqF4pWIlIVKKBAflOa1T81sn2g2v4Slo8fvYo71PaEwvHRMmlS9gG9mz57DH39MzWE3qRYLLthe14bUk+m66NGjU02a5IXSC/hmwoTJdOnSTtel1KN4JenEXRdFjFmKVxJL8UoyKfQ9VjkXiN8H3iOszfY9Ya20NYBLCNPTDzOzNdw90dKbmD59SswxJ0ePnWLSpNWqVUt69Mh5N6kSujYknaa6Lrp379ik55fyputC0lG8knKk60IyKeS1UbYFYne/JuWlKcBzZvYS8BqwHmFB6ONKladx4/4q1amkgvTo0UnXhtST6booxZf7hAmT6d69o65LqUfxStKJuy6KHbMUryQTxSvJpND3WBU3qZa7zwQujZ5ul7Qp0frbIWb3RCuyPl0iIiIiIiJVruIKxJHPo8fk2aK/jR6XitlviZS0IiIiIiIiUqUqtUDcPXqcnPTa6Ohx7XQ7mFl7YOXo6Zgi5UtEREREREQqRKUWiPeKHpOXWBoJjAN6mVm/NPvsCbQG3k2aiEtERERERESqVFkWiM1sdTPbwcxaprzeysxOBU6IXro6sc3d5wCXRU9vMrOFk/ZbDhgUPb2keDkXERERERGRSlGus0z3Bp4Afjez0cBvhG7SqwA9gbnAGe7+Ysp+VwP9gB2BL8zsZUKr8BZAW+B6d3+qJO9AREREREREylpZthADHwDXAg6sCOwObAxMBe4C1nH3y1N3ilqJdwGOB74Eto72ew/Y391PSN1HREREREREqlNZthC7+zfASXnuOxe4IfoRERERERERSatcW4hFREREREREikoFYhEREREREalKKhCLiIiIiIhIVVKBWERERERERKqSCsQiIiIiIiJSlVQgFhERERERkaqkArGIiIiIiIhUJRWIRUREREREpCqpQCwiIiIiIiJVSQViERERERERqUoqEIuIiIiIiEhVUoFYREREREREqpIKxCIiIiIiIlKVVCAWERER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G1PRr0aCJJoIUCJVduVXhx9//IEddtgyNs199z3CKqusVtyMlEmg0Q2rSHnbeedt+O67bzNu32STzbjmmiFFzUPecaIYrQwa3ydStoYPH8YppxwXm+bVV0fStWvuQzey1ZiKfjUSiNSnAnEzcc45A3j22acybl9wwW4MH/5WdS7crm4xImXF/XP23nuX2DRPPPE8Sy/9t9JkCBoXJwpZ+afxfSJlZe7cuay11srMnTs3Y5q9996PM888r2R5akxFvxoJROpTgbhCjR8/ji22iF+UfciQ2+nbN35x96pRJq3VItXq8MMP5L333s24feWVV+X++/9dwhylUQZxQuP7RJreu+++zRFHHByb5sUXX2ORRRYpUY5SNLICT40EIvPTt2sFueqqwdx7712xaUaP/pQWLVqUKEciIul9//137LTT1rFp7r//UVZeeZUS5agyaHyfSOnV1tay3Xab88svP2dMs8UWW3HFFdeVMFcNaEwFXhlU/omUE327lrFJkybRr986sWkGD76KrbferkQ5EhHJbODAU/m//3su4/aFF16EF198tTqHbmRJ4/tESuOzzz5h3313j03z1FMvsNRSS5coRxVM8x5IhVOBuMy88srLnHxy/GyEOS3cLiJSJJMmTWTzzTdk1qxZGdPccstdrLvu+iXMVWXT+D6R4rnxxmu57babMm5fbbU+3HPPQyXMUTOgeQ+kGVCBuInNmTOHxx9/lEsuuSBjmrPOOp+99tq3dJkSEcng888/5fLL/8V7743KmEZDNxpB4/tECmbKlMncfvst3HXXbRnTPPTQY6ywwkolzFXzonkPpDlotleqme0HHAOsCrQEPgfuAm5y98xTBZbAjz/+wNVXX8bLL7+Udvuyyy7HAw8MZYEFFihxzkRE5jdr1kwefvgBrrxycMY09977MKuuunrpMtXcaXyfSN7ef380l112CZ9++kna7aWeEbq507wH0hw0yyvVzG4E+gPTgZeBWcDmwA3A5ma2RykLxXPnzuW5555m0KCLmDJlSr3tfftuyKmnDmSZZZYtVZZERDL6+uuvuOKKSxkx4s162zp06MDAgeey/fY7qRVYRJrctGnTuPfeO7nppuvTbt9jj73p3/8EunXrXuKcVQfNeyDNQbMrEJvZ7oTC8K9AP3f/Inp9EeAVYFfgeODaYuZj7NhfufbaK3n++WfSbj/1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Sa+Njh7XTreDmbUHVo6ejilSvkRERERERKRCVGqBeK/oMXmJpZHAOKCXmfVLs8+eQGvgXXfPdsklERERERERaabKskBsZqub2Q5m1jLl9VZmdiph9mmAqxPb3H0OcFn09CYzWzhpv+WAQdHTS4qXcxEREREREakU5TqpVm/gCeB3MxsN/EboJr0KYfmlucAZ7v5iyn5XA/2AHYEvzOxlQqvwFkBb4Hp3f6ok70BERETk/9m77/AoqraP498QAoQqICCoiAWPoiJVRRQVwd4QsaH4gBXsqIC94SvYC3Yp9gKK3QdBFFRQQUEsj0csiEpHBAkBkrDvHzMbNsnuZHezO9ny+1wX1yY7Z2buhMnZuec0ERFJaSnZQoyz1vCDgMVZc7gvcAiwARgP7Getvbv8Tm4r8UnApcDPwJHufl8B/a21l5XfR0RERERERLJTSrYQW2t/A66Ic98twBj3n4iIiIiIiEhYqdpCLCIiIiIiIpJUSohFREREREQkKykhFhERERERkaykhFhERERERESykhJiERERERERyUpKiEVERERERCQrKSEWERERERGRrKSEWERERERERLKSEmIRERERERHJSkqIRUREREREJCspIRYREREREZGspIRYREREREREspISYhEREREREclKSohFREREREQkKykhFhERERERyVQ5sKSwmHmrCli6sRhyqjug1FKzugMQERERERGRJMiB6YvXMmjiAgqLSsjPy2Vcv/b0bN0IAtUdXGpQC7GIiIiIiEgGWrKhuDQZBigsKmHQxAUs2VBczZGlDiXEIiIiIiIiGWh5wabSZDiosKiEFQWbqymi1KOEWERERCQWGo8nImliu/q1yc/LLfNefl4uzevVqqaIUo8SYhEREZFouePxDnxsNkeNnUO3R2czffFaJcUikpJa5tdkXL/2pUlxcAxxq7qaSipIvwkRERGRKEUajzdrcDda5eu2SkRSTAB6tm7ErMHdWFGwmeb1ajnJsCbUKqWaW0RERCRKXuPxlBCLSEoKQKv8mlvrKCXDZajLtIiIiEiUNB5PRCSzKCEWkdSgSWpEJA1oPJ6ISGZR7S0i1U+LxotIutB4PBGRjKIWYhGpdlo0XkTSijser8O2dZ0xeUqGRUTSlhJiEal2WjReRERERKqDEmIRqXaapEZEREREqoMSYhGpdpqkRkRERESqg+42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mTv3O2rW1EeeiFSvpUuXcPTRPT3LjB//Ah07dvYpoqrREpGSCXR3IABMmfI+w4df6Vlm5swvadiwYfQHjbOVN9FdnFVZi2SWDRsKOPBA75vFW2/9P0488WSfIhIRiezWW29k8uSJEbfXrVuXzz77yr+hG4mcaFRLREoGUEKcpbZs2UKnTu08ywwYMJChQ4fHd4IqtPImvIuzKmuRtPfSS88xevQdnmW++OIbateu7VNEIiLh/f333/TseaBnmYceepwePQ71J6BQyZhoVEtESppTQpxFZs/+jMGDz/UsM23aJ2y7bbMqn6sqrbxJ6eKsylokrWzevJn99vMeujF06DAGDBjkU0QiIpE9/PD9jB37hGeZr776ntzcXJ8iCk8TjYpUpCs/gwUCAXr2PJA1a9ZELHPssSdwxx13JfzcVWnlVRdnkez0/vvvcO21V3uW+fTTudSvX9+niEREwisoWE/37l08y9xxx10ce+wJPkUUHU00KlKRrvwM8+2333D22ad5lnnnnanssMOOSY2jSq286uIskj6qMBatpKSEzp338iwzaND5XHbZVQkIVESkap5//hnuuedOzzJffrmAWrV8mLQzzrpXE42KVKSEOAOcfvrJ/PjjDxG3779/N554YryPESWglVddnEVSXxxj0T79dCaXXHKB52GnT/+MJk2aJiFgEZHobdq0if3339ezzDXXXEf//gN8ishVhXHA6oUnUpES4jT0yy8/07fvcZ5lJk58k7ZtjU8RhaFWXpGMF81YtEAgwMEH78f69f9GPM6JJ57Mrbf+ny8xi4h4eeedN7nhBu8JRT/7bC716lXf0I0qjQPW/ZlIBUqI08Qll1zIp5/OiLh9l1124/XX3/ExoiiolVckM7ld9X5eU8jQHrswxS7nCNOC4IIhX86dwy2XDvQ8xHvvfUirVtsnP1YREQ/FxcV06bK3Z5nzzruISy65wp+AolDlccC6PxMpQwlxqnFvNL//dRHX9PduBR4//kU6duzkU2AiIlToqrdr07oMO2w3bjz3FHL/WRJxt+7de/DII0/6GKiISHgzZ37EZZcN9iwzffosmjRp4lNEsdE4YJHEUkKcQiZOfJk77rgl4vYGDRoyc+YX/i3cLiJSTrCr3qZ/VtLyrevYANwyBsItJDJp0tvstltbv0MUESkjEAhw3XXX8P77kXvS9e17KjfeeJuPUcVP44BFEksJcTXatGkTL7zwDA89dF/EMusPv4yZIy/QVPgiUu3mzv2SW+64jW1++zns9qJtdmDV0TcAMOXc/dht27p+hiciUurvv//m0UcfZNKkVyKWef/96bRs2crHqBJE44BFEipjsyxjzJnAYKA9TuPFj8B44DFr7Zbqiuunnyx33/1/zJnzRdjtO+7bjb8OOJ+cnBoM6LIjOcCaTcWq6ETEdxs2FDBu3FM8/fTjEcv0veMZxtrN6ronItXuk09mMGrU7fz1159ht19++VUMHHi+z1ElicYBiyRMRibExphHgCHARuBDoAg4HBgDHG6MOcWvpLioqIhXX32Ju+8OP4PqUUcfS9dTLuCqGSsoLCrhn7xcRh3Wlo3FW7jlg58oLCrhvpm/Rj2dvohIVXz77QLuuusOvv32mwrbWrZsxfARN1CycyfOnfQthUUlvL80h0f67M3Fk79T1z0R8dW6dWt54olHeeGFZ8JuHzjwfM4990Lq13dnhK7CuukikrkyLiE2xvTFSYaXAT2stQvd91sAHwF9gEuBB5MVw++//8Y994zik08qzgpdp04dRoy4keOPP4nc3FyWFBZz4GOzy0ydv6qgiHtm/BLfdPoiItHKgUVrCnju2XG8Nu6RsEX69DmFiy++nG23bVZmvzJd9erVpKO67omID+bM+ZxRo+7gl18WVti2yy67Mnz4Dey/f7eKO1Zh7V4RyWyZmF1d674ODybDANba5caYwcDHwAhjzMPJaCWeNetThgw5r8x7hx56OEOHDqN1650qlA83df6WQKBq0+mLiFQmB6b99jdXn3RgmbcbN27CiBE3csQRR0WewK98V70t6ronIsn38MP3M3bsE2XeO+OMs7noootp1Ggbz32rtHaviGS0jKoBjDE7AJ2BzcDE8tuttTOMMX8B2wMHALMSGkAO1N++De336073gw/h3DPPpGau96843NT5uTVyNJ2+iCTVkg3FnPf69+Tuczw11y1j3b59qL1NM97TzaGIpKjDD+/N/Plfcc4553LwwYdGt+pGJeum/7OxSHWeSJbLtBqgo/v6vbW2MEKZOTgJcUcSmRAHu+K89huFu57NzJW5tF1SUGlXnHBT53ds2UDT6YtIUpX2Ttn72NL31BNFRFJZu3Z7M3bs89HvEGHd9Cve/L70/mqP5vVp1yRf91ciWSzT7np2dl9/9yizuFzZhIi7K06kqfNB0+mLSNKE652inigikrLimBCr/L3ZaR22L02GwblXu2CSuk2LZLtM++t3pxGkwKPMeve1QawHb9Ys8i7f/7Iq7LjfNUUl7Nu6ceXHjvI9SU1e14Zkr+q6Lpo2rV/p+ZtuCfDMGR0456X5pS0lz5zRgX122IYaNaLohihpS/WVhJPK9dWWLQFe/25phfrq5L1betZX5e/NcqBK92riP9VXEkkir41MS4iTauXKfyNua1IrN2xrS+O8XM/9JP01a9ZA/8dSQaTrwo8P99Wr19O0af1Kr8tDWjWo0BNl9er1nvtIelN9JeF4XRfJrrOiqa+WFBaXJsPgJLHnvDSftoPzPVt2I92b6V4tPai+kkgSfY9Vo6oBpZjgnVw9jzLBVuSE/oUFxwLn5+UClB33KyKSitzZojtsW9e5qdSwDBFJQeFW5AjOeeCl/L3Zy/P/4pE+e+teTUTKyLQaYJH7WnF9o612LFc2MSKNBdYNpoiIiEjc4p7zINy9mdZNF5FyMq2FeJ77upcxJj9Cma7lyiaOWltEREREEqpKvfDK35tt0b2aiJSVUS3E1to/jDFfA52AfsCzoduNMYcAOwDLgNn+RygiIiIiMVEvPBFJokxrIQa4030dbYzZLfimMaY58Kj77Shr7RbfIxMRERGR2KkXnogkSUa1EANYaycZYx4DBgPfGmOmAUXA4UBD4A1gTPVFKCIiIiIiIqkgE1uIsdYOAfoDXwOHAEcCPwOXAH2ttSUeu4uIiIiIiEgWyLgW4iBr7YvAi9Udh4iIiIiIiKSmjGwhFhEREREREamMEmIRERERERHJSkqIRUREREREJCspIRYREREREZGspIRYREREREREspISYhEREREREclKSohFREREREQkKykhFhERERERkaykhFhERERERESykhJiERERERERyUpKiEVERERERCQrKSEWERERERGRrKSEWERERERERLKSEmIRERERERHJSkqIRUREREREJCspIRYREREREZGspIRYREREREREspISYhEREREREclKSohFREREREQkKykhFhERERERkaykhFhERERERESykhJiERERERERyUpKiEVERERERCQrKSEWERERERGRrKSEWERERERERLJSzeoOIA3kBr+oUSOnOuOQFKZrQ8KJcF20Af4EipNwytzQ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\n", "text/plain": [ "
" ] }, "metadata": { "filenames": { "image/png": "/home/runner/work/BrownFall21/BrownFall21/_build/jupyter_execute/notes/2021-10-25_36_1.png" }, "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "x = 10*np.random.random(20)\n", "y_pred = 3*x\n", "ex_df = pd.DataFrame(data = x,columns = ['x'])\n", "ex_df['y_pred'] = y_pred\n", "n_levels = range(1,18,2)\n", "# sample 0 mean noise\n", "noise = (np.random.random(20)-.5)*2\n", "# add varying noise levels\n", "for n in n_levels:\n", " # add noise, scaled\n", " y_true = y_pred + n* noise\n", " # compute the r2 in the column name, assign the \"true\" (data) here\n", " ex_df['r2 = '+ str(np.round(r2_score(y_pred,y_true),3))] = y_true\n", "\n", "# add functions\n", "f_x_list = [2*x,3.5*x,.5*x**2, .03*x**3, 10*np.sin(x)+x*3,3*np.log(x**2)]\n", "for fx in f_x_list:\n", " y_true = fx + noise\n", " # compute the r2 in the column name, assign the \"true\" (data) here\n", " ex_df['r2 = '+ str(np.round(r2_score(y_pred,y_true),3))] = y_true \n", "\n", "# melt the data frame for plotting\n", "xy_df = ex_df.melt(id_vars=['x','y_pred'],var_name='rscore',value_name='y')\n", "# create a FacetGrid so that we can add two types of plots per subplot\n", "g = sns.FacetGrid(data = xy_df,col='rscore',col_wrap=3,aspect=1.5,height=3)\n", "g.map(plt.plot, 'x','y_pred',color='k')\n", "g.map(sns.scatterplot, \"x\", \"y\",)" ] }, { "cell_type": "markdown", "id": "f18055c2", "metadata": {}, "source": [ "## Multivariate Regression\n", "\n", "We can also load data from Scikit learn.\n", "\n", "This dataset includes 10 features measured on a given date and an measure of\n", "diabetes disease progression measured one year later. The predictor we can train\n", "with this data might be someting a doctor uses to calculate a patient's risk." ] }, { "cell_type": "code", "execution_count": 20, "id": "1c5b14d5", "metadata": {}, "outputs": [], "source": [ "diabetes_X, diabetes_y = datasets.load_diabetes(return_X_y = True)" ] }, { "cell_type": "code", "execution_count": 21, "id": "90fe5250", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "(442, 10)" ] }, "execution_count": 21, "metadata": {}, "output_type": "execute_result" } ], "source": [ "diabetes_X.shape" ] }, { "cell_type": "code", "execution_count": 22, "id": "7063808b", "metadata": {}, "outputs": [], "source": [ "diabetes_X_train, diabetes_X_test, diabetes_y_train, diabetes_y_test = train_test_split(\n", " diabetes_X, diabetes_y)\n", "regr_diabetes = linear_model.LinearRegression()" ] }, { "cell_type": "code", "execution_count": 23, "id": "b2df03e7", "metadata": {}, "outputs": [ { "data": { "text/html": [ "
LinearRegression()
In a Jupyter environment, please rerun this cell to show the HTML representation or trust the notebook.
On GitHub, the HTML representation is unable to render, please try loading this page with nbviewer.org.
" ], "text/plain": [ "LinearRegression()" ] }, "execution_count": 23, "metadata": {}, "output_type": "execute_result" } ], "source": [ "regr_diabetes.fit(diabetes_X_train,diabetes_y_train)" ] }, { "cell_type": "markdown", "id": "b4558c3a", "metadata": {}, "source": [ "## What score does linear regression use?" ] }, { "cell_type": "code", "execution_count": 24, "id": "80f9abb3", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "0.43874612898797793" ] }, "execution_count": 24, "metadata": {}, "output_type": "execute_result" } ], "source": [ "regr_diabetes.score(diabetes_X_test,diabetes_y_test)" ] }, { "cell_type": "code", "execution_count": 25, "id": "ddabb670", "metadata": {}, "outputs": [], "source": [ "diabetes_y_pred = regr_diabetes.predict(diabetes_X_test)" ] }, { "cell_type": "code", "execution_count": 26, "id": "128ec817", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "0.43874612898797793" ] }, "execution_count": 26, "metadata": {}, "output_type": "execute_result" } ], "source": [ "r2_score(diabetes_y_test,diabetes_y_pred)" ] }, { "cell_type": "code", "execution_count": 27, "id": "ef6d20f0", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "3166.4747190611843" ] }, "execution_count": 27, "metadata": {}, "output_type": "execute_result" } ], "source": [ "mean_squared_error(diabetes_y_test,diabetes_y_pred)" ] }, { "cell_type": "markdown", "id": "2188a078", "metadata": {}, "source": [ "It uses the R2 score. \n", "\n", "This model predicts what lab measure a patient will have one year in the future\n", "based on lab measures in a given day. Since we see that this is not a very high\n", "r2, we can say that this is not a perfect predictor, but a Doctor, who better\n", "understands the score would have to help interpret the core.\n", "\n", "## Questions After class\n", "\n", "### How I should use these with data most effectively? What is the proper use of these methods?\n", "```{toggle}\n", "To answer continuous prediction tasks, like the ones we saw today. The notes\n", "above include more interpretation than we discussed in class, so read carefully\n", "for that.\n", "```\n", "\n", "### Why is that even when random state is set to 0 numbers are still a little different compared to yours and my neighbor even\n", "```{toggle}\n", "[random state](https://scikit-learn.org/stable/glossary.html#term-random_state)\n", "sets the seed that's used internally and should work to\n", "[control the randomness](https://scikit-learn.org/stable/common_pitfalls.html#randomness)\n", "and produce reproducible results.\n", "If your results are just a little different, like that it could be a rounding\n", "error, maybe you somehow set a default for display that's different.\n", "\n", "See for example [these options](https://stackoverflow.com/questions/25200609/apply-round-off-setting-to-whole-notebook)\n", "```" ] } ], "metadata": { "jupytext": { "text_representation": { "extension": ".md", "format_name": "myst", "format_version": 0.13, "jupytext_version": "1.10.3" } }, "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.8.13" }, "source_map": [ 12, 15, 24, 28, 32, 34, 47, 58, 61, 63, 67, 69, 75, 77, 80, 82, 85, 87, 103, 106, 110, 112, 115, 117, 122, 126, 133, 140, 146, 148, 151, 153, 156, 158, 164, 166, 184, 212, 221, 225, 229, 235, 237, 241, 245, 250, 254, 256 ] }, "nbformat": 4, "nbformat_minor": 5 }