क्या मैं एक छोटे से सत्यापन सेट का उपयोग कर सकता हूं?


15

मैं डेटा को टेस्ट सेट और वैलिडेशन सेट में विभाजित करने के पीछे के तर्क को समझता हूं। मैं यह भी समझता हूं कि विभाजन का आकार स्थिति पर निर्भर करेगा लेकिन आम तौर पर 50/50 से 90/10 तक भिन्न होगा।

मैंने वर्तनी को सही करने और ~ 5m वाक्यों के डेटा सेट के साथ शुरुआत करने के लिए एक RNN बनाया। मैंने 500k वाक्यों को शेव किया और फिर शेष ~ 4.5m वाक्यों के साथ प्रशिक्षित किया। जब प्रशिक्षण हो जाता है तो मैं अपना सत्यापन सेट ले लेता हूं और सटीकता की गणना करता हूं।

दिलचस्प बात यह है कि मेरे सत्यापन के केवल 4% सेट के बाद मुझे 69.4% की सटीकता है और यह प्रतिशत किसी भी दिशा में 0.1% से अधिक नहीं बदलता है। आखिरकार मैंने सिर्फ सत्यापन को छोटा कर दिया क्योंकि संख्या 69.5% पर अटकी हुई है।

तो क्यों मैं वैधता के लिए 10% का टुकड़ा काट दूं जब मैं शायद 1% के साथ दूर हो सकता हूं? फर्क पड़ता है क्या?


4
एक सामान्य उत्तर यह है कि एक नमूना आकार बड़ा है तो मैं कहूंगा कि 10,000 जनसंख्या का एक बहुत बड़ा प्रतिनिधि होगा। नमूना बढ़ाना, अगर इसे सही ढंग से खींचा गया था, तो महंगा हो सकता है जबकि आपके द्वारा देखा गया अनुमान उसी के बारे में होगा। एक विश्वास अंतराल अवधारणा के लिए देखें।
एलेक्सी बर्नकोव

जवाबों:


20

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

सरल सही / गलत वर्गीकरण सटीकता के लिए, आप के रूप में अनुमान की मानक त्रुटि की गणना कर सकते (बर्नौली चर का मानक विचलन), जहांpएक सही वर्गीकरण की संभावना है, औरnसत्यापन सेट का आकार है। बेशक आपपी कोनहीं जानते हैं, लेकिन आपको इसकी सीमा का कुछ अंदाजा हो सकता है। उदाहरण के लिए, मान लें कि आप 60-80% के बीच सटीकता की उम्मीद करते हैं, और आप चाहते हैं कि आपके अनुमान में मानक त्रुटि 0.1% से कम हो: anp(1p)/npnpn(सत्यापन सेट का आकार) कितना बड़ा होनाचाहिए? के लिएपी=0.6हम पाते हैं: n> 0.6 - 0.6 2

p(1p)/n<0.001
np=0.6 के लिएपी=0.8हम पाते हैं: n>0.8-0.82
n>0.60.620.0012=240,000
p=0.8 तो यह बताता है कि आप सत्यापन के लिए अपने 5 मिलियन डेटा नमूनों में से 5% से कम का उपयोग करके दूर हो सकते हैं। यदि आप उच्च प्रदर्शन की अपेक्षा करते हैं, तो यह प्रतिशत नीचे जाता है, या विशेष रूप से यदि आप अपने आउट-ऑफ-सैंपल प्रदर्शन अनुमान की निम्न मानक त्रुटि से संतुष्ट हैं (जैसेp=0.7और se <1% के लिए, तो आपको केवल 2100 सत्यापन नमूनों की आवश्यकता है , या आपके डेटा के बीस प्रतिशत से कम)।
n>0.80.820.0012=160,000
p=0.7

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

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


14
p(1p)p=1/2p(1p)=1/4p(1p)/n1/4n

11

इस समस्या की अच्छी चर्चा एंड्रयू एनजी ने Coursera.org पर अपने डीप लर्निंग कोर्स द्वारा प्रदान की है । जब वह नोट करता है, तो मानक विभाजन 8: 2, या 9: 1 की तरह मान्य होता है, यदि आपका डेटा मामूली रूप से बड़ा है, लेकिन कई वर्तमान मशीन सीखने की समस्याएं बहुत बड़ी मात्रा में डेटा का उपयोग करती हैं (जैसे आपके मामले में लाखों टिप्पणियों), और ऐसे परिदृश्य में आप परीक्षण सेट के रूप में 2%, 1%, या उससे भी कम डेटा छोड़ सकते हैं, अपने प्रशिक्षण सेट के लिए शेष सभी डेटा ले सकते हैं (वह वास्तव में एक dev सेट का उपयोग करने के लिए तर्क देता है)। जैसा कि वह तर्क देता है, जितना अधिक डेटा आप अपने एल्गोरिथ्म को खिलाते हैं, उसके प्रदर्शन के लिए बेहतर है और यह विशेष रूप से गहरी सीखने के लिए सच है * (वह यह भी नोट करता है कि यह गैर-गहरी सीखने की मशीन सीखने के एल्गोरिदम के लिए नहीं होना चाहिए)।

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

* - अस्वीकरण: मैं एंड्रयू एनजी के तर्कों को यहां दोहरा रहा हूं, मैं खुद को गहन शिक्षा के विशेषज्ञ के रूप में नहीं मानूंगा।


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

अधिक विशेष रूप से इस सप्ताह 1 में 'ट्रेन / देव / टेस्ट सेट' व्याख्यान में था की 'में सुधार दीप तंत्रिका नेटवर्क: Hyperparameter ट्यूनिंग, नियमितीकरण और अनुकूलन' कोर्स (। जो pt पूरे गहरी सीखने विशेषज्ञता के 2)
icc97

2
यहाँ व्याख्यान से पूर्ण उद्धरण दिया गया है: "तो इस उदाहरण में जहां आपके पास एक लाख उदाहरण हैं, अगर आपको अपने देव के लिए सिर्फ 10,000 और अपने परीक्षण के लिए 10,000 की आवश्यकता है, तो आपका अनुपात अधिक होगा जैसे कि 10,000 यह 1 मिलियन का 1% है इसलिए आप 'आपके पास 98% ट्रेन, 1% देव, 1% परीक्षण होगा। और मैंने ऐसे एप्लिकेशन भी देखे हैं, जहाँ यदि आपके पास एक लाख से अधिक उदाहरण हैं, तो आप 99.5% ट्रेन और 0.25% देव, 0.25% परीक्षण के साथ समाप्त हो सकते हैं। या शायद 0.4% देव, 0.1% परीक्षण। "
icc97

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