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