सक्रियण पुनर्गणना ट्रेडऑफ़
एक्टिवेशन रीकंप्यूटेशन (ग्रेडिएंट या एक्टिवेशन चेकपॉइंटिंग) फॉरवर्ड पास में इंटरमीडिएट एक्टिवेशन को हटाकर और बैकवर्ड पास के दौरान उन्हें रीकंप्यूट करके प्रशिक्षण के दौरान जीपीयू मेमोरी को बचाता है।
सिंहावलोकन
It trades extra compute for the ability to train larger models or longer sequences on the same hardware.
गहरा गोता
ग्रेडिएंट्स की गणना करने के लिए बैकप्रॉपैगेशन को फॉरवर्ड-पास सक्रियण की आवश्यकता होती है, इसलिए डिफ़ॉल्ट रूप से प्रत्येक परत के आउटपुट संग्रहीत होते हैं - एक बड़ी मेमोरी लागत जो मॉडल आकार, बैच आकार और अनुक्रम लंबाई के साथ बढ़ती है। सक्रियण पुनर्गणना केवल कुछ 'चेकपॉइंट' टेंसर (अक्सर केवल परत सीमाएँ) रखती है और बाकी को फेंक देती है। बैकवर्ड पास के दौरान, यह मांग पर छोड़ी गई सक्रियता को पुन: उत्पन्न करने के लिए चौकियों के बीच आगे की गणना को फिर से चलाता है। क्लासिक परिणाम यह है कि प्रत्येक sqrt (N) परतों पर चेकपॉइंट्स लगाए जाने पर, मेमोरी लगभग एक अतिरिक्त फॉरवर्ड पास (~ 33% अधिक गणना) जोड़ते समय लगभग O (sqrt (N)) तक गिर जाती है। चुनिंदा वेरिएंट केवल सस्ते-लेकिन-मेमोरी-भारी ऑप्स (जैसे ध्यान या ड्रॉपआउट) की पुनर्गणना करते हैं, जबकि महंगे ऑप्स को कैश करते हैं, जिससे बहुत कम पुनर्गणना ओवरहेड के लिए अधिकांश मेमोरी बचत प्राप्त होती है।
तकनीकी अंतर्दृष्टि
बुनियादी व्यापार मेमोरी बनाम फ्लॉप है। पूर्ण पुनर्गणना मोटे तौर पर प्रति चरण एक अतिरिक्त फॉरवर्ड पास जोड़ती है (~30-40% धीमी) लेकिन परिमाण के क्रम से सक्रियण मेमोरी में कटौती कर सकती है। स्मार्ट कदम चयनात्मक चेकपॉइंटिंग है: उन ऑप्स की पहचान करें जो मेमोरी-बड़े हैं लेकिन गणना-सस्ते हैं (सॉफ्टमैक्स, लेयरनॉर्म, जीईएलयू, ध्यान स्कोर) और महंगे जीईएमएम के परिणामों को कैश्ड रखते हुए केवल उन्हीं की पुन: गणना करें - व्यर्थ गणना को कम करना।
सामरिक प्रभाव
लागत और बजट
वास्तुकला संबंधी निर्णय वर्षों तक प्रदर्शन और परिचालन लागत को संचालित करते हैं।
स्पष्ट निर्णय
तकनीकी शिक्षा टीमों को सही स्टैक चुनने में मदद करती है, न कि केवल नवीनतम स्टैक चुनने में।
गुणवत्ता नियंत्रण
बेहतर इंजीनियरिंग विकल्प उत्पादन में विश्वसनीयता की घटनाओं को कम करते हैं।
सक्रियण पुनर्गणना ट्रेडऑफ़ का भविष्य
पुनर्गणना तेजी से स्वचालित और चयनात्मक होती जा रही है। फ्रेमवर्क अब इष्टतम चेकपॉइंट चुनने के लिए प्रत्येक ऑप की मेमोरी और एफएलओपी लागत को प्रोफाइल करता है, और सीपीयू/एनवीएमई पर सक्रियण ऑफलोडिंग और समांतरता रणनीतियों के साथ पुनर्गणना को जोड़ता है। जैसे-जैसे संदर्भ की लंबाई और मॉडल का आकार बढ़ता जा रहा है, कंपाइलर-संचालित नीतियों (PyTorch, JAX/XLA में) की अपेक्षा करें जो स्वचालित रूप से प्रति-ऑप पुनर्गणना निर्णय लेती है, साथ ही संचार के साथ पुनर्गणना का सख्त ओवरलैप करती है ताकि अतिरिक्त FLOP आंशिक रूप से छिपे रहें।
वास्तविक विश्व कार्यान्वयन
प्रत्येक परत ब्लॉक को चेकपॉइंट करके एक बड़े ट्रांसफार्मर को प्रशिक्षित करना जो अन्यथा फिट नहीं होगा
ट्रांसफार्मर ब्लॉकों को लपेटने और सक्रियण मेमोरी को काटने के लिए PyTorch के torch.utils.checkpoint का उपयोग करना
न्यूनतम मंदी के साथ मेमोरी को बचाने के लिए मेगेट्रॉन-एलएम में ध्यान/सॉफ्टमैक्स की चयनात्मक पुनर्गणना
सक्रियणों को संग्रहीत करने के बजाय उनकी पुनः गणना करके एक निश्चित GPU बजट पर लंबी अनुक्रम लंबाई को सक्षम करना
जोखिम और रेलिंग
एक बेंचमार्क को अनुकूलित करने से व्यापक सिस्टम कमजोरियों को छुपाया जा सकता है।
बुनियादी ढांचे और रखरखाव की लागत को अक्सर कम करके आंका जाता है।
जैसे-जैसे सिस्टम अधिक जटिल होते जाएंगे सुरक्षा और अवलोकन संबंधी अंतराल बढ़ सकते हैं।
कार्यान्वयन रोडमैप
कार्यान्वयन से पहले विलंबता, गुणवत्ता और लागत लक्ष्य परिभाषित करें।
यथार्थवादी लोड और डेटा स्थितियों के तहत बेंचमार्क।
त्रुटियों, बहाव और उपयोगकर्ता प्रभाव के लिए उपकरण निगरानी।
स्केलिंग से पहले रोलबैक और घटना प्रतिक्रिया पथ तैयार करें।
अन्वेषण करते रहें
Free newsletter
Get the daily AI briefing
Three verified AI stories every weekday morning, written in plain English. Free forever, no ads.
One email each weekday. Unsubscribe in one click. We never sell or share your address.
Test yourself
Take the Activation Recomputation Tradeoffs quiz
Instant feedback on every answer, and a shareable certificate with a verifiable ID once you pass a course.
Support free AI education. AI Understanding is a 501(c)(3) nonprofit — no ads, no paywall, ever. Make a donation
अगली गाइड
स्मूथक्वांट और एक्टिवेशन क्वांटाइजेशन
अक्सर पूछे जाने वाले प्रश्नों
What is Activation Recomputation Tradeoffs?
एक्टिवेशन रीकंप्यूटेशन (ग्रेडिएंट या एक्टिवेशन चेकपॉइंटिंग) फॉरवर्ड पास में इंटरमीडिएट एक्टिवेशन को हटाकर और बैकवर्ड पास के दौरान उन्हें रीकंप्यूट करके प्रशिक्षण के दौरान जीपीयू मेमोरी को बचाता है। यह एक ही हार्डवेयर पर बड़े मॉडल या लंबे अनुक्रमों को प्रशिक्षित करने की क्षमता के लिए अतिरिक्त गणना का व्यापार करता है।
स्मृति को बचाने के लिए सक्रियण पुनर्गणना क्या करती है?
पुनर्गणना संग्रहीत सक्रियणों को त्याग देती है और उन्हें बैकवर्ड पास में पुन: उत्पन्न करती है, जिससे मेमोरी उपयोग को कम करने के लिए अतिरिक्त गणना खर्च होती है।
फ़ॉर्वर्ड-पास सक्रियण सामान्यतः संग्रहीत क्यों होते हैं?
बैकवर्ड पास ग्रेडिएंट्स की गणना करने के लिए फॉरवर्ड एक्टिवेशन का उपयोग करता है, इसलिए डिफ़ॉल्ट रूप से उन्हें बैकवर्ड पास चलने तक मेमोरी में रखा जाता है।
पूर्ण सक्रियण पुनर्गणना आम तौर पर कितनी अतिरिक्त गणना जोड़ती है?
पूर्ण पुनर्गणना बैकवर्ड पास के दौरान आगे की गणना को फिर से चलाती है, लगभग एक अतिरिक्त फॉरवर्ड पास जोड़ती है - 30-40% अधिक गणना के क्रम पर।
चयनात्मक (पूर्ण नहीं) पुनर्गणना के पीछे क्या विचार है?
चयनात्मक पुनर्गणना उन ऑप्स को लक्षित करती है जो बहुत सारी मेमोरी का उपयोग करते हैं लेकिन कम गणना करते हैं (जैसे सॉफ्टमैक्स या लेयरनॉर्म), जबकि बर्बाद हुए एफएलओपी को कम करने के लिए महंगे GEMM परिणामों को कैशिंग करते हैं।
अधिक मेमोरी को सहेजने के लिए किस पूरक तकनीक को अक्सर पुनर्गणना के साथ जोड़ा जाता है?
एक्टिवेशन ऑफलोडिंग कुछ एक्टिवेशन को सीपीयू/एनवीएमई स्टोरेज में ले जाती है, और आगे की मेमोरी बचत के लिए इसे अक्सर पुनर्गणना और समानता के साथ जोड़ा जाता है।