1.3 Lasso
soft.th <- function(lambda, x) {
return(sign(x) * pmax(abs(x) - lambda, 0))
}
curve(soft.th(5, x), -10, 10, main = "soft.th(lambda, x)")
segments(-5, -4, -5, 4, lty = 5, col = "blue")
segments(5, -4, 5, 4, lty = 5, col = "blue")
text(-0.2, 1, "lambda = 5", cex = 1.5, col = "red")
![](data:image/png;base64,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)
linear.lasso <- function(X, y, lambda = 0, beta = rep(0, ncol(X))) {
n <- nrow(X)
p <- ncol(X)
res <- centralize(X, y) ## Centralization(See Below)
X <- res$X
y <- res$y
eps <- 1
beta.old <- beta
while (eps > 0.001) { ## Wait the convergence of this loop
for (j in 1:p) {
r <- y - as.matrix(X[, -j]) %*% beta[-j]
beta[j] <- soft.th(lambda, sum(r * X[, j]) / n) / (sum(X[, j] * X[, j]) / n)
}
eps <- max(abs(beta - beta.old))
beta.old <- beta
}
beta <- beta / res$X.sd ## Recover the coefficients to the original before regularization
beta.0 <- res$y.bar - sum(res$X.bar * beta)
return(list(beta = beta, beta.0 = beta.0))
}
centralize <- function(X, y, standardize = TRUE) {
X <- as.matrix(X)
n <- nrow(X)
p <- ncol(X)
X.bar <- array(dim = p) ## The average of X for each column
X.sd <- array(dim = p) ## The sd of each column in X
for (j in 1:p) {
X.bar[j] <- mean(X[, j])
X[, j] <- (X[, j] - X.bar[j]) ## Centralization of each column in X
X.sd[j] <- sqrt(var(X[, j]))
if (standardize == TRUE)
X[, j] <- X[, j] / X.sd[j] ## standarization of each column in X
}
if (is.matrix(y)) { ## if y is a matrix
K <- ncol(y)
y.bar <- array(dim = K) ## average of y
for (k in 1:K) {
y.bar[k] <- mean(y[, k])
y[, k] <- y[, k] - y.bar[k] ## centralization of y
}
} else { ## if y is a vector
y.bar <- mean(y)
y <- y - y.bar
}
return(list(X = X, y = y, X.bar = X.bar, X.sd = X.sd, y.bar = y.bar))
}
Example 2
df <- read.table("crime.txt")
x <- df[, 3:7]
y <- df[, 1]
p <- ncol(x)
lambda.seq <- seq(0, 200, 0.1)
plot(lambda.seq, xlim = c(0, 200), ylim = c(-10, 20), xlab = "lambda", ylab = "beta",
main = "Coefficients for each lambda", type = "n", col = "red")
r <- length(lambda.seq)
coef.seq <- array(dim = c(r, p))
for (i in 1:r)
coef.seq[i, ] <- linear.lasso(x, y, lambda.seq[i])$beta
for (j in 1:p) {
par(new = TRUE)
lines(lambda.seq, coef.seq[, j], col = j)
}
legend("topright",
legend = c("annual police funding", "% of people 25 years+ with 4 yrs. of high school",
"% of 16--19 year-olds not in highschool and not highschool graduates",
"% of people 25 years+ with at least 4 years of college"),
col = 1:p, lwd = 2, cex = .8)
![](data:image/png;base64,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)
warm.start <- function(X, y, lambda.max = 100) {
dec <- round(lambda.max / 50)
lambda.seq <- seq(lambda.max, 1, -dec)
r <- length(lambda.seq)
p <- ncol(X)
coef.seq <- matrix(nrow = r, ncol = p)
coef.seq[1, ] <- linear.lasso(X, y, lambda.seq[1])$beta
for (k in 2:r)
coef.seq[k, ] <- linear.lasso(X, y, lambda.seq[k], coef.seq[(k - 1), ])$beta
return(coef.seq)
}
Example 3
crime <- read.table("crime.txt")
X <- crime[, 3:7]
y <- crime[, 1]
coef.seq <- warm.start(X, y, 200)
p <- ncol(X)
lambda.max <- 200
dec <- round(lambda.max / 50)
lambda.seq <- seq(lambda.max, 1, -dec)
plot(log(lambda.seq), coef.seq[, 1], xlab = "log(lambda)", ylab = "Coefficients",
ylim = c(min(coef.seq), max(coef.seq)), type = "n")
for (j in 1:p)
lines(log(lambda.seq), coef.seq[, j], col = j)
![](data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAABUAAAAPACAMAAADDuCPrAAAA7VBMVEUAAAAAADoAAGYAOjoAOmYAOpAAZmYAZrYil+Yo4uU6AAA6OgA6Ojo6OmY6ZmY6ZpA6ZrY6kJA6kLY6kNth0E9mAABmADpmOgBmOjpmOmZmZjpmZmZmZpBmkJBmkLZmkNtmtttmtv+QOgCQOjqQZgCQZjqQZmaQkDqQkJCQkLaQtraQttuQtv+Q29uQ2/+2ZgC2Zjq2kDq2kGa2kLa2tpC2tra2ttu229u22/+2///bkDrbkGbbtmbbtpDbtrbbttvb25Db27bb29vb2//b/7bb/9vb///fU2v/tmb/25D/27b/29v//7b//9v///83t+hdAAAACXBIWXMAAB2HAAAdhwGP5fFlAAAgAElEQVR4nO3dDXsbVZqgYRnCZDFhwk5gkx0zDMk27CzsYjrTJuBOMkuYBSfE/v8/Z1X6smzJtupV1ak659z3dTVtO1ZJqpIe11F9TS4ACJkM/QAAciWgAEECChAkoABBAgoQJKAAQQIKECSgAEECChAkoABBAgoQJKAAQQIKECSgAEECChAkoABBAgoQJKAAQQIKECSgAEECChAkoABBAgoQJKAAQQIKECSgAEECChAkoABBAgoQJKAAQQIKECSgAEECChAkoABBAgoQJKAAQQIKECSgAEECChAkoABBAgoQJKAAQQIKECSgAEECChAkoABBAgoQJKAAQQIKECSgAEECChAkoABBAgoQJKAAQQIKECSgAEECChAkoABBAgoQJKAAQQIKECSgAEECChAkoABBAgoQJKAAQQIKECSgAEECChAkoABBAgoQJKAAQQIKECSgAEECChAkoABBAgoQJKAAQQIKECSgAEECChAkoABBAgoQJKAAQQIKECSgAEECChAkoABBAgoQJKAAQQIKECSgAEECChAkoABBAgoQJKAAQQIKECSgAEECChAkoABBAgoQJKAAQQIKECSgAEECChAkoABBAgoQJKAAQQIKECSgAEECChAkoABBAgoQJKAAQQIKECSgAEECChAkoABBAgoQJKAAQQIKECSgAEECChAkoABBAgoQJKAAQQIKECSgAEECChAkoABBAgoQJKAAQQIKECSgAEECChAkoABBAgoQJKAAQQIKECSgAEECChAkoABBAgoQJKAAQQIKECSgAEEC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)
Example 4
library(glmnet)
## Warning: package 'glmnet' was built under R version 4.0.3
## Loading required package: Matrix
## Loaded glmnet 4.0-2
library(MASS)
df <- Boston
x <- as.matrix(df[, 1:13])
y <- df[, 14]
fit <- glmnet(x, y)
plot(fit, xvar = "lambda", main = "BOSTON")
![](data:image/png;base64,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)
1.4 Ridge
ridge <- function(X, y, lambda = 0) {
X <- as.matrix(X)
p <- ncol(X)
n <- length(y)
res <- centralize(X, y)
X <- res$X
y <- res$y
## The Ridge procedure is the only one line below
beta <- drop(solve(t(X) %*% X + n * lambda * diag(p)) %*% t(X) %*% y)
beta <- beta / res$X.sd ## Recover the each coefficient to the origibal before regularization
beta.0 <- res$y.bar - sum(res$X.bar * beta)
return(list(beta = beta, beta.0 = beta.0))
}
Example 5
df <- read.table("crime.txt")
x <- df[, 3:7]
y <- df[, 1]
p <- ncol(x)
lambda.seq <- seq(0, 100, 0.1)
plot(lambda.seq, xlim = c(0, 100), ylim = c(-10, 20), xlab = "lambda", ylab = "beta",
main = "The coefficients for each lambda", type = "n", col = "red")
r <- length(lambda.seq)
coef.seq <- array(dim = c(r, p))
for (i in 1:r)
coef.seq[i, ] = ridge(x, y, lambda.seq[i])$beta
for (j in 1:p) {
par(new = TRUE)
lines(lambda.seq, coef.seq[, j], col = j)
}
legend("topright",
legend = c("annual police funding", "% of people 25 years+ with 4 yrs. of high school",
"% of 16--19 year-olds not in highschool and not highschool graduates",
"% of people 25 years+ with at least 4 years of college"),
col = 1:p, lwd = 2, cex = .8)
crime <- read.table("crime.txt")
X <- crime[, 3:7]
y <- crime[, 1]
linear(X, y)
## $beta
## [1] 10.9806703 -6.0885294 5.4803042 0.3770443 5.5004712
##
## $beta.0
## [1] 489.6486
ridge(X, y)
## $beta
## [1] 10.9806703 -6.0885294 5.4803042 0.3770443 5.5004712
##
## $beta.0
## [1] 489.6486
ridge(X, y, 200)
## $beta
## [1] 0.055231573 -0.019372823 0.076321840 -0.016784731 -0.006907194
##
## $beta.0
## [1] 716.4355
1.5 Comparing Lasso and Ridge
Example 6
R2 <- function(x, y) {
y.hat <- lm(y ~ x)$fitted.values
y.bar <- mean(y)
RSS <- sum((y - y.hat) ^ 2)
TSS <- sum((y - y.bar) ^ 2)
return(1 - RSS / TSS)
}
vif <- function(x) {
p <- ncol(x)
values <- array(dim = p)
for (j in 1:p)
values[j] <- 1 / (1 - R2(x[, -j], x[, j]))
return(values)
}
library(MASS)
x <- as.matrix(Boston)
vif(x)
## [1] 1.831537 2.352186 3.992503 1.095223 4.586920 2.260374 3.100843 4.396007
## [9] 7.808198 9.205542 1.993016 1.381463 3.581585 3.855684
Example 7
n <- 500
x <- array(dim = c(n, 6))
z <- array(dim = c(n, 2))
for (i in 1:2)
z[, i] <- rnorm(n)
y <- 3 * z[, 1] - 1.5 * z[, 2] + 2 * rnorm(n)
for (j in 1:3)
x[, j] <- z[, 1] + rnorm(n) / 5
for (j in 4:6)
x[, j] <- z[, 2] + rnorm(n) / 5
glm.fit <- glmnet(x, y)
plot(glm.fit)
legend("topleft", legend = c("X1", "X2", "X3", "X4", "X5", "X6"), col = 1:6, lwd = 2, cex = .8)
![](data:image/png;base64,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)
1.6 Elastic Net
linear.lasso <- function(X, y, lambda = 0, beta = rep(0, ncol(X)), alpha = 1) { #
X <- as.matrix(X)
n <- nrow(X)
p <- ncol(X)
X.bar <- array(dim = p)
for (j in 1:p) {
X.bar[j] <- mean(X[, j])
X[, j] <- X[, j] - X.bar[j]
}
y.bar <- mean(y)
y <- y - y.bar
scale <- array(dim = p)
for (j in 1:p) {
scale[j] <- sqrt(sum(X[, j] ^ 2) / n)
X[, j] <- X[, j] / scale[j]
}
eps <- 1
beta.old <- beta
while (eps > 0.001) {
for (j in 1:p) {
r <- y - as.matrix(X[, -j]) %*% beta[-j]
beta[j] <- soft.th(lambda * alpha, sum(r * X[, j]) / n) / ##
(sum(X[, j] * X[, j]) / n + lambda * (1 - alpha)) ##
}
eps <- max(abs(beta - beta.old))
beta.old <- beta
}
for (j in 1:p)
beta[j] <- beta[j] / scale[j]
beta.0 <- y.bar - sum(X.bar * beta)
return(list(beta = beta, beta.0 = beta.0))
}
1.7 Setting the lambda value
Example 9
library(glmnet)
df <- read.table("crime.txt")
X <- as.matrix(df[, 3:7])
y <- as.vector(df[, 1])
cv.fit <- cv.glmnet(X, y)
plot(cv.fit)
![](data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAABUAAAAPACAMAAADDuCPrAAAA6lBMVEUAAAAAADoAAGYAOjoAOmYAOpAAZrY6AAA6ADo6OgA6Ojo6OmY6OpA6ZmY6ZpA6ZrY6kJA6kLY6kNtmAABmAGZmOgBmOjpmOpBmZjpmZmZmZpBmZrZmkJBmkLZmkNtmtrZmtttmtv+QOgCQOjqQZjqQZmaQZpCQkDqQkGaQkJCQkLaQtraQttuQtv+Q2/+pqam2ZgC2Zjq2kDq2kGa2tpC2tra2ttu227a229u22/+2///bkDrbkGbbtmbbtpDbtrbb25Db27bb29vb2//b////AAD/tmb/tpD/25D/27b/29v//7b//9v///8D9xAYAAAACXBIWXMAAB2HAAAdhwGP5fFlAAAgAElEQVR4nO3dbWPb1p1gcSp1oomz4+zE62zVXXeSjDMPG08r11E2qSZO46RaOxa//9dZgk+iSMAkLgHc/wV/50Xjo0IUTEDHAC5wOZkCAJKY5F4BACgVAQWARAQUABIRUABIREABIBEBBYBEBBQAEhFQAEhEQAEgEQEFgEQEFAASEVAASERAASARAQWARAQUABIRUABIREABIBEBBYBEBBQAEhFQAEhEQAEgEQEFgEQEFAASEVAASERAASARAQWARAQUABIRUABIREABIBEBBYBEBBQAEhFQAEhEQAEgEQEFgEQEFAASEVAASERAASARAQWARAQUABIRUABIREABIBEBBYBEBBQAEhFQAEhEQAEgEQEFgEQEFAASEVAASERAASARAQWARAQUABIRUABIREABIBEBBYBEBBQAEhFQAEhEQAEgEQEFgEQEFAASEVAASERAASARAQWARAQUABIRUABIREABIBEBBYBEBBQAEhFQAEhEQAEgEQEFgEQEFAASEVAASERAASARAQWARAQUABIRUABIREABIBEBBYBEBBQAEhFQAEhEQAEgEQEFgEQEFAASEVAASERAASARAQWARAQUABIRUABIpPiA3n41WfOl5Ue3/JI3522WbrX8q89nq/K7p78e+tKFL3/78mG1/KMfelp+zrvHH/w10vL9UXxA3z1u9wtp+bKWv/uuNgE9fPl10M9OY/kfz1fv/qe9LL9aqVaB63v5Hik+oDd3v48H/cpYvqzlF1y2WrrF8tEOuPtefvPt/6iH5RcrNXv72wSu7+X7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)
lambda.min <- cv.fit$lambda.min
lambda.min
## [1] 15.15854
fit <- glmnet(X, y, lambda = lambda.min)
fit$beta
## 5 x 1 sparse Matrix of class "dgCMatrix"
## s0
## V3 10.053897
## V4 -3.071651
## V5 3.280323
## V6 .
## V7 .
Example 10
n <- 500
x <- array(dim = c(n, 6))
z <- array(dim = c(n, 2))
for (i in 1:2)
z[, i] <- rnorm(n)
y <- 3 * z[, 1] - 1.5 * z[, 2] + 2 * rnorm(n)
for (j in 1:3)
x[, j] <- z[, 1] + rnorm(n) / 5
for (j in 4:6)
x[, j] <- z[, 2] + rnorm(n) / 5
best.score <- Inf
for (alpha in seq(0, 1, 0.01)) {
res <- cv.glmnet(x, y, alpha = alpha)
lambda <- res$lambda.min
min.cvm <- min(res$cvm)
if (min.cvm < best.score) {
alpha.min <- alpha
lambda.min <- lambda
best.score <- min.cvm
}
}
alpha.min
## [1] 0.13
lambda.min
## [1] 0.1528932
glmnet(x, y, alpha = alpha.min, lambda = lambda.min)$beta
## 6 x 1 sparse Matrix of class "dgCMatrix"
## s0
## V1 1.1101385
## V2 0.8095265
## V3 0.9133333
## V4 -0.4002594
## V5 -0.3476525
## V6 -0.6198445
glm.fit <- glmnet(x, y, alpha = alpha.min)
plot(glm.fit)
![](data:image/png;base64,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)