चर चयन करते समय बहुसंस्कृति से कैसे निपटें?


28

मेरे पास 9 निरंतर स्वतंत्र चर के साथ एक डेटासेट है। मैं एक मॉडल को एक प्रतिशत (निर्भर) चर में फिट करने के लिए इन चरों के बीच चयन करने की कोशिश कर रहा हूं Score। दुर्भाग्य से, मुझे पता है कि कई चरों के बीच गंभीर समरूपता होगी।

मैंने stepAIC()चर चयन के लिए R में फ़ंक्शन का उपयोग करने की कोशिश की है , लेकिन यह विधि, अजीब तरह से, उस क्रम के लिए संवेदनशील लगती है जिसमें चर समीकरण में सूचीबद्ध होते हैं ...

यहां मेरा R कोड है (क्योंकि यह प्रतिशत डेटा है, मैं स्कोर के लिए एक परिवर्तन का उपयोग करता हूं):

library(MASS)
library(car)

data.tst = read.table("data.txt",header=T)
data.lm = lm(logit(Score) ~ Var1 + Var2 + Var3 + Var4 + Var5 + Var6 + Var7 +
             Var8 + Var9, data = data.tst)

step = stepAIC(data.lm, direction="both")
summary(step)

किसी कारण से, मैंने पाया कि समीकरण की शुरुआत में सूचीबद्ध चर stepAIC()समारोह द्वारा चुने जा रहे हैं , और परिणाम को सूचीबद्ध करके, जैसे, Var9पहले (टिल्ड के बाद) में हेरफेर किया जा सकता है ।

यहां एक मॉडल को फिट करने का एक अधिक प्रभावी (और कम विवादास्पद) तरीका क्या है? मैं रेखीय प्रतिगमन का उपयोग करने पर वास्तव में मृत नहीं हूं: केवल एक चीज जो मैं चाहता हूं वह यह समझने में सक्षम है कि 9 चर में से कौन सा वास्तव में Scoreचर में बदलाव ला रहा है। अधिमानतः, यह कुछ विधि होगी जो इन 9 चर को ध्यान में रखते हुए संपार्श्विकता की प्रबल संभावना बनाती है।


6
संपार्श्विकता का अर्थ होता है, हालांकि आप विश्लेषण करते हैं, कि यह निर्धारित करना अनिवार्य रूप से असंभव है कि क्या एक चर किसी चर से कम या ज्यादा भिन्नता के साथ any ड्राइविंग ’कर रहा है, जिसके साथ यह अत्यधिक मेल खाता है। इस सीमा को ध्यान में रखते हुए, आप कम संख्या में ऐसे चरों के चयन के साधन के रूप में लास्सो को आजमा सकते हैं, जो पहले से अनुमान लगाते हैं, फिर उन चरों के सेट की रिपोर्टिंग करते हैं जिनका चयन किया जाता है और जिनके साथ वह सेट बहुत अधिक मेल खाता है। समूहीकृत लसो एक और विकल्प है।
अतिथि

4
@guest: विशेष रूप से मॉडल के चयन की समस्या के संबंध में, मजबूत कोलिनियरिटी की उपस्थिति में लासो विशेष रूप से अच्छी तरह से काम नहीं करता है।
कार्डिनल

2
@कार्डिनल, लैस्सो ठीक है, लेकिन अगर कई वेरिएबल्स सहसंबद्ध हैं तो यह उनमें से सिर्फ एक का चयन करेगा, यही वजह है कि मैंने अत्यधिक कोलीनियर वेरिएबल्स के सेट को देखने का सुझाव दिया। इस 'डिफ़ॉल्ट' की तुलना में कुछ अधिक जटिल उपयोग करने का निर्णय लेने के लिए उपयोगिता के मूल्यांकन की आवश्यकता होती है, और इस मॉडल के लिए क्या इरादा है, इसकी एक मजबूत धारणा।
अतिथि

2
आप bicreg फ़ंक्शन {पैकेज BMA} में देखना चाह सकते हैं। ध्यान दें कि इसे ठीक से काम करने के लिए आपको एक पूर्ण-केस डेटासेट की आवश्यकता है। मुझे यह मॉडल चयन के लिए बेहद उपयोगी लगता है।
डोमिनिक कोम्टिस

1
@guest: खैर, यह उस तरीके पर निर्भर करता है जिस तरीके से नियमितीकरण पैरामीटर का चयन किया जाता है। असल में, कुछ शासनों में, लसो में कुछ चुनिंदा मापदंडों पर एक (साबित) प्रवृत्ति होती है । ओपी ने पूछा है "केवल एक चीज जो मैं चाहता हूं वह यह समझने में सक्षम हो सकती है कि 9 चर में से कौन सा वास्तव में Scoreचर में भिन्नता को चला रहा है ", यह वह वाक्य है जिसे मैंने अत्यधिक ध्यान केंद्रित किया हो सकता है। मजबूत कोलिनियरिटी की उपस्थिति में, ओस्सो की टिप्पणी की अधिक सख्त व्याख्याओं में, कम से कम व्याख्या करने के लिए लैस्सो मदद नहीं करने वाला है।
कार्डिनल

जवाबों:


14

सबसे पहले, इस समस्या के लिए एक बहुत अच्छा संसाधन टी। कीथ, मल्टीपल रिग्रेशन और बियॉन्ड है। पथ मॉडलिंग और चरों के चयन के बारे में पुस्तक में बहुत सारी सामग्री है और मुझे लगता है कि आपको अपने प्रश्नों के विस्तृत उत्तर मिलेंगे।

मल्टीकोलिनरिटी को संबोधित करने का एक तरीका भविष्यवक्ताओं को केंद्र में रखना है, जो प्रत्येक मूल्य से एक श्रृंखला का मतलब निकालता है। जब डेटा अत्यधिक टकराना हो तो रिज रिग्रेशन का भी उपयोग किया जा सकता है। अंत में अनुक्रमिक प्रतिगमन पूर्वसूचक घटनाओं के समय अनुक्रम का विश्लेषण करने के साथ-साथ, भविष्यवक्ताओं के बीच कारण-प्रभाव संबंधों को समझने में मदद कर सकता है।

क्या सभी 9 चर, संपार्श्विकता दर्शाते हैं? निदान के लिए आप कोहेन 2003 विचरण मुद्रास्फीति कारक का उपयोग कर सकते हैं। एक VIF मान> = 10 उच्च संपार्श्विकता और फुलाया मानक त्रुटियों को इंगित करता है। मैं समझता हूं कि आप भविष्यवाणियों और परिणामों के बीच कारण-प्रभाव संबंध में अधिक रुचि रखते हैं। यदि नहीं, तो बहुस्तरीयता को भविष्यवाणी के लिए एक गंभीर समस्या नहीं माना जाता है, जैसा कि आप अपने भविष्यवक्ताओं को एक समय में जोड़ने वाले मॉडल के खिलाफ नमूना डेटा से बाहर एमएई की जांच करके पुष्टि कर सकते हैं। यदि आपके भविष्यवाणियों में सीमांत भविष्यवाणी शक्ति है, तो आप पाएंगे कि मॉडल बहुस्तरीयता की उपस्थिति में भी MAE कम हो जाता है।


16

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


and put summary scores into the model
योय

1
मेरा पाठ्यक्रम नोट्स biostat.mc.vanderbilt.edu/rms पर विस्तार से जाना
फ्रैंक

1

यदि आप उच्च संपार्श्विकता की उपस्थिति में परिवर्तनीय चयन करना चाहते हैं तो मैं l0ara पैकेज की सिफारिश कर सकता हूं , जो एक पुनरावृत्त अनुकूली रिज प्रक्रिया का उपयोग करके L0 दंडित GLMs फिट बैठता है । के रूप में इस विधि अंततः रिज नियमितीकरण प्रतिगमन पर आधारित है, यह बहुत अच्छी तरह से collinearity के साथ सौदा कर सकते हैं, और मेरे सिमुलेशन में यह बहुत कम झूठी सकारात्मक उत्पादन किया, जबकि अभी भी महान भविष्यवाणी प्रदर्शन जैसे LASSO, लोचदार नेट या अनुकूली LASSO की तुलना में। वैकल्पिक रूप से, आप L0Learn पैकेज भी आज़मा सकते हैंएक L0 और L2 दंड के संयोजन के साथ। L2 पेनल्टी, स्पार्सिटी (यानी छोटे मॉडल) का पक्षधर है, जबकि L2 पेनल्टी संपार्श्विकता को नियमित करता है। इलास्टिक नेट (जो एल 1 और एल 2 दंड के संयोजन का उपयोग करता है) भी अक्सर सुझाया जाता है, लेकिन मेरे परीक्षणों में इस तरह से अधिक झूठी सकारात्मकता उत्पन्न हुई, साथ ही गुणांक भारी पक्षपाती होगा। इस पूर्वाग्रह से आप छुटकारा पा सकते हैं यदि आप इसके बजाय एल 0 दंडित विधियों का उपयोग करते हैं (उर्फ सबसे अच्छा सबसेट) - यह एक तथाकथित ओरेकल अनुमानक है, जो एक साथ सुसंगत और निष्पक्ष पैरामीटर गुणांक प्राप्त करता है। इन सभी तरीकों में नियमितीकरण मापदंडों को नमूना भविष्यवाणी प्रदर्शन से बाहर इष्टतम देने के लिए क्रॉस सत्यापन के माध्यम से अनुकूलित करने की आवश्यकता है। यदि आप अपने मापदंडों पर महत्व के स्तर और विश्वास अंतराल प्राप्त करना चाहते हैं तो आप नॉनपामेट्रिक बूटस्ट्रैपिंग के माध्यम से भी ऐसा कर सकते हैं।

l0araलोचदार नेट की तरह (कभी-कभी टूटे हुए अनुकूली रिज के रूप में संदर्भित) के पुनरावृत्त अनुकूली रिज एल्गोरिथ्म में एक समूहीकरण प्रभाव होता है, जो जैसे ही आपके मॉडल में प्रवेश करेगा, समूहों में अत्यधिक सहसंबद्ध चर का चयन करने का कारण होगा। यह समझ में आता है - उदाहरण के लिए यदि आपके पास अपने मॉडल में दो निकट-समोच्च चर थे, तो यह दोनों पर समान रूप से प्रभाव को विभाजित करेगा।

यदि आप अनुपात डेटा का विश्लेषण कर रहे हैं, तो आप लॉजिस्टिक रिग्रेशन मॉडल btw का उपयोग करके बेहतर हैं - l0araपैकेज आपको L0 पेनल्टी के साथ संयोजन में ऐसा करने की अनुमति देता है; के लिए L0Learnपैकेज इस शीघ्र ही समर्थन किया जाएगा।

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