KronQ: LLM Quantization via Kronecker-Factored Hessian
KronQ एक पोस्ट-ट्रेनिंग क्वांटाइजेशन फ्रेमवर्क है जो क्रोनेकर-फैक्टर्ड हेसियन सन्निकटन (Kronecker-factored Hessian approximation) के माध्यम से क्वांटाइजेशन ऑब्जेक्टिव में ग्रेडिएंट कोवेरियन्स (gradient covariance) को शामिल करके लार्ज लैंग्वेज मॉडल कंप्रेशन में सुधार करता है, जिससे द्विदिश इनकोहेरेंस प्रोसेसिंग (bidirectional incoherence processing) और उन्नत संवेदनशीलता मेट्रिक्स सक्षम होते हैं जो GPTQ जैसे मौजूदा तरीकों की तुलना में बेहतर परप्लेक्सिटी (perplexity) प्राप्त करते हैं, विशेष रूप से अत्यधिक लो-बिट परिदृश्यों में।
मूल पेपर CC BY 4.0 (http://creativecommons.org/licenses/by/4.0/) के तहत लाइसेंस किया गया है। नीचे दिए गए पेपर की यह व्याख्या AI से तैयार की गई है। इसे लेखकों ने न तो लिखा है, न इसका समर्थन किया है। तकनीकी सटीकता के लिए मूल पेपर देखें। पूरा डिस्क्लेमर पढ़ें
कल्पना कीजिए कि आपके पास एक विशाल, अविश्वसनीय रूप से बुद्धिमान रोबोट मस्तिष्क (एक लार्ज लैंग्वेज मॉडल) है जो कहानियाँ लिख सकता है, गणित की समस्याओं को हल कर सकता है और इंसान की तरह चैट कर सकता है। समस्या क्या है? यह मस्तिष्क इतना विशाल है कि इसे एक शेल्फ पर रखने के लिए कंप्यूटरों से भरे एक गोदाम की आवश्यकता होती है। इसे एक सामान्य लैपटॉप या फोन पर चलाने के लिए, वैज्ञानिक इसकी मेमोरी को कंप्रेस करके इसे "सिकुड़ने" (shrink) की कोशिश करते हैं, जिसे क्वांटाइजेशन (quantization) कहा जाता है। इसे एक सूटकेस पैक करने जैसा समझें: आप अपने कपड़ों (मॉडल के ज्ञान) को एक छोटे बैग में भरना चाहते हैं बिना कुछ भी महत्वपूर्ण खोए।
कुछ समय के लिए, इस सूटकेस को पैक करने का सबसे अच्छा तरीका GPTQ नामक एक विधि था। यह इस बात पर नज़र रखकर काम करता था कि रोबोट का "इनपुट" (शब्द जो वह पढ़ता है) कैसे बदलता है और उसके अनुसार वेट्स (weights) को एडजस्ट करता था। लेकिन इस नए पेपर के लेखकों ने, KronQ, इस रणनीति में एक खामी देखी। उन्होंने महसूस किया कि GPTQ केवल समीकरण के इनपुट पक्ष को देख रहा था, यह मानकर कि हर संभावित आउटपुट (वे शब्द जो रोबोट आगे कहेगा) समान रूप से महत्वपूर्ण है।
बड़ी गलती: "आउटपुट" पक्ष को अनदेखा करना
पेपर का तर्क है कि यह रणनीति एक सूटकेस पैक करने जैसी है जिसमें केवल यह देखा जा रहा है कि कपड़े कितने भारी हैं, जबकि यह अनदेखा किया जा रहा है कि वे कितने नाजुक हैं। वास्तव में, रोबोट के मस्तिष्क के कुछ हिस्से सुपर सेंसिटिव होते हैं। यदि आप उन्हें बहुत अधिक कुचल देते हैं, तो पूरा सिस्टम बिखर जाता है।
लेखकों ने इसे मापा और पाया कि यह चौंकाने वाला है: LLaMA-3-70B जैसे विशाल मॉडल में, "आउटपुट" चैनल्स (वे रास्ते जिनका उपयोग रोबोट उत्तर उत्पन्न करने के लिए करता है) की महत्ता बहुत अधिक भिन्न होती है। कुछ कांच की तरह नाजुक हैं; अन्य ईंटों की तरह मजबूत हैं। पुराने तरीकों ने उन सभी के साथ एक जैसा व्यवहार किया, जिससे अत्यधिक कंप्रेशन होने पर रोबोट अनियंत्रित हो गया। वास्तव में, जब उन्होंने LLaMA-3-70B को केवल 2 बिट्स (मेमोरी की एक बहुत कम मात्रा) तक सिकोड़ने की कोशिश की, तो पुराने तरीके पूरी तरह विफल रहे, जिससे एक "परप्लेक्सिटी" (वह स्कोर जिससे मॉडल भ्रमित होता है) 2000 से अधिक के साथ निरर्थक परिणाम मिले। यह ऐसा है जैसे रोबोट अंग्रेजी बोलना ही भूल गया हो।
नया समाधान: KronQ
यहाँ KronQ आता है। लेखक एक नया तरीका प्रस्तावित करते हैं जिससे सूटकेस को दोनों इनपुट और आउटपुट को देखते हुए पैक किया जा सके। वे Kronecker-factored Hessian approximation नामक एक गणितीय ट्रिक का उपयोग करते हैं।
यहाँ उपमा है: कल्पना कीजिए कि रोबोट का मस्तिष्क एक विशाल ड्रम है।
- पुरानी विधि (GPTQ): आप ड्रम को सामने से थपथपाते हैं और सामने के कंपन के आधार पर तनाव को एडजस्ट करते हैं। आप मानते हैं कि ड्रम का पिछला हिस्सा उसका दर्पण प्रतिबिंब है।
- KronQ: आप ड्रम को सामने से और पीछे से थपथपाते हैं। आप महसूस करते हैं कि ड्रम का पिछला हिस्सा अलग तरह से कंपन करता है! ड्रम के कुछ हिस्से ढीले और डगमगाते हुए हैं, जबकि अन्य टाइट हैं। KronQ इस "पीछे के कंपन" (ग्रेडिएंट कोवेरियेंस) को मापता है और इस डेटा का उपयोग करके सूटकेस को बहुत अधिक सावधानी से पैक करता है।
दो महाशक्तियाँ: KronQ
पेपर दिखाता है कि KronQ दो चतुर चीजें करता है:
द्विदिश असंगतता (Bidirectional Incoherence - द "शफल"):
पैक करने से पहले, KronQ वेट्स को दो दिशाओं (इनपुट और आउटपुट) में इधर-उधर घुमाता (shuffle) है ताकि यह सुनिश्चित हो सके कि कोई भी एक स्थान भारी या नाजुक वस्तुओं से ओवरलोड न हो जाए। यह किताबों के एक अस्त-व्यस्त ढेर को समान रूप से फैलाने जैसा है ताकि सूटकेस किसी एक जगह से बाहर न निकले। पेपर दिखाता है कि यह वेट्स की "परिवर्तनीयता" (variability) को कम करता है, जिससे उन्हें बिना तोड़े कंप्रेस करना बहुत आसान हो जाता है।स्मार्ट बिट एलोकेशन (Smart Bit Allocation - द "वीआईपी पास"):
रोबोट के सभी हिस्सों को समान स्थान की आवश्यकता नहीं होती। KronQ मस्तिष्क के प्रत्येक सब-लेयर के लिए एक "सेंसिटिविटी स्कोर" की गणना करता है। यह "वीआईपी" लेयर्स (सबसे संवेदनशील लेयर्स) को अधिक बिट्स (अधिक मेमोरी स्पेस) देता है और कम महत्वपूर्ण लेयर्स को कम बिट्स। महत्वपूर्ण बात यह है कि क्योंकि यह आउटपुट पक्ष को देखता है, इसलिए यह उन लेयर्स के बीच अंतर कर सकता है जो इनपुट की तरफ से समान दिखती हैं लेकिन व्यवहार में बहुत अलग होती हैं।
परिणाम: संकट से बचाव
लेखकों ने 7 बिलियन से लेकर 70 बिलियन पैरामीटर्स तक के कई मॉडल्स पर परीक्षण किया। परिणाम नाटकीय थे, विशेष रूप से जब उन्होंने मॉडल्स को 2 बिट्स की चरम सीमा तक सिकोड़ने की कोशिश की।
- विफलता: विशाल LLaMA-3-70B मॉडल पर, पुराने तरीके (GPTQ और GPTAQ) या तो विचलित हो गए या कचरा परिणाम (परप्लेक्सिटी > 2000) देने लगे।
- सफलता: KronQ ने इसी 70-बिलियन-पैरामीटर वाले मॉडल को 2 बिट्स तक कंप्रेस किया और इसे पूरी तरह से काम करने योग्य रखा, जिसने WikiText-2 डेटासेट पर 7.93 की परप्लेक्सिटी हासिल की। यह "टूटे हुए रोबोट" और "स्मार्ट रोबोट" के बीच का एक विशाल अंतर है।
4-बिट और 3-बिट सेटिंग्स पर भी, KronQ ने लगातार प्रतिस्पर्धा को पछाड़ा, जिससे कम कन्फ्यूजन स्कोर और PiQA तथा Arc-Challenge जैसे रीजनिंग टेस्ट पर बेहतर सटीकता मिली। उदाहरण के लिए, LLaMA-2-7B पर 2 बिट्स के स्तर पर, KronQ ने 8.15 की परप्लेक्सिटी प्राप्त की, जबकि GPTQ संघर्ष करते हुए 31.11 पर पहुँच गया।
लागत
क्या इसमें कोई कमी है? पेपर स्वीकार करता है कि इस "आउटपुट वाइब्रेशन" डेटा को प्राप्त करने के लिए, KronQ को पैकिंग से पहले मॉडल के माध्यम से एक अतिरिक्त बैकवर्ड पास करने की आवश्यकता होती है। सेटअप चरण के दौरान इसमें प्रति लेयर थोड़ा अधिक समय और मेमोरी लगती है (GPTAQ की तुलना में लगभग 8-11 सेकंड अधिक)। हालाँकि, एक बार मॉडल पैक हो जाने के बाद, वास्तविक उपयोग के दौरान इसकी गति और मेमोरी का उपयोग पुराने तरीकों जितना ही कुशल होता है। यह अतिरिक्त काम एक बार का सेटअप खर्च है जो मॉडल को बिना तोड़े बहुत अधिक छोटा करने की अनुमति देकर लाभ देता है।
उन्होंने क्या खारिज किया
पेपर स्पष्ट रूप से इस विचार के विरुद्ध तर्क देता है कि आप गणित के आउटपुट पक्ष को अनदेखा कर सकते हैं। वे दिखाते हैं कि यह मानना कि सभी आउटपुट दिशाएं समान हैं (ग्रेडिएंट कोवेरियेंस को आइडेंटिटी मैट्रिक्स के रूप में सेट करना) एक "सबऑप्टिमल एप्रोक्सिमेशन" है जो अल्ट्रा-लो-बिट परिदृश्यों में विफलता की ओर ले जाता है। वे यह भी दिखाते हैं कि जो विधियाँ केवल इनपुट सांख्यिकी को देखती हैं (जैसे मानक GPTQ), वे उन अलग-अलग सब-लेयर्स के बीच अंतर नहीं कर सकती हैं जो समान इनपुट साझा करते हैं, जिससे मेमोरी कहाँ आवंटित की जाए, इस पर गलत निर्णय लेने की संभावना रहती है।
वे कितने आश्वस्त हैं?
लेखक इन परिणामों को लेकर बहुत आश्वस्त हैं क्योंकि ये केवल सिमुलेशन पर नहीं, बल्कि ठोस मापों पर आधारित हैं। उन्होंने वास्तविक हार्डवेयर (A100 GPUs) पर वास्तविक मॉडल्स (LLaMA-2, LLaMA-3, Gemma, DeepSeek) के साथ ये परीक्षण किए और वास्तविक परप्लेक्सिटी और सटीकता स्कोर को मापा। उन्होंने केवल यह सुझाव नहीं दिया कि यह काम कर सकता है; उन्होंने दिखाया कि इन विशिष्ट प्रयोगों में, पुराने तरीके 2 बिट्स पर काम करने योग्य मॉडल बनाने में पूरी तरह विफल रहे, जबकि KronQ सफल रहा।
संक्षेप में, KronQ एक मास्टर पैकर की तरह है जिसने महसूस किया कि एक विशाल मस्तिष्क को एक छोटे बॉक्स में फिट करने के लिए, आपको यह समझना होगा कि मस्तिष्क जानकारी को कैसे आउटपुट करता है, न कि केवल यह कि वह इसे कैसे इनपुट करता है। ऐसा करके, यह उन उपकरणों पर भी विशाल AI मॉडल्स चलाने की क्षमता खोल देता है जिन्हें पहले यह असंभव लगता था।
अपने क्षेत्र के पेपरों की भीड़ में उलझे हुए हैं?
आपके रिसर्च कीवर्ड से मेल खाने वाले सबसे नए और अलग सोच वाले पेपरों का रोज़ाना Digest पाएँ—तकनीकी सारांश के साथ, आपकी भाषा में।