ग्रेडिएंट डिसेंट और स्टोचस्टिक ग्रेडिएंट डिसेंट के बीच अंतर क्या है?


24

ग्रेडिएंट डिसेंट और स्टोचस्टिक ग्रेडिएंट डिसेंट के बीच अंतर क्या है?

मैं इनसे बहुत परिचित नहीं हूं, क्या आप एक छोटे से उदाहरण के साथ अंतर का वर्णन कर सकते हैं?

जवाबों:


28

एक त्वरित सरल स्पष्टीकरण के लिए:

ग्रेडिएंट डिसेंट (GD) और स्टोचैस्टिक ग्रेडिएंट डिसेंट (SGD) दोनों में, आप एक एरर फंक्शन को कम करने के लिए पुनरावृत्त तरीके से मापदंडों का एक सेट अपडेट करते हैं।

जीडी में रहते हुए, आपको अपने प्रशिक्षण सेट के सभी नमूनों को एक विशेष पुनरावृत्ति में एक पैरामीटर के लिए एक एकल अद्यतन करने के लिए सेट करना होता है, दूसरे हाथ में, दूसरी ओर, आप अपने प्रशिक्षण सेट से प्रशिक्षण नमूने के केवल एक या SUBSET का उपयोग करते हैं। किसी विशेष पुनरावृत्ति में एक पैरामीटर के लिए अद्यतन करने के लिए। यदि आप SUBSET का उपयोग करते हैं, तो इसे मिनीबैच स्टोचस्टिक ग्रेडिएंट डिसेंट कहा जाता है।

इस प्रकार, यदि प्रशिक्षण के नमूनों की संख्या बड़ी है, वास्तव में बहुत बड़ी है, तो ढाल वंश का उपयोग करने में बहुत लंबा समय लग सकता है क्योंकि प्रत्येक पुनरावृत्ति में जब आप मापदंडों के मूल्यों को अपडेट कर रहे हैं, तो आप पूर्ण प्रशिक्षण सेट के माध्यम से चल रहे हैं। दूसरी ओर, SGD का उपयोग तेजी से होगा क्योंकि आप केवल एक प्रशिक्षण नमूने का उपयोग करते हैं और यह पहले नमूने से तुरंत खुद को सुधारना शुरू कर देता है।

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

यदि आपको एक व्यावहारिक मामले के साथ इसके उदाहरण की आवश्यकता है, तो एंड्रयू एनजी के नोटों की यहां जांच करें जहां वह स्पष्ट रूप से आपको दोनों मामलों में शामिल चरणों को दिखाता है। cs229-नोट्स

स्रोत: Quora थ्रेड


धन्यवाद, संक्षेप में इस तरह? ग्रेडिएंट डिसेंट के तीन वेरिएंट हैं: बैच, स्टोचैस्टिक और मिनीबैच: बैच सभी प्रशिक्षण नमूनों के मूल्यांकन के बाद वज़न को अपडेट करता है। स्टोचैस्टिक, वेट प्रत्येक प्रशिक्षण नमूने के बाद अपडेट किए जाते हैं। मिनीबैच दोनों दुनिया के सर्वश्रेष्ठ को जोड़ती है। हम पूर्ण डेटा सेट का उपयोग नहीं करते हैं, लेकिन हम एकल डेटा बिंदु का उपयोग नहीं करते हैं। हम अपने डेटा सेट से डेटा का बेतरतीब ढंग से चयनित सेट का उपयोग करते हैं। इस तरह, हम गणना लागत को कम करते हैं और स्टोचस्टिक संस्करण की तुलना में कम विचरण को प्राप्त करते हैं।
डेवलपर

5

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

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

शायद एक नकारात्मक पक्ष यह है कि इष्टतम का मार्ग (यह हमेशा एक ही इष्टतम होगा यह मानते हुए) बहुत अधिक शोर हो सकता है। तो एक अच्छी चिकनी हानि वक्र के बजाय, यह दिखाते हुए कि कैसे क्रमिक वंश के प्रत्येक पुनरावृत्ति में त्रुटि घटती है, आप इस बारे में कुछ देख सकते हैं:

शोर हानि वक्र

हम स्पष्ट रूप से समय के साथ घटते नुकसान को देखते हैं, हालांकि युग से युगांतर (प्रशिक्षण बैच से प्रशिक्षण बैच) तक बड़ी विविधताएं हैं, इसलिए वक्र शोर है।

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


धन्यवाद, संक्षेप में इस तरह? ग्रेडिएंट डिसेंट के तीन वेरिएंट हैं: बैच, स्टोचैस्टिक और मिनीबैच: बैच सभी प्रशिक्षण नमूनों के मूल्यांकन के बाद वज़न को अपडेट करता है। स्टोचैस्टिक, वेट प्रत्येक प्रशिक्षण नमूने के बाद अपडेट किए जाते हैं। मिनीबैच दोनों दुनिया के सर्वश्रेष्ठ को जोड़ती है। हम पूर्ण डेटा सेट का उपयोग नहीं करते हैं, लेकिन हम एकल डेटा बिंदु का उपयोग नहीं करते हैं। हम अपने डेटा सेट से डेटा का बेतरतीब ढंग से चयनित सेट का उपयोग करते हैं। इस तरह, हम गणना लागत को कम करते हैं और स्टोचस्टिक संस्करण की तुलना में कम विचरण को प्राप्त करते हैं।
डेवलपर

एनn=1

tks, यह स्पष्ट है!
डेटाडेकक्वोक

5

ग्रैडिएंट डिसेंट या बैच ग्रैडिएंट डिसेंट में, हम प्रति पूर्ण प्रशिक्षण डेटा का उपयोग करते हैं, जबकि स्टोचैस्टिक ग्रेडिएंट डिसेंट में, हम प्रति युग में केवल एकल प्रशिक्षण उदाहरण का उपयोग करते हैं और मिनी-बैच ग्रैडिएंट डिसेंट इन दो चरम सीमाओं के बीच है, जिसमें हम उपयोग कर सकते हैं प्रति अवधि प्रशिक्षण डेटा का एक मिनी-बैच (छोटा हिस्सा), मिनी-बैच के आकार का चयन करने के लिए अंगूठे का नियम 2 की शक्ति में है जैसे 32, 64, 128 आदि
। अधिक जानकारी के लिए: cs231n व्याख्यान नोट


धन्यवाद, संक्षेप में इस तरह? ग्रेडिएंट डिसेंट के तीन वेरिएंट हैं: बैच, स्टोचैस्टिक और मिनीबैच: बैच सभी प्रशिक्षण नमूनों के मूल्यांकन के बाद वज़न को अपडेट करता है। स्टोचैस्टिक, वेट प्रत्येक प्रशिक्षण नमूने के बाद अपडेट किए जाते हैं। मिनीबैच दोनों दुनिया के सर्वश्रेष्ठ को जोड़ती है। हम पूर्ण डेटा सेट का उपयोग नहीं करते हैं, लेकिन हम एकल डेटा बिंदु का उपयोग नहीं करते हैं। हम अपने डेटा सेट से डेटा का बेतरतीब ढंग से चयनित सेट का उपयोग करते हैं। इस तरह, हम गणना लागत को कम करते हैं और स्टोचस्टिक संस्करण की तुलना में कम विचरण को प्राप्त करते हैं।
डेवलपर
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.