S24L01 – निर्णय वृक्ष और रैंडम फॉरेस्ट

पायथन में मौसम पूर्वानुमान के लिए निर्णय वृक्ष, रैंडम फॉरेस्ट, XGBoost और AdaBoost का कार्यान्वयन

सामग्री तालिका

  1. परिचय
  2. डेटासेट अवलोकन
  3. डेटा पूर्व-संसाधन
  4. मॉडल कार्यान्वयन और मूल्यांकन
  5. निर्णय क्षेत्रों का विज़ुअलाइजेशन
  6. निष्कर्ष
  7. संदर्भ

परिचय

मौसम की स्थितियों की भविष्यवाणी मशीन लर्निंग में एक क्लासिक समस्या है, जो कृषि, विमानन और आयोजन योजना जैसी विभिन्न उद्योगों के लिए मूल्यवान अंतर्दृष्टि प्रदान करती है। इस व्यापक मार्गदर्शिका में, हम कई मशीन लर्निंग मॉडल—जिसमें निर्णय वृक्ष, रैंडम फॉरेस्ट, XGBoost, और AdaBoost शामिल हैं—को लागू करने में गहराई से उतरेंगे ताकि Weather Australia डेटासेट का उपयोग करके यह भविष्यवाणी की जा सके कि क्या कल बारिश होगी। हम डेटा पूर्व-संसाधन, मॉडल प्रशिक्षण, मूल्यांकन, और यहां तक कि इन मॉडलों को वास्तविक जीवन की वेब अनुप्रयोगों में तैनात करने के बारे में चर्चा करेंगे।

डेटासेट अवलोकन

Weather Australia डेटासेट, जिसे Kaggle से प्राप्त किया गया है, में ऑस्ट्रेलिया के विभिन्न स्थानों पर दर्ज किए गए मौसम की स्थितियों से संबंधित 24 विशेषताएँ हैं। प्रमुख लक्ष्य RainTomorrow विशेषता की भविष्यवाणी करना है, जो यह संकेत देती है कि क्या अगले दिन बारिश होगी।

डेटासेट विशेषताएँ

  • Date: अवलोकन तिथि।
  • Location: मौसम स्टेशन का भौगोलिक स्थान।
  • MinTemp: °C में न्यूनतम तापमान।
  • MaxTemp: °C में अधिकतम तापमान।
  • Rainfall: मिमी में वर्षा की मात्रा।
  • Evaporation: मिमी में वाष्पीकरण।
  • Sunshine: धूप के घंटे।
  • WindGustDir: सबसे तेज़ हवा के झोंके का दिशा।
  • WindGustSpeed: सबसे तेज़ हवा के झोंके की गति km/h में।
  • WindDir9am: सुबह 9 बजे की हवा की दिशा।
  • WindDir3pm: दोपहर 3 बजे की हवा की दिशा।
  • …और भी बहुत कुछ।

डेटा पूर्व-संसाधन

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

गुम मानों को संभालना

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

संख्यात्मक डेटा

संख्यात्मक स्तंभों के लिए, हम गुम मानों को भरने के लिए मीन इम्प्यूटेशन का उपयोग करेंगे।

वर्गीकृत डेटा

वर्गीकृत स्तंभों के लिए, हम सबसे अधिक सामान्य इम्प्यूटेशन का उपयोग करेंगे।

वर्गीकृत चर की कोडिंग

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

फ़ीचर चयन

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

ट्रेन-टेस्ट विभाजन और फीचर स्केलिंग

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

मॉडल कार्यान्वयन और मूल्यांकन

हम विभिन्न मशीन लर्निंग मॉडल लागू करेंगे और उनके प्रदर्शन का एक्युरेसी स्कोर का उपयोग करके मूल्यांकन करेंगे।

के-निकटतम पड़ोसी (KNN)

KNN की एक्युरेसी: 0.80

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

लॉजिस्टिक रिग्रेशन की एक्युरेसी: 0.83

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

गॉसियन नायव बेयस की एक्युरेसी: 0.80

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

SVM की एक्युरेसी: 0.83

निर्णय वृक्ष

निर्णय वृक्ष की एक्युरेसी: 0.83

रैंडम फॉरेस्ट

रैंडम फॉरेस्ट की एक्युरेसी: 0.83

XGBoost और AdaBoost

हालांकि प्रारंभिक कार्यान्वयन में XGBoost और AdaBoost शामिल नहीं हैं, ये एंसेंबल विधियाँ मॉडल के प्रदर्शन को और बेहतर बना सकती हैं। यहाँ इन्हें लागू करने का संक्षिप्त उदाहरण दिया गया है:

XGBoost

AdaBoost

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

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

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

विज़ुअलाइजेशन आउटपुट: KNN क्लासिफायर द्वारा बनाए गए निर्णय सीमाओं को दर्शाने वाला एक प्लॉट।

निष्कर्ष

इस मार्गदर्शिका में, हमने विभिन्न मशीन लर्निंग मॉडलों—निर्णय वृक्ष, रैंडम फॉरेस्ट, लॉजिस्टिक रिग्रेशन, KNN, गॉसियन नायव बेयस, और SVM—को लागू करके Weather Australia डेटासेट का उपयोग करके मौसम की स्थितियों की भविष्यवाणी करने का पता लगाया है। प्रत्येक मॉडल ने प्रतिस्पर्धी एक्युरेसी स्कोर दिखाई, जिसमें लॉजिस्टिक रिग्रेशन, SVM, निर्णय वृक्ष, और रैंडम फॉरेस्ट ने लगभग 83% की एक्युरेसी हासिल की।

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

संदर्भ

Share your love