क्या LASSO उसी समस्याओं से पीड़ित है जो चरणबद्ध प्रतिगमन करती है?


18

स्टेपवाइज एल्गोरिदमिक वैरिएबल-सलेक्शन मेथड्स उन मॉडल्स के लिए सेलेक्ट होते हैं जो रिग्रेशन मॉडल्स में हर अनुमान को कम या ज्यादा आंकते हैं ( s और उनके SE, p -values, F आँकड़े इत्यादि), और सच्चे भविष्यवाणियों को बाहर करने की संभावना है एक उचित रूप से परिपक्व सिमुलेशन साहित्य के अनुसार झूठे भविष्यवक्ताओं को शामिल करें।β

जब चर का चयन करने के लिए उपयोग किया जाता है तो क्या LASSO उसी विशिष्ट तरीके से पीड़ित होता है?


3
मुझे लगता है कि यह करता है। फ्रैंक हैरेल ने उस पर कुछ पोस्ट की है, मुझे लगता है, और उनकी पुस्तक "प्रतिगमन मॉडलिंग रणनीतियों" में प्रासंगिक सामग्री हो सकती है।
रिचर्ड हार्डी

2
@RichardHardy +1 मुझे खुशी होगी अगर फ्रेंकहर्ल द्वारा झूले और टिप्पणी या उत्तर दिया जाएगा। :)
एलेक्सिस

5
मेरी एक नई बात है जो इसे संबोधित करती है। नीचे पंक्ति: लसो में "सही" चर का चयन करने की कम संभावना है। स्लाइड्स में है fharrell.com/talk/stratos19
फ्रैंक

4
"निचला रेखा से संबंधित: लस्सो में" सही "चर" का चयन करने की कम संभावना है: स्पार्सिटी ( web.stanford.edu/~hastie/StatLearnsarsity_files/… ) के साथ सांख्यिकीय सीखने में एक ही विषय पर एक खंड है ,11.4.1 Variable-Selection Consistency for the Lasso
एड्रियन

2
"बॉटम लाइन: लैस्सो 'से संबंधित' सही 'वेरिएबल्स" के चयन की कम संभावना है: स्टेटवेब.स्टेनफोर्ड.ड्यू /~candes/stats300c/Lectures/Lecture24.pire केस स्टडीज़ 1 और 2
एड्रियन

जवाबों:


3

एलएएसओओ मॉडल, और स्टेपवाइज रिग्रेशन के लिए संभावना, पी-वैल्यू वगैरह के लगातार अभिव्यक्तियों की संभावना व्याख्या सही नहीं है।

वे अभिव्यक्तियाँ संभाव्यता को कम करती हैं। उदाहरण के लिए, कुछ पैरामीटर के लिए 95% विश्वास अंतराल के बारे में कहा जाता है कि आपके पास 95% संभावना है कि विधि उस अंतराल के अंदर सच्चे मॉडल चर के साथ अंतराल में परिणाम देगी।

हालांकि, फिट किए गए मॉडल एक विशिष्ट एकल परिकल्पना के परिणामस्वरूप नहीं होते हैं, और इसके बजाय हम चेरी पिकिंग (कई संभावित वैकल्पिक मॉडल से बाहर का चयन करते हैं) जब हम स्टेपवाइज़ रिग्रेशन या LASSO प्रतिगमन करते हैं।


  1. यह मॉडल मापदंडों की शुद्धता का मूल्यांकन करने के लिए बहुत कम समझ में आता है (विशेषकर जब यह संभावना है कि मॉडल सही नहीं है)।

    नीचे दिए गए उदाहरण में, बाद में समझाया गया है, मॉडल को कई रजिस्टरों के लिए फिट किया गया है और यह बहुस्तरीयता से ग्रस्त है। इससे यह संभव हो जाता है कि मॉडल में पड़ोसी रेजिस्टर (जो दृढ़ता से सहसंबद्ध है) का चयन उस मॉडल के बजाय किया जाता है जो वास्तव में मॉडल में है। मजबूत सहसंबंध गुणांक का कारण बड़ी त्रुटि / विचरण (मैट्रिक्स से संबंधित ) होता है।(एक्सटीएक्स)-1

    हालांकि, multicollionearity की वजह से इस उच्च विचरण नहीं पी मूल्यों या गुणांकों के मानक त्रुटि की तरह निदान में 'देखा', क्योंकि इन एक छोटे डिजाइन मैट्रिक्स पर आधारित हैं के साथ कम regressors। (और LASSO के लिए उन प्रकार के आंकड़ों की गणना करने के लिए कोई सरल विधि नहीं है )एक्स

    उदाहरण: नीचे दिया गया ग्राफ़, जो कुछ सिग्नल के लिए एक खिलौना-मॉडल के परिणामों को प्रदर्शित करता है जो कि 10 गाऊसी वक्रों का एक रेखीय योग है (उदाहरण के लिए यह रसायन विज्ञान में एक विश्लेषण से मिलता-जुलता है जहां एक स्पेक्ट्रम के लिए संकेत को रेखीय योग माना जाता है। कई घटक)। 10 वक्रों का संकेत LASSO का उपयोग करके 100 घटकों (अलग-अलग माध्य से गाऊसी घटता) के मॉडल के साथ लगाया जाता है। संकेत अच्छी तरह से अनुमान लगाया गया है (लाल और काले रंग की वक्र की तुलना करें जो काफी करीब हैं)। लेकिन, वास्तविक अंतर्निहित गुणांक अच्छी तरह से अनुमानित नहीं हैं और पूरी तरह से गलत हो सकते हैं (डॉट्स के साथ लाल और काली पट्टियों की तुलना करें जो समान नहीं हैं)। अंतिम 10 गुणांक भी देखें:

                  91     91     92     93     94     95     96     97     98     99     100
     true model   0      0      0      0      0      0      0      142.8  0      0      0
     fitted       0      0      0      0      0      0      129.7  6.9    0      0      0
    

    LASSO मॉडल ऐसे गुणांक का चयन करता है जो बहुत अनुमानित होते हैं, लेकिन गुणांक के परिप्रेक्ष्य से स्वयं का अर्थ है एक बड़ी त्रुटि जब एक गुणांक जो गैर-शून्य होना चाहिए शून्य होने का अनुमान लगाया गया है और एक पड़ोसी गुणांक शून्य होने का अनुमान है गैर शून्य। गुणांक के लिए कोई भी आत्मविश्वास अंतराल बहुत कम समझ में आता है।

    LASSO फिटिंग

    उदाहरण lasso / glmnet

    स्टेप वाइज फिटिंग

    एक तुलना के रूप में, एक ही वक्र को एक स्टेपवाइज एल्गोरिथ्म के साथ फिट किया जा सकता है जो नीचे की छवि के लिए अग्रणी है। (समान समस्याओं के साथ जो गुणांक के करीब हैं लेकिन मेल नहीं खाते)

    उदाहरण nnls

  2. यहां तक ​​कि जब आप वक्र की सटीकता पर विचार करते हैं (मापदंडों के बजाय, जो पिछले बिंदु में स्पष्ट किया जाता है कि इसका कोई मतलब नहीं है) तो आपको ओवरफिटिंग से निपटना होगा। जब आप LASSO के साथ एक फिटिंग प्रक्रिया करते हैं तो आप प्रशिक्षण डेटा (विभिन्न मापदंडों के साथ मॉडल फिट करने के लिए) और परीक्षण / सत्यापन डेटा (जो सबसे अच्छा पैरामीटर है) को खोजने के लिए उपयोग करते हैं, लेकिन आपको एक तीसरे अलग सेट का उपयोग भी करना चाहिए डेटा के प्रदर्शन का पता लगाने के लिए परीक्षण / सत्यापन डेटा।

    एक पी-मूल्य या कुछ सीम्यूलर काम करने वाला नहीं है क्योंकि आप एक ट्यून किए गए मॉडल पर काम कर रहे हैं जो चेरी पिकिंग और नियमित रैखिक फिटिंग विधि से अलग (बहुत बड़ी डिग्री) है।


एक ही समस्याओं से पीड़ित stepwise प्रतिगमन करता है?

आप , पी-मान, एफ-स्कोर या मानक त्रुटियों जैसे मानों में पूर्वाग्रह जैसी समस्याओं का उल्लेख करते हैं। मेरा मानना ​​है कि उन समस्याओं को हल करने के लिए LASSO का उपयोग नहीं किया जाता है।आर2

मैंने सोचा था कि स्टेप वाइज रिग्रेशन के स्थान पर LASSO का उपयोग करने का मुख्य कारण यह है कि LASSO एक कम लालची पैरामीटर चयन की अनुमति देता है, जो कि बहुरंगीता से कम प्रभावित होता है। (LASSO और स्टेप वाइज के बीच अधिक अंतर: मॉडल के क्रॉस सत्यापन भविष्यवाणी त्रुटि के मामले में आगे चयन / पिछड़े उन्मूलन पर LASSO की श्रेष्ठता )


उदाहरण छवि के लिए कोड

# settings
library(glmnet)
n <- 10^2        # number of regressors/vectors
m <- 2         # multiplier for number of datapoints
nel <- 10        # number of elements in the model
set.seed(1)   
sig <- 4
t <- seq(0,n,length.out=m*n)

# vectors
X <- sapply(1:n, FUN <- function(x) dnorm(t,x,sig))

# some random function with nel elements, with Poisson noise added
par <- sample(1:n,nel)
coef <- rep(0,n)
coef[par] <- rnorm(nel,10,5)^2
Y <- rpois(n*m,X %*% coef)

# LASSO cross validation
fit <- cv.glmnet(X,Y, lower.limits=0, intercept=FALSE, 
                 alpha=1, nfolds=5, lambda=exp(seq(-4,4,0.1)))
plot(fit$lambda, fit$cvm,log="xy")
plot(fit)
Yfit <- (X %*% coef(fit)[-1])

# non negative least squares 
# (uses a stepwise algorithm or should be equivalent to stepwise)
fit2<-nnls(X,Y)


# plotting
par(mgp=c(0.3,0.0,0), mar=c(2,4.1,0.2,2.1))
layout(matrix(1:2,2),heights=c(1,0.55))


plot(t,Y,pch=21,col=rgb(0,0,0,0.3),bg=rgb(0,0,0,0.3),cex=0.7,
     xaxt = "n", yaxt = "n", 
     ylab="", xlab = "",bty="n")      
#lines(t,Yfit,col=2,lwd=2)                        # fitted mean
lines(t,X %*% coef,lwd=2)                        # true mean
lines(t,X %*% coef(fit2), col=3,lwd=2)           # 2nd fit

  # add coefficients in the plot
for (i in 1:n) {
  if (coef[i] > 0) {
    lines(c(i,i),c(0,coef[i])*dnorm(0,0,sig))
    points(i,coef[i]*dnorm(0,0,sig), pch=21, col=1,bg="white",cex=1)
  }
  if (coef(fit)[i+1] > 0) {
#    lines(c(i,i),c(0,coef(fit)[i+1])*dnorm(0,0,sig),col=2)
#    points(i,coef(fit)[i+1]*dnorm(0,0,sig), pch=21, col=2,bg="white",cex=1)
  }
  if (coef(fit2)[i+1] > 0) {
    lines(c(i,i),c(0,coef(fit2)[i+1])*dnorm(0,0,sig),col=3)
    points(i,coef(fit2)[i+1]*dnorm(0,0,sig), pch=21, col=3,bg="white",cex=1)
  }

}

#Arrows(85,23,85-6,23+10,-0.2,col=1,cex=0.5,arr.length=0.1)
#Arrows(86.5,33,86.5-6,33+10,-0.2,col=2,cex=0.5,arr.length=0.1)
#text(85-6,23+10,"true coefficient", pos=2, cex=0.7,col=1)
#text(86.5-6,33+10, "fitted coefficient", pos=2, cex=0.7,col=2)

text(0,50, "signal versus position\n true mean (black), fitted with nnls (green)", cex=1,col=1,pos=4, font=2)



plot(-100,-100,pch=21,col=1,bg="white",cex=0.7,type="l",lwd=2,
     xaxt = "n", yaxt = "n", 
     ylab="", xlab = "",
     ylim=c(0,max(coef(fit)))*dnorm(0,0,sig),xlim=c(0,n),bty="n") 
#lines(t,X %*% coef,lwd=2,col=2)      

for (i in 1:n) {
  if (coef[i] > 0) {
    lines(t,X[,i]*coef[i],lty=1)
  }
  if (coef(fit)[i+1] > 0) {
#    lines(t,X[,i]*coef(fit)[i+1],col=2,lty=1)
  }
  if (coef(fit2)[i+1] > 0) {
    lines(t,X[,i]*coef(fit2)[i+1],col=3,lty=1)
  }

}

text(0,33, "illustration of seperate components/curves", cex=1,col=1,pos=4, font=2)

+1 धन्यवाद मार्टिना वेर्टिंग्स। क्या आप ग्राफ को थोड़ा बढ़ा सकते हैं? कुल्हाड़ियों पर क्या दिखाया गया है, किस रंग का प्रतिनिधित्व करता है, आदि?
एलेक्सिस

दरअसल, ग्राफ LASSO का मामला नहीं है। हालांकि, यह एक उदाहरण है कि कैसे एक मॉडल कई घटकों के कुछ योग हो सकता है, एक गाऊसी घटता (जहां थोड़ा अलग अर्थ वाले वक्र बहुत सहसंबद्ध होते हैं) और उन घटकों के अर्थ में बदलाव को गुणांक के लिए एक बड़ा बदलाव कहते हैं। लेकिन वक्र के लिए इतना नहीं।
सेक्स्टस एम्पिरिकस

1
बार सच्चे और फिट मॉडल के लिए गुणांक के मूल्य हैं। यह वह छवि है जिसके लिए मुझे यह सिद्धांत याद है। मैं खुद एक उदाहरण बनाऊंगा, जो इसे और अधिक स्पष्ट रूप से दिखा सकता है (मुझे संदेह है कि LASSO, कम लालची होने के कारण, सच्चे गुणांक का प्रतिनिधित्व करने में कुछ बेहतर प्रदर्शन कर सकता है)।
सेक्सटस एम्पिरिकस

0

मेरी एक नई बात है जो इसे संबोधित करती है। नीचे पंक्ति: लसो में "सही" चर का चयन करने की कम संभावना है। स्लाइड्स http://fharrell.com/talk/stratos19 पर हैं

- फ्रैंक हरेल

"निचला रेखा से संबंधित: लस्सो में" सही "चर" का चयन करने की कम संभावना है: स्पार्सिटी ( https://web.stanford.edu/~hastie/StatstearnSparsity_files/SLS_corrected_1) के साथ सांख्यिकीय सीखने में समान विषय पर एक खंड है । 4.16.pdf ), 11.4.1 Variable-Selection Consistency for the Lasso

- एड्रियन

इसके अलावा "नीचे की रेखा: लसो में 'सही' चर का चयन करने की कम संभावना है": https://statweb.stanford.edu/~candes/teaching/stats300c/Lectures-Lecture24.pdf केस स्टडी 1 और 2 देखें

- एड्रियन


1
मैंने इन टिप्पणियों को एक समुदाय विकि उत्तर के रूप में कॉपी किया है क्योंकि वे इस प्रश्न के उत्तर कम या ज्यादा हैं। हमारे पास उत्तर और सवालों के बीच एक नाटकीय अंतर है। समस्या का कम से कम हिस्सा यह है कि कुछ प्रश्नों का उत्तर टिप्पणियों में दिया जाता है: यदि टिप्पणियों ने जो प्रश्न का उत्तर दिया था, उसके बजाय उत्तर थे, हमारे पास कम अनुत्तरित प्रश्न होंगे।
mkt - मोनिका

1
ये टिप्पणियां हैं और कुल मिलाकर भी, सीवी के मानकों (जैसे, लिंक जवाब नहीं हैं) द्वारा एक उत्तर प्रदान करते हैं। इसके अलावा: मैं एक समुदाय विकी में पूरी तरह से वैध सवाल बनाने के कारण असहमत हूं क्योंकि आपके अपने असंतोष की दर जिस पर सवाल जवाब किए जाते हैं।
एलेक्सिस

1
भी: मुझे समुदाय विकि के बारे में शिक्षित किया गया है , और समुदाय विकि उत्तर दिए गए हैं, और मैं अपनी असहमति को वापस लेता हूँ (हालाँकि मुझे अभी भी नहीं लगता कि यह उत्तर है :)।
एलेक्सिस

1
@ एलेक्सिस फेयर काफी - मुझे लगा कि यह खुद एक ग्रे एरिया है लेकिन हो सकता है कि यह गलत हो।
mkt - मोनिका

1
हम सब सीख रहे हैं। :)
एलेक्सिस
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.