न्यूरल नेटवर्क की ट्रेनिंग: सबसे सही तरीके

इस सेक्शन में, बैकप्रोपेगेशन के फ़ेल हुए मामलों के बारे में बताया गया है. साथ ही, न्यूरल नेटवर्क को सामान्य बनाने का सबसे आम तरीका भी बताया गया है.

असफलता के मामले

बैकप्रोपेगेशन के गलत होने के कई आम तरीके हैं.

वैनिशिंग ग्रेडिएंट

निचली लेयर (इनपुट के पास) के ग्रेडिएंट बहुत छोटे हो सकते हैं. डीप नेटवर्क में, इन ग्रेडिएंट की गणना करने में कई छोटे शब्दों के गुणनफल की ज़रूरत पड़ सकती है.

जब निचली लेयर के लिए ग्रेडिएंट 0 की ओर गायब हो जाता है, तो ये लेयर बहुत धीरे अपडेट होती हैं या बिलकुल भी नहीं बदलती हैं.

ReLU ऐक्टिवेशन फ़ंक्शन, गायब होने वाले ग्रेडिएंट को रोकने में मदद कर सकता है.

ग्रेडिएंट का विस्फोट

अगर किसी नेटवर्क में वज़न बहुत बड़े हैं, तो निचली लेयर के ग्रेडिएंट में कई बड़े शब्दों के प्रॉडक्ट शामिल होते हैं. इस मामले में, आपके पास विस्फोट करने वाले ग्रेडिएंट हो सकते हैं: ऐसे ग्रेडिएंट जो इकट्ठा करने के लिए बहुत बड़े होते हैं.

बैच नॉर्मलाइज़ेशन से, सीखने की दर को कम करने के साथ-साथ ग्रेडिएंट बढ़ने की संभावना को भी कम किया जा सकता है.

डेड ReLU यूनिट

जब ReLU यूनिट का वेटेड योग 0 से कम हो जाता है, तो ReLU यूनिट रुक सकती है. यह 0 ऐक्टिवेशन दिखाता है, जिससे नेटवर्क के आउटपुट में कोई असर नहीं पड़ता. साथ ही, बैकप्रोपेगेशन के दौरान ग्रेडिएंट अब इसमें फ़्लो नहीं कर सकता. ग्रेडिएंट के सोर्स को कम करने पर, शायद ReLU के इनपुट में कभी भी इतना बदलाव न हो पाए कि वेटेड योग को वापस 0 से ऊपर लाया जा सके.

सीखने की दर कम करने से, ReLU यूनिट को समय के साथ बंद होने से रोका जा सकता है.

ड्रॉपआउट रेगुलराइज़ेशन

हालांकि, रेगुलराइज़ेशन का एक और तरीका ड्रॉपआउट है, जो न्यूरल नेटवर्क के लिए बहुत काम का है. यह सुविधा, नेटवर्क में एक ग्रेडिएंट चरण के लिए यूनिट को रैंडम तरीके से "ड्रॉप आउट" करके काम करती है. साइट को जितना ज़्यादा छोड़ा जाता है, उसका रेगुलराइज़ेशन उतना ही मज़बूत होता है:

  • 0.0 = ड्रॉपआउट नियमितीकरण नहीं.
  • 1.0 = सब कुछ छोड़ दें. मॉडल कुछ नहीं सीखता है.
  • 0.0 और 1.0 के बीच की वैल्यू = ज़्यादा काम की है.