डीप लर्निंग के लिए एडम ऑप्टिमाइज़र के लिए पूर्वाग्रह सुधार शब्द शामिल करना क्यों महत्वपूर्ण है?


15

मैं डीप लर्निंग के लिए एडम ऑप्टिमाइज़र के बारे में पढ़ रहा था और बेग्नियो, गुडफेलो और कोर्टविल की नई किताब डीप लर्निंग में निम्नलिखित वाक्य आया था :

एडम में पहले क्रम के क्षणों (संवेग शब्द) और मूल (उनके अप्रतिबंधित) दूसरे क्रम के क्षणों के अनुमानों में पूर्वाग्रह सुधार शामिल हैं।

ऐसा लगता है कि इन पूर्वाग्रह सुधार शर्तों को शामिल करने का मुख्य कारण यह है कि किसी तरह यह टी=0 और vटी=0 के आरंभ के पूर्वाग्रह को हटा देता है ।

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

बस लोगों को पता है कि मैंने मूल पेपर को समझने के लिए वास्तव में कड़ी मेहनत की है, लेकिन मैंने मूल पेपर पढ़ने और पढ़ने से बहुत कम प्राप्त किया है। मुझे लगता है कि इनमें से कुछ सवालों का जवाब वहां दिया जा सकता है लेकिन मैं जवाबों को पार्स नहीं कर सकता।


2
लिंक: arxiv.org/pdf/1412.6980v8.pdf 1 और 2 पल क्रमिक अनुमानों को मूविंग एवरेज के माध्यम से अपडेट किया जाता है, और दोनों अनुमानों के शून्य से शुरू होने के साथ बंद हो जाते हैं, इसलिए उन प्रारंभिक मानों के लिए जिनका सही मूल्य शून्य नहीं है, परिणाम को पूर्वाग्रह करेंगे। , क्योंकि शून्य के प्रारंभिक अनुमान केवल धीरे-धीरे बाहर मर जाते हैं। मुझे समझ में नहीं आता है कि प्रारंभिक बिंदु पर ढाल का उपयोग इन चीजों के प्रारंभिक मूल्यों के लिए क्यों नहीं किया जाता है, और फिर पहला पैरामीटर अपडेट। फिर प्रारंभिक शून्य मानों से कोई संदूषण नहीं होगा, जो पूर्ववत होना चाहिए। इसके लिए पूर्वाग्रह सुधार की कोई आवश्यकता नहीं होगी।
मार्क एल। स्टोन

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

@ MarkL.Stone लेखक इतने पूर्वाग्रह सुधार पर जोर देते हैं कि मुझे ऐसा लगता है कि उनके पेपर में उपन्यास या महत्वपूर्ण क्या था। तो वे सिर्फ "पूर्वाग्रह को सही" नहीं कर सकते थे और एक ही एल्गोरिथ्म थे? अगर यह सच है तो मैं यह देखने में असफल हूं कि एडैम इतना महत्वपूर्ण आशावादी क्यों है या बड़ी बात क्या है। मैंने हमेशा सोचा कि यह पूर्वाग्रह सुधार था।
चार्ली पार्कर

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

जवाबों:


17


कागज के अनुसार पूर्वाग्रह को ठीक नहीं करने की समस्या

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

यहाँ छवि विवरण दर्ज करें

व्यवहार में आम तौर पर β2 बहुत 1 के समीप से सेट किया गया है β1 (के रूप में लेखक ने सुझाव दिया β2=0.999 , β1=0.9 ), तो अद्यतन गुणांक 1-β2=0.001 तुलना में काफी छोटा है 1-β1=0.1

प्रशिक्षण के पहले चरण में 1=0.1जीटी , v1=0.001जीटी2 , 1/(v1+ε)

1^=जी1v1^=जी12टी^/(vटी^+ε)β1β2


0टी=βटी-1+(1-β)जीटी0

1=β0+(1-β)जीटीβ01(1-β)1^=(1-β0)/(1-β)0=0टी^=टी/(1-βटी)


जैसा कि मार्क एल। स्टोन ने अच्छी टिप्पणी की है

यह 2 से गुणा करने जैसा है (ओह माय, परिणाम पक्षपाती है), और फिर इसे "सही" करके 2 से विभाजित करना।

किसी तरह यह बिल्कुल बराबर नहीं है

प्रारंभिक बिंदु पर ढाल का उपयोग इन चीजों के प्रारंभिक मूल्यों के लिए किया जाता है, और फिर पहला पैरामीटर अपडेट

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

उदाहरण के लिए, समय 2 पर पहले पल को सुधारा

2^=β(1-β)जी1+(1-β)जी21-β2=βजी1+जी2β+1

जी1

2=βजी1+(1-β)जी2
जी1

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

ε


^टी

^टी=βटी-1जी1+βटी-2जी2++जीटीβटी-1+βटी-2++1

1जी1

टीβटी+जीटी
^टी(1-β)टी1-βटी

इसलिए यह संभवतः पूर्वाग्रह शब्द को प्रस्तुत किए बिना और इसे सुधारने के बिना किया जा सकता है। मुझे लगता है कि कागज ने इसे अन्य एल्गोरिदम (जैसे RmsProp) के साथ तुलना करने की सुविधा के लिए पूर्वाग्रह-सुधार फ़ॉर्म में डाल दिया।


1
क्या आप इस प्रश्न पर मेरी दूसरी टिप्पणी से सहमत हैं? मेरे लिए, यह नीचे की रेखा है। 2 से गुणा करने और विभाजित करने की बात केवल एक "समझने में आसान" सादृश्य के रूप में होनी चाहिए थी, न कि हाथ में इस मामले में प्रयुक्त गणित। अगर अन्य कागजात थे, जिन पर मैंने गौर नहीं किया, जो एक ही तंत्र द्वारा एक पूर्वाग्रह पेश करते थे, जो कि ADAM के मामले में पूरी तरह से परिहार्य लगता है, लेकिन इसे सही नहीं किया, तो वह पूरी तरह से STUPID है (जब तक कि किसी तरह पूर्वाग्रह न हो एल्गोरिथ्म के प्रदर्शन में मदद की)।
मार्क एल। स्टोन

@ MarkL.Stone हाँ! वास्तव में मैंने इसे बढ़ा दिया, मेरी अंग्रेजी के बारे में क्षमा करें। और मुझे लगता है कि एल्गोरिथ्म जो पूर्वाग्रह को सही नहीं करता था वह है rmsprop, लेकिन इसके विपरीत adam rmsprop पूर्वाग्रह के साथ ठीक काम करता है।
नोटोलो

@dontloo क्या आपका जवाब पता मार्क एल। स्टोन पर टिप्पणी करता है कि पूर्वाग्रह सुधार सतही क्यों लगता है? (मुझे लगता है कि काफी महत्वपूर्ण है, शायद मूल पेपर जो कहता है, उससे अधिक पैराफ्रास्टिंग से भी अधिक)।
चार्ली पार्कर

@CharlieParker का मतलब है कि पूर्वाग्रह सुधार क्यों अतिरेकपूर्ण है या लेखक इसे अतिरंजित क्यों दिखता है?
नॉट्लू

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