계수 경로 – 융기, 올가미 및 탄성 그물 회귀 비교


13

능선, 올가미 및 탄성 그물로 선택한 모델을 비교하고 싶습니다. 아래 그림은 릿지 (그림 A, 알파 = 0), 올가미 (그림 B; 알파 = 1) 및 탄성 그물 (그림 C; 알파 = 0.5)의 세 가지 방법을 모두 사용하여 계수 경로를 보여줍니다. 최적의 솔루션은 선택된 람다 값에 따라 달라지며, 이는 교차 검증을 기반으로 선택됩니다.

능선 (A, alpha = 0), 올가미 (B, alpha = 1) 및 탄성 그물 (C, alpha = 0.5) 회귀에 대한 계수 프로파일.  플롯 상단의 숫자는 모델의 크기를 나타냅니다. 최적의 솔루션은 선택한 람다 값에 따라 다릅니다.  람다 선택은 교차 검증을 기반으로합니다.

이 그림을 볼 때 탄성 그물 (그림 C)이 그룹화 효과를 나타낼 것으로 예상됩니다. 그러나 제시된 경우에는 명확하지 않습니다. 올가미와 탄성 그물의 계수 경로는 매우 유사합니다. 이것에 대한 이유는 무엇입니까? 그것은 단지 코딩 실수입니까? R에서 다음 코드를 사용했습니다.

library(glmnet)
X<- as.matrix(mydata[,2:22])
Y<- mydata[,23]
par(mfrow=c(1,3))
ans1<-cv.glmnet(X, Y, alpha=0) # ridge
plot(ans1$glmnet.fit, "lambda", label=FALSE)
text (6, 0.4, "A", cex=1.8, font=1)
ans2<-cv.glmnet(X, Y, alpha=1) # lasso
plot(ans2$glmnet.fit, "lambda", label=FALSE)
text (-0.8, 0.48, "B", cex=1.8, font=1)
ans3<-cv.glmnet(X, Y, alpha=0.5) # elastic net 
plot(ans3$glmnet.fit, "lambda", label=FALSE)
text (0, 0.62, "C", cex=1.8, font=1)

탄성 순 계수 경로를 그리는 데 사용되는 코드는 릿지 및 올가미와 동일합니다. 유일한 차이점은 알파의 가치입니다. 탄성 순 회귀에 대한 알파 파라미터는 대응하는 람다 값에 대한 가장 낮은 MSE (평균 제곱 오차)에 기초하여 선택되었다.

도와 주셔서 감사합니다!

답변:


5

p<npn

원래 기능이 서로 밀접하게 관련되어 있지 않은 경우 Lasso가 계수 경로 측면에서 Elastic Net과 유사한 성능을 제공하는 것이 합리적이라고 말합니다. glmnet 패키지 의 설명서를 보면 코드에 오류가 표시되지 않습니다.


귀하의 의견에 감사드립니다. 변수 사이에 심한 다중 공선 성이 관찰 되었기 때문에 최상의 모델을 선택하기위한 정규화 방법에 대해 생각하기 시작했습니다 (VIF >> 10). 이들 중 다수는> 0.8 수준에서 상관 관계가 있었기 때문에 탄성 그물이 올가미와 다르게 수행되고 그룹화 효과 (상관 변수가있는 경우)를 나타낼 것으로 기대했습니다.
초보자

더 강한 능선 페널티를 사용해야 할 수도 있습니까?
dcl

df 조정 된 다중 공선 성을 확인 했습니까? 요인 변수는 상호 배타적이므로 일반적으로 다중 공선 성을 갖습니다. 이런 종류의 다중 공선 성이 올가미에 문제를 일으키는 지 모르겠습니다.
Bakaburg
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.