MiCoPro: End-to-End Mixed Precision HW/SW Co-design with HW-aware Proxy Model
यह शोध पत्र MiCoPro प्रस्तुत करता है, जो एक एंड-टू-एंड हार्डवेयर-सॉफ्टवेयर को-डिज़ाइन फ्रेमवर्क है जो हार्डवेयर-अवेयर प्रॉक्सी मॉडल और एक नवीन अनुकूलन एल्गोरिदम का उपयोग करके मिश्रित-परिशुद्धता क्वांटाइजेशन योजनाओं (mixed-precision quantization schemes) को कुशलतापूर्वक खोजने के लिए, एज एआई मॉडल्स की तीव्र तैनाती को सक्षम बनाता है, जिससे महत्वपूर्ण विलंबता (latency) में कमी और न्यूनतम सटीकता हानि प्राप्त होती है।
मूल पेपर CC BY 4.0 (http://creativecommons.org/licenses/by/4.0/) के तहत लाइसेंस किया गया है। नीचे दिए गए पेपर की यह व्याख्या AI से तैयार की गई है। इसे लेखकों ने न तो लिखा है, न इसका समर्थन किया है। तकनीकी सटीकता के लिए मूल पेपर देखें। पूरा डिस्क्लेमर पढ़ें
कल्पना कीजिए कि आप एक विशाल, हाई-डेफिनिशन फिल्म को एक छोटे, पुराने ज़माने के MP3 प्लेयर में फिट करने की कोशिश कर रहे हैं। वह फिल्म एक "न्यूरल नेटवर्क" है, जो एक प्रकार का कंप्यूटर मस्तिष्क है जो बिल्लियों को पहचानना, भाषाओं का अनुवाद करना या कार चलाना सीखता है। समस्या यह है कि ये मस्तिष्क आमतौर पर भारी, फ्लोटिंग-पॉइंट नंबरों (जैसे 32-बिट या 64-बिट) के साथ बनाए जाते हैं, जो बहुत अधिक जगह घेरते हैं और उन्हें प्रोसेस करने के लिए बहुत अधिक ऊर्जा की आवश्यकता होती है। इन्हें स्मार्टवॉच या ड्रोन जैसे छोटे उपकरणों पर चलाने के लिए, इंजीनियर "क्वांटाइजेशन" (Quantization) का उपयोग करते हैं। इसे फिल्म को कंप्रेस करने के रूप में समझें: जैसे लाखों रंगों के बजाय, आप छवि को केवल कुछ ग्रे शेड्स का उपयोग करने के लिए मजबूर करते हैं। यह फ़ाइल को छोटा और तेज़ बनाता है, लेकिन यदि आप इसे बहुत अधिक कंप्रेस कर देते हैं, तो चित्र धुंधला हो जाता है और AI बिल्ली को पहचानना बंद कर देता है।
लंबे समय तक, इंजीनियर पूरी फिल्म को एक ही कम गुणवत्ता में कंप्रेस करने की कोशिश करते रहे, जैसे हर फ्रेम को 4-बिट स्केच में बदलना। लेकिन यह एक स्लो-मोशन एक्शन सीन और एक शांत संवाद दृश्य को समान कम रिज़ॉल्यूशन में बदलने जैसा है; यह शांत हिस्सों पर जगह बर्बाद करता है और एक्शन वाले हिस्सों को खराब कर देता है। एक स्मार्ट विचार "मिक्स्ड प्रिसिजन क्वांटाइजेशन" (MPQ) है। यह एक स्मार्ट कंप्रेशन एल्गोरिदम की तरह है जो एक्शन दृश्यों को हाई डेफिनिशन (8-बिट) में रखता है लेकिन उबाऊ संवाद दृश्यों को छोटे स्केच (2-बिट) में सिकोड़ देता है। चुनौती यह है कि यह पता लगाना कि ठीक कौन से दृश्य को सिकोड़ना है और कितना। यदि आप गलत अनुमान लगाते हैं, तो फिल्म भयानक दिखेगी। यदि आप सही अनुमान लगाते हैं, तो आपको एक छोटी फ़ाइल मिलेगी जो अभी भी अद्भुत दिखती है। यही वह पहेली है जिसे इस शोध पत्र के शोधकर्ताओं ने हल करने का प्रयास किया है।
शोध पत्र इस पहेली को स्वचालित रूप से हल करने के लिए MiCo (और इसका अपग्रेड संस्करण MiCoPro) नामक एक नया टूलकिट पेश करता है। एक न्यूरल नेटवर्क के प्रत्येक लेयर को मैन्युअल रूप से ट्यून करने के बजाय—जो एक 100 घंटे की फिल्म के हर फ्रेम को एडिट करने जैसा है—MiCo सिस्टम एक सुपर-स्मार्ट, फास्ट-फॉरवर्डिंग एडिटर की तरह काम करता है। यह एक "प्रॉक्सि मॉडल" (proxy model) का उपयोग करता है, जो अनिवार्य रूप से एक क्रिस्टल बॉल की तरह है जिसे वास्तविक हार्डवेयर पर एक विशिष्ट कंप्रेशन स्कीम कितनी तेज़ी से चलेगी, इसका अनुमान लगाने के लिए प्रशिक्षित किया गया है, बिना वास्तव में उसे चलाए।
शोधकर्ताओं ने पाया कि गति का अनुमान लगाने का पुराना तरीका एक किताब को पढ़ने में कितना समय लगेगा, यह अनुमान लगाने के लिए किताब में शब्दों की संख्या गिनने जैसा था। यह एक मोटा अनुमान है, लेकिन यह अनदेखा करता है कि फॉन्ट छोटा है, या पाठक थक गया है, या किताब भारी है। पेपर का तर्क है कि यह पुराना तरीका (जिसे "बिट ऑपरेशंस" या BOPs कहा जाता है) अक्सर खराब विकल्प चुनता है क्योंकि यह विशिष्ट हार्डवेयर की बारीकियों को नहीं समझता है। MiCoPro, दूसरी ओर, प्रत्येक विशिष्ट डिवाइस के लिए एक कस्टम "स्पीडोमीटर" बनाता है। यह सीखता है कि विभिन्न हार्डवेयर विभिन्न प्रकार के गणित को कैसे संभालते हैं, जिससे यह उच्च और निम्न प्रिसिजन का सही मिश्रण खोजने में सक्षम होता है जो AI को उसकी सटीकता खोए बिना सबसे तेज़ बनाता है।
अपने प्रयोगों में, टीम ने सरल इमेज रिकग्निशन से लेकर बड़े लैंग्वेज मॉडल्स तक, विभिन्न AI मॉडल्स पर इस सिस्टम का परीक्षण किया। उन्होंने पाया कि अपने नए "हार्डवेयर-अवेयर प्रॉक्सी" का उपयोग करके, वे AI के सोचने के समय (लेटेंसी) को 40% तक कम कर सकते हैं, जबकि इसकी सटीकता में 3% से भी कम की कमी आती है। यह आपके फोन की बैटरी को स्क्रीन को धुंधला किए बिना 40% अधिक लंबे समय तक चलाने का तरीका खोजने जैसा है।
पेपर यह भी उजागर करता है कि यह केवल एक सिद्धांत नहीं है; उन्होंने वास्तव में उस सॉफ़्टवेयर को बनाया है जो पायथन (एक लोकप्रिय कोडिंग भाषा) में डिज़ाइन किए गए मॉडल को सीधे चिप्स, जिसमें विशेष त्वरक (accelerators) और संशोधित RISC-V प्रोसेसर शामिल हैं, पर चलने वाले कच्चे, बेयर-मेटल C कोड में बदल देता है। उन्होंने दिखाया कि उनका तरीका पिछले "सर्च" एल्गोरिदम से बेहतर काम करता है, जो अक्सर संभावनाओं की विशाल संख्या में खो जाते हैं। "नियर-कंस्ट्रेंट सैंपलिंग" (Near-Constraint Sampling) नामक तकनीक का उपयोग करके, MiCo अपनी खोज को सीधे स्पीड लिमिट के पास के "स्वीट स्पॉट" पर केंद्रित करता है, न कि उन विकल्पों की जांच करने में समय बर्बाद करता है जो बहुत धीमे या बहुत तेज़ हैं।
अंततः, पेपर सुझाव देता है कि छोटे उपकरणों पर AI का अधिकतम लाभ उठाने के लिए, हमें न्यूरल नेटवर्क के सभी लेयर्स के साथ एक जैसा व्यवहार करना बंद करना होगा। उच्च और निम्न प्रिसिजन स्तरों को मिलाने के लिए एक स्मार्ट, हार्डवेयर-अवेयर गाइड का उपयोग करके, हम AI को तेज़ और अधिक कुशल बना सकते हैं। लेखक प्रदर्शित करते हैं कि यह दृष्टिकोण मजबूत है, विभिन्न प्रकार के चिप्स और मॉडल्स पर काम करता है, और वे दूसरों के उपयोग के लिए एक ओपन-सोर्स फ्रेमवर्क प्रदान करते हैं। हालांकि परिणाम सिमुलेशन और विशिष्ट हार्डवेयर परीक्षणों पर आधारित हैं, विभिन्न परिदृश्यों में निरंतर सफलता यह बताती है कि यह "स्मार्ट कंप्रेशन" रणनीति एज AI (edge AI) के भविष्य के लिए एक शक्तिशाली उपकरण है।
अपने क्षेत्र के पेपरों की भीड़ में उलझे हुए हैं?
आपके रिसर्च कीवर्ड से मेल खाने वाले सबसे नए और अलग सोच वाले पेपरों का रोज़ाना Digest पाएँ—तकनीकी सारांश के साथ, आपकी भाषा में।