ग्रेडियन्ट डिसेन्ट मेसिन लर्निङ (ML) मोडलिङमा सबैभन्दा लोकप्रिय अप्टिमाइजेसन प्रविधि हो। एल्गोरिदमले अनुमानित मानहरू र ग्राउन्ड ट्रुथ बीचको त्रुटिलाई कम गर्छ। प्रविधिले प्रत्येक डेटा बिन्दुलाई बुझ्न र त्रुटि कम गर्नको लागि विचार गर्दछ, यसको प्रदर्शन प्रशिक्षण डेटा आकारमा निर्भर गर्दछ। Stochastic Gradient Descent (SGD) जस्ता प्रविधिहरू गणना कार्यसम्पादन सुधार गर्न तर अभिसरण शुद्धताको लागतमा डिजाइन गरिएको हो।
Stochastic Average Gradient ले पूर्ण ग्रेडियन्ट डिसेन्ट र SGD भनेर चिनिने क्लासिक दृष्टिकोणलाई सन्तुलनमा राख्छ र दुबै फाइदाहरू प्रदान गर्दछ। तर हामीले एल्गोरिदम प्रयोग गर्न सक्नु अघि, हामीले पहिले मोडेल अप्टिमाइजेसनको लागि यसको महत्त्व बुझ्नुपर्छ।
प्रत्येक ML एल्गोरिदमसँग सम्बन्धित हानि प्रकार्य हुन्छ जसले मोडेलको कार्यसम्पादनलाई न्यूनीकरण वा सुधार गर्ने लक्ष्य राख्छ। गणितीय रूपमा, घाटा निम्न रूपमा परिभाषित गर्न सकिन्छ:
यो केवल वास्तविक र भविष्यवाणी गरिएको आउटपुट बीचको भिन्नता हो, र यो भिन्नतालाई कम गर्नुको अर्थ हाम्रो मोडेल वास्तविक सत्य मानहरूको नजिक आउँछ।
मिनिमाइजेसन एल्गोरिदमले हानि प्रकार्य पार गर्न र विश्वव्यापी न्यूनतम फेला पार्न ग्रेडियन्ट डिसेन्ट प्रयोग गर्दछ। प्रत्येक ट्राभर्सल चरणले आउटपुट अनुकूलन गर्न एल्गोरिदमको वजनहरू अद्यावधिक गर्ने समावेश गर्दछ।
परम्परागत ग्रेडियन्ट डिसेन्ट एल्गोरिदमले सम्पूर्ण डेटासेटमा गणना गरिएका सबै ग्रेडियन्टहरूको औसत प्रयोग गर्दछ। एकल प्रशिक्षण उदाहरणको जीवनचक्र निम्न जस्तो देखिन्छ:
वजन अद्यावधिक समीकरण निम्न जस्तो देखिन्छ:
जहाँ W
मोडेलको तौललाई प्रतिनिधित्व गर्दछ र dJ/dW
मोडेलको वजनको सन्दर्भमा हानि प्रकार्यको व्युत्पन्न हो। परम्परागत विधिमा उच्च अभिसरण दर छ तर लाखौं डेटा बिन्दुहरू समावेश भएका ठूला डाटासेटहरूसँग व्यवहार गर्दा कम्प्युटेशनली महँगो हुन्छ।
SGD पद्धति सादा GD जस्तै नै रहन्छ, तर ग्रेडियन्टहरू गणना गर्न सम्पूर्ण डेटासेट प्रयोग गर्नुको सट्टा, यसले इनपुटहरूबाट सानो ब्याच प्रयोग गर्दछ। यो विधि धेरै प्रभावकारी छ तर विश्वव्यापी मिनिमा वरिपरि धेरै हप हुन सक्छ किनकि प्रत्येक पुनरावृत्तिले सिकाउनको लागि डाटाको एक अंश मात्र प्रयोग गर्दछ।
Stochastic Average Gradient (SAG) दृष्टिकोण GD र SGD बीचको मध्यस्थताको रूपमा प्रस्तुत गरिएको थियो। यसले अनियमित डेटा बिन्दु चयन गर्दछ र त्यस बिन्दुमा ढाँचाको आधारमा यसको मान अपडेट गर्दछ र त्यो विशेष डेटा बिन्दुको लागि भण्डारण गरिएको विगत ढाँचाहरूको भारित औसत।
SGD जस्तै, SAG ले प्रत्येक समस्यालाई उत्तल, भिन्नतायोग्य कार्यहरूको सीमित योगको रूपमा मोडेल गर्दछ। कुनै पनि पुनरावृत्तिमा, यसले वजन अद्यावधिकको लागि हालको ढाँचा र अघिल्लो ढाँचाको औसत प्रयोग गर्दछ। समीकरणले निम्न रूप लिन्छ:
दुई लोकप्रिय एल्गोरिदमहरू, फुल ग्रेडियन्ट (FG) र स्टोकास्टिक ग्रेडियन्ट डिसेन्ट (SGD) को बीचमा, FG एल्गोरिदमको राम्रो अभिसरण दर छ किनभने यसले गणनाको लागि प्रत्येक पुनरावृत्तिको समयमा सेट गरिएको सम्पूर्ण डेटा प्रयोग गर्दछ।
यद्यपि SAG सँग SGD जस्तै संरचना छ, यसको अभिसरण दर तुलनात्मक छ र कहिलेकाहीँ पूर्ण ग्रेडियन्ट दृष्टिकोण भन्दा राम्रो छ। तलको तालिका १ ले प्रयोगहरूबाट नतिजाहरूलाई संक्षेपमा प्रस्तुत गर्दछ
यसको अद्भुत प्रदर्शनको बावजुद, प्रदर्शन सुधार गर्न मद्दतको लागि मूल SGD एल्गोरिथ्ममा धेरै परिमार्जनहरू प्रस्ताव गरिएको छ।
ग्रेडियन्ट डिसेन्ट एक लोकप्रिय अप्टिमाइजेसन हो जुन उपलब्ध गराइएका उद्देश्य कार्यहरूको ग्लोबल मिनिमा पत्ता लगाउन प्रयोग गरिन्छ। एल्गोरिथ्मले वस्तुगत प्रकार्यको ढाँचा प्रयोग गर्दछ फंक्शन स्लोप पार गर्नको लागि जब सम्म यो सबैभन्दा तल्लो बिन्दुमा पुग्दैन।
फुल ग्रेडियन्ट डिसेन्ट (FG) र Stochastic Gradient Descent (SGD) एल्गोरिथ्मका दुई लोकप्रिय भिन्नताहरू हुन्। FG ले प्रत्येक पुनरावृत्तिको समयमा सम्पूर्ण डेटासेट प्रयोग गर्दछ र उच्च गणना लागतमा उच्च अभिसरण दर प्रदान गर्दछ। प्रत्येक पुनरावृत्तिमा, SGD ले एल्गोरिथ्म चलाउनको लागि डेटाको उपसमूह प्रयोग गर्दछ। यो धेरै कुशल छ तर एक अनिश्चित अभिसरण संग।
Stochastic Average Gradient (SAG) अर्को भिन्नता हो जसले अघिल्लो एल्गोरिदमको फाइदाहरू प्रदान गर्दछ। यसले कम गणनाको साथ उच्च अभिसरण दर प्रदान गर्न विगतको ग्रेडियन्टको औसत र डेटासेटको सबसेट प्रयोग गर्दछ। भेक्टराइजेशन र मिनी-ब्याचहरू प्रयोग गरेर यसको दक्षता सुधार गर्न एल्गोरिदमलाई थप परिमार्जन गर्न सकिन्छ।