paint-brush
Stochastic औसत ग्रेडियन्ट बुझ्दैद्वारा@kustarev
31,912 पढाइहरू
31,912 पढाइहरू

Stochastic औसत ग्रेडियन्ट बुझ्दै

द्वारा Andrey Kustarev4m2024/06/06
Read on Terminal Reader
Read this story w/o Javascript

धेरै लामो; पढ्नकाे लागि

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

People Mentioned

Mention Thumbnail

Companies Mentioned

Mention Thumbnail
Mention Thumbnail
featured image - Stochastic औसत ग्रेडियन्ट बुझ्दै
Andrey Kustarev HackerNoon profile picture
0-item


ग्रेडियन्ट डिसेन्ट मेसिन लर्निङ (ML) मोडलिङमा सबैभन्दा लोकप्रिय अप्टिमाइजेसन प्रविधि हो। एल्गोरिदमले अनुमानित मानहरू र ग्राउन्ड ट्रुथ बीचको त्रुटिलाई कम गर्छ। प्रविधिले प्रत्येक डेटा बिन्दुलाई बुझ्न र त्रुटि कम गर्नको लागि विचार गर्दछ, यसको प्रदर्शन प्रशिक्षण डेटा आकारमा निर्भर गर्दछ। Stochastic Gradient Descent (SGD) जस्ता प्रविधिहरू गणना कार्यसम्पादन सुधार गर्न तर अभिसरण शुद्धताको लागतमा डिजाइन गरिएको हो।


Stochastic Average Gradient ले पूर्ण ग्रेडियन्ट डिसेन्ट र SGD भनेर चिनिने क्लासिक दृष्टिकोणलाई सन्तुलनमा राख्छ र दुबै फाइदाहरू प्रदान गर्दछ। तर हामीले एल्गोरिदम प्रयोग गर्न सक्नु अघि, हामीले पहिले मोडेल अप्टिमाइजेसनको लागि यसको महत्त्व बुझ्नुपर्छ।

ग्रेडियन्ट डिसेन्टको साथ मेशिन लर्निङ उद्देश्यहरू अप्टिमाइज गर्दै

प्रत्येक ML एल्गोरिदमसँग सम्बन्धित हानि प्रकार्य हुन्छ जसले मोडेलको कार्यसम्पादनलाई न्यूनीकरण वा सुधार गर्ने लक्ष्य राख्छ। गणितीय रूपमा, घाटा निम्न रूपमा परिभाषित गर्न सकिन्छ:


यो केवल वास्तविक र भविष्यवाणी गरिएको आउटपुट बीचको भिन्नता हो, र यो भिन्नतालाई कम गर्नुको अर्थ हाम्रो मोडेल वास्तविक सत्य मानहरूको नजिक आउँछ।


मिनिमाइजेसन एल्गोरिदमले हानि प्रकार्य पार गर्न र विश्वव्यापी न्यूनतम फेला पार्न ग्रेडियन्ट डिसेन्ट प्रयोग गर्दछ। प्रत्येक ट्राभर्सल चरणले आउटपुट अनुकूलन गर्न एल्गोरिदमको वजनहरू अद्यावधिक गर्ने समावेश गर्दछ।


प्लेन ग्रेडियन्ट डिसेन्ट

परम्परागत ग्रेडियन्ट डिसेन्ट एल्गोरिदमले सम्पूर्ण डेटासेटमा गणना गरिएका सबै ग्रेडियन्टहरूको औसत प्रयोग गर्दछ। एकल प्रशिक्षण उदाहरणको जीवनचक्र निम्न जस्तो देखिन्छ:



वजन अद्यावधिक समीकरण निम्न जस्तो देखिन्छ:

जहाँ W मोडेलको तौललाई प्रतिनिधित्व गर्दछ र dJ/dW मोडेलको वजनको सन्दर्भमा हानि प्रकार्यको व्युत्पन्न हो। परम्परागत विधिमा उच्च अभिसरण दर छ तर लाखौं डेटा बिन्दुहरू समावेश भएका ठूला डाटासेटहरूसँग व्यवहार गर्दा कम्प्युटेशनली महँगो हुन्छ।

Stochastic Gradient Descent (SGD)

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

Stochastic औसत ग्रेडियन्ट

Stochastic Average Gradient (SAG) दृष्टिकोण GD र SGD बीचको मध्यस्थताको रूपमा प्रस्तुत गरिएको थियो। यसले अनियमित डेटा बिन्दु चयन गर्दछ र त्यस बिन्दुमा ढाँचाको आधारमा यसको मान अपडेट गर्दछ र त्यो विशेष डेटा बिन्दुको लागि भण्डारण गरिएको विगत ढाँचाहरूको भारित औसत।


SGD जस्तै, SAG ले प्रत्येक समस्यालाई उत्तल, भिन्नतायोग्य कार्यहरूको सीमित योगको रूपमा मोडेल गर्दछ। कुनै पनि पुनरावृत्तिमा, यसले वजन अद्यावधिकको लागि हालको ढाँचा र अघिल्लो ढाँचाको औसत प्रयोग गर्दछ। समीकरणले निम्न रूप लिन्छ:



अभिसरण दर

दुई लोकप्रिय एल्गोरिदमहरू, फुल ग्रेडियन्ट (FG) र स्टोकास्टिक ग्रेडियन्ट डिसेन्ट (SGD) को बीचमा, FG एल्गोरिदमको राम्रो अभिसरण दर छ किनभने यसले गणनाको लागि प्रत्येक पुनरावृत्तिको समयमा सेट गरिएको सम्पूर्ण डेटा प्रयोग गर्दछ।

यद्यपि SAG सँग SGD जस्तै संरचना छ, यसको अभिसरण दर तुलनात्मक छ र कहिलेकाहीँ पूर्ण ग्रेडियन्ट दृष्टिकोण भन्दा राम्रो छ। तलको तालिका १ ले प्रयोगहरूबाट नतिजाहरूलाई संक्षेपमा प्रस्तुत गर्दछ श्मिट एट। al

स्रोत: https://arxiv.org/pdf/1309.2388

थप परिमार्जनहरू

यसको अद्भुत प्रदर्शनको बावजुद, प्रदर्शन सुधार गर्न मद्दतको लागि मूल SGD एल्गोरिथ्ममा धेरै परिमार्जनहरू प्रस्ताव गरिएको छ।


  • प्रारम्भिक पुनरावृत्तिहरूमा पुन: वजन: पहिलो केही पुनरावृत्तिहरूमा SAG अभिसरण ढिलो रहन्छ किनकि एल्गोरिदमले n (डेटा बिन्दुहरूको कुल संख्या) को साथ दिशालाई सामान्य बनाउँछ। एल्गोरिदमले अझै धेरै डेटा बिन्दुहरू देख्न सकेको हुनाले यसले गलत अनुमान प्रदान गर्दछ। परिमार्जनले n को सट्टा m द्वारा सामान्यीकरण गर्ने सुझाव दिन्छ, जहाँ m त्यो विशेष पुनरावृत्ति नभएसम्म कम्तिमा एक पटक देखिने डेटा बिन्दुहरूको संख्या हो।
  • मिनी-ब्याचहरू: स्टोकास्टिक ग्रेडियन्ट दृष्टिकोणले एकै साथ धेरै डाटा पोइन्टहरू प्रशोधन गर्न मिनी-ब्याचहरू प्रयोग गर्दछ। एउटै दृष्टिकोण SAG मा लागू गर्न सकिन्छ। यसले सुधारिएको कम्प्युटर दक्षताको लागि भेक्टोराइजेशन र समानान्तरीकरणको लागि अनुमति दिन्छ। यसले मेमोरी लोड पनि घटाउँछ, SAG एल्गोरिथ्मको लागि एक प्रमुख चुनौती।
  • चरण-आकार प्रयोग: पहिले उल्लेख गरिएको चरण आकार (116L) ले अद्भुत परिणामहरू प्रदान गर्दछ, तर लेखकहरूले 1L को चरण आकार प्रयोग गरेर थप प्रयोग गरे। पछिल्लोले अझ राम्रो अभिसरण प्रदान गर्यो। यद्यपि, लेखकहरूले सुधारिएको परिणामहरूको औपचारिक विश्लेषण प्रस्तुत गर्न असमर्थ थिए। तिनीहरू निष्कर्षमा पुग्छन् कि चरण आकार विशिष्ट समस्याको लागि इष्टतम एक फेला पार्न प्रयोग गरिनुपर्छ।


अन्तिम विचार

ग्रेडियन्ट डिसेन्ट एक लोकप्रिय अप्टिमाइजेसन हो जुन उपलब्ध गराइएका उद्देश्य कार्यहरूको ग्लोबल मिनिमा पत्ता लगाउन प्रयोग गरिन्छ। एल्गोरिथ्मले वस्तुगत प्रकार्यको ढाँचा प्रयोग गर्दछ फंक्शन स्लोप पार गर्नको लागि जब सम्म यो सबैभन्दा तल्लो बिन्दुमा पुग्दैन।

फुल ग्रेडियन्ट डिसेन्ट (FG) र Stochastic Gradient Descent (SGD) एल्गोरिथ्मका दुई लोकप्रिय भिन्नताहरू हुन्। FG ले प्रत्येक पुनरावृत्तिको समयमा सम्पूर्ण डेटासेट प्रयोग गर्दछ र उच्च गणना लागतमा उच्च अभिसरण दर प्रदान गर्दछ। प्रत्येक पुनरावृत्तिमा, SGD ले एल्गोरिथ्म चलाउनको लागि डेटाको उपसमूह प्रयोग गर्दछ। यो धेरै कुशल छ तर एक अनिश्चित अभिसरण संग।


Stochastic Average Gradient (SAG) अर्को भिन्नता हो जसले अघिल्लो एल्गोरिदमको फाइदाहरू प्रदान गर्दछ। यसले कम गणनाको साथ उच्च अभिसरण दर प्रदान गर्न विगतको ग्रेडियन्टको औसत र डेटासेटको सबसेट प्रयोग गर्दछ। भेक्टराइजेशन र मिनी-ब्याचहरू प्रयोग गरेर यसको दक्षता सुधार गर्न एल्गोरिदमलाई थप परिमार्जन गर्न सकिन्छ।