Katsayılar yolu - sırt, kement ve elastik ağ regresyonunun karşılaştırılması


13

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.

Sırt (A, alfa = 0), kement (B, alfa = 1) ve elastik net (C, alfa = 0.5) regresyon katsayıları profilleri.  Grafiğin üstündeki sayılar, modellerin boyutunu temsil eder. Optimal çözüm, seçilen lambda değerine bağlıdır.  Lambda seçimi çapraz doğrulamaya dayanı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 !

Yanıtlar:


5

Gelen vaka ( katsayılarının sayısı, katsayılarının sayısına göre sen parsellerde göstermek numuneler, ben burada durum olduğunu tahmin sayısı), Kement modeli ile tek gerçek "sorun" olduğu zaman çoklu özellikler birbiriyle ilişkilidir, o zaman rastgele birini seçer.p<npn

Orijinal özellikler çok ilişkili değilse, Lasso'nun katsayılar yolu açısından Elastik Ağ'a benzer bir performans göstermesinin makul olduğunu söyleyebilirim. Glmnet paketinin belgelerine baktığımda, kodunuzda herhangi bir hata göremiyorum.


Yorumunuz için çok teşekkür ederim. En iyi modeli seçmek için regülasyon yaklaşımını düşünmeye başladım, çünkü değişkenlerim arasında ciddi bir çoklu doğrusallık gözlemledim (VIF >> 10). Birçoğu> 0.8 düzeyinde korelasyon gösterdi, bu nedenle elastik ağın kemente farklı performans göstermesini ve bir gruplama etkisi göstermesini bekliyordum (korelasyonlu değişkenler durumunda).
acemi

Daha güçlü bir sırt cezası mı kullanmanız gerekebilir?
dcl

df ayarlı çoklu doğrusallığı kontrol ettiniz mi? faktör değişkenleri normalde çoklu bağlantılıdır, çünkü bunlar birbirini dışlar. Bu tür çoklu bağlantıların kementle ilgili sorunlara neden olup olmadığını bilmiyorum.
Bakaburg
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.