S23L04 – पायथन का उपयोग करके SVM कार्यान्वयन

html

Python में सपोर्ट वेक्टर मशीन (SVM) लागू करना: एक व्यापक गाइड

Python की scikit-learn लाइब्रेरी का उपयोग करके सपोर्ट वेक्टर मशीन (SVM) लागू करने पर हमारे गहन मार्गदर्शिका में आपका स्वागत है। चाहे आप डेटा साइंस के उत्साही हों या एक अनुभवी पेशेवर, यह लेख आपको पूरे प्रक्रिया से गुजराएगा—SVM की बुनियादी अवधारणाओं को समझने से लेकर Jupyter Notebook का उपयोग करके पूर्ण कार्यान्वयन तक। चलिए शुरू करते हैं!

सामग्री सूची

  1. सपोर्ट वेक्टर मशीन (SVM) का परिचय
  2. पर्यावरण सेटअप करना
  3. डेटा अन्वेषण और पूर्वसंसाधन
  4. डेटासेट को विभाजित करना
  5. फीचर स्केलिंग
  6. मॉडल बनाना और उनका मूल्यांकन करना
  7. निर्णय क्षेत्रों का विज़ुअलाइज़ेशन
  8. निष्कर्ष
  9. संदर्भ

1. सपोर्ट वेक्टर मशीन (SVM) का परिचय

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

SVM की मुख्य विशेषताएँ:

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

2. पर्यावरण सेटअप करना

शुरू करने से पहले, सुनिश्चित करें कि आपके पास आवश्यक लाइब्रेरी इंस्टॉल हैं। आप उन्हें pip का उपयोग करके इंस्टॉल कर सकते हैं:

ध्यान दें: mlxtend निर्णय क्षेत्रों को विज़ुअलाइज़ करने के लिए उपयोग किया जाता है।

3. डेटा अन्वेषण और पूर्वसंसाधन

डेटा पूर्वसंसाधन किसी भी मशीन लर्निंग पाइपलाइन में एक महत्वपूर्ण चरण है। इसमें डेटा की सफाई, गायब मानों को संभालना, श्रेणीनुसार वेरिएबल्स को एन्कोड करना, और प्रासंगिक फीचर्स का चयन करना शामिल है।

3.1 गायब डेटा को संभालना

गायब डेटा मशीन लर्निंग मॉडलों के प्रदर्शन को प्रतिकूल रूप से प्रभावित कर सकता है। हम गायब मानों को इस प्रकार संभालेंगे:

  • संख्यात्मक फीचर्स: गायब मानों को माध्य से प्रतिस्थापित करना।
  • श्रेणीनुसार फीचर्स: सबसे अधिक आवृत्ति वाले मान से गायब मानों को प्रतिस्थापित करना।

3.2 श्रेणीनुसार वेरिएबल्स को एन्कोड करना

मशीन लर्निंग मॉडल को संख्यात्मक इनपुट की आवश्यकता होती है। हम श्रेणीनुसार वेरिएबल्स को इस प्रकार परिवर्तित करेंगे:

  • लेबल एन्कोडिंग: द्विआधारी या उच्च-कैडरिनलिटी श्रेणियों के लिए।
  • वन-हॉट एन्कोडिंग: सीमित संख्या में अद्वितीय मानों वाली श्रेणियों के लिए।

3.3 फीचर चयन

प्रासंगिक फीचर्स का चयन मॉडल के प्रदर्शन में सुधार कर सकता है और कंप्यूटेशनल जटिलता को कम कर सकता है। हम SelectKBest का उपयोग करेंगे जो Chi-Squared सांख्यिकी के साथ होता है।

4. डेटासेट को विभाजित करना

हम डेटासेट को प्रशिक्षण और परीक्षण सेट में विभाजित करेंगे ताकि मॉडल के प्रदर्शन का मूल्यांकन अनदेखे डेटा पर किया जा सके।

5. फीचर स्केलिंग

फीचर स्केलिंग यह सुनिश्चित करती है कि सभी फीचर्स मॉडल के प्रदर्शन में समान रूप से योगदान दें।

6. मॉडल बनाना और उनका मूल्यांकन करना

हम उनके प्रदर्शन की तुलना करने के लिए चार विभिन्न मॉडल बनाएंगे:

  • K-Nearest Neighbors (KNN)
  • लॉजिस्टिक रिग्रेशन
  • गॉसियन नाइवे बेयस
  • सपोर्ट वेक्टर मशीन (SVM)

6.1 K-Nearest Neighbors (KNN)

आउटपुट:

6.2 लॉजिस्टिक रिग्रेशन

आउटपुट:

6.3 गॉसियन नाइवे बेयस

आउटपुट:

6.4 सपोर्ट वेक्टर मशीन (SVM)

आउटपुट:

मॉडल सटीकताओं का सारांश:

मॉडल सटीकता
KNN 80.03%
लॉजिस्टिक रिग्रेशन 82.97%
गॉसियन नाइवे बेयस 79.60%
SVM 82.82%

मूल्यांकन किए गए मॉडलों में, लॉजिस्टिक रिग्रेशन थोड़ी हद तक SVM से बेहतर प्रदर्शन करता है, जिसके बाद करीब से SVM स्वयं आता है।

7. निर्णय क्षेत्रों का विज़ुअलाइज़ेशन

निर्णय सीमाओं का विज़ुअलाइज़ेशन यह समझने में मदद करता है कि विभिन्न मॉडल डेटा को कैसे वर्गीकृत करते हैं।

विज़ुअलाइज़ेशन:

प्रत्येक मॉडल की निर्णय सीमाएँ अलग-अलग प्लॉट में प्रदर्शित की जाएंगी, जो यह दर्शाती हैं कि वे फीचर स्पेस में विभिन्न क्षेत्रों को कैसे वर्गीकृत करते हैं।

8. निष्कर्ष

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

मुख्य सीख:

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

इस व्यापक दृष्टिकोण का पालन करके, आप प्रभावी रूप से SVM और अन्य वर्गीकरण एल्गोरिदम को लागू कर सकते हैं ताकि वास्तविक दुनिया की समस्याओं को हल किया जा सके।

9. संदर्भ


पढ़ने के लिए धन्यवाद! यदि आपके कोई प्रश्न या प्रतिक्रिया हैं, तो कृपया नीचे टिप्पणी छोड़ें।

Share your love