कुछ व्याख्यान और ट्यूटोरियल में मैंने देखा है, वे आपके डेटा को तीन भागों में विभाजित करने का सुझाव देते हैं: प्रशिक्षण, सत्यापन और परीक्षण। लेकिन यह स्पष्ट नहीं है कि परीक्षण डेटासेट का उपयोग कैसे किया जाना चाहिए, और न ही यह दृष्टिकोण पूरे डेटा सेट पर क्रॉस-सत्यापन से बेहतर कैसे है।
मान लीजिए कि हमने परीक्षण सेट के रूप में अपने डेटा का 20% बचाया है। फिर हम बाकी को लेते हैं, इसे k सिलवटों में विभाजित करते हैं और, क्रॉस-सत्यापन का उपयोग करते हुए, हम उस मॉडल को ढूंढते हैं जो इस डेटासेट से अज्ञात डेटा पर सबसे अच्छा पूर्वानुमान बनाता है। मान लीजिए कि हमने पाया सबसे अच्छा मॉडल हमें 75% सटीकता देता है ।
विभिन्न प्रश्नोत्तर वेबसाइटों पर विभिन्न ट्यूटोरियल और बहुत सारे प्रश्न कहते हैं कि अब हम अपने मॉडल को एक सहेजे गए (परीक्षण) डेटासेट पर सत्यापित कर सकते हैं। लेकिन मैं अभी भी नहीं मिल सकता है कि यह कैसे किया जाता है, और न ही यह क्या है।
मान लें कि हमें परीक्षण डेटासेट पर 70% की सटीकता प्राप्त हुई है । तो हम आगे क्या करते हैं? क्या हम एक और मॉडल की कोशिश करते हैं, और फिर एक और, जब तक हम अपने परीक्षण डाटासेट पर एक उच्च अंक प्राप्त नहीं करेंगे? लेकिन इस मामले में यह वास्तव में ऐसा लगता है कि हम केवल उस मॉडल को खोज लेंगे जो हमारे सीमित (केवल 20%) परीक्षण सेट पर फिट बैठता है । इसका मतलब यह नहीं है कि हम उस मॉडल को खोज लेंगे जो सामान्य रूप से सबसे अच्छा है।
इसके अलावा, हम इस स्कोर को मॉडल के सामान्य मूल्यांकन के रूप में कैसे मान सकते हैं, अगर इसकी गणना केवल एक सीमित डेटा सेट पर की जाती है? यदि यह स्कोर कम है, तो शायद हम बदकिस्मत थे और "खराब" टेस्ट डेटा का चयन किया।
दूसरी ओर, यदि हम अपने पास मौजूद सभी डेटा का उपयोग करते हैं और फिर के-फोल्ड क्रॉस-वेलिडेशन का उपयोग करके मॉडल का चयन करते हैं, तो हमें वह मॉडल मिलेगा जो हमारे पास मौजूद संपूर्ण डेटा सेट से अज्ञात डेटा पर सबसे अच्छी भविष्यवाणी करता है।