From 3a6bdf1450c66711c8e933f703d68c2d02fdc8ab Mon Sep 17 00:00:00 2001 From: mhjensen Date: Fri, 24 Aug 2018 06:25:30 +0200 Subject: [PATCH] updating the regression analysis --- .../Regression/html/._Regression-bs004.html | 2 + .../Regression/html/._Regression-bs017.html | 6 +- .../Regression/html/Regression-reveal.html | 9 +- .../Regression/html/Regression-solarized.html | 8 +- doc/pub/Regression/html/Regression.html | 8 +- doc/pub/Regression/ipynb/Regression.ipynb | 878 ++++++++++++++++-- .../ipynb/ipynb-Regression-src.tar.gz | Bin 211 -> 211 bytes .../pdf/Regression-beamer-handouts2x3.pdf | Bin 345417 -> 345628 bytes doc/pub/Regression/pdf/Regression-beamer.pdf | Bin 324495 -> 324693 bytes doc/pub/Regression/pdf/Regression-minted.pdf | Bin 341051 -> 340926 bytes doc/src/Regression/Regression.do.txt | 6 +- doc/src/Regression/make.sh | 2 +- 12 files changed, 841 insertions(+), 78 deletions(-) diff --git a/doc/pub/Regression/html/._Regression-bs004.html b/doc/pub/Regression/html/._Regression-bs004.html index d3f378b54..2140156d2 100644 --- a/doc/pub/Regression/html/._Regression-bs004.html +++ b/doc/pub/Regression/html/._Regression-bs004.html @@ -212,10 +212,12 @@ $$ \hat{y} = [y_0,y_1, y_2,\dots, y_{n-1}]^T, $$ +and $$ \hat{\beta} = [\beta_0,\beta_1, \beta_2,\dots, \beta_{n-1}]^T, $$ +and $$ \hat{\epsilon} = [\epsilon_0,\epsilon_1, \epsilon_2,\dots, \epsilon_{n-1}]^T, $$ diff --git a/doc/pub/Regression/html/._Regression-bs017.html b/doc/pub/Regression/html/._Regression-bs017.html index 1ba836c85..a5524d1e6 100644 --- a/doc/pub/Regression/html/._Regression-bs017.html +++ b/doc/pub/Regression/html/._Regression-bs017.html @@ -209,9 +209,9 @@ MathJax.Hub.Config({

-We define then +For a linear fit we don't need to invert a matrix!! $$ -\gamma = \sum_{i=0}^{1}\frac{n-1}{\sigma_i^2}, +\gamma = \sum_{i=0}^{n-1}\frac{n-1}{\sigma_i^2}, $$ @@ -241,7 +241,7 @@ $$ $$

-The LSM suffers often from both being underdetermined and overdetermined in the unknown coefficients \( \beta_i \). A better approach is to use the Singular Value Decomposition (SVD) method discussed below. +The LSM suffers often from both being underdetermined and overdetermined in the unknown coefficients \( \beta_i \). A better approach is to use the Singular Value Decomposition (SVD) method discussed below. Or using Lasso and Ridge regression. See below. diff --git a/doc/pub/Regression/html/Regression-reveal.html b/doc/pub/Regression/html/Regression-reveal.html index 2e93e3ddc..c43d7c5b4 100644 --- a/doc/pub/Regression/html/Regression-reveal.html +++ b/doc/pub/Regression/html/Regression-reveal.html @@ -236,12 +236,14 @@ $$ $$

 
+and

 
$$ \hat{\beta} = [\beta_0,\beta_1, \beta_2,\dots, \beta_{n-1}]^T, $$

 
+and

 
$$ \hat{\epsilon} = [\epsilon_0,\epsilon_1, \epsilon_2,\dots, \epsilon_{n-1}]^T, @@ -644,10 +646,11 @@ $$

-We define then +For a linear fit we don't need to invert a matrix!! +

 
$$ -\gamma = \sum_{i=0}^{1}\frac{n-1}{\sigma_i^2}, +\gamma = \sum_{i=0}^{n-1}\frac{n-1}{\sigma_i^2}, $$

 
@@ -689,7 +692,7 @@ $$

 

-The LSM suffers often from both being underdetermined and overdetermined in the unknown coefficients \( \beta_i \). A better approach is to use the Singular Value Decomposition (SVD) method discussed below. +The LSM suffers often from both being underdetermined and overdetermined in the unknown coefficients \( \beta_i \). A better approach is to use the Singular Value Decomposition (SVD) method discussed below. Or using Lasso and Ridge regression. See below.

diff --git a/doc/pub/Regression/html/Regression-solarized.html b/doc/pub/Regression/html/Regression-solarized.html index 69c12c250..a6c79bb33 100644 --- a/doc/pub/Regression/html/Regression-solarized.html +++ b/doc/pub/Regression/html/Regression-solarized.html @@ -255,10 +255,12 @@ $$ \hat{y} = [y_0,y_1, y_2,\dots, y_{n-1}]^T, $$ +and $$ \hat{\beta} = [\beta_0,\beta_1, \beta_2,\dots, \beta_{n-1}]^T, $$ +and $$ \hat{\epsilon} = [\epsilon_0,\epsilon_1, \epsilon_2,\dots, \epsilon_{n-1}]^T, $$ @@ -613,9 +615,9 @@ $$

-We define then +For a linear fit we don't need to invert a matrix!! $$ -\gamma = \sum_{i=0}^{1}\frac{n-1}{\sigma_i^2}, +\gamma = \sum_{i=0}^{n-1}\frac{n-1}{\sigma_i^2}, $$ @@ -645,7 +647,7 @@ $$ $$

-The LSM suffers often from both being underdetermined and overdetermined in the unknown coefficients \( \beta_i \). A better approach is to use the Singular Value Decomposition (SVD) method discussed below. +The LSM suffers often from both being underdetermined and overdetermined in the unknown coefficients \( \beta_i \). A better approach is to use the Singular Value Decomposition (SVD) method discussed below. Or using Lasso and Ridge regression. See below. diff --git a/doc/pub/Regression/html/Regression.html b/doc/pub/Regression/html/Regression.html index c55ca0610..854e388de 100644 --- a/doc/pub/Regression/html/Regression.html +++ b/doc/pub/Regression/html/Regression.html @@ -260,10 +260,12 @@ $$ \hat{y} = [y_0,y_1, y_2,\dots, y_{n-1}]^T, $$ +and $$ \hat{\beta} = [\beta_0,\beta_1, \beta_2,\dots, \beta_{n-1}]^T, $$ +and $$ \hat{\epsilon} = [\epsilon_0,\epsilon_1, \epsilon_2,\dots, \epsilon_{n-1}]^T, $$ @@ -618,9 +620,9 @@ $$

-We define then +For a linear fit we don't need to invert a matrix!! $$ -\gamma = \sum_{i=0}^{1}\frac{n-1}{\sigma_i^2}, +\gamma = \sum_{i=0}^{n-1}\frac{n-1}{\sigma_i^2}, $$ @@ -650,7 +652,7 @@ $$ $$

-The LSM suffers often from both being underdetermined and overdetermined in the unknown coefficients \( \beta_i \). A better approach is to use the Singular Value Decomposition (SVD) method discussed below. +The LSM suffers often from both being underdetermined and overdetermined in the unknown coefficients \( \beta_i \). A better approach is to use the Singular Value Decomposition (SVD) method discussed below. Or using Lasso and Ridge regression. See below. diff --git a/doc/pub/Regression/ipynb/Regression.ipynb b/doc/pub/Regression/ipynb/Regression.ipynb index 29137fca4..e58efcf70 100644 --- a/doc/pub/Regression/ipynb/Regression.ipynb +++ b/doc/pub/Regression/ipynb/Regression.ipynb @@ -10,9 +10,9 @@ " \n", "**Morten Hjorth-Jensen**, Department of Physics, University of Oslo and Department of Physics and Astronomy and National Superconducting Cyclotron Laboratory, Michigan State University\n", "\n", - "Date: **Nov 21, 2017**\n", + "Date: **Aug 24, 2018**\n", "\n", - "Copyright 1999-2017, Morten Hjorth-Jensen. Released under CC Attribution-NonCommercial 4.0 license\n", + "Copyright 1999-2018, Morten Hjorth-Jensen. Released under CC Attribution-NonCommercial 4.0 license\n", "\n", "\n", "\n", @@ -89,46 +89,32 @@ "cell_type": "markdown", "metadata": {}, "source": [ - "2\n", - " \n", - "<\n", - "<\n", - "<\n", - "!\n", - "!\n", - "M\n", - "A\n", - "T\n", - "H\n", - "_\n", - "B\n", - "L\n", - "O\n", - "C\n", - "K" + "$$\n", + "\\hat{y} = [y_0,y_1, y_2,\\dots, y_{n-1}]^T,\n", + "$$" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ - "3\n", - " \n", - "<\n", - "<\n", - "<\n", - "!\n", - "!\n", - "M\n", - "A\n", - "T\n", - "H\n", - "_\n", - "B\n", - "L\n", - "O\n", - "C\n", - "K" + "and" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "$$\n", + "\\hat{\\beta} = [\\beta_0,\\beta_1, \\beta_2,\\dots, \\beta_{n-1}]^T,\n", + "$$" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "and" ] }, { @@ -513,6 +499,7 @@ "\n", "\n", "\n", + "\n", "## The $\\chi^2$ function\n", "\n", "Normally, the response (dependent or outcome) variable $y_i$ the outcome of a numerical experiment or another type of experiment and is thus only an approximation to the true value. It is then always accompanied by an error estimate, often limited to a statistical error estimate given by the standard deviation discussed earlier. In the discussion here we will treat $y_i$ as our exact value for the response variable.\n", @@ -651,7 +638,7 @@ "metadata": {}, "source": [ "$$\n", - "\\hat{H} = \\hat{A}^T\\hat{A},\n", + "\\hat{H} = \\left(\\hat{A}^T\\hat{A}\\right)^{-1},\n", "$$" ] }, @@ -675,7 +662,7 @@ "cell_type": "markdown", "metadata": {}, "source": [ - "We state without proof the expression for the uncertainty in the parameters $\\beta_j$ as" + "We state without proof the expression for the uncertainty in the parameters $\\beta_j$ as (we leave this as an exercise)" ] }, { @@ -732,7 +719,7 @@ "metadata": {}, "source": [ "$$\n", - "\\frac{\\partial \\chi^2(\\hat{\\beta})}{\\partial \\beta_0} = -2\\left[ \\sum_{i=0}^{1}\\left(\\frac{y_i-\\beta_0-\\beta_1x_{i}}{\\sigma_i^2}\\right)\\right]=0,\n", + "\\frac{\\partial \\chi^2(\\hat{\\beta})}{\\partial \\beta_0} = -2\\left[ \\sum_{i=0}^{n-1}\\left(\\frac{y_i-\\beta_0-\\beta_1x_{i}}{\\sigma_i^2}\\right)\\right]=0,\n", "$$" ] }, @@ -748,7 +735,7 @@ "metadata": {}, "source": [ "$$\n", - "\\frac{\\partial \\chi^2(\\hat{\\beta})}{\\partial \\beta_0} = -2\\left[ \\sum_{i=0}^{1}x_i\\left(\\frac{y_i-\\beta_0-\\beta_1x_{i}}{\\sigma_i^2}\\right)\\right]=0.\n", + "\\frac{\\partial \\chi^2(\\hat{\\beta})}{\\partial \\beta_0} = -2\\left[ \\sum_{i=0}^{n-1}x_i\\left(\\frac{y_i-\\beta_0-\\beta_1x_{i}}{\\sigma_i^2}\\right)\\right]=0.\n", "$$" ] }, @@ -758,7 +745,7 @@ "source": [ "## The $\\chi^2$ function\n", "\n", - "We define then" + "For a linear fit we don't need to invert a matrix!!" ] }, { @@ -766,7 +753,7 @@ "metadata": {}, "source": [ "$$\n", - "\\gamma = \\sum_{i=0}^{1}\\frac{1}{\\sigma_i^2},\n", + "\\gamma = \\sum_{i=0}^{n-1}\\frac{n-1}{\\sigma_i^2},\n", "$$" ] }, @@ -847,7 +834,7 @@ "metadata": {}, "source": [ "$$\n", - "\\gamma_{xy} = \\sum_{i=0}^{1}\\frac{y_ix_{i}}{\\sigma_i^2},\n", + "\\gamma_{xy} = \\sum_{i=0}^{n-1}\\frac{y_ix_{i}}{\\sigma_i^2},\n", "$$" ] }, @@ -895,12 +882,778 @@ "cell_type": "markdown", "metadata": {}, "source": [ - "The LSM suffers often from both being underdetermined and overdetermined in the unknown coefficients $\\beta_i$. A better approach is to use the Singular Value Decomposition (SVD) method discussed below.\n", + "The LSM suffers often from both being underdetermined and overdetermined in the unknown coefficients $\\beta_i$. A better approach is to use the Singular Value Decomposition (SVD) method discussed below. Or using Lasso and Ridge regression. See below.\n", "\n", "\n", "\n", "\n", "\n", + "\n", + "## Simple regression model\n", + "We are now ready to write our first program which aims at solving the above linear regression equations. We start with data we have produced ourselves, in this case normally distributed random numbers along the $x$-axis. These numbers define then the value of a function $y(x)=4+3x+N(0,1)$. Thereafter we order the $x$ values and employ our linear regression algorithm to set up the best fit. Here we find it useful to use the numpy function $c\\_$ arrays where arrays are stacked along their last axis after being upgraded to at least two dimensions with ones post-pended to the shape. The following examples help in understanding what happens" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": { + "collapsed": false + }, + "outputs": [], + "source": [ + "import numpy as np\n", + "print(np.c_[np.array([1,2,3]), np.array([4,5,6])])\n", + "print(np.c_[np.array([[1,2,3]]), 0, 0, np.array([[4,5,6]])])" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": { + "collapsed": false + }, + "outputs": [], + "source": [ + "%matplotlib inline\n", + "\n", + "# Importing various packages\n", + "from random import random, seed\n", + "import numpy as np\n", + "import matplotlib.pyplot as plt\n", + "\n", + "x = 2*np.random.rand(100,1)\n", + "y = 4+3*x+np.random.randn(100,1)\n", + "\n", + "xb = np.c_[np.ones((100,1)), x]\n", + "beta = np.linalg.inv(xb.T.dot(xb)).dot(xb.T).dot(y)\n", + "xnew = np.array([[0],[2]])\n", + "xbnew = np.c_[np.ones((2,1)), xnew]\n", + "ypredict = xbnew.dot(beta)\n", + "\n", + "plt.plot(xnew, ypredict, \"r-\")\n", + "plt.plot(x, y ,'ro')\n", + "plt.axis([0,2.0,0, 15.0])\n", + "plt.xlabel(r'$x$')\n", + "plt.ylabel(r'$y$')\n", + "plt.title(r'Linear Regression')\n", + "plt.show()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "We see that, as expected, a linear fit gives a seemingly (from the graph) good representation of the data.\n", + "\n", + "\n", + "\n", + "\n", + "## Simple regression model, now using **scikit-learn**\n", + "\n", + "\n", + "We can repeat the above algorithm using **scikit-learn** as follows" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": { + "collapsed": false + }, + "outputs": [], + "source": [ + "# Importing various packages\n", + "from random import random, seed\n", + "import numpy as np\n", + "import matplotlib.pyplot as plt\n", + "from sklearn.linear_model import LinearRegression\n", + "\n", + "x = 2*np.random.rand(100,1)\n", + "y = 4+3*x+np.random.randn(100,1)\n", + "linreg = LinearRegression()\n", + "linreg.fit(x,y)\n", + "xnew = np.array([[0],[2]])\n", + "ypredict = linreg.predict(xnew)\n", + "\n", + "plt.plot(xnew, ypredict, \"r-\")\n", + "plt.plot(x, y ,'ro')\n", + "plt.axis([0,2.0,0, 15.0])\n", + "plt.xlabel(r'$x$')\n", + "plt.ylabel(r'$y$')\n", + "plt.title(r'Random numbers ')\n", + "plt.show()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Simple linear regression model using **scikit-learn**\n", + "\n", + "We start with perhaps our simplest possible example, using **scikit-learn** to perform linear regression analysis on a data set produced by us. \n", + "What follows is a simple Python code where we have defined function $y$ in terms of the variable $x$. Both are defined as vectors of dimension $1\\times 100$. The entries to the vector $\\hat{x}$ are given by random numbers generated with a uniform distribution with entries $x_i \\in [0,1]$ (more about probability distribution functions later). These values are then used to define a function $y(x)$ (tabulated again as a vector) with a linear dependence on $x$ plus a random noise added via the normal distribution.\n", + "\n", + "\n", + "The Numpy functions are imported used the **import numpy as np**\n", + "statement and the random number generator for the uniform distribution\n", + "is called using the function **np.random.rand()**, where we specificy\n", + "that we want $100$ random variables. Using Numpy we define\n", + "automatically an array with the specified number of elements, $100$ in\n", + "our case. With the Numpy function **randn()** we can compute random\n", + "numbers with the normal distribution (mean value $\\mu$ equal to zero and\n", + "variance $\\sigma^2$ set to one) and produce the values of $y$ assuming a linear\n", + "dependence as function of $x$" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "$$\n", + "y = 2x+N(0,1),\n", + "$$" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "where $N(0,1)$ represents random numbers generated by the normal\n", + "distribution. From **scikit-learn** we import then the\n", + "**LinearRegression** functionality and make a prediction $\\tilde{y} =\n", + "\\alpha + \\beta x$ using the function **fit(x,y)**. We call the set of\n", + "data $(\\hat{x},\\hat{y})$ for our training data. The Python package\n", + "**scikit-learn** has also a functionality which extracts the above\n", + "fitting parameters $\\alpha$ and $\\beta$ (see below). Later we will\n", + "distinguish between training data and test data.\n", + "\n", + "For plotting we use the Python package\n", + "[matplotlib](https://matplotlib.org/) which produces publication\n", + "quality figures. Feel free to explore the extensive\n", + "[gallery](https://matplotlib.org/gallery/index.html) of examples. In\n", + "this example we plot our original values of $x$ and $y$ as well as the\n", + "prediction **ypredict** ($\\tilde{y}$), which attempts at fitting our\n", + "data with a straight line.\n", + "\n", + "The Python code follows here." + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": { + "collapsed": false + }, + "outputs": [], + "source": [ + "# Importing various packages\n", + "import numpy as np\n", + "import matplotlib.pyplot as plt\n", + "from sklearn.linear_model import LinearRegression\n", + "\n", + "x = np.random.rand(100,1)\n", + "y = 2*x+np.random.randn(100,1)\n", + "linreg = LinearRegression()\n", + "linreg.fit(x,y)\n", + "xnew = np.array([[0],[1]])\n", + "ypredict = linreg.predict(xnew)\n", + "\n", + "plt.plot(xnew, ypredict, \"r-\")\n", + "plt.plot(x, y ,'ro')\n", + "plt.axis([0,1.0,0, 5.0])\n", + "plt.xlabel(r'$x$')\n", + "plt.ylabel(r'$y$')\n", + "plt.title(r'Simple Linear Regression')\n", + "plt.show()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Simple linear regression model\n", + "\n", + "This example serves several aims. It allows us to demonstrate several\n", + "aspects of data analysis and later machine learning algorithms. The\n", + "immediate visualization shows that our linear fit is not\n", + "impressive. It goes through the data points, but there are many\n", + "outliers which are not reproduced by our linear regression. We could\n", + "now play around with this small program and change for example the\n", + "factor in front of $x$ and the normal distribution. Try to change the\n", + "function $y$ to" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "$$\n", + "y = 10x+0.01 \\times N(0,1),\n", + "$$" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "where $x$ is defined as before. \n", + "\n", + "\n", + "## Less noise\n", + "\n", + "Does the fit look better? Indeed, by\n", + "reducing the role of the normal distribution we see immediately that\n", + "our linear prediction seemingly reproduces better the training\n", + "set. However, this testing 'by the eye' is obviouly not satisfactory in the\n", + "long run. Here we have only defined the training data and our model, and \n", + "have not discussed a more rigorous approach to the **cost** function.\n", + "\n", + "\n", + "## How to study our fits\n", + "\n", + "We need more rigorous criteria in defining whether we have succeeded or\n", + "not in modeling our training data. You will be surprised to see that\n", + "many scientists seldomly venture beyond this 'by the eye' approach. A\n", + "standard approach for the *cost* function is the so-called $\\chi^2$\n", + "function" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "$$\n", + "\\chi^2 = \\frac{1}{n}\n", + "\\sum_{i=0}^{n-1}\\frac{(y_i-\\tilde{y}_i)^2}{\\sigma_i^2},\n", + "$$" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "where $\\sigma_i^2$ is the variance (to be defined later) of the entry\n", + "$y_i$. We may not know the explicit value of $\\sigma_i^2$, it serves\n", + "however the aim of scaling the equations and make the cost function\n", + "dimensionless. \n", + "\n", + "\n", + "## Minimizing the cost function\n", + "\n", + "Minimizing the cost function is a central aspect of\n", + "our discussions to come. Finding its minima as function of the model\n", + "parameters ($\\alpha$ and $\\beta$ in our case) will be a recurring\n", + "theme in these series of lectures. Essentially all machine learning\n", + "algorithms we will discuss center around the minimization of the\n", + "chosen cost function. This depends in turn on our specific\n", + "model for describing the data, a typical situation in supervised\n", + "learning. Automatizing the search for the minima of the cost function is a\n", + "central ingredient in all algorithms. Typical methods which are\n", + "employed are various variants of **gradient** methods. These will be\n", + "discussed in more detail later. Again, you'll be surprised to hear that\n", + "many practitioners minimize the above function ''by the eye', popularly dubbed as \n", + "'chi by the eye'. That is, change a parameter and see (visually and numerically) that \n", + "the $\\chi^2$ function becomes smaller. \n", + "\n", + "## Relative error\n", + "\n", + "There are many ways to define the cost function. A simpler approach is to look at the relative difference between the training data and the predicted data, that is we define \n", + "the relative error as" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "$$\n", + "\\epsilon_{\\mathrm{relative}}= \\frac{\\vert \\hat{y} -\\hat{\\tilde{y}}\\vert}{\\vert \\hat{y}\\vert}.\n", + "$$" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "We can modify easily the above Python code and plot the relative error instead" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": { + "collapsed": false + }, + "outputs": [], + "source": [ + "import numpy as np\n", + "import matplotlib.pyplot as plt\n", + "from sklearn.linear_model import LinearRegression\n", + "\n", + "x = np.random.rand(100,1)\n", + "y = 5*x+0.01*np.random.randn(100,1)\n", + "linreg = LinearRegression()\n", + "linreg.fit(x,y)\n", + "ypredict = linreg.predict(x)\n", + "\n", + "plt.plot(x, np.abs(ypredict-y)/abs(y), \"ro\")\n", + "plt.axis([0,1.0,0.0, 0.5])\n", + "plt.xlabel(r'$x$')\n", + "plt.ylabel(r'$\\epsilon_{\\mathrm{relative}}$')\n", + "plt.title(r'Relative error')\n", + "plt.show()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Depending on the parameter in front of the normal distribution, we may\n", + "have a small or larger relative error. Try to play around with\n", + "different training data sets and study (graphically) the value of the\n", + "relative error.\n", + "\n", + "\n", + "## The richness of **scikit-learn**\n", + "\n", + "As mentioned above, **scikit-learn** has an impressive functionality.\n", + "We can for example extract the values of $\\alpha$ and $\\beta$ and\n", + "their error estimates, or the variance and standard deviation and many\n", + "other properties from the statistical data analysis. \n", + "\n", + "Here we show an\n", + "example of the functionality of scikit-learn." + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": { + "collapsed": false + }, + "outputs": [], + "source": [ + "import numpy as np \n", + "import matplotlib.pyplot as plt \n", + "from sklearn.linear_model import LinearRegression \n", + "from sklearn.metrics import mean_squared_error, r2_score, mean_squared_log_error, mean_absolute_error\n", + "\n", + "x = np.random.rand(100,1)\n", + "y = 2.0+ 5*x+0.5*np.random.randn(100,1)\n", + "linreg = LinearRegression()\n", + "linreg.fit(x,y)\n", + "ypredict = linreg.predict(x)\n", + "print('The intercept alpha: \\n', linreg.intercept_)\n", + "print('Coefficient beta : \\n', linreg.coef_)\n", + "# The mean squared error \n", + "print(\"Mean squared error: %.2f\" % mean_squared_error(y, ypredict))\n", + "# Explained variance score: 1 is perfect prediction \n", + "print('Variance score: %.2f' % r2_score(y, ypredict))\n", + "# Mean squared log error \n", + "print('Mean squared log error: %.2f' % mean_squared_log_error(y, ypredict) )\n", + "# Mean absolute error \n", + "print('Mean absolute error: %.2f' % mean_absolute_error(y, ypredict))\n", + "plt.plot(x, ypredict, \"r-\")\n", + "plt.plot(x, y ,'ro')\n", + "plt.axis([0.0,1.0,1.5, 7.0])\n", + "plt.xlabel(r'$x$')\n", + "plt.ylabel(r'$y$')\n", + "plt.title(r'Linear Regression fit ')\n", + "plt.show()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Functions in **scikit-learn**\n", + "\n", + "The function **coef** gives us the parameter $\\beta$ of our fit while **intercept** yields \n", + "$\\alpha$. Depending on the constant in front of the normal distribution, we get values near or far from $alpha =2$ and $\\beta =5$. Try to play around with different parameters in front of the normal distribution. The function **meansquarederror** gives us the mean square error, a risk metric corresponding to the expected value of the squared (quadratic) error or loss defined as" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "$$\n", + "MSE(\\hat{y},\\hat{\\tilde{y}}) = \\frac{1}{n}\n", + "\\sum_{i=0}^{n-1}(y_i-\\tilde{y}_i)^2,\n", + "$$" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "The smaller the value, the better the fit. Ideally we would like to\n", + "have an MSE equal zero. The attentive reader has probably recognized\n", + "this function as being similar to the $\\chi^2$ function defined above.\n", + "\n", + "## Other functions in **scikit-learn**\n", + "\n", + "The **r2score** function computes $R^2$, the coefficient of\n", + "determination. It provides a measure of how well future samples are\n", + "likely to be predicted by the model. Best possible score is 1.0 and it\n", + "can be negative (because the model can be arbitrarily worse). A\n", + "constant model that always predicts the expected value of $\\hat{y}$,\n", + "disregarding the input features, would get a $R^2$ score of $0.0$.\n", + "\n", + "If $\\tilde{\\hat{y}}_i$ is the predicted value of the $i-th$ sample and $y_i$ is the corresponding true value, then the score $R^2$ is defined as" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "$$\n", + "R^2(\\hat{y}, \\tilde{\\hat{y}}) = 1 - \\frac{\\sum_{i=0}^{n - 1} (y_i - \\tilde{y}_i)^2}{\\sum_{i=0}^{n - 1} (y_i - \\bar{y})^2},\n", + "$$" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "where we have defined the mean value of $\\hat{y}$ as" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "$$\n", + "\\bar{y} = \\frac{1}{n} \\sum_{i=0}^{n - 1} y_i.\n", + "$$" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## The mean absolute error and other functions in **scikit-learn**\n", + "\n", + "Another quantity will meet again in our discussions of regression analysis is \n", + " mean absolute error (MAE), a risk metric corresponding to the expected value of the absolute error loss or what we call the $l1$-norm loss. In our discussion above we presented the relative error.\n", + "The MAE is defined as follows" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "$$\n", + "\\text{MAE}(\\hat{y}, \\hat{\\tilde{y}}) = \\frac{1}{n} \\sum_{i=0}^{n-1} \\left| y_i - \\tilde{y}_i \\right|.\n", + "$$" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Finally we present the \n", + "squared logarithmic (quadratic) error" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "$$\n", + "\\text{MSLE}(\\hat{y}, \\hat{\\tilde{y}}) = \\frac{1}{n} \\sum_{i=0}^{n - 1} (\\log_e (1 + y_i) - \\log_e (1 + \\tilde{y}_i) )^2,\n", + "$$" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "where $\\log_e (x)$ stands for the natural logarithm of $x$. This error\n", + "estimate is best to use when targets having exponential growth, such\n", + "as population counts, average sales of a commodity over a span of\n", + "years etc. \n", + "\n", + "\n", + "## Cubic polynomial in **scikit-learn**\n", + "\n", + "We will discuss in more\n", + "detail these and other functions in the various lectures. We conclude this part with another example. Instead of \n", + "a linear $x$-dependence we study now a cubic polynomial and use the polynomial regression analysis tools of scikit-learn." + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "metadata": { + "collapsed": false + }, + "outputs": [], + "source": [ + "import matplotlib.pyplot as plt\n", + "import numpy as np\n", + "import random\n", + "from sklearn.linear_model import Ridge\n", + "from sklearn.preprocessing import PolynomialFeatures\n", + "from sklearn.pipeline import make_pipeline\n", + "from sklearn.linear_model import LinearRegression\n", + "\n", + "x=np.linspace(0.02,0.98,200)\n", + "noise = np.asarray(random.sample((range(200)),200))\n", + "y=x**3*noise\n", + "yn=x**3*100\n", + "poly3 = PolynomialFeatures(degree=3)\n", + "X = poly3.fit_transform(x[:,np.newaxis])\n", + "clf3 = LinearRegression()\n", + "clf3.fit(X,y)\n", + "\n", + "Xplot=poly3.fit_transform(x[:,np.newaxis])\n", + "poly3_plot=plt.plot(x, clf3.predict(Xplot), label='Cubic Fit')\n", + "plt.plot(x,yn, color='red', label=\"True Cubic\")\n", + "plt.scatter(x, y, label='Data', color='orange', s=15)\n", + "plt.legend()\n", + "plt.show()\n", + "\n", + "def error(a):\n", + " for i in y:\n", + " err=(y-yn)/yn\n", + " return abs(np.sum(err))/len(err)\n", + "\n", + "print (error(y))" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Similarly, using **R**, we can perform similar studies. \n", + "(more details on **R** will be inserted later).\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "## Simple regression model with gradient descent\n", + "Add info about the equations, play around with different learning rates" + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "metadata": { + "collapsed": false + }, + "outputs": [], + "source": [ + "# Importing various packages\n", + "from math import exp, sqrt\n", + "from random import random, seed\n", + "import numpy as np\n", + "import matplotlib.pyplot as plt\n", + "\n", + "x = 2*np.random.rand(100,1)\n", + "y = 4+3*x+np.random.randn(100,1)\n", + "\n", + "xb = np.c_[np.ones((100,1)), x]\n", + "theta_linreg = np.linalg.inv(xb.T.dot(xb)).dot(xb.T).dot(y)\n", + "print(theta_linreg)\n", + "theta = np.random.randn(2,1)\n", + "\n", + "eta = 0.1\n", + "Niterations = 1000\n", + "m = 100\n", + "\n", + "for iter in range(Niterations):\n", + " gradients = 2.0/m*xb.T.dot(xb.dot(theta)-y)\n", + " theta -= eta*gradients\n", + "\n", + "print(theta)\n", + "xnew = np.array([[0],[2]])\n", + "xbnew = np.c_[np.ones((2,1)), xnew]\n", + "ypredict = xbnew.dot(theta)\n", + "ypredict2 = xbnew.dot(theta_linreg)\n", + "plt.plot(xnew, ypredict, \"r-\")\n", + "plt.plot(xnew, ypredict2, \"b-\")\n", + "plt.plot(x, y ,'ro')\n", + "plt.axis([0,2.0,0, 15.0])\n", + "plt.xlabel(r'$x$')\n", + "plt.ylabel(r'$y$')\n", + "plt.title(r'Random numbers ')\n", + "plt.show()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Simple regression model with stochastic gradient descent\n", + "Add info about the equations, play around with different learning rates" + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "metadata": { + "collapsed": false + }, + "outputs": [], + "source": [ + "# Importing various packages\n", + "from math import exp, sqrt\n", + "from random import random, seed\n", + "import numpy as np\n", + "import matplotlib.pyplot as plt\n", + "from sklearn.linear_model import SGDRegressor\n", + "\n", + "x = 2*np.random.rand(100,1)\n", + "y = 4+3*x+np.random.randn(100,1)\n", + "\n", + "xb = np.c_[np.ones((100,1)), x]\n", + "theta_linreg = np.linalg.inv(xb.T.dot(xb)).dot(xb.T).dot(y)\n", + "print(theta_linreg)\n", + "sgdreg = SGDRegressor(n_iter = 50, penalty=None, eta0=0.1)\n", + "sgdreg.fit(x,y.ravel())\n", + "print(sgdreg.intercept_, sgdreg.coef_)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Polynomial Regression" + ] + }, + { + "cell_type": "code", + "execution_count": 10, + "metadata": { + "collapsed": false + }, + "outputs": [], + "source": [ + "# Importing various packages\n", + "from math import exp, sqrt\n", + "from random import random, seed\n", + "import numpy as np\n", + "import matplotlib.pyplot as plt\n", + "\n", + "m = 100\n", + "x = 2*np.random.rand(m,1)+4.\n", + "y = 4+3*x*x+ +x-np.random.randn(m,1)\n", + "\n", + "xb = np.c_[np.ones((m,1)), x]\n", + "theta = np.linalg.inv(xb.T.dot(xb)).dot(xb.T).dot(y)\n", + "xnew = np.array([[0],[2]])\n", + "xbnew = np.c_[np.ones((2,1)), xnew]\n", + "ypredict = xbnew.dot(theta)\n", + "\n", + "plt.plot(xnew, ypredict, \"r-\")\n", + "plt.plot(x, y ,'ro')\n", + "plt.axis([0,2.0,0, 15.0])\n", + "plt.xlabel(r'$x$')\n", + "plt.ylabel(r'$y$')\n", + "plt.title(r'Random numbers ')\n", + "plt.show()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Ridge and Lasso Regression" + ] + }, + { + "cell_type": "code", + "execution_count": 11, + "metadata": { + "collapsed": false + }, + "outputs": [], + "source": [ + "import matplotlib.pyplot as plt\n", + "import numpy as np\n", + "from sklearn import linear_model\n", + "from sklearn.linear_model import LinearRegression\n", + "from sklearn.metrics import mean_squared_error, r2_score\n", + "\n", + "#creating data with random noise\n", + "x=np.arange(50)\n", + "\n", + "delta=np.random.uniform(-2.5,2.5, size=(50))\n", + "np.random.shuffle(delta)\n", + "y =0.5*x+5+delta\n", + "\n", + "#arranging data into 2x50 matrix\n", + "a=np.array(x) #inputs\n", + "b=np.array(y) #outputs\n", + "\n", + "#Split into training and test\n", + "X_train=a[:37, np.newaxis]\n", + "X_test=a[37:, np.newaxis]\n", + "y_train=b[:37]\n", + "y_test=b[37:]\n", + "\n", + "print (\"X_train: \", X_train.shape)\n", + "print (\"y_train: \", y_train.shape)\n", + "print (\"X_test: \", X_test.shape)\n", + "print (\"y_test: \", y_test.shape)\n", + "\n", + "print (\"------------------------------------\")\n", + "\n", + "print (\"Ordinary Least Squares\")\n", + "#Add Ordinary Least Squares fit\n", + "reg=LinearRegression()\n", + "reg.fit(X_train, y_train)\n", + "pred=reg.predict(X_test)\n", + "print (\"Prediction Shape: \", pred.shape)\n", + "\n", + "print('Coefficients: \\n', reg.coef_)\n", + "# The mean squared error\n", + "print(\"Mean squared error: %.2f\"\n", + " % mean_squared_error(y_test, pred))\n", + "# Explained variance score: 1 is perfect prediction\n", + "print('Variance score: %.2f' % r2_score(y_test, pred))\n", + "\n", + "#plot\n", + "plt.scatter(X_test,y_test,color='green', label=\"Training Data\")\n", + "plt.plot(X_test, pred, color='black', label=\"Fit Line\")\n", + "plt.legend()\n", + "plt.show()\n", + "\n", + "print (\"------------------------------------\")\n", + "\n", + "print (\"Ridge Regression\")\n", + "\n", + "ridge=linear_model.RidgeCV(alphas=[0.1,1.0,10.0])\n", + "ridge.fit(X_train,y_train)\n", + "print (\"Ridge Coefficient: \",ridge.coef_)\n", + "print (\"Ridge Intercept: \", ridge.intercept_)\n", + "#Look into graphing with Ridge fit\n", + "\n", + "print (\"------------------------------------\")\n", + "\n", + "print (\"Lasso\")\n", + "lasso=linear_model.Lasso(alpha=0.1)\n", + "lasso.fit(X_train,y_train)\n", + "predl=lasso.predict(X_test)\n", + "print(\"Lasso Coefficient: \", lasso.coef_)\n", + "print(\"Lasso Intercept: \", lasso.intercept_)\n", + "plt.scatter(X_test,y_test,color='green', label=\"Training Data\")\n", + "plt.plot(X_test, predl, color='blue', label=\"Lasso\")\n", + "plt.legend()\n", + "plt.show()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ "## The singular value decompostion\n", "How can we use the singular value decomposition to find the parameters $\\beta_j$? More details will come. We first note that a general $m\\times n$ matrix $\\hat{A}$ can be written in terms of a diagonal matrix $\\hat{\\Sigma}$ of dimensionality $n\\times n$ and two orthognal matrices $\\hat{U}$ and $\\hat{V}$, where the first has dimensionality $m \\times n$ and the last dimensionality $n\\times n$. We have then" ] @@ -913,27 +1666,26 @@ "\\hat{A} = \\hat{U}\\hat{\\Sigma}\\hat{V}\n", "$$" ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Add codes and discuss this in connection with lasso and ridge, show example where the standard inversion of a matrix fails and where SVD comes to rescue\n", + "\n", + "\n", + "## Lasso and Ridge regression\n", + "\n", + "Discuss the mathematics here\n", + "\n", + "## Logistic regression\n", + "Add discussion about classification versus regression, show examples of more than two cases and why regression is not the best approach. Motivate for k-nearest neighbors\n", + "\n", + "Add examples on classification problems" + ] } ], - "metadata": { - "kernelspec": { - "display_name": "Python 3", - "language": "python", - "name": "python3" - }, - "language_info": { - "codemirror_mode": { - "name": "ipython", - "version": 3 - }, - "file_extension": ".py", - "mimetype": "text/x-python", - "name": "python", - "nbconvert_exporter": "python", - "pygments_lexer": "ipython3", - "version": "3.6.5" - } - }, + "metadata": {}, "nbformat": 4, "nbformat_minor": 2 } diff --git a/doc/pub/Regression/ipynb/ipynb-Regression-src.tar.gz b/doc/pub/Regression/ipynb/ipynb-Regression-src.tar.gz index ec5a99105fc3e20128ed85f3dbbc679741f9e4b3..193056ca44418f2d6e64dd02131202f6771b44a4 100644 GIT binary patch literal 211 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 delta 27770 zcmY&;18iVj^L}k>%dOk3ZMR$7wr%6qwr$%sx7-?AZf%?YH{b97CEuIe%*iwJoVk;n zfC(T@LR6Vi_?hI&0z5rikB%I9pf?oYKE zsaWs3Lg@JBl$L5L4jTw1k$N_F?ZC-9gyRI+We}J%HC&#uDrIA@K!U9?!iQa&y{n|z zs@-(Ac2c~cyl%%hZo%k9&A4GPJyUDWfp9=cOFaz{wu9JJ#Ibk)1wmR=Jn<2j^)`mGD&j2{XIJC*RyeSDvSQK-E~&5VxIKVD(p;@u|oPo-O6i@ z)?S}Twb#LsO1Is#a;JXQwRv!HaA-8=?{c>;uyVh9WDjw?F7&w~y!K+(Wl_(i-S^dQ zy`)C?hrL2q*KWBA2ywd8rRnX|=!?=-hn(rEdU$w>YMa#mWpUyGk}}1$t*2`%d1Oa? zL?~hW=%mRh9I!w0yiCB|VccmZsq2}^`*@@C>p1oE8}aPIM07MH0u;asGn^ zZ>?uxAQ5#q6K0?yR2ti_XOk{?_Jkhp47SWY?7@72cu-C;fFWL|05n@B9-$Bgt?SPd z3p==B$KvRVo`0jOql7RHS$|900P2*1CIzo~Pg5DKN-8wv6X!vx zi=j^X*jV6&vEehFQO+nmk<1yo4q0Y^IdN-&{iMZtIV$g?vV7a5?70>9)J(UD;nnI4 zKMHkbb-E=0RBDyy*=1$?DHT^cphc~2QluIZ0YO--l#K9?q>4OrXoj@q-Y^5<@7ew- zL_zHy7txL>_Jb&SrkbMd;%4Sd(9pqDvYTRBa7JBW_&*#P4*R3l?lh@2(xRFZ@gg)T7 zqGNy$pfUPLz#!g_M4U!g%T@WTF>(wUSg?8zKM1+ITVbO`V6onWncP_p$q@UAxWPo) zN7q~uBOxVq#F@#{%(vjBhbQY?_fZ6ur0>M&x?>R2Z1)+Bn}xf=rYhnf)U;$lH)oVb zp0$jYM}S7|&Y^ZH!r!v$hG3-zXP@$mv~UO} zWHSuGiJ4W?Z;G~#J)N7npUO>ZMhAQK_e&bqT1|D;{hinq1RUF~@6SC@;cszGnvMzi z!xAF~Az&1jD&UB_Ef7j%5jK>)a0IGNh2d?G=EQ(s-u5iNMO7UQ&q5PDE0jPW} z#Zq0G^pp^VrK5JyelnR*^3+by+7k~EoM%(Ej8~u{08!aYA%F1K=606Y*?Q&c9vUX^ z=g)L6a>Z%bPj8vHHzB-FDt|wa$yFQrTX5|^ehcXSWpdnN)rj@%WPoQthgY#aCZV+& zXg+sJahgz_sD-|NZJb;@Q;RVd1Dab0us{+|H-%q3t2LJ1ZCWHt&glK9taPfUoc~~-kT)@I)>5B7eaCP~nH0{9YGKW-c1g3-A3z^7= zUtMQMrouDoaC43+lX`*h#~>(!7KGHwpYd5Do*?k%7fe zBu3M)W3vBO&IgPy3*t*+3~NKf>PjrMd?4H^{hwmU+#Y} zj~VK}_)d0?|9Tg!M-bfq*3uaG^I!Y%BPajGM@+8&-+W1X*#}9Ra0p2kX9!7%QHV*e zXYfhXo;XRG#9rW>9L)b{A1Rc_Q!={2G`-ADui9gfL!6KcJ@H;r62=z>ds}_I7I+~FrCST5q zq&i;*+etYoYR=Jq-nh<_Np8^Sud;Gs6uZOY-Cqfyo;kwUPAa`_ZrG{;2=Xm6-g0k*#b%P1^%k0LPPNjwR?Ezyq5WTis zMJ#>+evsTWbjU|MhkgG(+lQ00ry5xxr`Pl5&vR=zg9wZj zHf1K<@(*;$@+N9GGEAUC%jsKN(~T2z9^}oOec6au$nB!XmW_JJ#iMcJa0vXQfq15u z=}`6(`e=Ra?CQ@mc20I_m6{u?AOsyN%Wz9LHuwUwO$Bc{*1<#1cQTGVN&EAQxpE~8 zYev~h6wB%c+#QvE5L}s^pQAz;}Xmw9rMdIP<4X_tG$3;oa8gElAKu1nZ4t9 zz9}DAHs_wLLQ`usn}?9v%w>TLb%5&!R+&y3eRRMY;h9;;!$VW~8K+!=3(T^Uf<7cV0R7ZWdq@Sx&v0g}{{B%urQMe_XbU z-%|cJBp^}9g1SU7WahBxgkB;J_wAcytM=c@(qT^w6?65FoGt}*K9K^1rB14#d8KLP z2w&jGhLA6eUPRCxE~L)%E{9)zceS}}j+!lbc2RDZ#b__Yn?6kzF~ z;eXyUz4$&4|Kj@I3(B3$N~DjHQ%F|`>V%-cBNPcpZR+9(#N86ex+_{XTRA^ z1o}Xri|+R8PbLyCUtyrEW0Y#gCe-g8NZZz-CPgy@(~V0Q`8N>Wm!a#Qzfml>{N=DA zvS`TM&+c=N-?^jZU|)21sL*()-8@dqLdraH->tf?X=xjihb+rAMyr_vQA7ksYeK@P z!`MYJ^sa=sh&6468Y9IabSl&FdQrz?nDSWXugB-^5w_9pVZUwgec%8rAAH+et;v0WDH^;rh`p0qzwQT+6IQsl>*pfTmRF9410g(8+`N(l$aC|fqm z`bq!jhpuPH{%S8=-eJ@8w@yJQ&4PYW;ta4aj9QJMe`^>?eW;nlvNP?9(>^-`a{aK+ zUR$ioj_+xkN=&t>44yWQh#=#M8m8ekySBwZV-$$Xk(EG39X|zjK_2sUvmgWzzmYIh zjMh>I)H`&1wlJmUZp(jKP|w?z=RQo65U9>Dq(0E{b+l*5FKp_Er8q#}9UQz?@s(3H z{kELBIPdP|s!MyAc44l{lKLhE=-Rzg*&mwk zO(rJ|GUe}4+Y02}&}Qb$EIhc)oqJ^LIf2z}>E(#(TJGywV9(Ur;RUE`KX~weB!V@j z4--1>J&TvFjd!WHU$ZjSq@|791_f~D(T=u7iN*@SIr^q-$dTIKDRLgKzx1@-(&vQ= zTwL`C1g6FSae_JUeT2ht_cYGlI~PO1_%%btEkRhCBN`Y+lV+*QzdF~uvfcj`>87{( z6v+P-`PNo3#Q()4!)pJE=Z-@|{BL}6y5e6S1({3z|Kj_v+y5($xtIGdymm_WFHC#8 z@L&9YoixR3!G8<>kE87p3^e~=l(rT)P;03FU)29`#8E*_{#!=dKMlF?f5HESaq&Tk z{+-m23^euMp6_&^ZD9XO`py74cmU884e6JBMkND6z2;4m@}{00KaTEB8&S*;JYd!M z0MAz|ht}_L3==2GjGmq>T3F8l#`pRozY!-Ugd2#Kp}lrE(y_i?BY*gEduaeo)V7FN}2G;^o)Jd!1cq3+XE^@@ZS5ubU75*@GV+r z1%<5l1Bt%}4?=J`xN02v2PkK$U_$kVI-ec|cjV$9s&y8Opd27pQwv9_Q4QmZj0({* z+L5^M6O9tLt?wi7<_oSyNEuu^)ep^KQwKE@MR2HuZT3fMxpNakkpid&(Zb1D>(NxU zEy$OnQ&o!vfjjuy2Pv*9S+Z7wEIcCb=l$FjVz^v-Xa23tEEbU9xJy$^123&MlmHSF zv2fR@vjyE!hO#V~9hW30qfS`9dQU*3!B)_O^KlQwE!Qw7@~tuntA$><#EuNN*cIq> zeRvDffee8dP9|d-I}jP1@HZSs9v-qRLMRMq|kQ=g%Y)Zk4e7WNSHi)E4 zd@9RgUSjqO3cH3;;;_UNVkj)ug#m|HdoEG9f>ZiD)1{CY6To!$maCUWG787s4>>=d zYHd761bm|2DLip8rlHE2TSl7(N7=@_I>Z(n|7bQ?EbPATLRi(*UHS|31K(Jh^5gY`;m zHC&!xJ(4(h4Obd~F~_P+i6wpwcavWCvU(Vmd1{=sU#>ITZ$KxguU#X|m zmRI8`bll&WNz57@_Mb)zq`Q{Y5w#B7HNS$Zw zny+Vzf!IbrE0}6rZ$KV1PM)>FH9V144R#mYiolurGsu$S^#Lz8HhVjnSKyb!T*Pif zWI@V|2hhrymnJf$oU39lK6E;=O_&o-*(Ax8iB)H5yo-3STQYn$h(z}3Jgs~=yeN;s ztt}tce7s}E!LU)gWh;mVGk7KtsT8hskIbWvmJ;Phz5Li)y{fs#?WX!?_2iT6NG2GBls6HC|5Tr(+5O?9TU2xLLD}%+k$4Cy3eebj~ z)QN1_LPGD8{&4R>3Bf!`lFE*M%D$3Hl|558@}OO3EBs3(DkEK%rooE?y(&voHKJJsF z(c(tX9jRxAw@2D`d2Wzzca0R0fI2mq z1<3wrD}t^9drsU0g=KWm8W8o+Cef6&!2>Br;?P|s|L=};cEb|y+VAwEMkJ+10L9@h zas!HV1Df@XS~vRD2=oo1T|uR`?tYt`b=4epWodUMq#Ktv2PQ4n?gKV1QLRES>=#I` zZh>)JxH6YjyI#DN&o55;1YaFC<|DDX6;hC-wMx%DoppPhf-2NX1{D~vNV%yF+Pb=d zmvH9OHAYBkDd#S^wW+qV;#4bWo zwP?fZhECBg(wcE-?UonLoEmbYCm*DyY74shq6{S;RM3qeQ*-2ac}tec0RN8ez{13> zd8h`DOtzD-S4Sxv3Y1H)DXwZXaz1=w5ih>N8bhX;HS>oeG=m!m4E^Y|une#?CuCmS z*rLCj|1ql$__70Y82>U~Jj&M<3mR8;T;Gx3vq$3C#odPR-C2Aa z{&97m8PBHV`EiF39H4pX~!QZth3lp6>eVi zigB}(b;Gsm9K&A>5~Vb1i{O*uf{vKE)L8g4&)RhKV__@k)(&S13@45?qGy&~j%nNa z>yMrhoF$+cGCTuNH$n)$IZh?x&j%=14$((OOIbc4Coh8^-&2 ziBOi!u*gw2ze3QCGm+H?!FFXZj>V8pyZAKbwX8@_d)nlzLk_ZCXPCx{$W2nNM6_SD z7^~w-J!DP>x=EF!my;@^pC(xVP91YNXL_>-&$_Jj3^lE7&G9Tw@lH?VCP8u!iaq0H zPcdSS5|j_6Ts>F9x@i#HJ#9Xjm)3L_gDzf#?7b}b@?{VEkygj&xmJJOxqISVW9=^S zarq5f&+SG2pt9Qz4=)ci#Foe+C?1m#emY|(*$N+#xhmSR4(}sxi+#?jTe7$@f->?dd?8b^4#?+ zA`?zC>LL$r4&)APXi1#!s#??GEcb^d2Fur)oH3}b%-upFt)TKE$O)U*-{ z#bnJph;KAfVPeuZwP@pvG#lu;ept2kMA}$Ic2Ko$lc}1_na%^19 z;A^C8y<3VuRstHo_aJ=tNUo0b0x?k`$g{wmUfX_m>|cXlF$hz@5ELIT`i8$3>kp(6 z-4RjZVspfuSf*(JZ2r2*^*Z2jdPaX_K8^^oS=^-Yce3XO=&YrjhFh?yjyY8zv`$4{ z3dF*^ti2{&I;jF>ZP(|Y(gnKa|ni(Z}qa40p!nWLyR?=AKbPTGkP zqepssbRMcoN4CH6Ud5OP_nln?e|isd+M}EtH)8qi#0lGq;@0P&^JGM6^b)HY{a^h9 zW2v#Egy>n3$uN0m>p>=O-l5?1YNQ->3$4FRM8JUw0mE?0L)Qr{0gyt8ibftRgYymx zH*44iQ0a64NNP_pc9kMm?@yYrf}Ihr6C=6c^=xN-RE8+sCw+0!_sb3i+%ub8@~w^_RjznXNuLFeQzDSW_0 zJR&-+(xq^axDWlBY~55i5cT{B??$N-nIbs3LWgh9VLKli;s$ix7sSkQ(%t=&C#(m% z%Yc!nzuZzC@6W4Q`(U0`Z0ZTtJ#;GF^F9lamkT|et$5J5lG|DZ;zeh%#8z8BPK;bO zWsB4^(_Et-C-mH7)Si0A1<@zua+iE)#NQ?^>RQp()uo0x*JOibF>jcYQ_0 zsw3L*>5lephjPrOWDnH^_8FG?UP@86WdS0QQ*DUOL0dunXTdeDL)JVs2LhR7OC zAEAZk!Z6h@WuFrFzLB)2FKi$Sx3fdY&Y>8dz(j;VH;o7n4D;fRjdk7>wvkwQPE4tr z((@s0Q+vPUEy+E7oJ}{$nwvs>`!=I{i|NDbNW{|@dHt$$DBpTa$aJ4B{2Uu70^Cqe zG=MspR`OK-Y%gb>EP@rYv6eMQTen%k^fd9d=%9&(3(;v5!8VYL!0&K70SohKTeDt|*?$3dJr`!3Dp(|s|tUa^IMmYY4aa*(YZg!GJ zlF1R)b|@3-=Q_}A&J1e*nOnyAP}Z`kj7`{kPbKrG(@@XVr!BDKpz!UJ;LhqU$J_dE z&}p{sew6Wx-})={AEa(qOuDg^r;kIAUa5}WG7j#?&P3osw-@J-H~nBY&aRYwol3k5 zXny;TXbsGBVVnwvd~^mi>sMTYuFUG!fE>3uKd?ngX$0`8rq8*aLr z?wtX_$D;7aJN@4?Gc#YW&ub?%sHhwoAs3b<)psM|FYHx|$F2#7BZd3BZJzp;rF5r&vi zua|7U7px=Yu7A(*<`r?zmh_$};B!|<-g*EWHXk)N_x^V7!LPdmn>Uo3kDMRe&W|<_ zcIB%&oFsbuJ~s<5aVSGgS4bEeZV^3!BI17eO{DA}^}*-AVm4rSoQhV|>}n}np(pGh z#%}E(R$gNNxne7!pQpnxUKZe(G~N5+EJl4_KZ)Z$wP`JN??-<3^*%q|?8)Twhm!;A zD_6x{>qjq9?`};~)3e?i}mNT_1$g zi%H{NYC6ABALX1p?Ix8YZ28%8dw2O>?91Y22$`3{VEwB4{pdSlzI*>ER3~7cTOt0( zoPpXzYGY+YY*UnVv`N3;pWok)sYerJgq=}>wVhFd^Atd^aWQeF z8M;AWLa?(jGbcHgQp(u28ONLHqS5KJUU*e@+N`&3ny$Cn{`0u6wRYL;^|Cmd+xejC zXA5+w*GBg^nT~QfN<<8w+vKS7p37oe;+$Z&gG?ArOhhAOSEqTrfU$BRf-P1fM$_5Q z;)7bbExXlXi5-G`S65dDRj2&ME&h$a6NpTfl>wPKqySNdw?_A`?+z?2&gS$NPNSuR zzy-i$F7QE@zqml6&uwDpK1;?UF1NvKbY<~#zEI6hEzH5=F;!79lG2nx!{HXHV89V< zVnCVEzLM9uc^p56*qNN1Ue(=ML5{vem!ZC*5Wc>BFq|EK=7l4LCZHPF815r5vNAQ* zhZKCJ*(bJ^x`DKQ^^ej&e#w52{yHJ_1py)f-eL&stn|+zw}#eKmU<>o1(@}<)h^B~ zPB4>;Xjyz)&Paa3Q?ORF=>fA+rgUgR0RdgJwUH34Zc znS@tB`}(T6ye1*1A*2RJaP5Uq1Q9>x3;La>#=zhv5A(Gy{i_zk|K=;l6fv8CZUeLr z=lHXQ6yeM36Yu0*AT>Tdr|TQtf&eES3p%NPLP!ol|G@a)yRQW6{oP{=qqBGWm9LY7 zz9YasDI%gP0(I&&G6&VY-c-xl0tl(InA0KWeAtNYrG9`Ty*_ohnzlEIGITcXDWb{t z#?1EN;Cx>L5!vdQ)E$4rG792EZ%-PpuqbrM!OUJs)K4+%ZCSsHgtSNe+qq(3waPB$ zWWa&yK7)gI767NBOsm;()S`rB+Wl)cdhYcg2Yg3@=f*lJu5~w=d;dp<7O?F=0lmm3 z;e1FOvJ(1U_jX2P_#))(z)`&Fbr^yP`Y3LgiCm3wk!?*+nORBJQd~d3nNlZ&D;(%F z%dlXk#b=*t5BjTKEGQr$%uIy$w=!cd@+FDg}67;1yqs4F>cq5h+F5OpE#1W0q0yuAThf|dw@OdAx^v#5?bIde~ZBC1g`jeyTJIb`*C1h*Ou}fvoB!-x<;DKKu z%~+(1)17w@?r~Sjguwee1$*U=Xjs8RZxH5L6umI@wjqS zmN3vPX9l4VbU4*$DD8#KANfHL(WAgJTw8x5;FDK-OQKM+gwn{{%g11F;GsT=A(a7Bo)9N*+(Gop1ao zoMVcAar|0m!5X1p>)rZ`j{66Kw=~T;6t65*DP2}O0w8zZvKv?iBl%t7yh%;c%) z{R25#$8vGpCsPoFoA1FvJ(~8_-Kzx3M!Qqu(by3wit61G5@CaFh^4`adVGE`0d;r&~#CG13<6Zwt8Z@HJgQ}oMhTPqYip^2u8ji*_@`2Js z$MUF$K*VNifT@)eg{-`Bx3QJ$+x${b;h=}U{xH+$u$J{+gg6g7SMZbn&n~P$yhwQ(kQ_rAHeP3}b|iMO6f$M^3$}2%9H9#i%l-ae1ZGqo%f^ ztt1f}Hkg9-Q$UV>hyu^d(Rn!Y#{=gqoNy)gk5~=Vwc9V@n>hOi8SlfHwvxMbtfK6nXCT=nY=D1H+y8LE*q$mjW(5(W_| zG7hH8SFDXeX@{9Jj%*+S`Ow}_7n)ja3>14;5ju+bGqX^1wnSl?@mr&o+k(;JS^s*^ z>P7!gyl%2bIksf{bmt$dR|h3>Q~`(i z4T(i6eS2752Qkl$JpZQa@QQZoy$*PL-Pf(3%FW^~tMZ?!_5MBgBTl+3%MFcug(9=E zvY^&hTsTP!0iGndDMP?Y%Y-e&1>#&mL}7Lb2%PqDpv zV20mB-Hha}jZrcw!jLH=6oG|lQADPi@?@tAW_{`_`Pz*qU;Kl$67V$iiQGspo=U7I z`Yi5xO4#5FM}HAGZb>Po3R-5&gFfZs?`An-)d>x>)W6B4l}Bbp1w6Ip@082?=!R>_(i6i1gchyx5;2R zk4(a2=uWvJXQF7V9S8h%_3YBBX3suqPe+69NHQjrbE{;HcT3|-!qt|sh-NZYm6V9f zFDF#(VsmW+Yb|rEYXV}_7S2W>J)vS+rp2>J`A##;(|+Qen|H8o~nSO zbB68Cp1B$>Ur;qGGdtCKvr2}DgYsw$aMGArcQN@A$5tBJRUdQF{rzQ!&5ROEU>3Mw(o7mxHZx_NtFQA8X$a?n zRM8gyjXrr?s#k=XbZ?y8Nrz5;AF0l=33-ABdZr@kiII5L}$Q}8#0_Dh03a=BJ> z4CPHNNd0F-2Gu_KENlCbNP8yp@6~}lDSha%vYagx5nOi=IwS>1JOA5-eXJC z!qEn0S3B76pn|Vn^lCZv9FAmky6o%Yg{SpRd)(0YVBWrU)H!N6xdZrj&jaE3d^}yP zRlSk4KxjYc;xST-X4>MVI`k_K$V!5Rf1}gVVEmMmG z*3IKBs8|$tSKNGGR+Ff7?)|^v3s96Y%~?wCs*tC-0RjDWO^ss0>|)2OYNmqQzY`+! zx1pUX4Fib~3-T~s%qqWm?{*(e_^qGR?M5Qnl@h5l+LAOX%}XZEQm-F^Yhunk8Gu8XDT)T-B6dVKp(ei5>+y)tQe%5+b6K7V!`@$| zRX+tne2i>J_~TbE{u~eqlv7g25P|JVZM4zTgLfBP|Ai&zP?6iA7uLk|^VYlLXwQ*_ z%dXCNmio%}K+U}IG%)aYSF;LD{mF0B*glmTco{}P^PFGIuDwlgf$B!T=5M6^(p@S6 zVxvgz&M4p$qwCRh`gV!!7~ExYPE|vT0TRAKP~IxsBAvS-rqXuHRP%PACPvn!1J~{t z%<+!e-_>&*)qv-oJ-27^nR~<#W&pfv0w*0qwo>ieJ118#jP@z-i;(vA@me$OUW1uQ z*p25OhJXHg(rwG|beL?49#4f%t9P&hhImz`+?1{l5h&7-1k5a*98N(hfpwM0B&nHo zG@iL}jCN?YBB5A|kCSX49ZAA2PksiggVpKu5DEHEpA#Z-TYPU>c{^GCZHYxq{6UEG z{FZF{2`lD;Ej)xb^EF)K2`kN5IA}6{5cogjPn)jD83fJ0N;zOg>PA2yy_mv)Ad%Aq z6Y>Q`wbd%6-8XyG(4Ru9V{J695}kw!ayYcc8G=eb>t27`Sr_j-yn;2AMY{#KvT&ss z(;L#b%Os|qLn?2clArOZ>t!r6og=`7;rqy9Yp$GLlOQ*eBp~P>tP-;j7hl0g9!m}Q zBY!QYrpoUQ*sjm&)LO|?w};gN7baXb973SpzR)rqxx#(IB&l$R!Bt=k*>BO{>?IW+ zuKd$rd^7OA+v7gLNBrK6S})+!-qWkCJr>KKo*-&F5f~B>yGx#Ed22{XQAz7B&QnWc zQf#QM(A$@I%gBZ1>qI%Y^DVh1Em&S$_*KL#`jzSP~~NvsxDT3 z!B&EPIIHsZ2t~8jjNF1oF(NWMO^uC{R>t9cagSawkzoB@?1IghX14mS!WH zahH69GUAMlQN#}EYZP|`6))l_4XK^VRHMh@jiF%z0=33OS^7GTC;?(2KWSHs+?VWw zeS6JJ05dUlhqC7P%1NM_8-0`t@R&%W$aGkFY8g+J@v!Y#|4pg_yqQSq>bcP)F&sBT zw=%?q<>KY{a8cnp7WP1B-+~xKyHA-o#-A`nJ-&{Xr^`}<(B)V);Lp_HVSoOmY$P17 z{^o^q-_QuiBh7i)vd#-#SXcdxFOU#mmLp#1o*9fu>Hobu=gt6m z&eO;k@0UsI^KIbEGD(RKc@i6 zcT@K8_T|XK59Xfut5UZA0ugz&9U~`K)Li!<;@9Mb0cGQ{i6;# zdSl;4piRB9dQ~ z+x()oA=ly}NzT#$sG=k?XyfwpceHEC($fM8m^4EkIehW%d8OH4lbSgk6pT3PDI+0z zf{1FId(yUcfOjd^Q-u;+=i7;mk=%*6X2Xv)8nZl=;_J2aFm?6eVG-wF>y}@_u`ug? z8LQ8+5e6o`Mv~h8HQoa;o?aKn?BcITx)Bs2HRtgwcYsdz z0`2QXzZbM^TIFK-K8Tz9Q1Hqbf9KKDK$elVi?+ZTP+BHvB=8Jg7Yc%A!QnTUQL*%K z-eHD>Q#P*OnKp69P{cu*>|G3B9e3g$WQ&gY*ukt&B zZOCR=?=;SH3Un^-2#KUxG+zM}R*A&5NS!CF`5RmAY}=D^xv+%9LLkltGn$0ff;H)C zvH58^tKP~|?u6QB2GDC5?BEQLM8c?n8-26D08_vn(S0wGJhzYG^MvU0@F>6YXnf%Y zR33~A)LTO|AUm(>)i(?rGY{qYszl8^@u80oUm3NL{n1~1qeEMf3pafh5e`V38=&I! z8S!j|BS)+)Fo-D z%RhKK78mAxXr!3iH|eq=rDP!=Kwzl=Qpz+jQev(@H8F}?*@o8bi*%L1d{R0t~`0bx4_<62E63^TYK1WT~@FnQd;eo~bN_)pj;QCN=jf zbTaEll7rEVMLuCq%@KM|>nE%U3a3Ta(i;oVyV5IrE7f-i?dNT4a7HuzU(D{; zKX-AcOCSFZPRyiZK-~aU>$m7FG@rYRko@Wr}0`*9;fPN>wLpg!ZfJS_el%`Hu@m!?<&)LInJvGr>8AQHX`in zfSfoJBBeoywiyd@$O}DST{%aFAhVd6G@rb+S3VsH>?6dRBh9cG1igwU$1PdBO&E$b zRZ{ToDD13h33YMZ`nI^butc7PyWch-$i)&M*7|xe!;r=ctW~08D~Hrav9WoiYc%~x zMAa5A3K{?-q{CJak%55R&$<#FE?&WR3_tBhY&XW#YaSzcu1ElGjY9cu*+R8^R`-%G zo4VYM3R&E_bI=!k+gcJW2V%wAlf)%z&|8s5$G`*!8)E|(ZH03ZS~<`^Focn{|3zG>&M|6OFeNGU)E~f{I+7e$@-zl+4_3=ipWp6iT00#^K z@RPl2ol51IE>pl-?o%5Me8kC5Owso}JVHPvBRWUAn)xk(Bo($}ygVlB*Zfz>ZE zM6}0Ijxxlf-Nw9Ict7dzE>b9@It1Q|CpmmwlyEraO-2!dRrYB|tnf91yxhgY^hdfy z(-INp*>htQ!gS#_ zpiE3_!Xz|{fQ>wO=riTi8v1OPC=w0Da4fFnPv&sZl3@U|$O8U3WGHoq!@gZf#Zvvi zZixB4&mbX9T7)+lI+gNzo?)J}Lylivo{o5d<4YmBdUb8kLLWunPhG8-YynBOaHiF% z@i(-p;X0rfaCoNHBRro*bM)Ty=v+fM6s)Xga}nxHBuV}<8SQ{TgCT@G$31cXYquJ% zceN^K>C|$mbyZ*Utl38iUX@8Q6zX^i=^kO{Y51d$pU;h&W2UFwG~Z|DM(P-6CddL>$)%O`VHA5@j!AsTD&K&#eoOb z?C(T0%u4B{Phb_NbAq2*GI+h2(sA^Lv~XG1Hhsgm{~rHz)zhvKQnq-CC|G6T z1%g*yB0=EW51~M#Sojb<>amD?{rWjh$>|BpK>?iyjy|H)-`@#Hpbmr1X;W6Kn)%)| ze{TS2xCPdY_N|_##+1PgYQoZs@%-?bzwd_vJ|U3e#>Bq-*Qo`}|N2g|AE6r1B4?uc zg}@5SN4bL&OlUo2B2Iyju67*-n`VDi+Ny<3fxXL79LE0~`4Mc|tubjb%I2UFaagW! zgW`PKII|21>N9)+2j4K~ovMr_Z(%MZ?1cyn<7jQB*iM_D>&w0GVKv4dYFj0bA&k~U z2SxoXA+X0XJ6|3lv$A#3hjF0iUG)A|6%kINBSrg8{Xkh#1G88VRj4e=-UX+a*Q#=F zRZz~_+ghrt`7z!3GePW`g@&=AmMEuV+ey3@0_y|YgnlMyGTNd=$3Zsd`d!gEO0(mte4;#hU;+B!?Yz`%ln6FRTjCpHtyK(0v5{3h;3Vctd*L z5{Rp*aFrbr#Bd>-kKoQR&76Y%#@CwODTC7WS{y{mO}WbuFy!L_u5<7T{KWUTBX#3|Fi>%{_JEk z(6k*?BG6Xz=|tn}{r)Fhg$Bp#*k>B3b}#pDNHdCtkwH;U$$`1@3Rci~+*>_yNFS~z z-_C<1Dk&6~R*7S}iaqe9*CuKOnp{ioEiTP$hvS+%_0FiSY7vJUXUp^xiK0Y0m)JX? z4oq+4jjnWgVW@6(cis^Os_eD;&p3Dl0=&eVekt)QZk`4$G}#C7P(az*%m|tENxAhj zuNnml7@;4c7<{FF1o0E;x|K&&I;=UOum*w0g5nZ{K!ENaByT2sV@PbY+7o^`eg5VCJR*2G3j|UY3hh=qxaCs7bTBO>hQn7l`BGjk*dP|H>T&&NFh}!l6ja>Az}I?=urpw{Y0H08A8Ap}-0@(Y zG*TDJ%YyV5DgADIPt(34$-P-w8FK(87_u!C-M6qRgMK)T#8{A4@^>*XXhUJ+po26F zo-N~UKH`moc=)3+hCyPq3f?uo*edu@lqi5Q$bkNdyVlJFR#x7_rxU|4Jj{Z*ttv3- zz8#b7m#=bz{Oo+Kl-vN61C4aAJ85>dhy~*s@qr0bgJLu8jv{)A2mTC#VeEBbp6Ys< zP?_w;hoL%0`2$e;RKm5KC^ZiY z;$cr_L}m**Pv(TLqHbHJO29|ARxaOr#hxOckKe%T;gtcREBVnyaIy|s>9@8~k9Fl{ z500m}$cIL!>eVgi@E{d>&?ZO2IN1ad4T4M6G(Qm8e3FCoe>9NL)CcznZS@z*6}cao zIfQVC#hOx){gL`+4yse&VfsWZ0v`0zj>;vV>Ms_qg)DcTRybs(;`xuzq$-|k6y{<4 zVS4W4Es@l6`G*TH#^8D*v_v?cQx=YVsk=~pNs0E(O;jBFT(s_h2F{WAqxiDGUzrEfC~KPIF#PV$@6WIlu}=h@kq|<0 z{Q-hxZoHkVReb!N48Jew>O8BWlNP91&|n8sGtW!u$tjS__GRXVa&@Lt&@SZ6)xmvA zGs{Y^e&*iGTcQ-*U&s!I`;u9_vEloFVjSV2}iX<11=FdKM3Bqj@IeJI?6pp+WUf6dgUJRJ6u3bF=*Sa*F zf38amKr~y?pRVC;!}AC(;1q)b07#a~OmG@vxjHC*EyB~_8F5YpAM{(!jiiHvs+Odn zVb_$eNB@yF4QfdjlXe@-sZg>#m*q&rdf?2Dpr8MAf`)MS{`@^`Ud`q}P1O_O^~-AMi&l zV(l$K4_YQLT9+VK@enAX-OYf6)+omiN&g-309v4uoT>d_GtRFM)-}T4tW!?BV8MU> zRHEoTKqM6)Adg|n&@B>i9fup5fBFuRgk4csakklPHl`lxhI~noh&FRwyC_Eg1X(Zq z5^JYoXcO6A`w15Vl~-gaoIu0-Rxk^w$$4;5Eg>TfXvAj)do_-J=&b|uKhXP^V;>0?6UfS$N&9f0SU0#k2^_ z{3!3tWt{N5&?+EaXvZfU?vVvRtwY)T)MKd4GrSs+>11!%J@s|im<_yBKiVQ zwG@PXMP=9aM@|~j-3QSFbtdS=dP<#?j2O@{9@&+3=Lh>fKksSVYd;2@-c+rg5E|uf z5M$3}W@fB^XADekA(&x!e_nqL+{A~e(p2wAdUC|3YNBzS90{b_T`!QAvI^Fh26`#q zmY2G6#e!V*zOhhzS82blRm1mCdQnCH*&Z4T9`c@waH0HKq+d+T*f*DLk=Vg7UszGy zy#`98ubtOC9L$JF?M)Khjpqm|l3#aXYdkH#Ul40}O*&?1wfM2me{zHL0Y1I9I}(L| zt5`|hDad&KE_~H=>+A^4XC6s5md>rF_YDf!5{J;d-c>-qgZq=bf;<%SNlH1`(X$W1 z<~P|}|3-{~b&#KTgd(~6oVw4)E4|2vXS2kF04`?7jxSvFvm3f}iZi5>7Opibb;Wi; zT~{TwOYL69hz(i_f5#4$HwHJ)f-gwCFZy){hSki{*OEcfBKZ(xPw7B@D$;D`V*(Ev z%EU3|RN^HPC9KU4lL!I{)d=0wHxNT2#ZM?GqQR85wE)v^E&2m#V|l>aD3(4-JhH`^ zCs2wDQoI2yG0##raMYDF=yqGl0(nN4gp;>774(jgN-e2-e+9CZw|=l?w}=*cG;rvD z`qB09TW~LzdqLCyC>w_w{W3~VBNv-*QzqTYifG;+E^HVR$^+X!DY|(swDB%IH=7PV zPc%wC377Fh$NM7bn)BA=S2LQTL48?N(|%fHU@43W95e|kRH=t;f~b)2D`ZUNqb_Cr zf*f2>4#r5~e~yk^eF;HN1;Rb&am3|VUh2d8!=wVRWc0kxxfsml-VkS_g~yONSvloMI9h$s4wO1oHjeTIM@JMPSNrz!E(`gXZSzp)$j!Qj#)) zu-PSB{-C?BU-CWu>j$i0Pg%Qo%CIpQKX(2j=evl#e<$%Bhju&EI+^eT4B-PuESQ_z zjN==3(v=e;nunzKNgjd%v+E?w{m7mUw3=G@Xyz{;XH$b=6R-vf6h<=xmaHiHT>_-- zU`slC7VRxY#aRzhj>t-}+usF{km?c;k&W+HC)9c5E~uQs3Hpmq&A^IChGN3fW%v%> zzcFmffAGE4q)RM6pHRX|oK{JRg`4|(!(jFJK)`A)G7)RjEzck4+w1+TDf9m}5M66070>kOAqYjsI?@vQ~jOefD zQokrUN)#LJ3OK|uiQ+m=K<{CkeI0f9fXdOtyAEjouu#H|v6K@x~`q41~!)&FVUZ+61 ze|=j6_2shk1e|q41|O+^aB6F=a7VCZz{LMy@i_tUaHZ~iCM6RWs@OLfH}!i}g`f1O zFzpt;Rd6_4NN2U|VD61uGC{{rzYZ=R7HeMX2I4s=`@w>s7{SNEv&A>_B zqA<&wYq)qO_7z0*vS;#cfll@&w*H=te^K77wZPi>b3|5~g})4~k4S!OB%Jm4e0KOL z`bpQIAlT}gf!`wc&{7($RKMLG7j>aOM8HHXy9h1Bk2Y&ty8&ai+U6Ul@-gMhJt!T8j~(nC7q5G_GyAm!HkM^B?1orf8dHTH?+|(hU2;R6pb(~Ef{P-5iB7oiHAIDgoUkd9U=jCI&n9Fp&JzwBO(;;AkYyv zpmmacvffwcaf70#O-<%J3vK9Ng4y(tl6iaPdUgxp1uXl@by%F!^Oj>V32{mRROU0SLuK176C^n&KJGJ*-ATFuvP4|9k%PgP~D zXGwUW-6t2!QlURl9d77-w%UGJAi;TQTMXm;X0!I3F&~`4@$ZKB!fh--x`F1T{R;-p zxGfA_nvUv+pO3~Q{lmq2%?Vc1Xqst)`8NE79{79K5BmkPLV=02>7-7MM z?WI&-!LV+2eETBxpknuX!ub`TH5hX~UVmikSpTC}7$gYCv!*OZZ`hPU9mI7@e`fQ> zJi}9IZb)t*eSyApd1e>+ioY$!!|AZ1b(k6scw8NR8X3T|k{Zd*e^l}DXubU}e&*NX zj6TMLZ}Ft%^&f0SjlG=xixzEovy`P;ybG{GzbsfTWj&9Z*x3+;5}twt#R%&{ zjB#yh)7v_x+^R4a)JY82c|%ox;FXmKa+V_v7uZz>U7OQ2l6k`jyKP9K!Aw?q7kw#B zhVjY0qm1%Fe?qESc+52YnYwZm11AQje>OX6a5)Kf+~`sKhFfIK!HXVX)nILWpAM?= z@S%RW3iyrRImu(Ac@c^R`W1v&YB??ng2?&6jf3t% zV6IDCj2<2AK=`@pJP{#w_`Z~&MwRZIHEVY(_NBmAf2nkd>%SmxK`FF4Npx>fghI0& zMJEtzh2XRHgSNh8!_V!(N2l-k!l#24RF&G*DETJrAvZTDL z1*OG(@WR`46SP^wM&iIj=^*RmGb84V_iw7me;2zWVVUqP*I=Md5#!BMoW}0I1&q)-?z)rGJbkQgyyynu|#6BS(rdA-hA3qY*{hrXs9o%+zO!O!wZHV(`Fi6LfeXa z{2u|@@PV*Pn&Edf)VPNNxTqx?fA9v1e_>v#Z^^4Yvz^}cVJ}hLs%sj$P0W1aEd`z0 z9E|*7$4R1Rtmcv8Jt~dNM;xp4u@Z5OnTEGD8~)N+(Qu#Rv>zA(uk&-bc7j&+2i3XJ zJ%0aMGX%xMBr5`pBpaxv4HOdKPu*#-;=woOkqfyEC|hl9@95Ie5mCF3SJ6_1e-Mw` zW^XFlJ=1h91oE|y)jhwA@9Wab39;y|A#C^}iYC`#-ivjyOqc(nGxHC6JgDg91A^$U z1nbFnUqpwaCRqK5u)Lz$d#KG3WSJa;&8!jUM{ zhZpvI8|5aW6%*RNOGYOG!AOhfe@_v!X~py1l83(Ce{1a_t?7Wl$G{`*F3kowN7{se z?Ny<4y%_{AofkfWi*=ydsCCP1BT-bqOY`qVo<>S)b6-z{KMo@oDl$xUgJ<0*zJ+m4 zC(Q-6w-SQe%KG9h;pcy|aJQy7#W4HAtzbfQoO6=+lq|T3nR>HhqEy3wf3Vo|{RXEx zihT5V>FYFx{p){X|1`^t?C@Si$x%R*qPQ`XNL^PW`nHJk^5r4>uV z2BLE}40zK#tl|S%RfT8NH^}uW&%*aR#sh`HB>9`u37zCB8mhqA^&~o8Q{w+C+3DzK&cWIah7CkG4!c(_{>;uQ4R{2MA3B#nbQ-CiPqHu~wWUHgHa>G$s4tnWze@ zG9Qtih=zSXYD=W^0+4re7O%4@jU6CS#$xDI=$E43 z~)z)Dk`-!3`%* zJJ#&*yUaQV&uZ6>t(-XN1RIkEGGaIRE_32ipY)k7A_dU$e;_;SgV$5UtjY)12^fA# zuAg9W0M;PY+GGwkQnZGI8qG z@@X1r&ag-JlKTkHzUS4GOX(l3DZ=$l?&-z zSSa|@E-1TE*Z_hA@y^DCikQo^8GbCpOSZyTOmDJ>kUYo01YH)zQ{9Y@CGu~K7}dHF zI-9yKe>aky#~Rh|@1Izx;A~RoM4}2nYudQEM4;`mo~kW>mwdR9uS;saEqEVtS*OGf19v43Gm^%R~`uUUY5fWDjt@JHcvS#+G2P{QZ=iW%i2k!@F2@=`MnZGHAfABH0(?zi96A zEp-A$)BlTn9>-B#3pbPt0wPRQuCOtGrR*1x#KTDw@we96s8!&tL9fVMZaN8Q7%Qb4 ztSTUi+v>$kCE8PQX0I${RuqRyN%(hFf4<0K^h`=E!89UT=eLhO5h-kZU6kY*{X)%Z zgD!|U+Cc#$5Lb+>MQG9WpPrHg;RRMYrB?k0<@~H$(O)*B%pFMCb|Q6Umm3frswwKi zQ3nWQcve}guEmPRbzY{pW$&aX_gHpXhiz0dI-@$7nmVmSLr73K+zzyV-pBhuf77T` z{9{&EX9*pSou3edW#uqYn>!BkhjCB*?CK?TKeLX8<|@Qb`=I5X;5$z?&y5bPawJ~f zfNd%{3#AsVeN@s#f`k)wXqk2xo!p*MLSiKg@3MGyElPTs>L<5npBZdp?Y>N~sNQJ! z>3{bX&dCN((&T_j;p=vH6peItf7)Aj0JSW~I~ieacW0R!6OGm2eOA=LQh0$HS}^JO ztJlDI%~C>p1u!SA*cS=Yy+&AFne*hJWw%_auHQH&hCVsYCl`uLx^gOM5wFs?aUepy z2DKOvwK+B*3v84f-Co$9#K3?-B5xp*AXq+WVT0sD?-Och&7}Worn`y&e@e%23)_u9 zYnMP?HRp0?Vid;>2`|^jAR;DM*=2*I{2J{&Dh$rR0ak~6;~khu{1p6qSc0@bAHDVo zaT>n$5OqE|B63ImBxv|`-mnZR_0XMi>?lf|K}RDKE4PTc0`N@d7Hqq1YZ8c$7H&74 znl_G^i=juUmKBq2;BM~xe}vMDaqX|44r)*e4t;E4R&dgAxBX;f<&;={P&$2RxZ2P` z!GwHa+&}l?I!JxEYICA`Y5fB|95VnFz|F1Mq%V!t!he*}i~A0fO54ptMaT2uWjB0U zY4ohhT~4Yp{`Nb1H!qjSUJd35~auGIPf~_`GW5DaOfm>p4vr2oA_=t$8cq=N*GY4L zb>&FvuC&mS&eQe^B&fYl;z=}=QdzK$=Yl8D@}<+?XuC_ZmU>H*AWZ0xHysp@tjqGv zXJy`giMKgVVYOBPe;H9$h@c2u?C&VsRRtbIlEFeAmkq@$99&H9FoRx~Glhr!?vXvz zSaZStP6*j+_5g*jaoRqD+au*4!rBRtW&~`iFj&w!ywV=@N&}*%2>}O%_YnBsOr-?; zYmo|9z{iGpUXwQg(Ty%`N-o%=CP-gOD0n$Ng8o9juZXoKe^+TrG`7Fone)m$>?8QR-(V1ow^FUVIPyEu}>?Ar7e+UBFkFod_`aoutayMd^j!ss$ z)*V3IL$W-s;Prf!*$ZSIpqAt^otGgolK6b76Pv1Up_u!9Y}& z^T*3|HjSUN4lZNkx|E*e-HqU!SYTmP3K2+`xI8c@i95ipZhvXlGu`SOw#|*A;+i~K zV`n@Zf0hoI*u95KPCTrl;)oaVRx?Dik7d24&9*L^a~Z_3Gf+nim4XA$4k%n#8$LFH zMsSWZIG=Q;vfPLr9A7Oj^ZRo4Cn786T6UAnoTP5O!hE=j{yeX)n2G36``dW=!c5(+ z$udcCuYJ5nM6PmEUWc!BbRxR^q0iY-8K03Ge?QMZHlDz-_CSV0D_D;_r;=rvk!BCW zWK;@@8OxHjI|?y_U!KK(CbpeLo6Je}%tn&Jfq}0Ycn-q#VJ!WFD?}*p&*2Fz8HrnS zeU@_Z@F6qm`jC2dMtf|Jan|e>?l<2)A>h0YgrGcLKnbv{?(`$UD0MePl_B|r!40c|L_(LAMv4cGa>d^ka^-E1y9aZzBjSad()u=NH%fyq|zr-aNk zmRa}#K8LY}nyMFycvi~goc8nm8}Ky@f6B&*?*i|;0PWe=7X5BbBA~-dFC?>K34<_T z5G)*t{sc7_OD5lKg)Vuilyo}R(JV4`JkD)nJOYub`gBb&-eBS>%U1|SC+7w6*=Mkm z<3L3G06fj)3UfD3MUEs#5W9JfJin!V@e6NC7{eCbLiQdC&Q;@G$GO#rMb#?!f0^OT z>YQpR2r)xgV_fljXNz4MgNEhx;Wq?J6_%!UR$b)&PQ470LtWh06O2#^Dm1Fr_3*$@ z$ce#0e$#a~^hpIYxmBOr@Knhq{NGJ(nyIYCf@uNvldn7YOWgDJrsRq$^7+}J1Zc5j zvm3LYYJiHx#C#-f6V_bXBg<{|e>ko?Ln!_QFkN4cbGwP84CkMnP6k^7+BxOr9IAPV zHv)v%b-!KuEj=BNv$W(Ztv*xuc$|r{*pwK2zUwc3nf}M%UynV7eg6I2W3s55x*DLP z$qhN15mgXyDKw+p=r1|V2-D7MM@g6_{Q9Wk#;ibYU83bGrVJiAx-adTf6i4b+PVcq z%Fzc+xZzR{E^DoN%Bu!tzMD!>iEPE5x~nb6;f&eJUJ?a2vL$rxWIVLtgNa5trD9sk zK*HZVa1u!(QKbrufn$S)C}-fKBWT_qS)h1pqG0#3plZi^7~5wnbK z1QKfo%lT9lu$jFp1qy8Fe<{2{Wc~|iJ9=?vPUxQm(hsl;{krK?YKB1LbI70G26Z5q z{zFSMxe#9>X8-&xf_gIc_btox(0k~G!_3ltbTM;j^UccxR&RnLG@WZs*O>qQ)xc)F7#hbv6al-JhtX%-N}6Sr6Z&44FI z(-PLz~|O$u)e4u|m>afqPAWs(Fg zaea>npLhW$fgql6i6;riA#(}GnUq8dMg%@2C)9TcrP6It&m+`zB%$2XZ(SVVl27qX zfCGQ->eqo@ro=-->ET|uD1AvhMqJnP(FJ^>50s%hKEq#ieeDo_fiF02;X3#XC_!Ht zMK>r%zZ~?R5$1700w15!$E|R{@dbK-1O3KBG!A9xDLUXV?HuuZ7hMv#66l>Mf(?Wo zF!YfHt@rO+aPhiS1o~-`AFI_Yid4ihayTd4m)~2^Ud>dJ>q!f`;qs%3<`0{x-bb%#lNJo}Fpg&JWF9MW zMBNrlbG5i60++fEVK!Ac`3u_6gO4zT5uC#Wrtk$W;Tl4?g&90R1phz`3rJuIIlO))k!{Rn>(Gk^q`v_5=5tb<I5ijnLZ`wcsh{r$kSgk5r-t`hZ&K^|Tp!X`;UX zRbYJFp?rgp?=ZGIC&SYd?ePt!s|iNiq81}E`ABM>QyLJ?eFGx*Er@!$gNP?sH?B>7Rvgxy*mk7xlCbV+gY>{ZYQY4Kq-&THt1|h?4aR7V9{V zmhmerRTiap+6|SdJ3Cln7p&oUGU^Np=*_CZGN=uehp@30DZ`j?5g3sYffXq|-ABq3 z2P5UXW~63OHjC9PUA|_y4NLBMKI|TMhJ}|6X>JJdYUrc9#fd)^)vPE1(E zbO(!R9Xph+H_A1DGt{ong>qeNRBM*TX##gx+4pcCJu8?OLbfgOWWBgm*(#bRkV2X$ ztobL%V1@dY|43mC&+tR50Q`Teveb?m-Lt!MHMyE#1SUgAG>lr+rd|#lhB0vU8H2~E zWMUsSoS0!Nru(qD6+Lk3gBBKo7bD;to^5pQ4&C_rq}Lmwr}|uyej{{Mn|eVI5WVdQ+NLZR*2C{VmP0uaT4);lfVK440n%Z<_0H9T(a#LUkAy zeN8oJ_Zwj-gS6EGTM2*aRAArq9G?%*&ie&aY*m_tr)qOR1?Z+uJk2J@Xnb&Dg~y>k ztCIuaL3lQ%U|%8AuV?-9jeiYmziRU z9uK;;y@H!V)dTnXFM{F^kBy?7=5|3nR@kx(GnEv5RWT}ir%iv6J;Bpjt?~#Dqo;M6 ztGnB{TrXzjP_u0nhpPw8xra=t4fEE?9iCCMG*kQIsD_IB-t@SAF}g0R4lh&-M7` zA}K9n)P*&T$mL@pGO^J*t1{grkAy^KDyv(wKYA7OwpbCmfeOb$( zL?!o@O*gNP?JV^%O5r3dhNIwHcM!^Gz$ONNONbaPC?{g;f(odFrPNq{PzN>82Ww#^ zoPb(b1u?!zC0Y#!U=18siNCb@wf{AGo*4t|^Wa0{+()1D23W6BAG6x{%O<;_s9a`w5W{jdodn1LVsMred4I1J4^%~csMvQ|&u8*k!9;*~M^&3N~J z!uxeWi^`+le(QV_+aONL=?B|j3v8w4JKjp*eUUwAy3&lMoqJK z*#~=7<%iW`MPAzvy{gd`?_8!@YlotKz2nBP{g--s(io2zQ#Xw7Q=%zNL-tEnT{GG% zjniS{>P=%TVa)c6CUu`NhAtVSZ;jV8Mq*4fIsCwgwi%Z%7*G0qT)&Csn$md6+Qg~tE@ diff --git a/doc/pub/Regression/pdf/Regression-beamer.pdf b/doc/pub/Regression/pdf/Regression-beamer.pdf index 8c2c84883ed9f0c793d309857ea5f9fec5bf82e1..1d9c4a61da32b6c0d87ea9170fa74a9b90c19738 100644 GIT binary patch delta 24481 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 E3goVIQUCw| delta 24196 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 diff --git a/doc/pub/Regression/pdf/Regression-minted.pdf b/doc/pub/Regression/pdf/Regression-minted.pdf index 57767b5431feeb0b98edcb452d5ba9284ea0c1cf..2bfce68d9caebc6a0fd29b43abae6e80813331fe 100644 GIT binary patch delta 29147 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 diff --git a/doc/src/Regression/Regression.do.txt b/doc/src/Regression/Regression.do.txt index b0c6e086f..1dbd42d63 100644 --- a/doc/src/Regression/Regression.do.txt +++ b/doc/src/Regression/Regression.do.txt @@ -59,11 +59,13 @@ Defining the vectors \hat{y} = [y_0,y_1, y_2,\dots, y_{n-1}]^T, \] !et +and !bt \[ \hat{\beta} = [\beta_0,\beta_1, \beta_2,\dots, \beta_{n-1}]^T, \] !et +and !bt \[ \hat{\epsilon} = [\epsilon_0,\epsilon_1, \epsilon_2,\dots, \epsilon_{n-1}]^T, @@ -390,7 +392,7 @@ and ===== The $\chi^2$ function ===== !bblock -We define then +For a linear fit we don't need to invert a matrix!! !bt \[ \gamma = \sum_{i=0}^{n-1}\frac{n-1}{\sigma_i^2}, @@ -429,7 +431,7 @@ and show that \] !et -The LSM suffers often from both being underdetermined and overdetermined in the unknown coefficients $\beta_i$. A better approach is to use the Singular Value Decomposition (SVD) method discussed below. +The LSM suffers often from both being underdetermined and overdetermined in the unknown coefficients $\beta_i$. A better approach is to use the Singular Value Decomposition (SVD) method discussed below. Or using Lasso and Ridge regression. See below. !eblock diff --git a/doc/src/Regression/make.sh b/doc/src/Regression/make.sh index 0671a98d3..edfed7c87 100755 --- a/doc/src/Regression/make.sh +++ b/doc/src/Regression/make.sh @@ -47,7 +47,7 @@ system doconce format html $name --html_style=bootstrap --pygments_html_style=de system doconce split_html $html.html --method=split --pagination --nav_button=bottom # IPython notebook -#system doconce format ipynb $name $opt +system doconce format ipynb $name $opt # LaTeX Beamer slides beamertheme=red_plain