समर्थन वेक्टर मशीनों के लिए सीखने के मापदंडों का चयन करने के संदर्भ में कोई व्यक्ति उचित रूप से क्रॉस-वैलिडेशन कैसे लागू करता है?


9

अद्भुत libsvm पैकेज एक अजगर इंटरफ़ेस और एक फ़ाइल "easy.py" प्रदान करता है जो स्वचालित रूप से सीखने के मापदंडों (लागत और गामा) की खोज करता है जो कि क्लासिफायर की सटीकता को अधिकतम करता है। सीखने के मापदंडों के एक निर्धारित उम्मीदवार के भीतर, सटीकता को क्रॉस-मान्यता द्वारा संचालित किया जाता है, लेकिन मुझे ऐसा लगता है कि यह क्रॉस-वैलिडेशन के उद्देश्य को कम करता है। अर्थात्, सीखने के मापदंडों के रूप में इनफ़ॉफ़र को स्वयं एक तरीके से चुना जा सकता है जिससे डेटा का ओवर-फिट हो सकता है, मुझे लगता है कि खोज के स्तर पर क्रॉस सत्यापन को लागू करने के लिए अधिक उपयुक्त दृष्टिकोण होगा: खोज प्रदर्शन एक प्रशिक्षण डेटा सेट पर और फिर एक अलग परीक्षण डेटा सेट के भीतर मूल्यांकन द्वारा अंतिम रूप से चुने गए सीखने के मापदंडों से उत्पन्न एसवीएम की अंतिम सटीकता का मूल्यांकन करें। या मुझसे यहां कुछ छूट रहा है?

जवाबों:


10

यदि आप पूर्ण प्रशिक्षण डेटा में हाइपर-पैरामीटर्स सीखते हैं और फिर क्रॉस-वेलिडेट करते हैं, तो आपको एक आशावादी पक्षपाती प्रदर्शन अनुमान मिलेगा, क्योंकि प्रत्येक तह में परीक्षण डेटा पहले से ही हाइपर-मापदंडों को सेट करने में उपयोग किया जाएगा, इसलिए हाइपर- चयनित मापदंडों को भाग में चुना जाता है क्योंकि वे परीक्षण सेट में डेटा के अनुरूप होते हैं। इस तरह पेश किए गए आशावादी पूर्वाग्रह अप्रत्याशित रूप से बड़े हो सकते हैं। Cawley और टैलबोट देखें , "मॉडल चयन में ओवर-फिटिंग और प्रदर्शन मूल्यांकन में बाद के चयन पूर्वाग्रह", JMLR 11 (Jul): 2079−2107, 2010।(विशेष रूप से खंड 5.3)। सबसे अच्छी बात यह है कि क्रॉस-वेलिडेशन को नेस्टेड किया जाता है। मूल विचार यह है कि आप मॉडल बनाने के लिए उपयोग की जाने वाली पूरी विधि को क्रॉस-वैलिडेट करते हैं, इसलिए मॉडल चयन (हाइपर-मापदंडों को चुनना) को मॉडल फिटिंग प्रक्रिया (जहां पैरामीटर निर्धारित किया जाता है) के हिस्से के रूप में व्यवहार करें और आप नहीं जा सकते बहुत गलत है।

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


अच्छा संदर्भ!
एंड्रयू

दूसरे पैराग्राफ में, आप फीचर सेलेक्शन भी कैसे करेंगे? क्या यह ठीक होगा: i) हाइपर पैरामीटर ऑप्टिमाइज़ेशन करें जैसा कि आपने ऊपर कहा (इष्टतम हाइपर पैरामीटर प्राप्त करना) ii) शीर्ष भविष्यवक्ताओं का एक सेट प्राप्त करने के लिए क्रॉस सत्यापन के एक और दौर में फ़ीचर चयन (फीचर चयन को विभाजित किए गए प्रशिक्षण डेटा पर चलाया जाता है) हाइपर पैरामीटर ऑप्टिमाइज़ेशन में जो भी रेज़मैप्लिंग विधि का उपयोग किया जाता है उसका उपयोग करके एक सबट्रेनिंग और सत्यापन सेट)। iii) पूर्ण प्रशिक्षण डेटा पर सेट उच्च हाइपर पैरामीटर और शीर्ष भविष्यवक्ता के साथ एक मॉडल को प्रशिक्षित करें। अलग-अलग टेस्ट सेट पर टेस्ट करें।
sma

ii पर थोड़ा और अधिक स्पष्ट होना) शीर्ष भविष्यवाणियों का एक सेट प्राप्त करने के लिए क्रॉस सत्यापन के एक और दौर में सुविधा चयन को प्रशिक्षित करना (प्रशिक्षण डेटा हाइपर पैरामीटर अनुकूलन में उपयोग किए गए resampling विधि के माध्यम से सेटिंग को घटाना और सत्यापन में विभाजित किया जाता है। फिर सुविधा चयन चलाया जाता है। डेटा घटाना)।
sma

वैकल्पिक रूप से, क्या कोई शीर्ष सुविधा सेट प्राप्त करने के लिए क्रॉस सत्यापन के माध्यम से पहले सुविधा का चयन कर सकता है, फिर शीर्ष फीचर सेट (क्रॉस सत्यापन में ऊपर) का उपयोग करके ब्याज के जो भी मॉडल हैं, के हाइपर पैरामीटर ट्यूनिंग करें? फिर केवल पहले से निर्धारित शीर्ष सुविधा सेट के साथ पूर्ण प्रशिक्षण डेटा पर अपने इष्टतम हाइपर मापदंडों के साथ मॉडल को प्रशिक्षित करें, और अलग-अलग परीक्षण सेट पर परीक्षण करें?
sma

0

मुझे नहीं लगता कि LIBSVM के मामले में क्रॉस-मान्यता का दुरुपयोग किया जाता है क्योंकि यह परीक्षण डेटा स्तर पर किया जाता है। यह सब आर-एफ कर्नेल के लिए सबसे अच्छा पैरामीटर के लिए k- गुना क्रॉस सत्यापन है और खोज करता है। मुझे आप से असहमत होने की जानकारी दें।


हाइपर-मापदंडों के चयन में परीक्षण डेटा को किसी भी तरह से शामिल नहीं किया जाना चाहिए, क्योंकि इससे एक आशावादी पक्षपाती प्रदर्शन अनुमान होगा। हाइपर-मापदंडों को अनिवार्य रूप से चुनने पर एसवीएम को फिट करने का एक अभिन्न अंग माना जाना चाहिए, इसलिए परीक्षण प्रक्रिया को भी हाइपर-मापदंडों के चयन के कारण त्रुटि का परीक्षण करने की आवश्यकता है, मेरा पेपर देखें जिसे मैं प्रश्न के उत्तर में संदर्भित करता हूं (यह खुली पहुंच है)।
डिक्रान मार्सुपियल
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.