DASH: Faster Shampoo via Batched Block Preconditioning and Efficient Inverse-Root Solvers
यह शोध पत्र DASH को प्रस्तुत करता है, जो डिस्ट्रिब्यूटेड शैम्पू (Distributed Shampoo) ऑप्टिमाइज़र का एक काफी तेज़ कार्यान्वयन है, जो बेहतर GPU उपयोग के लिए 3D टेंसर स्टैकिंग और अभूतपूर्व इनवर्स-रूट सॉल्वर (न्यूटन-DB और चेबिशेव सन्निकटन) का लाभ उठाकर अभिसरण गुणवत्ता (convergence quality) को बनाए रखते हुए या उसमें सुधार करते हुए 5.6 गुना तक की गति वृद्धि प्राप्त करता है।
मूल पेपर CC BY 4.0 (http://creativecommons.org/licenses/by/4.0/) के तहत लाइसेंस किया गया है। नीचे दिए गए पेपर की यह व्याख्या AI से तैयार की गई है। इसे लेखकों ने न तो लिखा है, न इसका समर्थन किया है। तकनीकी सटीकता के लिए मूल पेपर देखें। पूरा डिस्क्लेमर पढ़ें
कल्पना कीजिए कि आप एक विशाल रोबोट को एक नई भाषा बोलना सिखाने की कोशिश कर रहे हैं। ऐसा करने के लिए, आपको एक "ऑप्टिमाइज़र" (optimizer) की आवश्यकता है—एक स्मार्ट कोच जो हर सबक के बाद रोबोट के मस्तिष्क (इसके पैरामीटर्स) को समायोजित करता है ताकि गलतियों को कम किया जा सके।
वर्षों से, सबसे लोकप्रिय कोच Adam रहा है, जो एक तेज़ विधि है लेकिन थोड़ी "आलसी" है। यह केवल यह देखता है कि प्रत्येक व्यक्तिगत न्यूरॉन को कितना बदलने की आवश्यकता है, और इस बात को नज़रअंदाज़ कर देता है कि न्यूरॉन्स मिलकर कैसे काम करते हैं।
यहाँ Shampoo आता है, जो एक बहुत अधिक स्मार्ट कोच है। व्यक्तिगत रूप से न्यूरॉन्स को देखने के बजाय, Shampoo यह देखता है कि वे समूहों में कैसे परस्पर क्रिया (interact) करते हैं। इससे बेहतर लर्निंग होती है और मॉडल बाद में संकुचित (compress) करने में आसान होते हैं। हालाँकि, इसमें एक पेच है: Shampoo अविश्वसनीय रूप से धीमा है। यह एक ऐसे जीनियस कोच की तरह है जो हर चाल की गणना करने में इतना समय बिता देता है कि रोबोट को अभ्यास ही बहुत कम मिल पाता है।
यह पेपर DASH (डिस्ट्रीब्यूटेड एक्सीलरेटेड शैम्पू) पेश करता है, जो एक नया सिस्टम है जो इस जीनियस कोच को उसकी बुद्धिमत्ता खोए बिना एक धावक की गति से चलाने में सक्षम बनाता है। उन्होंने इसे कैसे किया, इसके लिए सरल उपमाओं का उपयोग किया गया है:
1. "स्टैकिंग" की तकनीक (बैच्ड ब्लॉक प्रीकंडीशनिंग)
समस्या:
कल्पना कीजिए कि आपके पास किताबों का एक विशाल पुस्तकालय (डेटा) है जिसे व्यवस्थित करने की आवश्यकता है। पुराना तरीका (डिस्ट्रीब्यूटेड शैम्पू) यह था कि एक किताब ली जाए, उसे व्यवस्थित किया जाए, वापस रखा जाए, फिर अगली किताब ली जाए, उसे व्यवस्थित किया जाए, और इसी तरह। भले ही आपके पास 1,000 कर्मचारी (GPUs) हों, वे ज्यादातर पिछले व्यक्ति के समाप्त करने का इंतज़ार करते हुए खड़े रहते थे। यह अक्षम है।
DASH का समाधान:
DASH वर्कफ़्लो को बदल देता है। किताबों को एक-एक करके संभालने के बजाय, यह उन्हें व्यवस्थित 3D टावरों में स्टैक (ढेर) करता है। अब, कार्यकर्ता एक पूरा टावर पकड़ सकते हैं और एक ही समय में उसके अंदर की सभी किताबों को व्यवस्थित कर सकते हैं।
- उपमा: यह एक कैशियर द्वारा वस्तुओं को एक-एक करके स्कैन करने बनाम एक कन्वेयर बेल्ट के माध्यम से एक पूरे किराने के डिब्बे को तुरंत स्कैन करने वाली मशीन के बीच का अंतर है।
- परिणाम: यह "स्टैकिंग" कंप्यूटर के शक्तिशाली ग्राफिक्स चिप्स (GPUs) को उनकी पूरी क्षमता पर काम करने की अनुमति देती है, जिससे ऑप्टिमाइज़र स्टेप्स 5.6 गुना तक तेज़ हो जाते हैं।
2. "शॉर्टकट" गणित (एफिशिएंट इनवर्स-रूट सॉल्वर)
समस्या:
अपना काम करने के लिए, Shampoo को हर स्टेप में एक बहुत कठिन गणितीय पहेली हल करनी होती है: एक विशाल मैट्रिक्स का "इनवर्स स्क्वायर रूट" (inverse square root) खोजना। इस पहेली को हल करने का पुराना तरीका घास के ढेर में सुई खोजने जैसा था, जहाँ हर घास के टुकड़े को एक-एक करके चेक किया जाता था (इसे आइगन-वैल्यू डिकंपोजिशन कहा जाता है)। यह सटीक है लेकिन बहुत धीमा है।
DASH का समाधान:
लेखकों ने इस पहेली को हल करने के लिए दो नए "शॉर्टकट" पेश किए:
- Newton-DB: एक चतुर इटरेटिव (iterative) विधि जो हर अनुमान के साथ उत्तर के करीब पहुँचती है, जैसे कि आपका GPS ड्राइविंग के दौरान आपके रूट को फिर से कैलकुलेट करता है।
- Chebyshev Polynomials: एक गणितीय सन्निकटन (approximation) जो बहुत तेज़ी से उत्तर का अनुमान लगाता है।
- उपमा: भूलभुलैया से बाहर निकलने का रास्ता खोजने के लिए हर रास्ते पर पैदल चलने (पुराने तरीके) के बजाय, ये नई विधियाँ एक ऐसे मानचित्र की तरह हैं जो आपको सामान्य दिशा दिखाता है, जिससे आप निकास की ओर दौड़ सकते हैं।
3. "रूलर" कैलिब्रेशन (मैट्रिक्स स्केलिंग)
समस्या:
इन शॉर्टकट का उपयोग करते समय, यदि संख्याएँ बहुत बड़ी या बहुत छोटी हैं तो गणित अस्थिर हो सकता है। पुराने तरीके में एक "रूलर" (Frobenius norm) था जो बहुत लंबा था, जो संख्याओं को खींच देता था और शॉर्टकट को कन्वर्ज होने के लिए कई अधिक स्टेप्स लेने पर मजबूर कर देता था। यह एक नन्ही चींटी को 100 फुट लंबे टेप से मापने की कोशिश करने जैसा था; सटीकता खो जाती है।
DASH का समाधान:
लेखकों ने महसूस किया कि उन्हें एक बेहतर रूलर की आवश्यकता है। उन्होंने Multi-Power-Iteration नामक एक तकनीक विकसित की।
- उपमा: चींटी की लंबाई का अनुमान एक विशाल टेप से लगाने के बजाय, वे एक विशेष, उच्च-सटीक कैलिपर का उपयोग करते हैं जो चींटी के लिए बिल्कुल सही है। यह सुनिश्चित करता है कि गणित तेज़ी से कन्वर्ज हो और संख्यात्मक त्रुटियों (numerical errors) के कारण क्रैश न हो।
4. परिणाम
पेपर ने एक बड़े लैंग्वेज मॉडल (Llama के 953 मिलियन पैरामीटर्स के साथ) पर DASH का परीक्षण किया।
- गति: DASH ने पिछले सर्वश्रेष्ठ संस्करण की तुलना में ट्रेनिंग स्टेप के "सोचने" वाले हिस्से को 5.6 गुना तेज़ी से पूरा किया।
- गुणवत्ता: बहुत तेज़ होने के बावजूद, DASH के साथ प्रशिक्षित मॉडल सीखने में उतने ही अच्छे, या उससे भी थोड़े बेहतर थे। वास्तव में, नए "Newton-DB" शॉर्टकट ने उन मॉडल्स को बनाया जिनका एरर रेट (perplexity) सभी परीक्षण किए गए तरीकों में सबसे कम था।
सारांश
DASH को एक ऐसी Ferrari इंजन के रूप में सोचें जो ट्रैफ़िक में फंसी हुई थी क्योंकि ड्राइवर सुंदर दृश्य वाला रास्ता (scenic route) ले रहा था। DASH वही Ferrari इंजन है, लेकिन अब इसमें है:
- एक चौड़ा हाईवे (ब्लॉक स्टैकिंग) ताकि यह तेज़ी से चल सके।
- एक GPS शॉर्टकट (Newton-DB) ट्रैफ़िक जाम से बचने के लिए।
- बेहतर नेविगेशन टूल्स (Multi-Power-Iteration) यह सुनिश्चित करने के लिए कि यह रास्ता न भटके।
परिणाम यह है कि "स्मार्ट" ऑप्टिमाइज़र (Shampoo) अब उपयोग करने के लिए बहुत धीमा नहीं रह गया है, जिससे यह अगली पीढ़ी के AI मॉडल्स को प्रशिक्षित करने के लिए एक व्यावहारिक विकल्प बन गया है।
अपने क्षेत्र के पेपरों की भीड़ में उलझे हुए हैं?
आपके रिसर्च कीवर्ड से मेल खाने वाले सबसे नए और अलग सोच वाले पेपरों का रोज़ाना Digest पाएँ—तकनीकी सारांश के साथ, आपकी भाषा में।