बड़े पैमाने पर सांख्यिकीय विश्लेषण करने के लिए कौन से कौशल की आवश्यकता होती है?


107

कई सांख्यिकीय नौकरियां बड़े पैमाने पर डेटा के साथ अनुभव के लिए पूछती हैं। सांख्यिकीय और कम्प्यूटेशनल कौशल के प्रकार क्या हैं जिन्हें बड़े डेटा सेट के साथ काम करने की आवश्यकता होगी। उदाहरण के लिए, प्रतिगमन मॉडल के निर्माण के बारे में 10 मिलियन नमूनों के साथ डेटा सेट कैसे दिया जाता है?


1
कुछ अच्छे संकेत यहाँ
राडेक

यदि आप सबसे बेहतर समझते हैं तो यह आपके लिए उपयोगी होगा।
rolando2

इसके अलावा ब्याज की डेटा के बड़े सेट के साथ परिकल्पना परीक्षण के संबंधित चर्चा है: stats.stackexchange.com/q/2516/919
whuber

जवाबों:


115

अच्छे जवाब पहले ही सामने आ चुके हैं। इसलिए मैं सिर्फ व्यक्तिगत अनुभव के आधार पर कुछ विचार साझा करूंगा: प्रासंगिक लोगों को आवश्यकतानुसार अपनी स्थिति में ढालें।

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

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

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

    • इस वजह से, आप जो कुछ भी करते हैं उस पर दस्तावेजीकरण करने में अधिक समय व्यतीत करते हैं और हर चीज की स्क्रिप्टिंग करते हैं (ताकि इसे दोहराया जा सके)।

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

    • कुछ डेटासेट बड़े होते हैं क्योंकि उनके कई चर (हजारों या दसियों हज़ारों, सभी अलग-अलग होते हैं) होते हैं। डेटा को संक्षेप में समझने और समझने में बहुत समय बिताने की अपेक्षा करें । एक कोडबुक या डेटा शब्दकोश , और मेटाडेटा के अन्य रूप , आवश्यक हो जाते हैं।

  • आपका अधिकांश समय बस डेटा को इधर-उधर घूमने और उन्हें सुधारने में व्यतीत होता है। आपको बड़े डेटाबेस को संसाधित करने और बड़ी मात्रा में डेटा को सारांशित और रेखांकन के साथ कौशल की आवश्यकता होती है। ( टफ्टे के स्मॉल मल्टीपल यहां सामने आए हैं।)

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

  • आपके द्वारा चलाए जाने वाले लगभग कोई भी सांख्यिकीय परीक्षण इतना शक्तिशाली होगा कि "महत्वपूर्ण" प्रभाव की पहचान करना लगभग सुनिश्चित हो जाएगा। आपको महत्व के बजाय सांख्यिकीय महत्व , जैसे प्रभाव आकार, पर अधिक ध्यान केंद्रित करना होगा

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

  • चर के उपयुक्त अरेखीय परिवर्तनों की पहचान करने के लिए पर्याप्त जानकारी से अधिक होगा । जानिए ऐसा कैसे करना है।

  • आपके पास नॉनलाइन रिलेशनशिप, ट्रेंड में बदलाव, गैरबराबरी, विषमलैंगिकता आदि का पता लगाने के लिए पर्याप्त डेटा होगा ।

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

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


3
+1, मैं इस अद्भुत प्रतिक्रिया को साझा करूँगा (और इसे पास के ^ _ ^ पर प्रिंट कर सकता
हूं

1
+1, यह वही है जो मैं निश्चित रूप से अपने छात्रों को आने वाले कई वर्षों में फिर से बताऊंगा।
mpiktas

2
किस्सा मुझे उस समय की याद दिलाता है जब मुझे साक्षात्कार से मॉडल को आर में स्थानांतरित करना था। मूल मॉडल साक्षात्कार में किया गया था, परिणाम लगभग 20 समीकरण थे। मुझे इंटरेक्टिव इंटरफ़ेस के साथ वेबपेज में परिणाम प्रस्तुत करना था। चूँकि मॉडल कार्य प्रगति पर था, इसलिए मैंने एक ही उद्देश्य के साथ R कोड के लिए Eviews का आउटपुट ट्रांसलेट करने वाला कोड लिख दिया था कि सटीक मॉडल का उपयोग Eviews और R. R दोनों में बहुत अच्छी तरह से किया गया था, मैं भी अनुवादित कोड का उपयोग करके समाप्त हो गया विश्लेषणात्मक ढाल की गणना के लिए।
मपरिकटस

2
यह आम तौर पर अधिक रचनात्मक (यदि सरल शिष्टाचार नहीं है) के रूप में माना जाता है जब डाउनवोट एक टिप्पणी में उचित होते हैं, जब तक कि ऐसा करने के लिए स्पष्ट कारण न हों (उदाहरण के लिए, एक-पंक्ति अस्पष्ट प्रतिक्रिया, गलत जवाब अपडेट करने के लिए अनुरोध का कोई जवाब नहीं,) दुर्व्यवहार)। यह एक प्रतिक्रिया की गुणवत्ता को बढ़ाने में योगदान देता है, जब वैध तर्क दिए जाते हैं। इस विशेष मामले में, मुझे कोई गिरावट का कोई कारण नहीं दिख रहा है !
chl

2
स्वचालन के लिए +1 त्रुटि को कम करता है: " एक प्रोग्राम लिखें जो SQL कमांड को सीधे मॉडल के अनुमान से उत्पन्न करता है "।
ओरियन

18

आपके प्रश्न से कुछ अच्छे उत्तर निकलेंगे। यहाँ कुछ शुरुआती बिंदु हैं।

  1. सटीक और कंप्यूटिंग शक्ति पर रखी गई मांगों के बीच ट्रेडऑफ के साथ काम करने की क्षमता।

  2. डेटा माइनिंग तकनीकों के साथ सुविधा जिसका उपयोग प्रतिगमन आयोजित करने से पहले प्रारंभिक स्क्रीनिंग टूल के रूप में किया जा सकता है। जैसे, जंजीर, गाड़ी, या तंत्रिका नेटवर्क।

  3. सांख्यिकीय महत्व और व्यावहारिक महत्व के बीच संबंधों की गहरी समझ। चर चयन के लिए तरीकों की एक विस्तृत प्रदर्शनों की सूची।

  4. क्रॉसवालिड करने की वृत्ति।


मैं # 4 और # 1 को भी संयोजित करूंगा: यह जानना महत्वपूर्ण है कि अपने कंप्यूटिंग संसाधनों को भारी किए बिना वैधता कैसे पार करें।
झक

1
क्या आप अपनी दूसरी बात समझा सकते हैं? आप प्रतिगमन के लिए स्क्रीनिंग टूल के रूप में CHAID / CART / तंत्रिका नेटवर्क का उपयोग कैसे करेंगे?
राएगेटिन

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

1
+1 संभावित प्रभावों की खोज के लिए डेटा माइनिंग (विशेष रूप से CHAID) का उपयोग करने की संभावना से मैं चिंतित हूं। यह इस तरह के कृत्रिम (और छोटे) पर डाटासेट के साथ के रूप में, एक आवेदन को देखने के लिए दिलचस्प हो जाएगा stats.stackexchange.com/q/10363/919
whuber

12

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


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

2
कभी-कभी "अक्षम कोड" लिखना बेहतर होता है यदि यह डेटा संरचनाओं को बनाने में मदद करेगा जो सड़क के नीचे अतिरिक्त प्रश्नों का अनुमान लगाते हैं जो संभवतः पूछा जाएगा।
राल्फ विंटर्स

1
@ राल्फ: +1, मैं पूरी तरह से सहमत हूं और इसे स्वयं कठिन तरीका सीखा है। मेरा मतलब यह नहीं था कि आपको हमेशा कुशल कोड लिखना चाहिए चाहे वह ट्रेडऑफ़ क्यों न हो, बस आपको पता होना चाहिए कि कैसे करना है।
dsimcha

5

मैं यह भी जोड़ना चाहूंगा कि बड़े पैमाने पर डेटा भी संभावित "खराब डेटा" की समस्या का परिचय देता है। न केवल लापता डेटा, बल्कि डेटा त्रुटियों और असंगत परिभाषाओं को सिस्टम के हर टुकड़े द्वारा पेश किया जाता है जो कभी भी डेटा को छूता था। इसलिए, सांख्यिकीय कौशल के अतिरिक्त, आपको एक विशेषज्ञ डेटा क्लीनर बनने की आवश्यकता है, जब तक कि कोई और आपके लिए ऐसा नहीं कर रहा है।

-राल्फ विंटर्स


3
ये अच्छे अंक हैं। आउटलेयर और अन्य डेटा समस्याएँ किसी भी डेटासेट को प्लेग करती हैं , चाहे वह कितना भी बड़ा या छोटा क्यों न हो। मेरे अनुभव में वे वास्तव में बड़े डेटासेट की पहचान करना और उनसे निपटना आसान हैं, क्योंकि आपके पास उन्हें डेटा के द्रव्यमान से भेदभाव करने की शक्ति है और, खासकर यदि आप मजबूत तरीकों का उपयोग करते हैं, तो वे परिणामों को प्रभावित करने की संभावना कम हैं। BTW, आप हमेशा किसी भी विश्लेषण के दौरान "डेटा सफाई" कर रहे हैं । यह कुछ ऐसा नहीं है जिसे अलग किया जा सकता है और एक विशेषज्ञ को एक बार और सभी के लिए संभाला जा सकता है। एक विशेष मॉडल के संदर्भ में केवल एक बाहरी चीज है।
whuber

2
एक अर्ध स्वचालित डेटा क्लीनर के रूप में Google परिशोधन की जाँच करें जो हाथ संपादन के नुकसान से बचने में मदद करता है।
नासमझ।पंडा

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

क्या आप आपके द्वारा बताए गए मानचित्र-कम ढांचे के लिए एक प्रासंगिक लिंक प्रदान कर सकते हैं?
नासमझ।पंडा

@ sugar.panda, विकि लिंक जोड़ा गया!
highBandWidth

कम सटीकता के बारे में उल्लेख करने के लिए +1, हालांकि यह एक व्यापक prerogative होने से दूर है। जितना कम सटीक हम उतने ही बुरे निर्णय लेने की संभावना रखते हैं। यह टाइप I / II त्रुटि के साथ निकटता से जुड़ा हुआ है और कई विषयों को फैलाता है, लेकिन ज्यादातर सांख्यिकी, निर्णय विज्ञान और अर्थशास्त्र के लिए प्रासंगिक है। उपयुक्त कार्यप्रणाली की पहचान करने के लिए उपयोगिता कार्यों को समय से पहले सोचा जाना चाहिए और विचार प्रक्रिया का हिस्सा होना चाहिए।
थॉमस स्पीडेल
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.