आर में लासो के साथ बहुभिन्नरूपी रेखीय प्रतिगमन


9

मैं कई आश्रित चर (DV) (~ 450) की भविष्यवाणी करने के लिए एक कम मॉडल बनाने की कोशिश कर रहा हूं जो अत्यधिक सहसंबद्ध हैं।

मेरे स्वतंत्र चर (IV) भी कई हैं (~ 2000) और अत्यधिक सहसंबद्ध।

यदि मैं व्यक्तिगत रूप से प्रत्येक आउटपुट के लिए कम किए गए मॉडल का चयन करने के लिए लासो का उपयोग करता हूं, तो मुझे स्वतंत्र चर के समान उपसमूह प्राप्त करने की गारंटी नहीं है क्योंकि मैं प्रत्येक आश्रित चर पर लूप करता हूं।

क्या एक बहुभिन्नरूपी रेखीय प्रतिगमन है जो R में lasso का उपयोग करता है?

यह समूह लासो नहीं है। समूह lasso समूह IV। मैं बहुभिन्नरूपी रैखिक प्रतिगमन चाहता हूं (जिसका अर्थ है कि DV एक मैट्रिक्स है, स्केलरों का वेक्टर नहीं है), वह भी नासो को लागू करता है। (ध्यान दें: जैसा कि एनआरएच बताता है, यह सच नहीं है। समूह लास्सो एक सामान्य शब्द है जिसमें रणनीतियाँ शामिल हैं जो समूह IV हैं, लेकिन ऐसी रणनीतियाँ भी शामिल हैं जो अन्य मापदंडों जैसे DV।

मुझे यह कागज मिला जो स्पार्स ओवरलैपिंग सेट लस्सो नामक चीज में मिलता है

यहाँ कुछ कोड है जो लीनियर रिग्रेशन को मल्टीवेरिएट करता है

> dim(target)
[1] 6060  441
> dim(dictionary)
[1] 6060 2030
> fit = lm(target~dictionary)

यहाँ कुछ कोड है जो एक ही DV पर लासो करता है

> fit = glmnet(dictionary, target[,1])

और यही मैं करना चाहूंगा:

> fit = glmnet(dictionary, target)
Error in weighted.mean.default(y, weights) : 
  'x' and 'w' must have the same length

उन विशेषताओं का चयन करना जो एक ही बार में सभी लक्ष्यों को फिट करते हैं


यह स्पष्ट नहीं है कि आप क्या पूछ रहे हैं, अंतिम बिंदु को छोड़कर। पैकेज कहा जाता है glmnetऔर यह एक पूरी तरह से विगनेट है।
जेनेरिक_युसर

"हर बार" से आपका क्या मतलब है? क्या आप इसे अपने डेटा के सबसेट पर चला रहे हैं? परिणाम का सत्यापन करना? विभिन्न नमूने?
छायाकार 15

हर बार, मेरा मतलब है कि मैं वर्तमान में एक समय में एक ही आश्रित चर पर glmnet चला रहा हूँ, और उन सभी के माध्यम से पाशन कर रहा हूँ
15

या दूसरे शब्दों में, मेरी वाई हमेशा एक वेक्टर है, मैट्रिक्स नहीं
किमी 10

1
@ फारबग बिल्कुल। मुझे नहीं पता था कि यह शब्द अधिक सामान्य था। इसके बारे में क्षमा करें
kmace

जवाबों:


11

बहुभिन्नरूपी प्रतिक्रियाओं के लिए (आश्रित चर की संख्या 1 से अधिक), आपको family = "mgaussian"कॉल करने की आवश्यकता है glmnet

Lsgl पैकेज के लिए एक विकल्प है, जो एक और अधिक लचीला दंड प्रदान करता है।

एक -आयामी प्रतिक्रिया के साथ, ग्लमैनेट पैकेज पेनल्टी _ को लागू करता है जहाँ , वें भविष्यवक्ता के लिए गुणांक का वेक्टर है । आपके लिए मदद पृष्ठ में पढ़ सकते हैं:k

j=1pβj2

βj=(βj1,,βjk)Tjglmnet

पूर्व [ family = "mgaussian"] प्रत्येक चर के लिए गुणांक पर "समूह-तालु" दंड का उपयोग करते हुए, एक बहु-प्रतिक्रिया वाले गौसियन मॉडल को फिट होने की अनुमति देता है। इस तरह से प्रतिक्रियाओं को एक साथ बांधने को कुछ डोमेन में "बहु-कार्य" सीखने कहा जाता है।

यह जुर्माना एक समूह लास्सो दंड का एक उदाहरण है, जो एक ही भविष्यवक्ता से जुड़ी विभिन्न प्रतिक्रियाओं के लिए मापदंडों को समूहित करता है। यह ट्यूनिंग पैरामीटर के दिए गए मूल्य के लिए सभी प्रतिक्रियाओं में समान भविष्यवक्ताओं के चयन के परिणामस्वरूप होता है।

Lsgl पैकेज लागू होता है, फॉर्म समूह lasso के जुर्माने को जहां और हैं, जो विभिन्न शब्दों से योगदान को संतुलित करने के लिए चुने गए कुछ वजन हैं। डिफ़ॉल्ट और । पैरामीटर एक ट्यूनिंग पैरामीटर है। साथ (और ) दंड द्वारा प्रयोग किया जाता दंड के बराबर है के साथ । साथ (और

αj=1pl=1kξjl|βjl|+(1α)j=1pγjβj2

ξjlγjξjl=1γj=kα[0,1]α=0γj=1glmnetfamily = "mgaussian"α=1ξjl=1) जुर्माना साधारण लास्सो देता है। Lsgl कार्यान्वयन भविष्यवाणियों के एक अतिरिक्त समूह के लिए भी अनुमति देता है।

समूह लासो के बारे में एक नोट। समूह लस्सो शब्द अक्सर भविष्यवक्ताओं के समूह के साथ जुड़ा होता है। हालाँकि, अधिक सामान्य दृष्टिकोण से, समूह लास्सो केवल दंड में मापदंडों का एक समूह है। glmnetसाथ समूहीकरण का उपयोग family = "mgaussian"प्रतिक्रियाओं के पार मापदंडों का एक समूह है। इस तरह के एक समूह का प्रभाव प्रतिक्रियाओं के पार मापदंडों के आकलन को युगल करना है, जो एक अच्छा विचार है, अगर सभी प्रतिक्रियाओं का अनुमान लगभग एक ही अनुमानकर्ताओं के एक ही सेट से लगाया जा सकता है। कई सीखने की समस्याओं को युग्मित करने का सामान्य विचार, जो कुछ संरचना को साझा करने की उम्मीद करते हैं, बहु-कार्य सीखने के रूप में जाना जाता है ।

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