व्याख्या LASSO चर ट्रेस भूखंडों


15

मैं glmnetपैकेज के लिए नया हूं , और मैं अभी भी अनिश्चित हूं कि परिणामों की व्याख्या कैसे करें। क्या कोई मुझे निम्नलिखित ट्रेस प्लॉट पढ़ने में मदद कर सकता है?

निम्नलिखित को चलाकर ग्राफ प्राप्त कर रहा था:

library(glmnet)
return <- matrix(ret.ff.zoo[which(index(ret.ff.zoo)==beta.df$date[2]), ])
data   <- matrix(unlist(beta.df[which(beta.df$date==beta.df$date[2]), ][ ,-1]), 
                 ncol=num.factors)
model  <- cv.glmnet(data, return, standardize=TRUE)

op <- par(mfrow=c(1, 2))
plot(model$glmnet.fit, "norm",   label=TRUE)
plot(model$glmnet.fit, "lambda", label=TRUE)
par(op)

यहाँ छवि विवरण दर्ज करें

जवाबों:


20

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

βएलरोंरों=argmin [आरएसएस(β)+λ*एल 1-नॉर्म(β)]

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

जैसा कि मैंने ऊपर कहा, L1 मानदंड LASSO के लिए नियमितीकरण शब्द है। शायद इसे देखने का एक बेहतर तरीका यह है कि एक्स-एक्सिस अधिकतम स्वीकार्य मूल्य है जो एल 1 मान ले सकता है । इसलिए जब आपके पास एक छोटा एल 1 मानदंड होता है, तो आपके पास बहुत नियमितीकरण होता है। इसलिए, शून्य का एक L1 मानदंड एक खाली मॉडल देता है, और जैसे ही आप L1 मानदंड बढ़ाते हैं, वैरिएबल मॉडल "दर्ज" करेंगे क्योंकि उनके गुणांक गैर-शून्य मान लेते हैं।

बाईं ओर का भूखंड और दाईं ओर का भूखंड मूल रूप से आपको एक ही चीज दिखा रहा है, बस अलग-अलग पैमानों पर।


2
बहुत साफ जवाब, धन्यवाद! क्या "सबसे अच्छा भविष्यवक्ता" ऊपर के ग्राफ़ से, अर्थात् एक अंतिम मॉडल को निकालना संभव है?
मेउ

4
नहीं, आपको उसके लिए क्रॉस-मान्यता या कुछ अन्य सत्यापन प्रक्रिया की आवश्यकता होगी; यह आपको बताएगा कि L1 मानदंड (या समकक्ष, जो लॉग (लैम्ब्डा)) का कौन सा मूल्य मॉडल का सबसे अच्छा अनुमान लगाता है।
JAW

11
यदि आप अपने सबसे मजबूत भविष्यवाणियों को निर्धारित करने का प्रयास कर रहे हैं, तो आप कथानक को इस बात के प्रमाण के रूप में व्याख्यायित कर सकते हैं कि मॉडल में जल्दी प्रवेश करने वाले चर सबसे अधिक पूर्वानुमान हैं और बाद में मॉडल में प्रवेश करने वाले चर कम महत्वपूर्ण नहीं हैं। यदि आप "सर्वश्रेष्ठ मॉडल" चाहते हैं, तो आम तौर पर यह क्रॉस सत्यापन के माध्यम से पाया जाता है। Glmnet पैकेज का उपयोग करके इसे प्राप्त करने के लिए एक सामान्य विधि आपको यहां सुझाई गई थी: आंकड़े . stackexchange.com/a/68350/8451 । मैं दृढ़ता से आपको ईएसएलआईआई (3.4.2 और 3.4.3) में लघु लैस्सो अध्याय पढ़ने की सलाह देता हूं, जो डाउनलोड करने के लिए स्वतंत्र है: www-stat.stanford.edu/~tibs/ElemStatLearn
डेविड मार्क्स

@ डेविड मार्क्स, प्लॉट के शीर्ष पर कौन सी संख्याएँ हैं? कैसे क्रॉस सत्यापन के माध्यम से सबसे अच्छा मॉडल चुनने के लिए।
जीजा

@DavidMarx कुछ समय के लिए था, लेकिन किसी और के लिए यह सोचकर, यह उस वजन पर गुणांक की संख्या है जो शून्य मान नहीं है।
इयान बेल्चर
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.