जब हम के-फोल्ड क्रॉस सत्यापन करते हैं, तो क्या हमें उस क्लासिफायर का उपयोग करना चाहिए जिसमें सबसे अधिक परीक्षण सटीकता हो? क्रॉस वैरिफिकेशन से क्लासिफायर होने में आमतौर पर सबसे अच्छा तरीका क्या है?
जब हम के-फोल्ड क्रॉस सत्यापन करते हैं, तो क्या हमें उस क्लासिफायर का उपयोग करना चाहिए जिसमें सबसे अधिक परीक्षण सटीकता हो? क्रॉस वैरिफिकेशन से क्लासिफायर होने में आमतौर पर सबसे अच्छा तरीका क्या है?
जवाबों:
जब आप इन दोनों में से कोई भी कार्य करना चाहते हैं, तो आप क्रॉस-वेरीगेशन करते हैं:
मॉडल चयन विभिन्न परिदृश्यों में आ सकता है:
(कृपया ध्यान दें कि यदि आप दोनों एक एल्गोरिथ्म का चयन कर रहे हैं - इसे मॉडल कहना बेहतर है - और हाइपर-पैरामीटर खोज भी कर रहे हैं, तो आपको नेस्टेड क्रॉस वैलिडेशन करने की आवश्यकता है। क्या नेस्टेड-सीवी वास्तव में आवश्यक है? )
क्रॉस-वैलिडेशन कुछ हद तक सुनिश्चित करता है कि त्रुटि अनुमान उस मॉडल के लिए सामान्यीकरण त्रुटि के रूप में निकटतम संभव है (हालांकि यह लगभग बहुत कठिन है)। सिलवटों के बीच औसत त्रुटि का अवलोकन करते समय आपके पास पूर्ण डेटासेट पर निर्मित मॉडल के लिए अपेक्षित त्रुटि का एक अच्छा प्रक्षेपण हो सकता है। यह भविष्यवाणी के विचरण का निरीक्षण करने के लिए भी महत्वपूर्ण है, यह है कि, त्रुटि कितनी बार गुना से भिन्न होती है। यदि विविधता बहुत अधिक है (काफी भिन्न मूल्य) तो मॉडल अस्थिर हो जाएगा। बूटस्ट्रैपिंग इस अर्थ में अच्छा अनुमान प्रदान करने वाली दूसरी विधि है। मेरा सुझाव है कि "एलीमेंट ऑफ स्टैटिस्टिकल लर्निंग" बुक पर सेक्शन 7 को ध्यान से पढ़ें: ईएलएस-स्टैंडफोर्ड
जैसा कि पहले उल्लेख किया गया है कि आपको किसी भी सिलवटों में निर्मित मॉडल नहीं लेना चाहिए। इसके बजाय, आपको पूर्ण डेटासेट के साथ मॉडल का पुनर्निर्माण करना होगा (वह जो सिलवटों में विभाजित हो गया था)। यदि आपके पास एक अलग परीक्षण सेट है, तो आप सीवी द्वारा प्राप्त की तुलना में एक समान (और निश्चित रूप से उच्चतर) त्रुटि प्राप्त करते हुए, इस अंतिम मॉडल की कोशिश करने के लिए इसका उपयोग कर सकते हैं। हालांकि, आपको सीवी प्रक्रिया द्वारा दी गई अनुमानित त्रुटि पर भरोसा करना चाहिए।
विभिन्न मॉडलों (एल्गोरिथ्म संयोजन, आदि) के साथ सीवी का प्रदर्शन करने के बाद, उस त्रुटि के बारे में बेहतर प्रदर्शन करने वाले और सिलवटों के बीच इसके विचरण को चुना। आपको संपूर्ण डेटासेट के साथ मॉडल का पुनर्निर्माण करना होगा। यहां एक सामान्य भ्रम की स्थिति आती है: हम मॉडल चयन का उल्लेख करते हैं, यह सोचकर कि मॉडल डेटा पर तैयार किया गया अनुमानित मॉडल है, लेकिन इस मामले में यह आपके द्वारा लागू एल्गोरिदम + प्रीप्रोसेसिंग प्रक्रियाओं के संयोजन को संदर्भित करता है। इसलिए, आपको उस वास्तविक मॉडल को प्राप्त करने के लिए जिसे आपको भविष्यवाणियों / वर्गीकरण बनाने की आवश्यकता है, जिसे आपको पूरे डेटासेट पर विजेता संयोजन का उपयोग करके बनाने की आवश्यकता है।
ध्यान देने वाली अंतिम बात यह है कि यदि आप किसी भी प्रकार की प्रीप्रोसेसिंग का उपयोग कर रहे हैं तो क्लास की जानकारी (फीचर का चयन, एलडीए डायनेमिकिटी में कमी आदि) का उपयोग हर हाल में किया जाना चाहिए, न कि पहले डेटा पर। यह एक महत्वपूर्ण पहलू है। यदि आप प्रीप्रोसेसिंग विधियों को लागू कर रहे हैं तो वही काम करना चाहिए जिसमें डेटा (पीसीए, सामान्यीकरण, मानकीकरण, आदि) की प्रत्यक्ष जानकारी शामिल हो। हालाँकि, आप प्रीप्रोसेसिंग लागू कर सकते हैं जो डेटा से निर्भर नहीं है (विशेषज्ञ की राय के बाद एक चर को हटाना, लेकिन यह स्पष्ट है)। यह वीडियो उस दिशा में आपकी मदद कर सकता है: सही और गलत तरीके से सीवी
यहाँ, विषय के बारे में एक अंतिम अच्छी व्याख्या: CV और मॉडल का चयन
नहीं, आप के-फोल्ड क्रॉस-वेलिडेशन के दौरान बनाए गए किसी भी क्लासिफायर का चयन नहीं करते हैं। सबसे पहले, क्रॉस-वैलिडेशन का उद्देश्य एक भविष्य कहनेवाला मॉडल के साथ नहीं आना है, लेकिन यह आकलन करने के लिए कि व्यवहार में एक सटीक मॉडल कितना सटीक प्रदर्शन करेगा। सभी में से एक, तर्क के लिए, मान लें कि आप k = 10 के साथ k- गुना क्रॉस-मान्यता का उपयोग करने वाले थे, यह पता लगाने के लिए कि दिए गए वर्गीकरण समस्या को हल करने में तीन अलग वर्गीकरण एल्गोरिदम में से कौन सा सबसे उपयुक्त होगा। उस स्थिति में, डेटा यादृच्छिक रूप से बराबर आकार के भागों में विभाजित होता है। भागों में से एक परीक्षण के लिए आरक्षित है और बाकी के -1 भागों को प्रशिक्षण के लिए उपयोग किया जाएगा। क्रॉस-वेलिडेशन प्रक्रिया को k (गुना) बार दोहराया जाता है ताकि प्रत्येक पुनरावृत्ति पर अलग-अलग भाग का उपयोग परीक्षण के लिए किया जाए। क्रॉस-वैलिडेशन चलाने के बाद आप प्रत्येक गुना से परिणाम देखते हैं और आश्चर्य करते हैं कि कौन सा वर्गीकरण एल्गोरिदम (प्रशिक्षित मॉडल में से कोई भी नहीं!) सबसे उपयुक्त है। आप उस एल्गोरिथ्म का चयन नहीं करना चाहते हैं जिसमें 10 पुनरावृत्तियों में से एक पर उच्चतम परीक्षण सटीकता है, क्योंकि शायद यह सिर्फ यादृच्छिक रूप से हुआ है कि उस विशेष पुनरावृत्ति पर परीक्षण डेटा में बहुत आसान उदाहरण शामिल थे, जो तब उच्च परीक्षण सटीकता का नेतृत्व करते हैं। आप जो करना चाहते हैं, वह एल्गोरिदम चुनना है जिसने सर्वोत्तम सटीकता का उत्पादन किया जो तब उच्च परीक्षण सटीकता की ओर जाता है। आप जो करना चाहते हैं, वह एल्गोरिदम चुनना है जिसने सर्वोत्तम सटीकता का उत्पादन किया जो तब उच्च परीक्षण सटीकता की ओर जाता है। आप जो करना चाहते हैं, वह एल्गोरिदम चुनना है जिसने सर्वोत्तम सटीकता का उत्पादन कियासभी k सिलवटों पर औसत । अब जब आपने एल्गोरिथम चुना है, तो आप इसे अपने पूरे प्रशिक्षण डेटा का उपयोग करके प्रशिक्षित कर सकते हैं और जंगली में भविष्यवाणियां करना शुरू कर सकते हैं।
यह इस प्रश्न के दायरे से बाहर है, लेकिन आपको चयनित एल्गोरिथ्म का अधिकतम लाभ उठाने के लिए मॉडल के हाइपरपरमेटर्स (यदि कोई हो) का भी अनुकूलन करना चाहिए। आमतौर पर लोग क्रॉस-वैलिडेशन का उपयोग करके हाइपरपैरिमेट ऑप्टिमाइज़ेशन करते हैं।
तो चलिए मान लेते हैं कि आपके पास प्रशिक्षण है जिसमें से आप 80% प्रशिक्षण के रूप में उपयोग कर रहे हैं और 20% सत्यापन डेटा के रूप में। हम 80% पर ट्रेन कर सकते हैं और शेष 20% पर परीक्षण कर सकते हैं, लेकिन यह संभव है कि हमने जो 20% लिया है वह वास्तविक परीक्षण डेटा के समान नहीं है और बाद में खराब प्रदर्शन कर सकता है। तो, इसे रोकने के लिए हम k- गुना क्रॉस सत्यापन का उपयोग कर सकते हैं।
तो चलिए हम बताते हैं कि आपके पास अलग-अलग मॉडल हैं और यह जानना चाहते हैं कि आपके डेटासेट के साथ कौन बेहतर प्रदर्शन करता है, के-फोल्ड क्रॉस सत्यापन बढ़िया काम करता है। आप k- सत्यापन प्रदर्शन पर सत्यापन त्रुटियों को जान सकते हैं और उसके आधार पर बेहतर मॉडल चुन सकते हैं। यह आम तौर पर k- गुना क्रॉस सत्यापन के लिए उद्देश्य है।
केवल एक मॉडल में आ रहा है और यदि आप k- गुना क्रॉस-सत्यापन के साथ जाँच कर रहे हैं, तो आप परीक्षण डेटा की त्रुटियों का लगभग अनुमान लगा सकते हैं, लेकिन when you are actually training it finally, you can use the complete training data
(क्योंकि यह यहाँ माना जाता है कि पूरा डेटा एक साथ इसके एक भाग से बेहतर प्रदर्शन करेगा। .यह कभी-कभी मामला नहीं हो सकता है, लेकिन यह सामान्य धारणा है।)