Sırt, kement ve elastik ağ ile seçilen modelleri karşılaştırmak istiyorum. Aşağıdaki Şekil 3 yöntemi de kullanarak katsayı yollarını göstermektedir: sırt (Şekil A, alfa = 0), kement (Şekil B; alfa = 1) ve elastik ağ (Şekil C; alfa = 0.5). En uygun çözüm, çapraz doğrulamaya dayalı olarak seçilen seçilen lambda değerine bağlıdır.
Bu çizimlere baktığımda, elastik ağın (Şekil C) bir gruplandırma etkisi sergilemesini beklerdim. Ancak, sunulan davada açık değildir. Kement ve elastik ağ için katsayılar yolu çok benzerdir. Bunun nedeni ne olabilir? Bu sadece bir kodlama hatası mı? R aşağıdaki kodu kullandım:
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)
Elastik net katsayı yollarını çizmek için kullanılan kod, sırt ve kement için tam olarak aynıdır. Tek fark alfa değeridir. Elastik net regresyon için alfa parametresi, karşılık gelen lambda değerleri için en düşük MSE'ye (ortalama kare hatası) dayanılarak seçildi.
Yardımın için teşekkürler !