गहरे तंत्रिका नेटवर्क में सिग्मॉइड फ़ंक्शन पर ReLU के फायदे क्या हैं?


141

गैर-रैखिकता की कला की स्थिति गहरी तंत्रिका नेटवर्क में सिग्मॉइड फ़ंक्शन के बजाय रेक्टिफाइड रैखिक इकाइयों (ReLU) का उपयोग करना है। क्या फायदे हैं?

मुझे पता है कि जब ReLU का उपयोग किया जाता है तो एक नेटवर्क का प्रशिक्षण तेजी से होगा, और यह अधिक जैविक प्रेरित है, अन्य फायदे क्या हैं? (यह है, सिग्मॉइड का उपयोग करने का कोई नुकसान)?


मैं इस धारणा के तहत था कि आपके नेटवर्क में गैर-रैखिकता की अनुमति देना एक फायदा था। लेकिन मुझे नहीं लगता कि नीचे दिए गए जवाब में ...
मोनिका हेडडेक

2
@ मोनिका हेडडेक दोनों ReLU और सिग्मॉइड नॉनलाइनर हैं ...
एंटोनी

जवाबों:


130

ReLUs के दो अतिरिक्त प्रमुख लाभ विरलता और लुप्त होने की प्रवणता की कम संभावना है। लेकिन सबसे पहले एक ReLU की परिभाषा जहाँ ।a = W x + bh=max(0,a)a=Wx+b

एक प्रमुख लाभ यह है कि गायब होने के लिए ढाल की संभावना कम है। यह तब उत्पन्न होता है जब । इस शासन में ढाल का एक स्थिर मूल्य है। इसके विपरीत, एक्स के निरपेक्ष मान बढ़ने पर सिग्मोइड की ढाल तेजी से छोटी हो जाती है। ReLUs के निरंतर ढाल के परिणामस्वरूप तेजी से सीखने में मदद मिलती है।a>0

ReLUs का अन्य लाभ विरलता है। स्पार्सिटी तब उत्पन्न होती है जब । जितनी अधिक ऐसी इकाइयाँ एक परत में मौजूद होती हैं, उतने अधिक निरूपण के परिणामस्वरूप। दूसरी ओर सिग्मोइड्स हमेशा कुछ गैर-शून्य मान उत्पन्न करने की संभावना रखते हैं, जिसके परिणामस्वरूप घने प्रतिनिधित्व होते हैं। घने निरूपण की तुलना में विरल प्रतिनिधित्व अधिक लाभदायक प्रतीत होता है।a0


2
जब आप ढाल कहते हैं, तो आप वजन या इनपुट x के संबंध में हैं? @DaemonMaker
MAS

4
वजन के संबंध में। धीरे-धीरे सीखने वाले एल्गोरिदम हमेशा शिक्षार्थी के मापदंडों के संबंध में ढाल लेते हैं, अर्थात एक एनएन में वज़न और पूर्वाग्रह।
डेमनमेकर

2
"घने" और "विरल" "प्रतिनिधित्व" से आपका क्या मतलब है? Google की क्वेरी "विरल प्रतिनिधित्व तंत्रिका नेटवर्क" प्रासंगिक कुछ भी साथ नहीं आती है।
हाय-एंजेल

6
"घने प्रतिनिधित्व की तुलना में विरल प्रतिनिधित्व अधिक लाभदायक प्रतीत होता है।" क्या आप कोई स्रोत या स्पष्टीकरण प्रदान कर सकते हैं?
रोहन सक्सेना २

1
मुझे समझ नहीं आ रहा है कि यह उत्तर कैसे सही है। "गायब होने के लिए ढाल की संभावना कम" कुछ वांछित होने के लिए छोड़ देता है। ReLu पर्याप्त रूप से छोटे लिए शून्य है । जब आप इस शासन में होते हैं, तो सीखने के दौरान, आप कुछ न्यूरॉन्स के लिए गायब हो जाएंगे। वास्तव में, यह स्पष्ट रूप से अपरिहार्य है, क्योंकि अन्यथा आपका नेटवर्क रैखिक होगा। बैच सामान्यीकरण यह ज्यादातर हल करती है। यह भी सबसे महत्वपूर्ण कारण का उल्लेख नहीं करता है: ReLu और उनके gradients। एक कंपकंपी की तुलना में गणना करने के लिए बहुत तेज़ हैं। x
एलेक्स आर।

65

फायदा:

  • सिग्मॉइड: सक्रियण नहीं उड़ाना
  • Relu: गायब नहीं होने वाली ढाल
  • Relu: सिग्मॉइड की तुलना में अधिक कम्प्यूटेशनल रूप से कार्य करने के लिए कुशल है क्योंकि Relu को सिर्फ़ अधिकतम (0, ) लेने की ज़रूरत है और सिग्मोइड्स की तरह महंगे घातीय संचालन नहीं करना है।x
  • Relu: व्यवहार में, Relu वाले नेटवर्क सिग्मॉइड की तुलना में बेहतर अभिसरण प्रदर्शन दिखाते हैं। ( क्रिज़ेव्स्की एट अल। )

हानि:

  • सिग्मॉइड: गायब हो जाना ढाल (क्योंकि " " वृद्धि के रूप में ग्रेडिएंट को कम करने के लिए एक तंत्र है , जहां " " एक सिग्मोइड फ़ंक्शन का इनपुट है। सिग्मॉयड का ग्रेड: । जब " " अनंत बड़े हो जाता है, )।एक एस ' ( एक ) = एस ( एक ) ( 1 - एस ( एक ) ) एक एस ' ( एक ) = एस ( एक ) ( 1 - एस ( एक ) ) = 1 × ( 1 - 1 ) = 0aaS(a)=S(a)(1S(a))aS(a)=S(a)(1S(a))=1×(11)=0

  • Relu: सक्रियण को उड़ाने के लिए है (न्यूरॉन के उत्पादन को बाधित करने के लिए कोई तंत्र नहीं है, क्योंकि " " स्वयं आउटपुट है)a

  • Relu: मरने वाली Relu समस्या - अगर बहुत सारी सक्रियताएं शून्य से नीचे हो जाती हैं, तो Relu के साथ नेटवर्क में अधिकांश इकाइयां (न्यूरॉन्स) बस शून्य उत्पादन करेंगी, दूसरे शब्दों में, मरें और जिससे सीखने पर रोक लगे। (इसे कुछ हद तक नियंत्रित किया जा सकता है। इसके बजाय लीक-रिले का उपयोग करके।)

7
आपको यह मददगार लग सकता है कि आप अपने समीकरणों के आसपास डॉलर के संकेत लगाकर लेटेक्स के साथ गणित टाइपिंग का उपयोग कर सकते हैं, उदाहरण के लिए$x$ उत्पादन करता है । x
सिल्वरफिश

Relu: गायब नहीं होने वाली ढाल। है ना? सभी लिए । x < - b / aRelu(ax+b)=0x<b/a
एलेक्स आर।

40

बस अन्य उत्तरों के पूरक:

लुप्त हो रहे स्नातक

अन्य उत्तर यह इंगित करने के लिए सही हैं कि बड़ा इनपुट (निरपेक्ष मूल्य में) सिग्माइड फ़ंक्शन का छोटा ढाल है। लेकिन, शायद एक और भी महत्वपूर्ण प्रभाव यह है कि सिग्मोइड फ़ंक्शन का व्युत्पन्न एक से छोटा है । वास्तव में यह 0.25 पर है!

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

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

दूसरी ओर ReLu फ़ंक्शन का ग्रेडिएंट या तो लिए या लिए । इसका मतलब है कि आप जितनी चाहें उतनी परतें लगा सकते हैं, क्योंकि ग्रेडिएंट को गुणा करना न तो गायब होगा और न ही फट जाएगा।< 0 1 > 00a<01a>0


10
यह वह उत्तर है जिसकी मुझे तलाश थी। जब लोग "लुप्त ग्रेडिएंट्स" के बारे में बात कर रहे हैं, तो कोई भी यह सोचकर रोक नहीं सकता है कि "रेलु का ग्रेडिएंट इसकी सीमा के लिए बिल्कुल 0 है। ऐसा नहीं है कि 'गायब हो रहा है"। जिस तरह से आप हमें यह याद दिलाकर समस्या का वर्णन करते हैं कि ग्रेडिएंट कई परतों में गुणा किया जाता है, बहुत स्पष्टता लाता है।
बोरिस गोरेलिक

3
@ guilherme-de-lazari ने अंतिम पंक्ति में सुधार का सुझाव दिया - relu का मूल्य a> 0 के लिए है, लेकिन आप ग्रेडिएंट के बारे में बात कर रहे हैं जो 1 के लिए 1 है
saurabh

4
यदि यह मुख्य कारण था, तो क्या हम सिग्मॉइड को 1 / (1 + ऍक्स्प (-4x)) पर पुनर्विक्रय नहीं कर सकते? फिर व्युत्पन्न सबसे अधिक 1 पर है (या 1 से अधिक पुनर्विक्रय करें, हमें 1 से ऊपर और नीचे विकल्प देने के लिए)। मुझे संदेह है कि यह बहुत बुरा प्रदर्शन करेगा, क्योंकि rescaling उस क्षेत्र को भी कम करता है जहां व्युत्पन्न 0. से अलग है, लेकिन मुझे यकीन नहीं है कि यह उत्तर पूरी कहानी बताता है।
पीटर

5
यह उत्तर बकवास है। निरंतर पैरामीटर 1 के साथ एक सिग्मॉइड का व्युत्पन्न 1 से कम है। लेकिन आम तौर पर यह , जो एक मनमाने ढंग से बड़ा व्युत्पन्न हो सकता है (बस वास्तव में बड़ा होने के लिए ले लो , इसलिए सिग्मॉइड तेजी से 0 से 1 तक जाता है)। a1/(1+exp(ax))a
एलेक्स आर।

7
इसके अलावा, आप सिग्मोइड के साथ गहरी शिक्षा कर सकते हैं, आपको बस इनपुट को सामान्य करने की आवश्यकता है, उदाहरण के लिए बैच सामान्यीकरण के माध्यम से। यह आपके इनपुट को केंद्रीकृत करेगा जिससे कि सिग्माइड को संतृप्त करने से बचा जा सके। : बैच सामान्यीकरण पर मूल पत्र में, अवग्रह सक्रियण तंत्रिका नेटवर्क ReLus के साथ लगभग बराबर करता arxiv.org/pdf/1502.03167.pdf
एलेक्स आर

7

लुप्त हो रहे ग्रेडिएंट्स की समस्या से बचने के अलावा ReLU के लिए एक फायदा यह है कि इसमें बहुत कम समय लगता है। अधिकतम (0, ए) किसी भी सिग्मॉइड फ़ंक्शन (उदाहरण के लिए लॉजिस्टिक फ़ंक्शन = 1 / (1 + e ^ (- a)) से अधिक तेज़ चलता है जो एक घातांक का उपयोग करता है जो अक्सर होने पर कम्प्यूटेशनल धीमा होता है)। यह ReLU के ढाल के रूप में आगे और पीछे प्रसार दोनों के लिए सच है (यदि <<0, = 0 और = 1) सिग्मॉइड की तुलना में गणना करना भी बहुत आसान है (लॉजिकल वक्र के लिए = e ^ a / ((1 + e) ^ क) ^ 2))।

हालांकि ReLU में मरने वाली कोशिकाओं का नुकसान होता है जो नेटवर्क की क्षमता को सीमित करता है। इसे दूर करने के लिए यदि आप ऊपर बताई गई समस्या को देखते हैं तो बस ReLU के एक प्रकार जैसे टपका हुआ ReLU, ELU, आदि का उपयोग करें।


1
+1। यह यहां के एकमात्र सही उत्तरों में से एक है। आप मृत न्यूरॉन्स का मुकाबला करने के लिए इनपुट को केंद्रीकृत करने के लिए बैच सामान्यीकरण का भी उपयोग कर सकते हैं।
एलेक्स आर।

2

स्पार्स बनाम सघन प्रदर्शन बहस पर पूरा करने के लिए जवाब का एक अतिरिक्त टुकड़ा ।

अब एनएन के बारे में मत सोचो, बस रैखिक बीजगणित और मैट्रिक्स संचालन के बारे में सोचें, क्योंकि आगे और पीछे प्रचार मैट्रिक्स के संचालन की एक श्रृंखला है।

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

मुझे आशा है कि आप में से कुछ लोग मदद कर सकते हैं ...


1

मुख्य लाभ यह है कि ReLu के व्युत्पन्न या तो 0 या 1 है, इसलिए इसे गुणा करने से वजन कम नहीं होगा जो कि गायब होने के कारण परिणाम समारोह के अंतिम परिणाम से दूर होते हैं।

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

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