आप सुदृढीकरण सीखने के उदाहरणों पर ड्रॉपआउट परतें क्यों नहीं देखते हैं?


13

मैं सुदृढीकरण सीखने को देख रहा हूं, और विशेष रूप से OpenAI जिम AI के साथ उपयोग करने के लिए अपने स्वयं के वातावरण बनाने के साथ खेल रहा हूं। मैं इसके साथ परीक्षण करने के लिए static_baselines परियोजना के एजेंटों का उपयोग कर रहा हूं।

एक बात मैंने लगभग सभी आरएल उदाहरणों में देखी है कि किसी भी नेटवर्क में कभी भी ड्रॉपआउट परत नहीं लगती है। ऐसा क्यों है?

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

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

या यह समझा जाता है कि पर्यावरण की अराजक प्रकृति को परिणामों के पर्याप्त अलग-अलग संयोजन प्रदान करने चाहिए जिन्हें आपको ड्रॉपआउट परतों की आवश्यकता नहीं है?


1
क्या आपने RL नेटवर्क में ड्रॉपआउट को जोड़ने की कोशिश की है कि क्या होता है? मेरे पास (एक LunarLander_v2 सॉल्वर के लिए है जो अन्यथा अच्छी तरह से काम करता है), और परिणाम भयानक थे, यह 400 एपिसोड में हल करने से जाता है, इसे हल करने में पूरी तरह से विफल रहा है (और मैंने अन्य पैरामेट्स में बहुत भिन्नता की कोशिश की)। अन्य नियमितीकरण ठीक है, और यहां तक ​​कि फायदेमंद भी है। मैं नहीं जानता कि अभी तक ड्रॉपआउट के साथ समस्याएं क्यों हैं, यहां एक सवाल पूछने की सोच रहा था। । ।
नील स्लेटर

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

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

जवाबों:


11

ड्रॉपआउट अनिवार्य रूप से थोड़ा अधिक विचरण का परिचय देता है। पर्यवेक्षित शिक्षण सेटिंग्स में, यह वास्तव में अक्सर ओवरफिटिंग को कम करने में मदद करता है (हालांकि मेरा मानना ​​है कि ड्रॉपआउट भी पहले से कम होता जा रहा है .. उससे पहले के कुछ वर्षों की तुलना में हाल के वर्षों में फैशनेबल; मैं 100% यकीन नहीं कर रहा हूँ, हालांकि, यह मेरा प्राथमिक नहीं है विशेषज्ञता का क्षेत्र)।

सुदृढीकरण सीखना में, अतिरिक्त विचरण वास्तव में वह नहीं है जो हम खोज रहे हैं। सीखने के संकेतों में हम पहले से ही बड़ी मात्रा में विचरण करते हैं, और यह विचलन स्थिरता और / या सीखने की गति सीखने के लिए पहले से ही एक प्रमुख मुद्दा है। उदाहरण के लिए:

  • कार्रवाई के चयन में यादृच्छिकता रिटर्न में विचरण करती है जिसे हम देखते हैं
  • पर्यावरण में ही बेतरतीबता हो सकती है, जिससे हमारी टिप्पणियों में अतिरिक्त परिवर्तन हो सकता है (कुछ वातावरण नॉनडेर्मिनेटर हैं)
  • सुपरवाइज्ड लर्निंग सेटिंग्स के विपरीत, सुदृढीकरण लर्निंग में हम अक्सर अपने नुकसान फ़ंक्शन / प्रशिक्षण सिग्नल के एक हिस्से के रूप में अपनी खुद की भविष्यवाणियों का उपयोग करते हैं। उदाहरण के लिए, टेम्पोरल- लर्निंग (जैसे क्यू-लर्निंग / डीक्यूएन), जिस लक्ष्य के लिए हम अपडेट होते हैं, वह की तरह दिखता है । उस शब्द में, केवल एक ग्राउंड-सत्य अवलोकन है (जैसे हम पर्यवेक्षित शिक्षण में उपयोग करेंगे), और दूसरा शब्द हमारी भविष्यवाणी है। एक सीखने की प्रक्रिया के दौरान, उन बाद वाले हिस्सों (हमारी अपनी भविष्यवाणियों) समय के साथ बदल रही हैं। यह एक " चलती लक्ष्य '' समस्या है, जिसे हमारे सीखने के संकेतों में अतिरिक्त विचरण के रूप में देखा जा सकता है।r+maxaQ(s,a)r

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


क्या ओवरफिटिंग से निपटने और निपटने के लिए अन्य तंत्र हैं? या कई आरएल उदाहरणों में कोई फर्क नहीं पड़ता? उदाहरण के लिए 'ब्रेकआउट' गेम में अंतिम उच्च स्कोर का केवल एक ही सही तरीका हो सकता है, इसलिए आप यह भी जान सकते हैं कि वास्तव में, और सामान्य करने की कोई आवश्यकता नहीं है?

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

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

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

* नोट: सच, मेरी राय में, आरएलएल में हम "प्रशिक्षण सेट पर वास्तव में मूल्यांकन कर रहे हैं" की तुलना में थोड़ा अधिक बारीक है। उदाहरण के लिए, ट्वीट्स का यह अच्छा धागा देखें : https://twitter.com/nanjiang_cs/status/1049682399999990904444


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

ध्यान दें कि आपके द्वारा वर्णित मूल्यांकन पद्धति अब वास्तव में अधिक "सामान्य" मूल्यांकन पद्धति पर फिट नहीं बैठती है। आपको पर्यावरण में गैरबराबरी के साथ अवधारणा बहाव की समस्या है। इसका मतलब है कि ओवरफिटिंग आपके लिए एक समस्या हो सकती है।

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


1
डेनिस, आपके बहुत विस्तृत उत्तर के लिए बहुत बहुत धन्यवाद! इसकी बहुत सी पुष्टि करता है कि मुझे लगता है कि मेरे संदेह: यानी कि अधिक आरएल एक विशिष्ट वातावरण में एक बहुत विशिष्ट समस्या को हल करने की कोशिश कर रहा है जिसमें उस समस्या का अक्सर एक स्पष्ट 'सर्वश्रेष्ठ' समाधान होता है।
मैट हैमिल्टन

2
@ मट्टम हैमिल्टन ध्यान दें कि अधिक सामान्य वातावरण के लिए आरएल की ओर अनुसंधान है। यदि आप उस सामान में रुचि रखते हैं, तो आप "ट्रांसफर लर्निंग" और "रेनफोर्समेंट लर्निंग" के संयोजन की खोज करना चाहेंगे, या मल्टी-टास्क आरएल (मल्टी-ऑब्जेक्टिव आरएल) जैसी चीजें भी दिलचस्प हो सकती हैं, लेकिन शायद थोड़ा अलग है )। इस प्रकार के प्रयास अभी भी एक समय में एक पर्यावरण पर प्रशिक्षण और मूल्यांकन के पारंपरिक दृष्टिकोण की तुलना में काफी कम प्रदर्शन करते हैं।
डेनिस सॉमरर्स
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.