Алгоритм Ларса с лассо модификацией - PullRequest
0 голосов
/ 28 апреля 2018

Я пытаюсь реализовать алгоритм Ларса с модификацией Лассо.

enter image description here

В пункте 3. Я застрял, я хочу запрограммировать это, но я не очень понимаю это.

Пункт 1 и 2 я уже сделал, вот код:

#1. Standardize the predictors to have mean zero and unit norm.
set.seed(19875)  
n <- 10  
p <- 5  
real_p <- 5  
x <- matrix(rnorm(n*p), nrow=n, ncol=p)
x <- x-matrix(apply(x,2,mean),ncol=ncol(x),nrow=nrow(x),byrow=T)
x <- x/matrix(apply(x,2,sd),ncol=ncol(x),nrow=nrow(x),byrow=T)
y <- apply(x[,1:real_p], 1, sum) + rnorm(n)

#Start with the residual r = y − y ¯, β1,β2,... ,βp = 0
r=y-mean(y)
beta=matrix(0, ncol=ncol(x), nrow=1)
#2. Find the predictor xj most correlated with r.
co= t(x)%*%r
j= (1:ncol(x))[abs(co)==max(abs(co))][1]

#3. Move βj from 0 towards its least-squares coefficient xj,ri, until some
#other competitor xk has as much correlation with the current residual
#as does xj.

Я был бы очень признателен за любые разъяснения.

...