{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# Chapter 6 - Linear Model Selection and Regularization" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "- [Lab 2: Ridge Regression](#6.6.1-Ridge-Regression)\n", "- [Lab 2: The Lasso](#6.6.2-The-Lasso)\n", "- [Lab 3: Principal Components Regression](#6.7.1-Principal-Components-Regression)\n", "- [Lab 3: Partial Least Squares](#6.7.2-Partial-Least-Squares)" ] }, { "cell_type": "code", "execution_count": 1, "metadata": {}, "outputs": [], "source": [ "# %load ../standard_import.txt\n", "import pandas as pd\n", "import numpy as np\n", "import matplotlib.pyplot as plt\n", "import seaborn as sns\n", "\n", "import glmnet as gln\n", "\n", "from sklearn.preprocessing import scale \n", "from sklearn import model_selection\n", "from sklearn.linear_model import LinearRegression, Ridge, RidgeCV, Lasso, LassoCV\n", "from sklearn.decomposition import PCA\n", "from sklearn.cross_decomposition import PLSRegression\n", "from sklearn.model_selection import KFold, cross_val_score\n", "from sklearn.metrics import mean_squared_error\n", "\n", "%matplotlib inline\n", "plt.style.use('seaborn-white')" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# Lab 2" ] }, { "cell_type": "code", "execution_count": 2, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "\n", "Index: 263 entries, -Alan Ashby to -Willie Wilson\n", "Data columns (total 20 columns):\n", "AtBat 263 non-null int64\n", "Hits 263 non-null int64\n", "HmRun 263 non-null int64\n", "Runs 263 non-null int64\n", "RBI 263 non-null int64\n", "Walks 263 non-null int64\n", "Years 263 non-null int64\n", "CAtBat 263 non-null int64\n", "CHits 263 non-null int64\n", "CHmRun 263 non-null int64\n", "CRuns 263 non-null int64\n", "CRBI 263 non-null int64\n", "CWalks 263 non-null int64\n", "League 263 non-null object\n", "Division 263 non-null object\n", "PutOuts 263 non-null int64\n", "Assists 263 non-null int64\n", "Errors 263 non-null int64\n", "Salary 263 non-null float64\n", "NewLeague 263 non-null object\n", "dtypes: float64(1), int64(16), object(3)\n", "memory usage: 43.1+ KB\n" ] } ], "source": [ "# In R, I exported the dataset from package 'ISLR' to a csv file.\n", "df = pd.read_csv('Data/Hitters.csv', index_col=0).dropna()\n", "df.index.name = 'Player'\n", "df.info()" ] }, { "cell_type": "code", "execution_count": 3, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
Player
-Alan Ashby31581724383914344983569321414375NW6324310475.0N
-Alvin Davis479130186672763162445763224266263AW8808214480.0A
-Andre Dawson496141206578371156281575225828838354NE200113500.0N
-Andres Galarraga3218710394230239610112484633NE80540491.5N
-Alfredo Griffin5941694745135114408113319501336194AW28242125750.0A
\n", "
" ], "text/plain": [ " AtBat Hits HmRun Runs RBI Walks Years CAtBat CHits \\\n", "Player \n", "-Alan Ashby 315 81 7 24 38 39 14 3449 835 \n", "-Alvin Davis 479 130 18 66 72 76 3 1624 457 \n", "-Andre Dawson 496 141 20 65 78 37 11 5628 1575 \n", "-Andres Galarraga 321 87 10 39 42 30 2 396 101 \n", "-Alfredo Griffin 594 169 4 74 51 35 11 4408 1133 \n", "\n", " CHmRun CRuns CRBI CWalks League Division PutOuts \\\n", "Player \n", "-Alan Ashby 69 321 414 375 N W 632 \n", "-Alvin Davis 63 224 266 263 A W 880 \n", "-Andre Dawson 225 828 838 354 N E 200 \n", "-Andres Galarraga 12 48 46 33 N E 805 \n", "-Alfredo Griffin 19 501 336 194 A W 282 \n", "\n", " Assists Errors Salary NewLeague \n", "Player \n", "-Alan Ashby 43 10 475.0 N \n", "-Alvin Davis 82 14 480.0 A \n", "-Andre Dawson 11 3 500.0 N \n", "-Andres Galarraga 40 4 91.5 N \n", "-Alfredo Griffin 421 25 750.0 A " ] }, "execution_count": 3, "metadata": {}, "output_type": "execute_result" } ], "source": [ "df.head()" ] }, { "cell_type": "code", "execution_count": 4, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "\n", "Index: 263 entries, -Alan Ashby to -Willie Wilson\n", "Data columns (total 6 columns):\n", "League_A 263 non-null uint8\n", "League_N 263 non-null uint8\n", "Division_E 263 non-null uint8\n", "Division_W 263 non-null uint8\n", "NewLeague_A 263 non-null uint8\n", "NewLeague_N 263 non-null uint8\n", "dtypes: uint8(6)\n", "memory usage: 3.6+ KB\n", " League_A League_N Division_E Division_W NewLeague_A \\\n", "Player \n", "-Alan Ashby 0 1 0 1 0 \n", "-Alvin Davis 1 0 0 1 1 \n", "-Andre Dawson 0 1 1 0 0 \n", "-Andres Galarraga 0 1 1 0 0 \n", "-Alfredo Griffin 1 0 0 1 1 \n", "\n", " NewLeague_N \n", "Player \n", "-Alan Ashby 1 \n", "-Alvin Davis 0 \n", "-Andre Dawson 1 \n", "-Andres Galarraga 1 \n", "-Alfredo Griffin 0 \n" ] } ], "source": [ "dummies = pd.get_dummies(df[['League', 'Division', 'NewLeague']])\n", "dummies.info()\n", "print(dummies.head())" ] }, { "cell_type": "code", "execution_count": 5, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "\n", "Index: 263 entries, -Alan Ashby to -Willie Wilson\n", "Data columns (total 19 columns):\n", "AtBat 263 non-null float64\n", "Hits 263 non-null float64\n", "HmRun 263 non-null float64\n", "Runs 263 non-null float64\n", "RBI 263 non-null float64\n", "Walks 263 non-null float64\n", "Years 263 non-null float64\n", "CAtBat 263 non-null float64\n", "CHits 263 non-null float64\n", "CHmRun 263 non-null float64\n", "CRuns 263 non-null float64\n", "CRBI 263 non-null float64\n", "CWalks 263 non-null float64\n", "PutOuts 263 non-null float64\n", "Assists 263 non-null float64\n", "Errors 263 non-null float64\n", "League_N 263 non-null uint8\n", "Division_W 263 non-null uint8\n", "NewLeague_N 263 non-null uint8\n", "dtypes: float64(16), uint8(3)\n", "memory usage: 35.7+ KB\n" ] } ], "source": [ "y = df.Salary\n", "\n", "# Drop the column with the independent variable (Salary), and columns for which we created dummy variables\n", "X_ = df.drop(['Salary', 'League', 'Division', 'NewLeague'], axis=1).astype('float64')\n", "# Define the feature set X.\n", "X = pd.concat([X_, dummies[['League_N', 'Division_W', 'NewLeague_N']]], axis=1)\n", "X.info()" ] }, { "cell_type": "code", "execution_count": 6, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
AtBatHitsHmRunRunsRBIWalksYearsCAtBatCHitsCHmRunCRunsCRBICWalksPutOutsAssistsErrorsLeague_NDivision_WNewLeague_N
Player
-Alan Ashby315.081.07.024.038.039.014.03449.0835.069.0321.0414.0375.0632.043.010.0111
-Alvin Davis479.0130.018.066.072.076.03.01624.0457.063.0224.0266.0263.0880.082.014.0010
-Andre Dawson496.0141.020.065.078.037.011.05628.01575.0225.0828.0838.0354.0200.011.03.0101
-Andres Galarraga321.087.010.039.042.030.02.0396.0101.012.048.046.033.0805.040.04.0101
-Alfredo Griffin594.0169.04.074.051.035.011.04408.01133.019.0501.0336.0194.0282.0421.025.0010
\n", "
" ], "text/plain": [ " AtBat Hits HmRun Runs RBI Walks Years CAtBat \\\n", "Player \n", "-Alan Ashby 315.0 81.0 7.0 24.0 38.0 39.0 14.0 3449.0 \n", "-Alvin Davis 479.0 130.0 18.0 66.0 72.0 76.0 3.0 1624.0 \n", "-Andre Dawson 496.0 141.0 20.0 65.0 78.0 37.0 11.0 5628.0 \n", "-Andres Galarraga 321.0 87.0 10.0 39.0 42.0 30.0 2.0 396.0 \n", "-Alfredo Griffin 594.0 169.0 4.0 74.0 51.0 35.0 11.0 4408.0 \n", "\n", " CHits CHmRun CRuns CRBI CWalks PutOuts Assists \\\n", "Player \n", "-Alan Ashby 835.0 69.0 321.0 414.0 375.0 632.0 43.0 \n", "-Alvin Davis 457.0 63.0 224.0 266.0 263.0 880.0 82.0 \n", "-Andre Dawson 1575.0 225.0 828.0 838.0 354.0 200.0 11.0 \n", "-Andres Galarraga 101.0 12.0 48.0 46.0 33.0 805.0 40.0 \n", "-Alfredo Griffin 1133.0 19.0 501.0 336.0 194.0 282.0 421.0 \n", "\n", " Errors League_N Division_W NewLeague_N \n", "Player \n", "-Alan Ashby 10.0 1 1 1 \n", "-Alvin Davis 14.0 0 1 0 \n", "-Andre Dawson 3.0 1 0 1 \n", "-Andres Galarraga 4.0 1 0 1 \n", "-Alfredo Griffin 25.0 0 1 0 " ] }, "execution_count": 6, "metadata": {}, "output_type": "execute_result" } ], "source": [ "X.head(5)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "#### I executed the R code and downloaded the exact same training/test sets used in the book." ] }, { "cell_type": "code", "execution_count": 7, "metadata": {}, "outputs": [], "source": [ "X_train = pd.read_csv('Data/Hitters_X_train.csv', index_col=0)\n", "y_train = pd.read_csv('Data/Hitters_y_train.csv', index_col=0)\n", "X_test = pd.read_csv('Data/Hitters_X_test.csv', index_col=0)\n", "y_test = pd.read_csv('Data/Hitters_y_test.csv', index_col=0)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### 6.6.1 Ridge Regression" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Scikit-learn" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "The __glmnet__ algorithms in R optimize the objective function using cyclical coordinate descent, while scikit-learn Ridge regression uses linear least squares with L2 regularization. They are rather different implementations, but the general principles are the same.\n", "\n", "The __glmnet() function in R__ optimizes:\n", "### $$\\frac{1}{N}|| X\\beta-y||^2_2+\\lambda\\bigg(\\frac{1}{2}(1−\\alpha)||\\beta||^2_2 \\ +\\ \\alpha||\\beta||_1\\bigg)$$\n", "(See R documentation and https://cran.r-project.org/web/packages/glmnet/vignettes/glmnet_beta.pdf)
\n", "The function supports L1 and L2 regularization. For just Ridge regression we need to use $\\alpha = 0$. This reduces the above cost function to\n", "### $$\\frac{1}{N}|| X\\beta-y||^2_2+\\frac{1}{2}\\lambda ||\\beta||^2_2$$\n", "The __sklearn Ridge()__ function optimizes:\n", "### $$||X\\beta - y||^2_2 + \\alpha ||\\beta||^2_2$$\n", "which is equivalent to optimizing\n", "### $$\\frac{1}{N}||X\\beta - y||^2_2 + \\frac{\\alpha}{N} ||\\beta||^2_2$$" ] }, { "cell_type": "code", "execution_count": 8, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "