LSTM लुप्त होती क्रमिक समस्या को कैसे रोकता है?


35

LSTM का आविष्कार विशेष रूप से लुप्त हो रही ढाल समस्या से बचने के लिए किया गया था। ऐसा नहीं है कि ऐसा करने के लिए लगातार त्रुटि Carousel (सीईसी) है, जो नीचे चित्र पर (से के साथ माना जाता है Greff एट अल। ) के अनुरूप चारों ओर पाश करने के लिए सेल

LSTM
(स्रोत: deeplearning4j.org )

और मैं समझता हूं कि उस हिस्से को एक प्रकार के पहचान समारोह के रूप में देखा जा सकता है, इसलिए व्युत्पन्न एक है और ढाल स्थिर रहता है।

मुझे समझ में नहीं आता है कि अन्य सक्रियण कार्यों के कारण यह कैसे गायब नहीं होता है? इनपुट, आउटपुट और गेट गेट एक सिग्मॉइड का उपयोग करते हैं, जो व्युत्पन्न 0.25 पर है, और जी और एच पारंपरिक रूप से तन थे । कैसे उन लोगों के माध्यम से backpropagating ढाल गायब नहीं करता है?


2
LSTM एक आवर्तक तंत्रिका नेटवर्क मॉडल है जो दीर्घकालिक निर्भरता को याद रखने में बहुत ही कुशल है और जो लुप्त हो रही ढाल समस्या के प्रति संवेदनशील नहीं है। मुझे यकीन नहीं है कि आप किस तरह के स्पष्टीकरण की तलाश कर रहे हैं
TheWalkingCube 12

LSTM: लॉन्ग शॉर्ट-टर्म मेमोरी। (संदर्भ: Hochreiter, एस और Schmidhuber, जे (1997) लंबे समय से अल्पकालिक स्मृति तंत्रिका संगणना 9 (8):।। 1735-1780 · दिसंबर 1997)
horaceT

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

1
एक संदर्भ के साथ गायब होने वाले को वापस करने के लिए देखभाल?
बायरज

संबंधित: quora.com/…
Pinocchio

जवाबों:


22

लुप्त होती ढाल को एक आयामी मामले में सबसे अच्छा समझाया गया है। बहु-आयामी अधिक जटिल है लेकिन अनिवार्य रूप से अनुरूप है। आप इस उत्कृष्ट पत्र [1] में इसकी समीक्षा कर सकते हैं।

मान लें कि हमारे पास समय चरण पर एक छिपी हुई अवस्था । यदि हम चीजों को सरल बनाते हैं और पूर्वाग्रह और इनपुट हटाते हैं, तो हमारे पास तब आप यह दिखा सकते हैं t h t = σ ( w h t - 1 ) htt

ht=σ(wht1).

htht=k=1ttwσ(whtk)=wtt!!!k=1ttσ(whtk)
के साथ चिह्नित फैक्टर !!! एक महत्वपूर्ण है। यदि वजन 1 के बराबर नहीं है, तो यह में तेजी से शून्य तेजी से क्षय होगा , या तेजी से तेजी से बढ़ेगाtt

LSTM में, आपके पास सेल स्थिति । व्युत्पन्न वहाँ फार्म यहाँ भूल गेट का इनपुट है। जैसा कि आप देख सकते हैं, इसमें कोई तेजी से क्षय कारक शामिल नहीं है। नतीजतन, कम से कम एक रास्ता है जहां ढाल गायब नहीं होता है। पूर्ण व्युत्पत्ति के लिए, देखें [२]।st

stst=k=1ttσ(vt+k).
vt

[१] पास्कानु, रज़वान, टॉमस मिकोलोव और योशुआ बेंगियो। "आवर्तक तंत्रिका नेटवर्क के प्रशिक्षण की कठिनाई पर।" ICML (3) 28 (2013): 1310-1318।

[२] बायर, जस्टिन साइमन। सीखना अनुक्रम प्रतिनिधित्व। डिस। म्युचेन, टेक्निसिच यूनिवर्सिट मंटेन, डिस।, 2015, 2015।


3
Lstm के लिए, h_t h_ {t-1} पर भी निर्भर नहीं करता है? जब आप ds_t / d_s {t-1} कहते हैं, तो आपके पेपर में क्या मतलब है "केवल एक ही भाग है जहां ग्रेडिएंट समय के माध्यम से बहते हैं"?
user3243135

@ user3243135 h_t h_ {t-1} पर निर्भर करता है। हालाँकि, मान लीजिए ds_t / d_s {t-1} रखा गया है, भले ही अन्य ग्रेडिएंट प्रवाह गायब हो जाए, लेकिन संपूर्ण ढाल प्रवाह गायब नहीं होता है। यह धीरे-धीरे गायब हो जाता है।
सोलो

मैंने हमेशा सोचा था कि मुख्य मुद्दा क्योंकि अगर आमतौर पर किसी सिग्मॉयड (या कुछ और का व्युत्पन्न होता है 1 से कम व्युत्पन्न के साथ) जो सुनिश्चित करने के लिए लुप्त होने की प्रवणता का कारण बनता है (उदाहरण के लिए सिग्मोइड <1 परिमाण में हैं और उनका व्युत्पन्न जो < 1 यकीन के लिए)। क्या यही कारण है कि सीएनएन में ReLUs स्वीकार नहीं किए गए? यह एक ऐसी चीज है जिसने मुझे हमेशा इस अंतर पर भ्रमित किया कि कैसे गायब हो जाने वाले ढाल को फ़ीड फॉरवर्ड मॉडल बनाम रिकरंट मॉडल में संबोधित किया गया था। इसके लिए कोई स्पष्टीकरण? σ'(जेड)σ'(x)=σ(जेड)(1-σ(जेड))
ttσ(whtk)
σ(z)σ(x)=σ(z)(1σ(z))
पिनोचियो

सिग्मॉइड की ढाल भी एक समस्या बन सकती है, बड़े विचरण और / या मीन से दूर के वितरण का अनुमान लगाते हुए। 0., भले ही आप ReLUs का उपयोग करते हों, मुख्य समस्या बनी रहती है: वेट के मैट्रिक्स द्वारा बार-बार गुणा करना (आमतौर पर छोटा) ) गायब होने वाले ग्रेडिएंट्स का कारण बनता है, या कुछ मामलों में, जहां नियमितीकरण पर्याप्त नहीं है, ग्रेडिएंट्स का विस्फोट।
अटैक्सियास

3

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

सेल पेपर की पुनरावृत्ति कनेक्शन को निरूपित करने के लिए कॉन्सटेंट एरर कैरोसेल शब्द का प्रयोग मूल पेपर में किया गया था। मूल परिभाषा पर विचार करें जहां इनपुट गेट खुलने पर सेल राज्य केवल इसके अलावा बदल जाता है। पहले समय के चरण में सेल राज्य के संबंध में सेल राज्य की ढाल शून्य है।

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

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


2

http://www.felixgers.de/papers/phd.pdf कृपया खंड 2.2 और 3.2.2 का संदर्भ लें जहां छिन्न-भिन्न त्रुटि भाग को समझाया गया है। यदि यह कक्ष मेमोरी (यदि कोई बंद / सक्रिय इनपुट गेट है) से बाहर लीक होता है, तो वे त्रुटि का प्रचार नहीं करते हैं, लेकिन वे केवल उस समय के लिए त्रुटि के आधार पर गेट के वजन को अपडेट करते हैं। बाद में इसे आगे के प्रसार के दौरान शून्य बना दिया जाता है। यह एक तरह का हैक है लेकिन ऐसा करने का कारण यह है कि गेट के साथ-साथ त्रुटि का प्रवाह समय के साथ कम हो जाता है।


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

2

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

वेनिला RNN के लिए, ।

htht=k=1ttwσ(whtk)

LSTM के लिए,

stst=k=1ttσ(vt+k)

  • यह पूछने का एक स्वाभाविक प्रश्न है कि क्या दोनों उत्पाद- एक शब्द नहीं है कि जब गुणा एक साथ गुणा किया जा सकता है?tt
  • इसका उत्तर हां है , यही वजह है कि LSTM लुप्त हो रहे ढालों से भी पीड़ित होगा, लेकिन लगभग वैनिला NNN जितना नहीं

अंतर वैनिला आरएनएन के लिए है, ग्रेडिएंट जबकि LSTM के लिए ढाल ।wσ()σ()

LSTM के लिए, भार का एक सेट है जिसे कुछ ऐसे सीखा जा सकता है जैसे कि मान लीजिए कुछ वेट और इनपुट । फिर न्यूरल नेटवर्क ग्रेडिएंट्स को गायब होने से रोकने के लिए एक बड़ा सीख सकता है ।

σ()1
vt+k=wxwxw

उदा। 1D मामले में अगर , तो क्षय कारक , या ग्रेडिएंट मर जाता है:x=1w=10 vt+k=10σ()=0.99995

(0.99995)tt

वेनिला RNN के लिए, ऐसे वज़न का कोई सेट नहीं है , जिसे ऐसे सीखा जा सके जैसे कि

wσ(whtk)1

उदाहरण 1D मामले में, मान लें कि । फ़ंक्शन पर अधिकतम प्राप्त करता है । इसका अर्थ है कि ढाल क्षय होगा,htk=1wσ(w1)0.224w=1.5434

(0.224)tt

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