स्वचालित मॉडल चयन के लिए एल्गोरिदम


193

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

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

  1. सभी कारकों के सहसंबंध मैट्रिक्स की गणना करें
  2. उन कारकों को चुनें, जिनका एक दूसरे से कम सहसंबंध है
  3. कम टी-स्टेट वाले कारकों को हटा दें
  4. अन्य कारक जोड़ें (अभी भी 2. में पाए गए कम सहसंबंध कारक पर आधारित)।
  5. जब तक कुछ मानदंड (जैसे एआईसी) एक निश्चित सीमा से अधिक है या नहीं या हम एक बड़ा मूल्य नहीं पा सकते हैं, तब तक कई बार दोहराएं।

मुझे लगता है कि इस (stepAIC) के लिए एक आर कार्यान्वयन है, लेकिन मुझे समझने के लिए कोड काफी कठिन लगता है। इसके अलावा, मैं चरणबद्ध प्रतिगमन का वर्णन करने वाले लेखों को खोजने में सक्षम नहीं हूं।


72
सच कहूँ तो, मुझे लगता है कि यह एक विनाशकारी विचार है, सिर्फ कई गलत निष्कर्षों की ओर ले जाने की गारंटी के बारे में।
गुंग

4
@ गुंग: जबकि मैं मानता हूं कि नेत्रहीन रूप से एक मॉडल चयन के परिणाम के बाद एक बुरा विचार है, मुझे लगता है कि यह एक विश्लेषण के शुरुआती बिंदु के रूप में उपयोगी हो सकता है। मेरे मामले में मेरे पास कई सैकड़ों कारक उपलब्ध हैं, और मैं 5-10 सबसे अधिक प्रासंगिक चुनना चाहूंगा। मैं यह नहीं देखता कि बिना स्वचालित मॉडल चयन के मैं ऐसा कैसे कर सकता हूं (जो बाद में संशोधित किया जाएगा)।
एम

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

7
मॉडल चयन करने का उद्देश्य क्या है? क्या यह एक पूर्वानुमान / पूर्वानुमान मॉडल के लिए है या आप महत्वपूर्ण चर की तलाश कर रहे हैं? यह भी बताएं कि आपके द्वारा उपयोग किया जा रहा डेटा सेट कितना बड़ा है - कितने ऑबसेवेशन और कितने वेरिएबल्स?
संभाव्यताविषयक

6
यहाँ दिलचस्प विचार हैं, लेकिन मुझे लगता है कि एल्गोरिथम मॉडल चयन प्रक्रियाओं के प्रति नकारात्मक दृष्टिकोण थोड़ा दिनांकित है। उदाहरण के लिए, अर्थमिति के क्षेत्र में डेविड हेंड्री द्वारा हाल ही में किए गए कार्य, विशेष रूप से PcGive सॉफ्टवेयर और संतृप्ति विधियों पर उनका काम। उनके दृष्टिकोण का अवलोकन प्रदान करने वाला एक व्याख्यान यहाँ पाया जा सकता है । जैसा कि @MichaelChernick ने बताया है (और हेंड्री भी करेगा!), विषय वस्तु का ज्ञान (अत्यंत महत्वपूर्ण) है। यही कारण है कि विषय विशेषज्ञों में मूल्य है - एल्गोरिदम को अकेले कार्य करने देना गलती है।
ग्रीम वाल्श

जवाबों:


333

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

  1. यह आर-स्क्वैयर मानों को पैदावार करता है जो उच्च पक्षपाती हैं।
  2. प्रिंटआउट पर प्रत्येक चर के बगल में उद्धृत एफ और ची-चुकता परीक्षणों का दावा किया गया वितरण नहीं है।
  3. विधि प्रभाव और अनुमानित मूल्यों के लिए आत्मविश्वास अंतराल पैदा करती है जो झूठी संकीर्ण हैं; ऑल्टमैन और एंडरसन (1989) देखें।
  4. यह पी-वैल्यू देता है जिसका उचित अर्थ नहीं है, और उनके लिए उचित सुधार एक कठिन समस्या है।
  5. यह पक्षपाती प्रतिगमन गुणांक देता है जिसमें संकोचन की आवश्यकता होती है (शेष चर के लिए गुणांक बहुत अधिक है, देखें तिब्शीरानी [1996])।
  6. यह कोलिनियरिटी की उपस्थिति में गंभीर समस्याएं हैं।
  7. यह विधियों (उदाहरण के लिए, नेस्टेड मॉडल के लिए एफ परीक्षण) पर आधारित है, जिनका उपयोग निर्धारित किए गए परिकल्पनाओं का परीक्षण करने के लिए किया गया था।
  8. नमूना आकार बढ़ाने से बहुत मदद नहीं मिलती है; डर्कसेन और केसेलमैन (1992) देखें।
  9. यह हमें समस्या के बारे में नहीं सोचने की अनुमति देता है।
  10. इसमें बहुत सारे कागज का उपयोग होता है।

सवाल यह है कि इन प्रक्रियाओं के बारे में इतना बुरा क्या है / ये समस्याएं क्यों होती हैं? ज्यादातर लोग हैं जो एक बुनियादी प्रतिगमन पाठ्यक्रम ले लिया है की अवधारणा से परिचित हैं मतलब के लिए प्रतिगमन , तो यह है कि मैं क्या इन मुद्दों को समझाने के लिए इस्तेमाल करते हैं। (हालांकि यह पहली बार में विषय से अलग लग सकता है, मेरे साथ सहन करें, मैं वादा करता हूं कि यह प्रासंगिक है।)

ट्रायआउट्स के पहले दिन एक हाई स्कूल ट्रैक कोच की कल्पना करें। तीस बच्चे दिखाते हैं। इन बच्चों के पास कुछ अंतर्निहित आंतरिक क्षमता होती है, जिसमें न तो कोच होता है, न ही किसी और की सीधी पहुंच होती है। नतीजतन, कोच केवल वही काम करता है जो वह कर सकता है, जो उन सभी को 100 मीटर की दूरी पर चलाता है। समय निश्चित रूप से उनकी आंतरिक क्षमता का एक उपाय है और इस तरह से लिया जाता है। हालांकि, वे संभाव्य हैं; किसी का कितना अच्छा अनुपात होता है, इसका कुछ अनुपात उनकी वास्तविक क्षमता पर आधारित होता है और कुछ अनुपात यादृच्छिक होता है। कल्पना करें कि वास्तविक स्थिति निम्नलिखित है:

set.seed(59)
intrinsic_ability = runif(30, min=9, max=10)
time = 31 - 2*intrinsic_ability + rnorm(30, mean=0, sd=.5)

पहली दौड़ के परिणाम कोच की टिप्पणियों के साथ निम्नलिखित आंकड़े में प्रदर्शित किए गए हैं।

पहली दौड़

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

दूसरी दौड़

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

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

मुझे आशा है कि यह मददगार है।


43
डेटा ड्रेजिंग की घटना का विवरण।
फ्रैंक हरेल

17
-2एल+पीपीआर(χ12>)

7
पी2लॉग इन करेंएन-2एल

9
(-2एल1+2पी0+2)-(-2एल0+2पी0)=-2(एल1-एल0)+2। अब पहला शब्द संभावना अनुपात सांख्यिकीय है जिस पर पी-मूल्य आधारित है। इसलिए हम अतिरिक्त पैरामीटर जोड़ रहे हैं यदि संभावना अनुपात आँकड़ा कुछ कटऑफ से बड़ा है। यह वही है जो पी-मूल्य दृष्टिकोण कर रहा है। यहाँ केवल एक वैचारिक अंतर है
प्रायिकतालोगिक

2
एक उदाहरण के लिए AIC समस्या को हल क्यों नहीं करता है देखें: Mundry, R. (2011)। सूचना सिद्धांत-आधारित सांख्यिकीय निष्कर्ष में मुद्दे- एक व्यक्तिवादी परिप्रेक्ष्य से एक टिप्पणी। व्यवहार पारिस्थितिकी और समाजशास्त्र, 65 (1), 57-68।
11

70

आर में कैरेट पैकेज की जाँच करें । यह आपको चरण-वार प्रतिगमन मॉडल (उपयोग या ) को पार करने में मदद करेगा , और आपको यह समझने में मदद कर सकता है कि इन प्रकार के मॉडल में खराब भविष्य कहनेवाला प्रदर्शन कैसे होता है। इसके अलावा, आप कोलेट वेरिएबल्स को पहचानने और खत्म करने के लिए कार्यवाहक में फ़ंक्शन का उपयोग कर सकते हैं , और कम टी स्टेटिस्टिक (उपयोग ) के साथ चर को खत्म करने के लिए कार्यवाहक में कार्य कर सकते हैं ।method='lmStepAIC'method='glmStepAIC'findCorrelationrferfeControl=rfeControl(functions=lmFuncs)

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

अंत में, यह बेहतर (और सरल) हो सकता है कि "बिल्ट-इन" फीचर सिलेक्शन जैसे कि रिज रिग्रेशन, लैस्सो या इलास्टिक नेट के साथ प्रेडिक्टिव मॉडल का उपयोग करें। विशेष रूप से, method=glmnetकैरेट के लिए तर्क की कोशिश करें , और तर्क के लिए उस मॉडल की क्रॉस-मान्य सटीकता की तुलना करें method=lmStepAIC। मेरा अनुमान है कि पूर्व आपको बहुत अधिक आउट-ऑफ-सैंपल सटीकता देगा, और आपको अपने कस्टम चर चयन एल्गोरिदम को लागू करने और मान्य करने के बारे में चिंता करने की ज़रूरत नहीं है।


1
लॉग इन करें(λ2+β2)

2
@probabilityislogic क्या आपको डबल पेयरो पेनल्टी के किसी भी अच्छे कार्यान्वयन के बारे में पता है, जैसी भाषा में rया python? मैं इसे आज़माना पसंद करूंगा।
जच

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

38

मैं @gung द्वारा उल्लिखित समस्याओं से पूरी तरह सहमत हूं। यह कहा, वास्तविक रूप से बोल, मॉडल चयन एक वास्तविक समाधान की जरूरत में एक वास्तविक समस्या है। यहाँ कुछ है जो मैं अभ्यास में उपयोग करूंगा।

  1. अपने डेटा को प्रशिक्षण, सत्यापन और परीक्षण सेटों में विभाजित करें।
  2. अपने प्रशिक्षण सेट पर मॉडल को प्रशिक्षित करें।
  3. भविष्यवाणी RMSE जैसे मीट्रिक का उपयोग करके सत्यापन सेट पर मॉडल प्रदर्शन को मापें, और सबसे कम भविष्यवाणी त्रुटि वाले मॉडल का चयन करें।
  4. आवश्यक के रूप में नए मॉडल तैयार करें, 2-3 चरणों को दोहराएं।
  5. रिपोर्ट करें कि मॉडल परीक्षण सेट पर कितना अच्छा प्रदर्शन करता है।

वास्तविक दुनिया में इस पद्धति के उपयोग के उदाहरण के लिए, मेरा मानना ​​है कि नेटफ्लिक्स पुरस्कार प्रतियोगिता में इसका उपयोग किया गया था।


15
n>20000

5
@ फ्रेंक: आपको क्यों लगता है कि एन को इतना ऊँचा होना चाहिए?
rolando2

14
खराब परिशुद्धता के कारण। यदि आप फिर से विभाजित होते हैं तो आप बहुत अलग परिणाम प्राप्त कर सकते हैं। इसलिए लोग 10-गुना क्रॉस-सत्यापन, या बूटस्ट्रैपिंग के 100 दोहराते हैं।
फ्रैंक हरेल

10
@FrankHarrell क्या है कि n> 20000 का आंकड़ा निर्भर करता है? क्या यह " कई सैकड़ों कारक " होने के बारे में मूल पोस्टर की टिप्पणी पर आधारित है ? या यह डेटा के किसी भी पहलू से स्वतंत्र है?
डैरेन कुक

33
जिस तरह की सेटिंग मैं डेटा स्प्लिटिंग पर परीक्षण कर रहा था वह n = 17000 था जिसमें 0.3 का एक इवेंट था, और बाइनरी लॉजिस्टिक मॉडल में लगभग 50 पैरामीटर की जांच की या फिट किया गया था। मैंने एक यादृच्छिक 1: 1 विभाजन का उपयोग किया। जब मैंने डेटा को फिर से विभाजित किया और शुरू किया तो परीक्षण के नमूने में मान्य आरओसी क्षेत्र काफी बदल गया। सिमुलेशन अध्ययन और संबंधित अधिक जानकारी देने वाले संबंधित कागजात के लिए biostat.mc.vanderbilt.edu/rms में पाठ में प्रयुक्त विधियों के अध्ययन के तहत देखें।
फ्रैंक हरेल

15

प्रश्न का उत्तर देने के लिए, कई विकल्प हैं: 1) एआईसी / बीआईसी 2 द्वारा सभी-सबसेट, पी-वैल्यू द्वारा स्टेप वाइज 3) एआईसी / बीआईसी 4 द्वारा स्टेपवाइज) एलएएसओ जैसे नियमितीकरण (या तो एआईसी / बीआईसी या सीवी पर आधारित हो सकता है) 5) आनुवंशिक एल्गोरिथ्म (जीए) 6) अन्य? 7) गैर-स्वचालित, सिद्धांत ("विषय वस्तु ज्ञान") उन्मुख चयन का उपयोग

अगला सवाल यह होगा कि कौन सा तरीका बेहतर है। यह पत्र (doi: 10.1016 / j.amc.2013.05.016) इंगित करता है कि "सभी संभावित प्रतिगमन" ने अपनी प्रस्तावित नई पद्धति के लिए समान परिणाम दिए और सौतेलापन बदतर है। एक साधारण GA उनके बीच है। यह पत्र (DOI: 10.1080 / 10618600.1998.10474784) "लीप्स-एंड-बाउंड्स" के साथ दंडित प्रतिगमन (ब्रिज, लासो आदि) की तुलना करता है (एक संपूर्ण खोज एल्गोरिथ्म लेकिन तेज लगता है) और यह भी पाया गया कि पुल मॉडल सबसे अच्छे मॉडल से सहमत है। सबसे कम छलांग और सीमा विधि द्वारा चयन ”। यह पेपर (doi: 10.1186 / 1471-2105-15-88) दिखाता है कि GA LASSO से बेहतर है। इस पत्र (DOI: 10.1198 / jcgs.2009.06164) ने एक विधि प्रस्तावित की - अनिवार्य रूप से एक सब-सबसेट (BIC पर आधारित) दृष्टिकोण लेकिन चतुराई से गणना समय को कम करना। वे प्रदर्शित करते हैं कि यह विधि LASSO से बेहतर है। दिलचस्प बात यह है कि यह पेपर (DOI: 10.1111 / j.1461-0248.2009.01361)।

तो कुल मिलाकर परिणाम मिले-जुले हैं लेकिन मुझे आभास हुआ कि जीए बहुत अच्छा लग रहा है, हालांकि स्टेप वाइज बहुत बुरा नहीं है और यह जल्दी है।

7 के रूप में), गैर-स्वचालित, सिद्धांत ("विषय वस्तु ज्ञान") का उपयोग उन्मुख चयन। यह समय लेने वाला है और जरूरी नहीं कि यह स्वचालित विधि से बेहतर हो। वास्तव में समय-श्रृंखला साहित्य में, यह अच्छी तरह से स्थापित है कि स्वचालित विधि (विशेष रूप से वाणिज्यिक सॉफ्टवेयर) मानव विशेषज्ञों को "पर्याप्त अंतर से" बेहतर बनाती है (doi: 10.1016 / S0169-2070 (01) 00119-4, पृष्ठ 561 जैसे विभिन्न घातीय चौरसाई और ARIMA मॉडल)।


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

2
वास्तव में टिस्सिरानी के LASSO के मूल पेपर में उदाहरण @ गंग के बिंदु को अच्छी तरह से चित्रित करते हैं। एक ही वास्तविक डेटा पर विभिन्न तरीकों के तुलनात्मक अध्ययन के लिए जाता है। BTW, क्या आपका अंतिम संदर्भ सही है? आपके द्वारा दिए गए डीओआई के साथ क्लीमेंट्स एंड हेंड्री का पेपर यह दावा नहीं करता है कि स्वचालित तरीके मानव विशेषज्ञों का प्रदर्शन करते हैं, या "पर्याप्त अंतर से" शब्दों का उपयोग करते हैं। (यदि आप पूर्ण संदर्भ दिया अच्छा होगा।)
Scortchi

यह मिला: गुडरिक (2001), "एम 3-कॉम्पिटिशन में वाणिज्यिक सॉफ्टवेयर", इंट। जे। पूर्वानुमान।, 17, पीपी 560-65। यह उसी "अंडर कमेंट्स ऑन एम 3-कॉम्पीटिशन" संग्रह के रूप में क्लीमेंट्स एंड हेंड्री पेपर है, यही वजह है कि गोग्लिंग द डीओआई ने मुझे वहां भेजा।
Scortchi

वैसे भी, यह बिल्कुल स्पष्ट नहीं है कि गुडरिक की टिप्पणी का विषय-वस्तु विशेषज्ञता से कोई लेना-देना नहीं है।
Scortchi

1
@Sortchi जर्नल के उस मुद्दे पर पृष्ठ 581 से शुरू होने वाले लेख पर अधिक स्पष्ट हो सकता है। यह "एम 2-प्रतियोगिता" से अधिक संबंधित है, जिसमें स्वचालित पूर्वानुमान विधियों की तुलना आमंत्रित मानव विशेषज्ञों (समय-श्रृंखला साहित्य में कुछ बड़े नामों सहित) के साथ की गई थी, जो आर्थिक / उद्योग संदर्भ जानते थे और यहां तक ​​कि प्रदान की गई कंपनियों से अतिरिक्त जानकारी भी मांग सकते थे। आँकड़े।
heran_xp

6

यहां एक उत्तर दिया गया है कि बाएं क्षेत्र से- रैखिक प्रतिगमन का उपयोग करने के बजाय, प्रतिगमन ट्री (रपटर पैकेज) का उपयोग करें। यह स्वचालित मॉडल चयन के लिए उपयुक्त है क्योंकि थोड़े से काम के साथ आप cp के चयन को स्वचालित कर सकते हैं, जो पैरामीटर ओवर-फिटिंग से बचने के लिए उपयोग किया जाता है।


3

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


2
यह डेटा में "सर्वश्रेष्ठ" चर का चयन करेगा , जरूरी नहीं कि डेटा उत्पन्न करने की प्रक्रिया / जनसंख्या में सबसे अच्छा चर हो, क्योंकि इसमें केवल डेटा तक पहुंच है। यह वास्तव में नहीं है कि ओपी चाहता था कि चरणबद्ध विधि से भिन्न है।
गंग

0

हमारे पास R बेस स्टैटिस्टिक्स पैकेज में एक फंक्शन है, जिसे स्टेप () कहा जाता है, जो सबसे कम AIC पर आधारित मॉडल के फॉरवर्ड, बैकवर्ड या स्टेप वाइज सिलेक्शन करता है। यह कारक चर के लिए भी काम करता है। क्या यह यहाँ सर्वर का उद्देश्य नहीं है?


-51

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

  1. सभी प्रतिगमन चर बनाम व्यक्तिगत कारक करते हैं
  2. किसी दिए गए मानदंड से प्रतिगमन को सॉर्ट करें (AIC का कहना है)
  3. कम टी-स्टेट वाले कारकों को हटा दें: वे हमारे चर को समझाने में बेकार हैं
  4. 2 में दिए गए आदेश के साथ, कारकों को एक-एक करके मॉडल में जोड़ने का प्रयास करें, और जब वे हमारी कसौटी में सुधार करते हैं, तो उन्हें बनाए रखें। सभी कारकों के लिए पुनरावृति।

फिर, यह बहुत कठिन है, कार्यप्रणाली में सुधार करने के तरीके हो सकते हैं, लेकिन यह मेरा शुरुआती बिंदु है। मैं इस उत्तर को पोस्ट कर रहा हूं उम्मीद करता हूं कि यह किसी और के लिए उपयोगी हो सकता है। टिप्पणियों का स्वागत है!


47
(१) मैंने इस सूत्र में कोई "वाद-विवाद" नहीं देखा है: सभी उत्तर और टिप्पणियाँ एक ही मूल संदेश प्रस्तुत करते हैं। (२) आपका कार्यान्वयन स्टेप वाइज रिग्रेशन का एक तदर्थ संस्करण प्रतीत होता है । मैं मानता हूं कि यह एक शुरुआती बिंदु के रूप में उपयोगी हो सकता है, बशर्ते कि यह अपने आप में एक अंत के रूप में स्वीकार नहीं किया जाता है।
whuber

28
आपने वास्तव में अपने स्वयं के उत्तर को स्वीकार किया जो समुदाय द्वारा आगे लाए गए प्रत्येक तर्क के खिलाफ चलता है। यहां के नकारात्मक को देखकर आश्चर्य नहीं हुआ ...
jank

23
मेरा मानना ​​है कि यह पहली बार है जब मैंने इतने सारे डाउनवोट देखे हैं। @SAM आप अन्य उत्कृष्ट उत्तरों में से कुछ को स्वीकार क्यों नहीं करते और अपने "उत्तर" को हटा देते हैं?
मारबेल

क्या यह एसई का सबसे अधकचरा जवाब है?
जिनकी बाज़ार

2
आपको लगता है कि आपने अपने लक्ष्य को कहकर @probabilityislogic के महत्वपूर्ण प्रश्न का उत्तर दिया है "किसी दिए गए चर को समझाने के लिए सर्वोत्तम n कारकों को खोजने के लिए।" समझाने के लिए मॉडल-बिल्डिंग (कार्य-कारण को समझने के लिए) मॉडल-बिल्डिंग की तुलना में अधिक जानबूझकर और आमतौर पर बहुत अधिक गहनता से किए जाने की आवश्यकता है।
rolando2
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.