अपनी मशीन सीखने के मॉडल को सुधारने के 10 तरीके

अपनी मशीन सीखने के मॉडल को सुधारने के 10 तरीके - डमीज

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

सीखने के घटता अध्ययन

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

पायथन आपको विज्ञान-शिक्षा () फ़ंक्शन का उपयोग करके आसानी से सीखने के घटकों को आकर्षित करने में मदद करता है। क्रांति विश्लेषिकी ब्लॉग द्वारा वर्णित अनुसार आप कस्टम फ़ंक्शंस के साथ आर का उपयोग करके भी एक ही परिणाम प्राप्त कर सकते हैं।

क्रॉस-वैधीकरण का सही ढंग से उपयोग करना

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

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

  • स्नूपिंग
  • गलत नमूनाकरण

पायथन एक स्तरीकृत-के-फ़ोल्ड सीवी नमूना प्रदान करता है जब आप एक कारक के रूप में y पैरामीटर प्रदान करते हैं, तो कैरेट लाइब्रेरी के createFolds विधि का उपयोग करके नमूने स्तरीकृत कर सकते हैं।

सही त्रुटि या मैट्रिक स्कोर चुनना

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

उदाहरण बहुत मदद कर सकते हैं आप अकादमिक कागजात से और सार्वजनिक मशीन सीखने की प्रतियोगिताओं से उनमें से कई प्राप्त कर सकते हैं जो सावधानीपूर्वक डेटा और त्रुटि / मीट्रिक के मामले में विशिष्ट समस्याओं को परिभाषित करते हैं। एक प्रतियोगिता की खोज करें जिसका उद्देश्य और डेटा आपके समान हैं, और फिर अनुरोधित मीट्रिक की जांच करें

सर्वश्रेष्ठ हाइपर-पैरामीटर्स के लिए खोजना

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

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

कई मॉडल का परीक्षण करना

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

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

क्योंकि आपको उपभोक्ताओं में केवल दिलचस्पी हो सकती है, जो आपके प्रस्ताव का जवाब देने की सबसे अधिक संभावना रखते हैं, जो भविष्यवाणी की अधिकतम से लेकर कम से कम होने की संभावनाओं को लेकर आशंका करेंगे, यह बताता है कि आपके मॉडल सबसे ज्यादा आशाजनक ग्राहकों की भविष्यवाणी पर कितने अच्छे हैं। ये क्वेरा जवाब आपको यह देखने में मदद करती है कि चार्ट और लाभ कैसे उठाएं: आरओसी कर्व क्या है? और कर्व लिफ्ट क्या है? ।

कई मॉडल का परीक्षण करना और आत्मनिरीक्षण उन सुझावों को भी प्रदान कर सकते हैं जो फीचर सृजन के लिए बदलने की सुविधा प्रदान करते हैं, या जब आप सुविधा चयन करते हैं औसतन मॉडल

मशीन सीखने में कई मॉडल बनाने और कई अलग-अलग भविष्यवाणियां पैदा करना शामिल है, जो सभी अलग-अलग अपेक्षित त्रुटि प्रदर्शन के साथ हैं यह आपको आश्चर्यचकित कर सकता है कि आप मॉडल को एक साथ औसत से बेहतर परिणाम प्राप्त कर सकते हैं। सिद्धांत काफी सरल है: अनुमान भिन्नता यादृच्छिक है, इसलिए कई अलग-अलग मॉडलों के औसत से, आप

सिग्नल को बढ़ा सकते हैं और शोर को रद्द कर सकते हैं जो अक्सर स्वयं को रद्द कर देगा कभी-कभी एक एल्गोरिथ्म से परिणाम जो अच्छा प्रदर्शन करता है, एक सरल एल्गोरिथ्म से परिणाम के साथ मिश्रित होता है, जो काम नहीं करता, एक एल्गोरिथ्म का उपयोग करने से बेहतर पूर्वानुमान बना सकता हैरेखीय मॉडल जैसे सरल मॉडलों से दिए गए योगदान को कम मत समझें, जब आप अपने परिणामों को अधिक परिष्कृत एल्गोरिदम से आउटपुट के साथ जोड़ते हैं, जैसे ढाल बढ़ाने

स्टैकिंग मॉडल

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

जटिल लक्ष्य कार्यों का अनुमान लगाते समय एक दो-चरण दृष्टिकोण का उपयोग करना उचित है आप उन्हें केवल एक साथ कई मॉडल का उपयोग करके और फिर एक स्मार्ट तरीके से गुणन के परिणाम को जोड़कर अनुमानित कर सकते हैं। आप एक साधारण रसद प्रतिगमन या एक दूसरे चरण के मॉडल के रूप में जटिल पेड़ के टुकड़े का उपयोग कर सकते हैं।

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

सुविधा इंजीनियरिंग लागू करना

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

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

हालांकि, एल्गोरिदम सीखने की कोशिश कर रहा है कि डेटा की समस्या को हल करने के लिए आवश्यक विधि की अपनी विशेषज्ञता और समझ के लिए वास्तव में कोई विकल्प नहीं बदल सकता है आप अपने ज्ञान और दुनिया में चीजें कैसे काम करते हैं इसके विचारों के आधार पर विशेषताओं बना सकते हैं। मनुष्य ऐसा करने में अभी भी अपराजेय हैं, और मशीन आसानी से उन्हें प्रतिस्थापित नहीं कर सकते।

फीचर्स और उदाहरणों का चयन करना

अनुमान का अंतर उच्च है और आपका एल्गोरिथ्म कई सुविधाओं पर भरोसा कर रहा है, तो आपको बेहतर परिणामों के लिए कुछ विशेषताओं को प्रभावित करना होगा इस संदर्भ में, आपके डेटा मैट्रिक्स में सबसे अधिक अनुमानित मूल्य वाले लोगों को चुनकर सुविधाओं की संख्या को कम करना उचित है।

रैखिक मॉडल, रैखिक समर्थन वेक्टर मशीनों या तंत्रिका नेटवर्क के साथ काम करते समय, नियमितकरण हमेशा एक विकल्प होता है। L1 और L2 दोनों, बेमानी चर के प्रभाव को कम कर सकते हैं या उन्हें मॉडल से हटा सकते हैं। स्थिरता चयन कम उपयोगी चर को बाहर करने की एल 1 क्षमता का लाभ उठाते हैं। इस तकनीक ने बहिष्कार की पुष्टि करने के लिए प्रशिक्षण डेटा को पुनः प्रस्तुत किया है।

आप साइकिट-सीखने की वेबसाइट पर उदाहरण देखकर स्थिरता चयन के बारे में अधिक जान सकते हैं। इसके अलावा, आप यादृच्छिकतावादी संशोधन और यादृच्छिक लससो वैज्ञानिक-सीखने का उपयोग कर रैखिक_मॉडेल मॉड्यूल में अभ्यास कर सकते हैं।

अधिक डेटा ढूंढना

सभी पिछले सुझावों की कोशिश करने के बाद, आपके पास अभी भी भविष्यवाणी की एक उच्च विचरण हो सकती है। इस मामले में, आपका एकमात्र विकल्प आपके प्रशिक्षण सेट आकार को बढ़ाने के लिए है नया डेटा प्रदान करके अपना नमूना बढ़ाने की कोशिश करें, जो नए मामलों या नई सुविधाओं में अनुवाद कर सकता है।

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