सभी मशीन लर्निंग लाइब्रेरी के लिए आपका वन-स्टॉप
" कंप्लीट मशीन लर्निंग एंड डीप लर्निंग फॉर बिगिनर्स " श्रृंखला के पिछले ब्लॉगों में , हमने आपको मशीन लर्निंग की तार्किक और गणितीय अवधारणाओं से परिचित कराया है। लेकिन आगे बढ़ते हुए, हमारे ब्लॉग अधिक कोडिंग-उन्मुख होंगे, जिसके लिए मशीन सीखने में पुस्तकालयों का उपयोग करने के संक्षिप्त परिचय की आवश्यकता होती है।
पुस्तकालय हमेशा ज्ञान और अनुसंधान उपकरणों का भंडार रहा है। बड़े डेटा और डेटा विज्ञान के आगमन के साथ, हाल के वर्षों में अनुसंधान अधिक शक्तिशाली और डेटा-संचालित हो गया है।
डेटा साइंस की दुनिया में, "लाइब्रेरी" उसी तरह से काम करते हैं जैसे वे वास्तविक दुनिया में करते हैं। पुस्तकालय डेटा वैज्ञानिकों को यह समझने में मदद करते हैं कि डेटा कैसे एकत्र, व्यवस्थित और संग्रहीत किया जाता है। पुस्तकालयाध्यक्षों के डेटाबेस डिजाइन और विकास कौशल बिग डेटा में संगठन और डेटा खनन प्रक्रियाओं के लिए सहायक हो सकते हैं।
औपचारिक रूप से, "पुस्तकालयों" को पुन: प्रयोज्य कार्यों और किसी विशेष कार्य को करने में विशेष मॉड्यूल के संग्रह के रूप में परिभाषित किया जा सकता है।
स्थापित करना और आयात करना:
वांछित परिणाम प्राप्त करने के लिए विभिन्न पुस्तकालय आपको विभिन्न प्रकार के कार्य प्रदान करते हैं। यद्यपि वे एक दूसरे से कई मायनों में भिन्न हैं, अधिकांश पुस्तकालयों में एक मानक प्रक्रिया होती है जिसके माध्यम से उन्हें सिस्टम में स्थापित किया जा सकता है और काम करने के लिए आयात किया जा सकता है।
कोंडा या पीआईपी पैकेज मैनेजर का उपयोग करके आपके सिस्टम में पुस्तकालय स्थापित किए जा सकते हैं।
उदाहरण के लिए: 'libname' नाम की लाइब्रेरी स्थापित करने के लिए , हम निम्नलिखित कमांड का उपयोग कर सकते हैं।
कोंडा का उपयोग करना-
conda install libname
pip install libname
import libname as lb
आगामी खंड में आपको उपलब्ध विभिन्न पुस्तकालयों से परिचित कराया जाएगा और डेटा की दुनिया में अक्सर उपयोग किया जाता है:
1. डेटा एक्सप्लोरेशन और गणित:
डेटा और गणित डेटा साइंस के दिल और दिमाग हैं। इसलिए, डेटा को सर्वोत्तम संभव तरीके से व्यवस्थित और समझना और वांछित परिणाम तक पहुंचने के लिए गणित का आसान और कुशल उपयोग क्षेत्र की आवश्यकता है।
वांछित परिणामों के लिए डेटा संगठन और डेटा पर विभिन्न गणित अनुप्रयोगों को संभालने के लिए निम्नलिखित पुस्तकालयों का उपयोग किया जाता है।
1.1 न्यूमपी
NumPy (या न्यूमेरिकल पायथन) सरणियों को संभालने के लिए उपयोग की जाने वाली लाइब्रेरी है। इसमें रैखिक बीजगणित, फूरियर रूपांतरण और मैट्रिक्स के क्षेत्र में काम करने के लिए कार्य भी हैं।
पायथन में, हमारे पास ऐसी सूचियाँ हैं जो सरणियों के उद्देश्य को पूरा करती हैं, लेकिन वे प्रक्रिया में धीमी हैं। NumPy का उद्देश्य एक सरणी वस्तु प्रदान करना है जो पारंपरिक पायथन सूचियों की तुलना में बहुत तेज है। NumPy में सरणी ऑब्जेक्ट को "ndarray" कहा जाता है, यह बहुत सारे सहायक कार्य प्रदान करता है जो "ndarray" के साथ काम करना बहुत आसान बनाता है। डेटा विज्ञान में Arrays का बहुत बार उपयोग किया जाता है, जहाँ गति और संसाधन बहुत महत्वपूर्ण होते हैं।
1.2 पांडा
पंडों का उपयोग डेटा सेट के साथ काम करने के लिए किया जाता है। इसमें डेटा का विश्लेषण, सफाई, खोज और हेरफेर करने के लिए विभिन्न कार्य हैं।
पांडा बड़े डेटा का विश्लेषण करने और सांख्यिकीय समझ के आधार पर कुछ निष्कर्षों तक पहुंचने में मदद करते हैं। गंदे डेटा सेट को साफ करना, और उन्हें पठनीय और प्रासंगिक बनाना डेटा को प्री-प्रोसेसिंग का मूल बनाता है। यह पंडों की मदद से आराम से किया जा सकता है इसलिए यह डेटा विज्ञान और विश्लेषण का एक प्रासंगिक हिस्सा बन जाता है।
1.3 विज्ञानपी
SciPy (या साइंटिफिक पायथन) एक वैज्ञानिक गणना पुस्तकालय है जो नीचे NumPy का उपयोग करता है और अनुकूलन, आँकड़े और सिग्नल प्रोसेसिंग के लिए अधिक उपयोगिता कार्य प्रदान करता है।
यहां आपके मन में एक सवाल उठ सकता है। यदि SciPy नीचे NumPy का उपयोग करता है, तो हम केवल NumPy का उपयोग क्यों नहीं कर सकते?
दरअसल, SciPy ने उन कार्यों को अनुकूलित और जोड़ा है जो अक्सर NumPy और डेटा साइंस में उपयोग किए जाते हैं। यह अतिरिक्त सरणी कंप्यूटिंग उपकरण और विशेष डेटा संरचनाएं प्रदान करता है, जैसे कि विरल मैट्रिस और के-आयामी पेड़।
2. विज़ुअलाइज़ेशन:
डेटा विज़ुअलाइज़ेशन और प्रतिनिधित्व में निम्नलिखित पुस्तकालयों का उपयोग किया जाता है। मानव मस्तिष्क चीजों को अधिक कुशलता से और जल्दी से समझता है जब रेखांकन और चार्ट के रूप में प्रस्तुत किया जाता है। दिए गए पुस्तकालय हमारे डेटा के साथ हमारी दोस्ती को एक ऊंचे स्तर पर ले जाने में मदद करते हैं।
2.1 माटप्लोटलिब
Matplotlib एक पायथन ग्राफ प्लॉटिंग लाइब्रेरी है जो स्थिर, एनिमेटेड और इंटरैक्टिव विज़ुअलाइज़ेशन बनाने में मदद करती है।
हिस्टोग्राम से लेकर स्कैटरप्लॉट तक, मैटप्लोटलिब हमारे प्लॉट्स को कस्टमाइज़ और वैयक्तिकृत करने के लिए रंगों, थीम, पैलेट और अन्य विकल्पों की एक सरणी देता है। चाहे आप मशीन लर्निंग प्रोजेक्ट के लिए डेटा एक्सप्लोरेशन कर रहे हों या बस आश्चर्यजनक और आकर्षक चार्ट बनाना चाहते हों, matplotlib मददगार है।
2.2 सीबॉर्न
सीबॉर्न पायथन में सांख्यिकीय ग्राफिक्स बनाने के लिए एक पुस्तकालय है। यह Matplotlib के शीर्ष पर बनाता है और पांडा डेटा संरचनाओं के साथ निकटता से एकीकृत होता है।
सीबॉर्न आपके डेटा को एक्सप्लोर करने और समझने में आपकी मदद करता है। इसके प्लॉटिंग फ़ंक्शन डेटा फ़्रेम और पूरे डेटासेट वाले सरणियों पर काम करते हैं और सूचनात्मक प्लॉट बनाने के लिए आंतरिक रूप से आवश्यक सिमेंटिक मैपिंग और सांख्यिकीय एकत्रीकरण करते हैं। इसका डेटासेट-उन्मुख, घोषणात्मक एपीआई आपको इस बात पर ध्यान केंद्रित करने देता है कि आपके प्लॉट के विभिन्न तत्वों का क्या मतलब है, बजाय इसके कि उन्हें कैसे आकर्षित किया जाए।
2.3 तकिया
पिलो एक पायथन इमेजिंग लाइब्रेरी (PIL) है, जो छवियों को खोलने, हेरफेर करने और सहेजने का समर्थन करती है। पायथन इमेजिंग लाइब्रेरी, पायथन प्रोग्रामिंग भाषा के लिए एक स्वतंत्र और ओपन-सोर्स अतिरिक्त लाइब्रेरी है जो कई अलग-अलग छवि फ़ाइल स्वरूपों को खोलने, हेरफेर करने और सहेजने के लिए समर्थन जोड़ती है।
2.4 प्लॉटली
प्लॉटली पायथन लाइब्रेरी एक इंटरैक्टिव, ओपन-सोर्स प्लॉटिंग लाइब्रेरी है जो सांख्यिकीय, वित्तीय, भौगोलिक, वैज्ञानिक और 3-आयामी उपयोग-मामलों की एक विस्तृत श्रृंखला को कवर करने वाले 40 से अधिक अद्वितीय चार्ट प्रकारों का समर्थन करती है।
3. स्वचालित ईडीए
ईडीए एक डेटा विश्लेषण प्रक्रिया है जहां इस्तेमाल किए गए डेटासेट को बेहतर ढंग से समझने के लिए कई तकनीकों का उपयोग किया जाता है। यह मूल रूप से एक मानवीय त्रुटि, लापता मूल्यों या बाहरी कारकों की पहचान करने के लिए उपयोग किया जाता है। यह उपयोगी चर निकालता है और बेकार चर को हटा देता है। इसका उपयोग चर या विशेषताओं के बीच संबंध को समझने के लिए किया जाता है। यह अंततः आपकी अंतर्दृष्टि को एक डेटासेट में अधिकतम करता है और बाद में प्रक्रिया में संभावित त्रुटियों को कम करता है।
3.1 पांडा-प्रोफाइलिंग
पंडों की रूपरेखा एक ओपन-सोर्स पायथन मॉड्यूल है जिसके साथ हम कोड की कुछ पंक्तियों के साथ जल्दी से एक खोजपूर्ण डेटा विश्लेषण कर सकते हैं। यह एक वेब प्रारूप में इंटरैक्टिव रिपोर्ट भी तैयार करता है जिसे किसी को भी प्रस्तुत किया जा सकता है, भले ही वे प्रोग्रामिंग नहीं जानते हों।
संक्षेप में, पांडा प्रोफाइलिंग हमें प्रत्येक चर के वितरण को देखने और समझने के सभी कार्यों को बचाती है। यह आसानी से उपलब्ध सभी सूचनाओं के साथ एक रिपोर्ट तैयार करता है।
3.2 स्वीटविज़
स्वीटविज़ लाइब्रेरी एक ओपन-सोर्स पायथन लाइब्रेरी है जो कोड की सिर्फ दो पंक्तियों के साथ ईडीए को किकस्टार्ट करने के लिए सुंदर, उच्च-घनत्व वाले विज़ुअलाइज़ेशन उत्पन्न करती है। आउटपुट पूरी तरह से स्व-निहित HTML एप्लिकेशन है। सिस्टम को लक्ष्य मानों को जल्दी से देखने और डेटासेट की तुलना करने के लिए बनाया गया है। इसका लक्ष्य लक्ष्य विशेषताओं, प्रशिक्षण बनाम परीक्षण डेटा, और ऐसे अन्य डेटा लक्षण वर्णन कार्यों के त्वरित विश्लेषण में मदद करना है।
4. डाटा माइनिंग और स्क्रैपिंग
वेब स्क्रैपिंग विभिन्न उपकरणों और ढांचे का उपयोग करके इंटरनेट से डेटा एकत्र करने की प्रक्रिया है। कभी-कभी, इसका उपयोग ऑनलाइन मूल्य परिवर्तन निगरानी, मूल्य तुलना, और यह देखने के लिए किया जाता है कि प्रतियोगी अपनी वेबसाइटों से डेटा निकालकर कितना अच्छा कर रहे हैं।
4.1 सुंदर सूप
ब्यूटीफुल सूप एक पायथन लाइब्रेरी है जिसका उपयोग वेब स्क्रैपिंग उद्देश्यों के लिए HTML और XML फ़ाइलों से डेटा खींचने के लिए किया जाता है। यह पृष्ठ स्रोत कोड से एक पार्स ट्री बनाता है जिसका उपयोग डेटा को पदानुक्रमित और अधिक पठनीय तरीके से निकालने के लिए किया जा सकता है।
4.2 स्क्रैपी
स्क्रेपी एक ओपन-सोर्स और सहयोगी ढांचा है जो आपको वेबसाइटों से जल्दी और सीधे डेटा निकालने के लिए आवश्यक है। इस उपकरण का उपयोग एपीआई का उपयोग करके डेटा निकालने के लिए किया जा सकता है। इसे एक सामान्य-उद्देश्य वाले वेब क्रॉलर के रूप में भी इस्तेमाल किया जा सकता है। इस प्रकार, स्क्रेपी एक एप्लिकेशन फ्रेमवर्क है जिसका उपयोग वेब स्पाइडर लिखने के लिए किया जा सकता है जो वेबसाइटों को क्रॉल करते हैं और उनसे डेटा निकालते हैं।
5. मशीन लर्निंग/डीप लर्निंग -
निम्नलिखित पुस्तकालय वर्गीकरण, प्रतिगमन, क्लस्टरिंग और तंत्रिका नेटवर्क जैसे विभिन्न मॉडलों को आयात करने में मदद करते हैं। ये पुस्तकालय आधुनिक दुनिया में मौजूद किसी भी प्रकार की तकनीक से मशीन लर्निंग और डीप लर्निंग को अलग बनाते हैं।
5.1 विज्ञान सीखें
स्किकिट-लर्न शायद पायथन में मशीन लर्निंग के लिए सबसे उपयोगी लाइब्रेरी है। स्केलेर लाइब्रेरी में मशीन लर्निंग और सांख्यिकीय मॉडलिंग के लिए बहुत सारे कुशल उपकरण हैं, जिनमें वर्गीकरण, प्रतिगमन, क्लस्टरिंग और आयामीता में कमी शामिल है।
5.2 एक्सजीबूस्ट
XGBoost एक सॉफ्टवेयर लाइब्रेरी है जिसे आप अपनी मशीन पर डाउनलोड और इंस्टॉल कर सकते हैं और फिर विभिन्न इंटरफेस से एक्सेस कर सकते हैं। यह एक एल्गोरिथम प्रदान करता है जिसे ग्रेडिएंट बूस्टिंग फ्रेमवर्क का उपयोग करके कार्यान्वित किया जाता है। इसके जीथब पेज के अनुसार:
XGBoost एक अनुकूलित वितरित ग्रेडिएंट बूस्टिंग लाइब्रेरी है जिसे अत्यधिक कुशल , लचीला और पोर्टेबल होने के लिए डिज़ाइन किया गया है ।
अधिकांश कागल प्रतियोगिताएं इस पुस्तकालय का उपयोग करके जीती जाती हैं, जो वास्तविक दुनिया की स्थितियों में उत्कृष्ट परिणाम देती हैं।
5.3 केरा
केरस एक ओपन-सोर्स सॉफ्टवेयर लाइब्रेरी है जो कृत्रिम तंत्रिका नेटवर्क के लिए पायथन इंटरफेस प्रदान करती है। केरस TensorFlow लाइब्रेरी के लिए एक इंटरफ़ेस के रूप में कार्य करता है।
केरस उपयोगकर्ताओं को स्मार्टफोन (आईओएस और एंड्रॉइड), वेब या जावा वर्चुअल मशीन पर गहरे मॉडल बनाने की अनुमति देता है। यह ग्राफिक्स प्रोसेसिंग यूनिट्स (जीपीयू) और टेंसर प्रोसेसिंग यूनिट्स (टीपीयू) के समूहों पर डीप-लर्निंग मॉडल के वितरित प्रशिक्षण के उपयोग की भी अनुमति देता है।
5.4 टेंसरफ्लो
TensorFlow मशीन लर्निंग और आर्टिफिशियल इंटेलिजेंस के लिए एक फ्री और ओपन-सोर्स सॉफ्टवेयर लाइब्रेरी है। इसका उपयोग कई प्रकार के कार्यों में किया जा सकता है, लेकिन यह गहरे तंत्रिका नेटवर्क के प्रशिक्षण और अनुमान पर केंद्रित है।
5.5 पाइटॉर्च
PyTorch एक अनुकूलित टेंसर लाइब्रेरी है जिसका उपयोग मुख्य रूप से GPU और CPU का उपयोग करके डीप लर्निंग अनुप्रयोगों के लिए किया जाता है। यह पायथन के लिए एक ओपन-सोर्स मशीन लर्निंग लाइब्रेरी है, जिसे मुख्य रूप से फेसबुक एआई रिसर्च टीम द्वारा विकसित किया गया है। यह व्यापक रूप से उपयोग की जाने वाली मशीन लर्निंग लाइब्रेरी में से एक है, अन्य TensorFlow और Keras हैं।
6. प्राकृतिक भाषा टूलकिट (एनएलटीके) -
प्राकृतिक भाषा टूलकिट, या अधिक सामान्यतः एनएलटीके, पायथन प्रोग्रामिंग भाषा में लिखित अंग्रेजी के लिए प्रतीकात्मक और सांख्यिकीय प्राकृतिक भाषा प्रसंस्करण (एनएलपी) के लिए पुस्तकालयों और कार्यक्रमों का एक सूट है। एनएलटीके में ग्राफिकल प्रदर्शन और नमूना डेटा शामिल हैं।
एनएलटीके का उद्देश्य एनएलपी या निकट से संबंधित क्षेत्रों में अनुसंधान और शिक्षण का समर्थन करना है, जिसमें अनुभवजन्य भाषाविज्ञान, संज्ञानात्मक विज्ञान, कृत्रिम बुद्धि, सूचना पुनर्प्राप्ति और मशीन सीखने शामिल हैं।
निष्कर्ष
अब, चूंकि आप लगभग सभी मूल्यवान पुस्तकालयों से अवगत हैं, जिनका सामना आप डेटा साइंस और मशीन लर्निंग की अपनी यात्रा में कर सकते हैं, हम उसी में कुछ रोमांचक अंतर्दृष्टि और कोडिंग के लिए आगे बढ़ सकते हैं।
आपको धन्यवाद,
पिछला पोस्ट: पर्यवेक्षित शिक्षण के लिए आपका मार्गदर्शक — वर्गीकरण