सादे अंग्रेजी में नियमितीकरण क्या है?


74

अन्य लेखों के विपरीत, मुझे इस विषय के लिए विकिपीडिया प्रविष्टि एक गैर-गणित व्यक्ति (मेरे जैसे) के लिए अप्राप्य लगी।

मैंने मूल विचार को समझा, कि आप कम नियमों वाले मॉडल का पक्ष लेते हैं। मुझे क्या नहीं मिलता है कि आप नियमों के एक सेट से एक 'नियमितीकरण स्कोर' कैसे प्राप्त करते हैं, जिसका उपयोग आप कम से कम ओवरफिट के लिए मॉडल को सॉर्ट करने के लिए कर सकते हैं।

क्या आप एक साधारण नियमितीकरण विधि का वर्णन कर सकते हैं?

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

मॉडल 1 - जब कीमत बढ़ रही है:

  • exp_moving_avg (मूल्य, अवधि = 50)> exp_moving_avg (मूल्य, अवधि = 200)

मॉडल 2 - मूल्य जब ऊपर जा रहा है:

  • मूल्य [एन] <मूल्य [एन -1] एक पंक्ति में 10 बार
  • exp_moving_avg (मूल्य, अवधि = 200) ऊपर जा रहा है

लेकिन मैं यह महसूस करने में अधिक दिलचस्पी रखता हूं कि आप नियमितीकरण कैसे करते हैं। तो अगर आप इसे समझाने के लिए बेहतर मॉडल जानते हैं तो कृपया करें।


7
एक उदाहरण रिज रिग्रेशन है, जो कि ओएलएस के साथ एक वर्ग के गुणांक के योग पर है। यह पूर्वाग्रह को मॉडल में पेश करेगा, लेकिन गुणांक के विचलन को कम कर देगा, कभी-कभी पर्याप्त रूप से। LASSO एक अन्य संबंधित विधि है, लेकिन गुणांक के आकार पर एक L1 बाधा डालता है। यह गुणांक छोड़ने का लाभ है। यह पी >> एन स्थितियों के लिए उपयोगी है, एक तरह से, ओवर-फिटिंग (और गुणांक विचलन को कम करने के लिए) से बचने के लिए मॉडल को "सिकोड़ने" का मतलब है, जो आमतौर पर मॉडल के पूर्वानुमान के प्रदर्शन में सुधार करता है।
हेयरबीस्ट नोव

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

1
@ बालबाल्ट, तो क्या मैं कह सकता हूं कि नियमितीकरण केवल एक तरीका है जो पूर्वाग्रह- परिवर्तन व्यापार के विचार को लागू करता है ?
एवोकैडो

मुझे यह वीडियो बहुत मददगार लगा, विशेष रूप से Lp नियमितीकरण के विभिन्न रूपों को देखने में: youtube.com/watch?v=sO4ZirJh9ds
Anm

नियमितीकरण मॉडल में ओवरफिट को संबोधित करने के लिए है जो सीखा जाता है। सादे अंग्रेजी में और नेत्रहीन समझाने की कोशिश की। निम्नलिखित लेख का लिंक है medium.com/@vamsi149/…
solver149

जवाबों:


57

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

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

नियमित करने के लिए आपको 2 चीजों की आवश्यकता है:

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

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

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


2
मुझ से +1। मुझे यह पसंद है कि यह उत्तर शुरुआत में है और समझने में इतना आसान है ...
एंड्रयू

2
क्या नियमितीकरण का उपयोग कभी कम करने के लिए किया जाता है? मेरे अनुभव में, जटिलता / संवेदनशीलता को कम करने के लिए एक जटिल / संवेदनशील मॉडल पर नियमितीकरण लागू किया जाता है, लेकिन जटिलता / संवेदनशीलता को बढ़ाने के लिए एक सरल / असंवेदनशील मॉडल पर कभी नहीं।
रिचर्ड हार्डी

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

26

मान लीजिए कि आप अनुभवजन्य जोखिम कम करने के माध्यम से सीखने का प्रदर्शन करते हैं।

ज्यादा ठीक:

  • आपको अपना गैर-नकारात्मक नुकसान फ़ंक्शन जो बताता है कि आपकी भविष्यवाणियां कितनी खराब हैंL(actual value, predicted value)
  • आप अपने मॉडल को इस तरह से फिट करना चाहते हैं कि इसकी भविष्यवाणियां नुकसान के फ़ंक्शन को कम कर दें, केवल प्रशिक्षण डेटा (आपके द्वारा केवल डेटा प्राप्त) पर गणना की जाए

फिर सीखने की प्रक्रिया का उद्देश्य को खोजना है (इस विधि को अनुभवजन्य जोखिम कहा जाता है न्यूनतम)।Model=argminL(actual,predicted(Model))

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

एक नियमितीकरण शब्द को ओवरफिट करने से बचने के लिए लक्ष्य फ़ंक्शन में प्रस्तुत किया जाता है: Model=argminL(actual,predicted(Model))+λR(Model)

आमतौर पर, यह शब्द जटिल मॉडल पर एक विशेष जुर्माना लगाता है। उदाहरण के लिए, बड़े गुणांक वाले मॉडल पर (L2 नियमितीकरण, = गुणांक के वर्गों का योग) या बहुत कुछ के साथ यदि गैर-शून्य गुणांक (L1 नियमितीकरण, = गुणांक के पूर्ण मानों का योग)। यदि हम निर्णय वृक्ष का प्रशिक्षण कर रहे हैं, तो इसकी गहराई हो सकती है।R(Model)RRR

देखने की एक और बात यह है कि हमारे सबसे अच्छे मॉडल के एक रूप के बारे में हमारे पूर्व ज्ञान का परिचय देता है ("इसमें बहुत बड़े गुणांक नहीं हैं", "यह लगभग ऑर्थोगोनल टू ") हैRa¯


12

सरल शब्दों में कहें, नियमितिकरण उन समाधानों को लाभ देने के बारे में है जिनकी आपको अपेक्षा है। जैसा कि आप उल्लेख करते हैं, उदाहरण के लिए आप सरलता की कुछ परिभाषा के लिए "सरल" समाधानों का लाभ उठा सकते हैं। यदि आपकी समस्या के नियम हैं, तो एक परिभाषा कम नियम हो सकती है। लेकिन यह समस्या-निर्भर है।

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

आप नियमितीकरण कैसे करते हैं? सामान्य तौर पर आपके द्वारा उपयोग की जाने वाली विधि के साथ आता है, यदि आप एसवीएम का उपयोग करते हैं तो आप एल 2 नियमितीकरण कर रहे हैं, यदि आपके एलएएसओ का उपयोग आप एल 1 नियमितीकरण कर रहे हैं (देखें कि हेयरबायट क्या कह रहा है)। हालाँकि, यदि आप अपना स्वयं का तरीका विकसित कर रहे हैं, तो आपको यह जानना होगा कि गैर-वांछनीय लोगों से वांछनीय समाधान कैसे बताएं, और एक फ़ंक्शन है जो इसे निर्धारित करता है। अंत में आपके पास एक लागत अवधि और एक नियमितीकरण अवधि होगी, और आप दोनों के योग का अनुकूलन करना चाहते हैं।


1

नियमितीकरण तकनीकें मशीन लर्निंग मॉडल पर लागू की जाने वाली तकनीकें हैं जो निर्णय सीमा / फिटेड मॉडल को आसान बनाती हैं। वे तकनीक ओवरफिटिंग को रोकने में मदद करती हैं।

उदाहरण: तंत्रिका नेटवर्क में L1, L2, ड्रॉपआउट, वजन क्षय। एसवीएम में पैरामीटर ।C


0

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

मॉडल में मापदंडों के निरपेक्ष मूल्य को सीमित करके ओवर-फिटिंग को टाला जाता है। इस लागत को एक फ़ंक्शन जोड़कर किया जा सकता है जो मॉडल मापदंडों के परिमाण के आधार पर जुर्माना लगाता है। यदि परिमाण को L1 मानदंड में मापा जाता है, तो इसे "L1 नियमितीकरण" कहा जाता है (और आमतौर पर विरल मॉडल का परिणाम होता है), यदि इसे L2 मानदंड में मापा जाता है तो इसे "L2 नियमितिकरण" कहा जाता है।

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