तंत्रिका नेटवर्क में डेरिवेटिव का उपयोग प्रशिक्षण प्रक्रिया के लिए होता है जिसे बैकप्रोपैजेशन कहा जाता है । यह तकनीक नुकसान के कार्य को कम करने के लिए मॉडल मापदंडों का एक इष्टतम सेट खोजने के लिए क्रमिक वंश का उपयोग करती है । अपने उदाहरण में आपको एक सिग्मायॉइड के व्युत्पन्न का उपयोग करना होगा क्योंकि यह वह सक्रियण है जो आपके व्यक्तिगत न्यूरॉन्स उपयोग कर रहे हैं।
नुकसान समारोह
मशीन लर्निंग का सार एक लागत फ़ंक्शन का अनुकूलन करना है, ताकि हम या तो कम कर सकें या कुछ लक्ष्य फ़ंक्शन को अधिकतम कर सकें। इसे आमतौर पर नुकसान या लागत में कटौती कहा जाता है। हम आम तौर पर इस फ़ंक्शन को कम से कम करना चाहते हैं। लागत फ़ंक्शन, , मॉडल पैरामीटर के एक फ़ंक्शन के रूप में आपके मॉडल के माध्यम से डेटा पारित करते समय परिणामी त्रुटियों के आधार पर कुछ दंड को संबद्ध करता है।C
आइए उस उदाहरण को देखें जहां हम यह लेबल लगाने की कोशिश करते हैं कि क्या किसी छवि में बिल्ली या कुत्ता है। अगर हमारे पास एक आदर्श मॉडल है, तो हम मॉडल को एक तस्वीर दे सकते हैं और यह हमें बताएगा कि क्या यह एक बिल्ली या कुत्ता है। हालांकि, कोई भी मॉडल सही नहीं है और यह गलतियाँ करेगा।
जब हम अपने मॉडल को प्रशिक्षित करते हैं, तो हम इनपुट डेटा से अर्थ का अनुमान लगाने में सक्षम होते हैं, हम जो गलतियाँ करते हैं, उनकी मात्रा को कम करना चाहते हैं। इसलिए हम एक प्रशिक्षण सेट का उपयोग करते हैं, इस डेटा में कुत्तों और बिल्लियों के बहुत सारे चित्र हैं और हमारे पास उस छवि के साथ जमीनी सच्चाई का लेबल है। हर बार जब हम मॉडल का एक प्रशिक्षण चलना चलाते हैं तो हम मॉडल की लागत (गलतियों की मात्रा) की गणना करते हैं। हम इस लागत को कम करना चाहेंगे।
कई लागत कार्य प्रत्येक अपने उद्देश्य की पूर्ति करते हैं। एक सामान्य लागत फ़ंक्शन जिसका उपयोग किया जाता है वह द्विघात लागत है जिसे परिभाषित किया गया है
C=1N∑Ni=0(y^−y)2 ।
यह छवियों के लिए अनुमानित लेबल और जमीनी सच्चाई लेबल के बीच अंतर का वर्ग है जिसे हमने प्रशिक्षण दिया था। हम इसे किसी तरह कम करना चाहेंगे।N
हानि फ़ंक्शन को कम करना
वास्तव में मशीन लर्निंग का अधिकांश ढांचा ढांचों का एक परिवार है जो कुछ लागत फ़ंक्शन को कम करके वितरण का निर्धारण करने में सक्षम हैं। सवाल हम पूछ सकते हैं "हम एक फ़ंक्शन को कैसे कम कर सकते हैं"?
चलिए निम्न फ़ंक्शन को कम करते हैं
y=x2−4x+6 ।
यदि हम इसे प्लॉट करते हैं तो हम देख सकते हैं कि पर एक न्यूनतम है । इसे विश्लेषणात्मक रूप से करने के लिए हम इस फ़ंक्शन के व्युत्पन्न को ले सकते हैंx=2
dydx=2x−4=0
x=2 ।
हालाँकि, कई बार वैश्विक रूप से न्यूनतम विश्लेषणात्मक खोजना संभव नहीं होता है। इसलिए इसके बजाय हम कुछ अनुकूलन तकनीकों का उपयोग करते हैं। यहाँ के रूप में अच्छी कई अलग अलग तरीकों मौजूद जैसे: न्यूटन- Raphson, ग्रिड खोज, आदि इनमें है ढाल वंश । यह तंत्रिका नेटवर्क द्वारा उपयोग की जाने वाली तकनीक है।
ढतला हुआ वंश
आइए इसे समझने के लिए एक प्रसिद्ध रूप से प्रयुक्त सादृश्य का उपयोग करें। 2 डी न्यूनतम समस्या की कल्पना करें। यह जंगल में पहाड़ी पहाड़ी पर होने के बराबर है। आप उस गाँव में वापस जाना चाहते हैं जिसे आप जानते हैं कि वह सबसे निचले पायदान पर है। भले ही आपको गाँव की कार्डिनल दिशाओं का पता न हो। आपको बस इतना करने की ज़रूरत है कि आप लगातार सबसे कठिन रास्ता अपनाएँ, और आप अंततः गाँव पहुँच जाएँगे। तो हम ढलान की स्थिरता के आधार पर सतह से नीचे उतरेंगे।
चलिए हमारा फंक्शन हुआ
y=x2−4x+6
हम निर्धारित करेंगे जिसके लिए कम से कम है। ग्रेडिएंट डीसेंट अल्गोरिथम पहले कहता है कि हम लिए रैंडम वैल्यू । आइए हम पर आरंभ करते हैं । तब एल्गोरिथ्म निम्नलिखित पुनरावृत्ति करेगा जब तक हम अभिसरण तक नहीं पहुंचते।y x x = 8xyxx=8
एक्सएन ई डब्ल्यू= एक्सओ ल ड- νघyघएक्स
जहां सीखने की दर है, हम इसे उस मूल्य पर सेट कर सकते हैं जो हमें पसंद आएगा। हालाँकि इसे चुनने का एक स्मार्ट तरीका है। बहुत बड़ा है और हम कभी भी अपने न्यूनतम मूल्य तक नहीं पहुंचेंगे, और बहुत बड़ा हम वहां पहुंचने से पहले बहुत समय बर्बाद कर देंगे। यह उन चरणों के आकार के अनुरूप है जिन्हें आप खड़ी ढलान पर ले जाना चाहते हैं। छोटे कदम और तुम पहाड़ पर मर जाओगे, तुम कभी नीचे नहीं उतरोगे। एक कदम बहुत बड़ा है और आप गांव की शूटिंग और पहाड़ के दूसरी तरफ खत्म होने का जोखिम उठाते हैं। व्युत्पन्न वह साधन है जिसके द्वारा हम इस ढलान को अपने न्यूनतम की ओर ले जाते हैं।ν
घyघएक्स= 2 एक्स - 4
ν= ०.१
Iteration 1:
x ( 2 * 5.07 - 4 ) = 4.45 एक्स एन ई डब्ल्यू = 4.45 - 0.1 = 3.25 एक्स एन ई डब्ल्यू = 3.25 - 0.1 ( 2 * 3.25 - 4 ) = 3.00 2.64 - 0.1 ( 2)एक्सएन ई डब्ल्यू= 8 - 0.1 ( 2 - 8 - 4 ) = 6.8
एक्स एन ई डब्ल्यू =5.84-0.1(2*5.84-4)=5.07 x n e w =5.07-0.1एक्सएन ई डब्ल्यू= 6.8 - 0.1 ( 2 - 6.8 - 4 ) = 5.84
एक्सएन ई डब्ल्यू= स्कोर 5.84 - 0.1 ( 2 * स्कोर 5.84 - 4 ) = 5.07
एक्सएन ई डब्ल्यू= 5.07 - 0.1 ( 2 - 5.07 - 4 ) = 4.45
एक्स एन ई डब्ल्यू = 3.96 - 0.1 ( 2 * 3.96 - 4 ) = 3.57 एक्स एन ई डब्ल्यू = 3.57 - 0.1 ( 2 * 3.57 - 4 )एक्सएन ई डब्ल्यू= 4.45 - 0.1 ( 2 * 4.45 - 4 ) = 3.96
एक्सएन ई डब्ल्यू= 3.96 - 0.1 ( 2 * 3.96 - 4 ) = 3.57
एक्सएन ई डब्ल्यू= 3.57 - 0.1 ( 2 * 3.57 - 4 ) = 3.25
एक्सएन ई डब्ल्यू= 3.25 - 0.1 ( 2 * 3.25 - 4 ) = 3.00
x n e w = 2.80 - 0.1 ( 2 ∗ 2.80 - 4) ) = 2.64 x n e w =एक्सएन ई डब्ल्यू= 3.00 - 0.1 ( 2 ∗ 3.00 - 4 ) = 2.80
एक्सएन ई डब्ल्यू=2.80−0.1(2∗2.80−4)=2.64
एक्स एन ई डब्ल्यू = 2.51 - - 4 ) = 2.26 एक्स एन ई डब्ल्यू = 2.26 - 0.1 ( 2 * 2.26 - 4 ) = 2.21 ई डब्ल्यू = 2.13 - 0.1 ( 2 * 2.13 - 4 ) = 2.10 x n e w = 2.10 -xnew=2.64−0.1(2∗2.64−4)=2.51
एक्स एन ई डब्ल्यू = 2.41 - 0.1 ( 2 * 2.41 - 4 ) = 2.32 एक्स एन ई डब्ल्यू = 2.32 - 0.1 ( 2 * 2.32xnew=2.51−0.1(2∗2.51−4)=2.41
xnew=2.41−0.1(2∗2.41−4)=2.32
xnew= 2.32 -0.1(2∗2.32−4)=2.26
एक्सएन ई डब्ल्यू= 2.26 - 0.1 ( 2 * 2.26 - 4 ) = 2.21
एक्स एन ई डब्ल्यू = 2.16 - 0.1 ( 2 * 2.16 - 4 ) = 2.13 x nएक्सएन ई डब्ल्यू= 2.21 - 0.1 ( 2 * 2.21 - 4 ) = 2.16
एक्सएन ई डब्ल्यू= 2.16 - 0.1 ( 2 * 2.16 - 4 ) = 2.13
एक्सएन ई डब्ल्यू=2.13−0.1(2∗2.13−4)=2.10
एक्स एन ई डब्ल्यू = 2.08 - 0.1 ( 2 * 2.08 - 4 ) = 2.06 एक्स n e w = 2.06 - 0.1 (xnew=2.10−0.1(2∗2.10−4)=2.08
xnew=2.08−0.1(2∗2.08−4)=2.06
एक्स एन ई डब्ल्यू = 2.05 - 0.1 ( 2 * 2.05 - 4 ) = 2.04 एक्स एन ई डब्ल्यू = 2.04 - 0.1 ( 2 * 2.04 - 4 ) = 2.03 एक्स एन ई डब्ल्यू = 2.03 - 0.1 ( 2 ∗ 2.03 - 4 ) =xnew=2.06−0.1(2∗2.06−4)=2.05
xnew=2.05−0.1(2∗2.05−4)=2.04
xnew=2.04−0.1(2∗2.04−4)=2.03
एक्स एन ई डब्ल्यू = 2.02 - 0.1 ( 2 * 2.02 - 4 ) = 2.02 एक्स एन ई डब्ल्यू = 2.02 - 0.1 ( 2 * 2.02 - 4 ) = 2.01 एक्स एन ई डब्ल्यू = 2.01 - 0.1 ( 2 * 2.01 - 4 ) = 2.01 x n e w = 2.01xnew=2.03−0.1(2∗2.03−4)=2.02
xnew=2.02−0.1(2∗2.02−4)=2.02
xnew=2.02−0.1(2∗2.02−4)=2.01
xnew=2.01−0.1(2∗2.01−4)=2.01
एक्स एन ई डब्ल्यू = 2.01 - 0.1 ( 2 * 2.01 - 4 ) = 2.00 एक्स एन ई डब्ल्यू = 2.00 - 0.1 ( 2 * 2.00 - 4 ) = 2.00 एक्स एन ई डब्ल्यू = 2.00 - 0.1 ( 2 * 2.00 -xnew=2.01−0.1(2∗2.01−4)=2.01
xnew=2.01−0.1(2∗2.01−4)=2.00
xnew=2.00−0.1(2∗2.00−4)=2.00
एक्स एन ई डब्ल्यू = 2.00 - 0.1 ( 2 * 2.00 - 4 ) = 2.00 एक्स एन ई डब्ल्यू = 2.00 - 0.1 ( 2 * 2.00 - 4 ) = 2.00xnew=2.00−0.1(2∗2.00−4)=2.00
xnew=2.00−0.1(2∗2.00−4)=2.00
xnew=2.00−0.1(2∗2.00−4)=2.00
और हम देखते हैं कि एल्गोरिथ्म परिवर्तित होता है ! हमने न्यूनतम पाया है।x=2
तंत्रिका नेटवर्क पर लागू होता है
पहले न्यूरल नेटवर्क में केवल एक न्यूरॉन होता था जो कुछ इनपुट में लेता था और फिर आउटपुट । एक सामान्य फ़ंक्शन का उपयोग सिग्मॉइड फ़ंक्शन हैyxy^
σ(z)=11+exp(z)
y^(wTx)=11+exp(wTx+b)
जहां प्रत्येक इनपुट लिए संबद्ध भार है और हमारे पास एक पूर्वाग्रह । हम फिर अपने लागत समारोह को कम करना चाहते हैंएक्स बीwxb
C=12N∑Ni=0(y^−y)2 ।
तंत्रिका नेटवर्क को कैसे प्रशिक्षित किया जाए?
हम सिग्मॉइड फ़ंक्शन के आउटपुट के आधार पर वेट को प्रशिक्षित करने के लिए ढाल वंश का उपयोग करेंगे और हम कुछ लागत फ़ंक्शन उपयोग करेंगे और आकार के डेटा के बैचों पर ट्रेन करेंगे ।एनCN
C=12N∑Ni(y^−y)2
y^ सिग्मॉइड फ़ंक्शन से प्राप्त पूर्वानुमानित वर्ग है और जमीनी सच्चाई लेबल है। हम वेट संबंध में लागत समारोह को कम करने के लिए ढाल वंश का उपयोग करेंगे । जीवन को आसान बनाने के लिए हम व्युत्पन्न को निम्नानुसार विभाजित करेंगेवyw
∂C∂w=∂C∂y^∂y^∂w ।
∂C∂y^=y^−y
और हमारे पास उस और सिग्मॉइड फ़ंक्शन का व्युत्पन्न इस प्रकार हमारे पास है,y^=σ(wTx)∂σ(z)∂z=σ(z)(1−σ(z))
∂y^∂w=11+exp(wTx+b)(1−11+exp(wTx+b)) ।
तो हम फिर क्रमिक वंश के माध्यम से भार को अपडेट कर सकते हैं
wnew=wold−η∂C∂w
जहां सीखने की दर है।η