क्या हमें k- गुना क्रॉस-सत्यापन का उपयोग करते समय एक परीक्षण सेट की आवश्यकता है?


21

मैं k- गुना सत्यापन के बारे में पढ़ रहा हूं, और मैं यह सुनिश्चित करना चाहता हूं कि मैं समझता हूं कि यह कैसे काम करता है।

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

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


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

2
... जिसका अर्थ है कि जब भी आप हाइपरपैरिमेट ऑप्टिमाइज़ेशन / मॉडल ट्यूनिंग के लिए "सत्यापन" परिणामों का उपयोग करते हैं, तो आपको सत्यापन का एक और चरण चाहिए जो उस ट्यूनिंग से स्वतंत्र हो। दोनों चरणों के लिए आप या तो क्रॉस सत्यापन का उपयोग कर सकते हैं या (या आउट-ऑफ-बूटस्ट्रैप या ...) पकड़ सकते हैं। CV + CV को नेस्टेड CV कहा जाता है, होल्ड आउट + होल्ड आउट आपके द्वारा बताए गए 3 सेट सेटअप की ओर जाता है
cbeleites मोनिका

जवाबों:


9

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

हाँ। एक नियम के रूप में, आपके मॉडल को बदलने के लिए परीक्षण सेट का उपयोग कभी नहीं किया जाना चाहिए (उदाहरण के लिए, इसके हाइपरपरमेटर्स)।

हालांकि, क्रॉस-मान्यता कभी-कभी हाइपरपरमीटर ट्यूनिंग के अलावा अन्य उद्देश्यों के लिए उपयोग की जा सकती है, उदाहरण के लिए यह निर्धारित करना कि ट्रेन / परीक्षण विभाजन किस हद तक परिणाम को प्रभावित करता है।


6
+1 लेकिन आप क्रॉस-वेलिडेशन + टेस्ट सेट के विकल्प के रूप में नेस्टेड क्रॉस-वेलिडेशन का उल्लेख करना चाहते हैं।
अमीबा का कहना है कि मोनिका

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

3

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

हालाँकि, विशेष रूप से छोटे डेटासेट में अतिरिक्त विभाजन एक छोटे प्रशिक्षण सेट और खराब मॉडल के परिणामस्वरूप हो सकता है।


2
यह प्रश्न का वास्तविक उत्तर नहीं है।
माइकल आर। चेरिक

क्या आप इसका विस्तार कर सकते हैं ताकि यह स्वीकृत उत्तर और काफी विस्तृत टिप्पणियों में कुछ जोड़ता है?
mdewey

1

आदर्श रूप से, सत्यापन (मॉडल चयन के लिए) और अंतिम परीक्षण को मिश्रित नहीं किया जाना चाहिए। हालाँकि, यदि आपका k मान अधिक है, या यह लीव-वन-आउट है, तो परीक्षा परिणाम का उपयोग करने के लिए आपका मॉडल चयन कम हानिकारक है। इस परिदृश्य में, यदि आप एक अकादमिक पेपर लिख रहे हैं, तो इसे न करें (जब तक आप समझाने की जहमत न उठाएं) - अर्थ हमेशा एक अलग परीक्षण सेट होता है। यदि आप एक व्यावहारिक परियोजना का निर्माण कर रहे हैं, तो ऐसा करना ठीक है।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.