न्यूरल नेटवर्क: स्ट्रक्चर

न्यूरल नेटवर्क अलीनियर समस्याओं को हल करने में कैसे मदद कर सकते हैं, यह जानने के लिए शुरुआत करें लीनियर मॉडल को ग्राफ़ के रूप में दिखाकर:

नीले रंग के तीन वृत्त एक पंक्ति में मौजूद हैं, जो तीर के निशान से जुड़े हुए हैं और उनके ऊपर हरे रंग के वृत्त हैं

तीसरी इमेज. लीनियर मॉडल को ग्राफ़ के तौर पर दिखाना.

हर नीला गोला किसी इनपुट सुविधा को दिखाता है और हरे रंग का गोला इनपुट का वेटेड योग.

हम इस मॉडल में बदलाव कैसे कर सकते हैं, ताकि नॉनलीनियर के साथ काम करने की इसकी क्षमता में सुधार हो सके समस्याएं हैं?

छिपी हुई लेयर

नीचे दिए गए ग्राफ़ के ज़रिए दिखाए गए मॉडल में, हमने एक "छिपी हुई लेयर" जोड़ी है का विकल्प होता है. छिपी हुई लेयर में मौजूद हर पीला नोड एक भारित योग होता है नीले इनपुट नोड मानों का. आउटपुट पीले रंग का भारित योग है नोड.

नीले रंग के तीन गोले, एक पंक्ति में लेबल किए गए

चौथी इमेज. दो लेयर वाले मॉडल का ग्राफ़.

क्या यह मॉडल लीनियर है? हां—इसका आउटपुट अब भी लीनियर इनपुट शामिल हैं.

नीचे दिए गए ग्राफ़ के ज़रिए दिखाए गए मॉडल में, हमने एक दूसरा छिपाया गया है भारित योग की परत.

नीले रंग के तीन गोले, एक पंक्ति में लेबल किए गए

पांचवी इमेज. तीन लेयर वाले मॉडल का ग्राफ़.

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

ऐक्टिवेशन फ़ंक्शन

किसी नॉनलीनियर समस्या को मॉडल करने के लिए, हम सीधे तौर पर नॉनलीनियर के बारे में जानकारी दे सकते हैं. हम यह कर सकते हैं: हर छिपे हुए लेयर नोड को नॉनलीनियर फ़ंक्शन से पाइप करें.

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

पहले के चित्र के जैसा ही, लेकिन 'गैर-लीनियर रूपांतरण परत' लेबल वाली गुलाबी वृत्तों की एक पंक्ति को दो छिपी हुई लेयर के बीच जोड़ा गया है.

छठी इमेज. ऐक्टिवेशन फ़ंक्शन के साथ तीन लेयर वाले मॉडल का ग्राफ़.

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

सामान्य ऐक्टिवेशन फ़ंक्शन

नीचे दिया गया sigmoid ऐक्टिवेशन फ़ंक्शन, वेटेड योग को 0 और 1 के बीच की कोई वैल्यू डालें.

$$F(x)=\frac{1} {1+e^{-x}}$$

यहां एक प्लॉट दिया गया है:

सिगमॉइड फ़ंक्शन

सातवीं इमेज. सिगमॉइड ऐक्टिवेशन फ़ंक्शन.

नीचे दिया गया सुधारा गया लीनियर यूनिट ऐक्टिवेशन फ़ंक्शन (या ReLU, Shorts, अक्सर सिग्मॉइड जैसे अच्छे फ़ंक्शन से बेहतर काम करता है, साथ ही, यह कंप्यूट करने में भी काफ़ी आसान होता है.

$$F(x)=max(0,x)$$

अनुभव के आधार पर मिले नतीजों के आधार पर, ReLU को बेहतर बनाना है. ऐसा हो सकता है कि ReLU की वजह से ऐसा हुआ हो जिनका जवाब तैयार करना बहुत ज़रूरी है. सिगमॉइड का तुरंत जवाब मिल जाता है को तेज़ी से कम करता है.

ReLU ऐक्टिवेशन फ़ंक्शन

आठवीं इमेज. ReLU ऐक्टिवेशन फ़ंक्शन.

असल में, गणित से जुड़ा कोई भी फ़ंक्शन, ऐक्टिवेशन फ़ंक्शन के तौर पर काम कर सकता है. मान लीजिए कि \(\sigma\) हमारे ऐक्टिवेशन फ़ंक्शन को दिखाता है (Relu, Sigmoid वगैरह). इस वजह से, नेटवर्क में एक नोड की वैल्यू नीचे दी जाती है फ़ॉर्मूला:

$$\sigma(\boldsymbol w \cdot \boldsymbol x+b)$$

खास जानकारी

अब हमारे मॉडल में वे सभी मानक घटक हैं, जो लोग आम तौर पर इसका मतलब है, जब वे "न्यूरल नेटवर्क" बोलें:

  • नोड का एक सेट, जो न्यूरॉन के जैसा होता है और जो परतों में व्यवस्थित होता है.
  • हर न्यूरल नेटवर्क के बीच के कनेक्शन को दिखाने वाले वेट का सेट लेयर चुनें और उसके नीचे की लेयर चुनें. इसके नीचे की परत एक अन्य न्यूरल नेटवर्क लेयर या किसी अन्य तरह की लेयर.
  • पक्षपात का एक सेट, हर नोड के लिए एक.
  • एक ऐक्टिवेशन फ़ंक्शन, जो किसी लेयर में हर नोड के आउटपुट को बदलता है. अलग-अलग लेयर में, ऐक्टिवेशन फ़ंक्शन अलग-अलग हो सकते हैं.

चेतावनी: यह ज़रूरी नहीं है कि न्यूरल नेटवर्क हमेशा इससे बेहतर हों सुविधा क्रॉस शामिल हैं, लेकिन न्यूरल नेटवर्क एक ऐसा लचीला विकल्प ऑफ़र करते हैं जो काम करता है का पता लगाते हैं.