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

क्रॉस-वैलिडेशन को समझना

क्रॉस-वैलिडेशन में डेटासेट को कई हिस्सों में विभाजित करना शामिल है, या फोल्ड करना शामिल है। मॉडल को इन फोल्डों की एक सबसेट पर प्रशिक्षित किया जाता है और शेष गुना पर परीक्षण किया जाता है। इस प्रक्रिया को कई बार दोहराया जाता है, प्रत्येक बार परीक्षण के लिए इस्तेमाल किए गए विभिन्न फोल्ड के साथ। परिणाम तब एक समग्र प्रदर्शन मीट्रिक प्रदान करने के लिए औसतन होते हैं।

क्रॉस-वैलिडेशन के प्रकार

सबसे आम प्रकार में शामिल हैं:

  • k-Fold Cross-Validation: कश्मीर बराबर भागों में डेटा विभाजित, K-1 भागों पर प्रशिक्षण और शेष भाग पर परीक्षण.
  • ]Stratified k-Fold: सुनिश्चित करता है कि प्रत्येक गुना पूरे डेटासेट के वर्ग वितरण को बनाए रखता है।
  • Leave-One-Out (LOO): प्रत्येक डेटा बिंदु के लिए बार-बार प्रशिक्षण के लिए परीक्षण और बाकी के लिए एक एकल डेटा बिंदु का उपयोग करता है।

अभ्यास में क्रॉस-वैलिडेशन को कार्यान्वित करना

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

उदाहरण कोड स्निपेट:

]]sklearn.model selection import cross val score]

score = cross val score(model, X, y, cv=5)

यह कोड 5-fold क्रॉस-वैलिडेशन करता है और प्रत्येक गुना के लिए स्कोर वापस करता है।