स्कैला का उपयोग करके डेटा विश्लेषण
डेटा विश्लेषण के लिए सही उपकरण चुनना बहुत महत्वपूर्ण है। कागल मंचों पर, जहां अंतरराष्ट्रीय डेटा विज्ञान प्रतियोगिताएं आयोजित की जाती हैं, लोग अक्सर पूछते हैं कि कौन सा उपकरण बेहतर है। R और Python इस सूची में सबसे ऊपर हैं। इस लेख में हम आपको स्कैला पर आधारित डेटा विश्लेषण तकनीकों के वैकल्पिक स्टैक के बारे में बताएंगे।
By रोमन ज़्यकोव, संस्थापक/डेटा वैज्ञानिक @ TopDataLab
डेटा विश्लेषण के लिए सही उपकरण चुनना बहुत महत्वपूर्ण है। पर कागल डॉट कॉम मंचों, जहां अंतरराष्ट्रीय डेटा विज्ञान प्रतियोगिताएं आयोजित की जाती हैं, लोग अक्सर पूछते हैं कि कौन सा उपकरण बेहतर है। R और Python इस सूची में सबसे ऊपर हैं। इस लेख में हम आपको स्कैला प्रोग्रामिंग भाषा पर आधारित डेटा विश्लेषण तकनीकों के वैकल्पिक स्टैक के बारे में बताएंगे और स्पार्क वितरित कंप्यूटिंग मंच।
हम इसके साथ कैसे आए? रिटेल रॉकेट में हम बहुत बड़े डेटा सेट पर बहुत सारी मशीन लर्निंग करते हैं। हम प्रोटोटाइप विकसित करने के लिए IPython + Pyhs2 (पायथन के लिए हाइव ड्राइवर) + पांडा + स्केलेर के एक समूह का उपयोग करते थे। 2014 की गर्मियों के अंत में हमने स्पार्क पर स्विच करने का एक मौलिक निर्णय लिया, क्योंकि प्रयोगों से पता चला है कि हमें सर्वर के एक ही पार्क पर प्रदर्शन में 3-4 गुना सुधार मिलेगा।
एक अन्य लाभ यह है कि हम मॉडलिंग और कोड के लिए एक प्रोग्रामिंग भाषा का उपयोग कर सकते हैं जो उत्पादन सर्वर पर चलेगा। यह हमारे लिए बहुत बड़ा लाभ था, क्योंकि पहले हम एक साथ 4 भाषाओं का उपयोग कर रहे थे: हाइव, पिग, जावा, पायथन। इंजीनियरों की एक छोटी टीम के लिए यह एक समस्या है।
स्पार्क अच्छी तरह से एपीआई के माध्यम से पायथन/स्कैला/जावा के साथ काम करने का समर्थन करता है। हमने स्काला को चुनने का फैसला किया क्योंकि यह स्पार्क भाषा में लिखी गई है, जिसका अर्थ है कि हम इसके स्रोत कोड का विश्लेषण कर सकते हैं और यदि आवश्यक हो तो बग को ठीक कर सकते हैं। यह JVM भी है जिस पर Hadoop चलता है।
मुझे कहना होगा कि चुनाव आसान नहीं था, क्योंकि उस समय टीम में कोई भी स्काला को नहीं जानता था।
यह एक सर्वविदित तथ्य है कि किसी भाषा में अच्छी तरह से संवाद करना सीखने के लिए, आपको खुद को उस भाषा में डुबोने और उसका यथासंभव उपयोग करने की आवश्यकता है। इसलिए हमने मॉडलिंग और तेज़ डेटा विश्लेषण के लिए स्काला के पक्ष में पायथन स्टैक को छोड़ दिया।
पहला कदम IPython नोटबुक के लिए एक प्रतिस्थापन खोजना था। विकल्प इस प्रकार थे:
- Zeppelin - स्पार्क के लिए एक IPython जैसी नोटबुक;
- आईस्पार्क;
- स्पार्क नोटबुक;
- आईबीएम की स्पार्क आईपीथॉन नोटबुक।
- अपाचे टीओरी
अब तक पसंद आईस्पार्क रही है क्योंकि यह आसान है - यह स्कैला/स्पार्क के लिए आईपीथन है। HighCharts और R ग्राफ़िक्स पर बोल्ट लगाना अपेक्षाकृत आसान रहा है। और हमें इसे यार्न क्लस्टर से जोड़ने में कोई समस्या नहीं हुई।
कार्य
आइए इस प्रश्न का उत्तर देने का प्रयास करें: क्या आपके ऑनलाइन स्टोर में औसत खरीद राशि (एओवी) स्थिर ग्राहक मापदंडों पर निर्भर करती है, जिसमें निपटान, ब्राउज़र प्रकार (मोबाइल/डेस्कटॉप), ऑपरेटिंग सिस्टम और ब्राउज़र संस्करण शामिल हैं? आप इसके साथ कर सकते हैं आपसी जानकारी.
हम अपने अनुशंसा एल्गोरिदम और विश्लेषण के लिए एन्ट्रॉपी का बहुत उपयोग करते हैं: शास्त्रीय शैनन फॉर्मूला, कुलबैक-लीब्लर विचलन, पारस्परिक सूचना। हमने इस विषय पर एक पेपर भी जमा किया था। मशीन लर्निंग पर मर्फी की प्रसिद्ध पाठ्यपुस्तक में इन उपायों के लिए समर्पित एक अलग, हालांकि छोटा खंड है।
आइए इसका वास्तविक रिटेल रॉकेट डेटा पर विश्लेषण करें। पहले मैंने अपने क्लस्टर से नमूना को अपने कंप्यूटर पर एक csv फ़ाइल के रूप में कॉपी किया था।
जानकारी
यहां हम स्थानीय मोड में चलने वाले आईस्पार्क और स्पार्क का उपयोग करते हैं, जिसका अर्थ है कि सभी गणना स्थानीय रूप से की जाती हैं और प्रोसेसर कोर के बीच वितरित की जाती हैं। कोड में टिप्पणियों में सब कुछ वर्णित है। सबसे महत्वपूर्ण बात यह है कि आउटपुट में हमें RDD (स्पार्क डेटा स्ट्रक्चर) मिलता है, जो कि टाइप रो के केस क्लासेस का एक संग्रह है, जिसे कोड में परिभाषित किया गया है। यह आपको "।" के माध्यम से फ़ील्ड को संदर्भित करने की अनुमति देगा, उदाहरण के लिए _.categoryId।
स्रोत: https://www.kdnuggets.com/2021/09/data-analysis-scala.html
- "
- &
- 100
- लाभ
- एल्गोरिदम
- सब
- वीरांगना
- के बीच में
- विश्लेषण
- अपाचे
- एपीआई
- क्षुधा
- लेख
- बोल्ट
- ब्राउज़र
- कीड़े
- निर्माण
- गुच्छा
- परिवर्तन
- चार्ट
- कोड
- टिप्पणियाँ
- प्रतियोगिताएं
- कंप्यूटिंग
- तिथि
- डेटा विश्लेषण
- डेटा विज्ञान
- आँकड़े वाला वैज्ञानिक
- व्यवहार
- ध्यान लगा के पढ़ना या सीखना
- विकसित करना
- डीआईडी
- वितरित अभिकलन
- ड्राइवर
- अभियांत्रिकी
- इंजीनियर्स
- आदि
- एक्सेल
- अनुभव
- प्रयोग
- अन्वेषण
- चेहरा
- परिवार
- फास्ट
- विशेषताएं
- फ़ील्ड
- प्रथम
- फिक्स
- संस्थापक
- ढांचा
- GitHub
- Hadoop
- यहाँ उत्पन्न करें
- करंड
- कैसे
- How To
- HTTPS
- विशाल
- करें-
- इंटरैक्टिव
- अंतरराष्ट्रीय स्तर पर
- IT
- जावा
- भाषा
- भाषाऐं
- बड़ा
- जानें
- सीख रहा हूँ
- पुस्तकालय
- लाइन
- लिंक्डइन
- सूची
- स्थानीय
- स्थानीय स्तर पर
- लंबा
- यंत्र अधिगम
- मशीनें
- गणित
- मेट्रिक्स
- माइक्रोसॉफ्ट
- मोडलिंग
- सबसे लोकप्रिय
- पुस्तिकाओं
- ऑनलाइन
- ऑनलाइन स्टोर
- खुला
- खुला स्रोत
- परिचालन
- ऑपरेटिंग सिस्टम
- ऑप्शंस
- आदेश
- अन्य
- काग़ज़
- स्टाफ़
- प्रदर्शन
- परिप्रेक्ष्य
- भौतिक विज्ञान
- मंच
- लोकप्रिय
- संविभाग
- उत्पादन
- प्रोग्रामिंग
- परियोजना
- क्रय
- अजगर
- खुदरा
- रन
- दौड़ना
- स्काला
- विज्ञान
- वैज्ञानिकों
- सेट
- समझौता
- सरल
- आकार
- कौशल
- छोटा
- So
- सॉफ्टवेयर
- अंतरिक्ष
- की दुकान
- कहानियों
- प्रस्तुत
- गर्मी
- समर्थित
- समर्थन करता है
- स्विच
- प्रणाली
- टेक्नोलॉजीज
- परीक्षण
- लेखाचित्र
- पहर
- ऊपर का
- एकता
- यूआरआइ
- us
- मूल्य
- वेब
- विकिपीडिया
- खिड़कियां
- काम
- X
- साल
- शून्य