DeVIT: Low-Power Vision Transformer Acceleration Using Delta Computation
यह शोध पत्र DeVIT को प्रस्तुत करता है, जो विज़न ट्रांसफॉर्मर के लिए एक कम-शक्ति वाला त्वरण (एक्सेलेरेशन) तरीका है, जो डिफरेंशियल कंप्यूटेशन के माध्यम से मल्टीप्लायर-लेस मैट्रिक्स मल्टीप्लिकेशन को सक्षम करने के लिए क्वांटाइज्ड मॉडल्स में वैल्यू लोकैलिटी का लाभ उठाता है।
मूल पेपर CC BY 4.0 (http://creativecommons.org/licenses/by/4.0/) के तहत लाइसेंस किया गया है। नीचे दिए गए पेपर की यह व्याख्या AI से तैयार की गई है। इसे लेखकों ने न तो लिखा है, न इसका समर्थन किया है। तकनीकी सटीकता के लिए मूल पेपर देखें। पूरा डिस्क्लेमर पढ़ें
कल्पना कीजिए कि आप एक सुपर-स्मार्ट रोबोट को तस्वीरें पहचानना सिखाने की कोशिश कर रहे हैं, जैसे कि पेड़ में बिल्ली को पहचानना या सड़क पर कार को देखना। इसे करने के लिए, हम "विज़न ट्रांसफॉर्मर" (Vision Transformers) जैसे विशेष मस्तिष्क जैसे कंप्यूटर प्रोग्रामों का उपयोग करते हैं। ये प्रोग्राम अविश्वसनीय रूप से शक्तिशाली हैं, लेकिन वे विशाल और बहुत अधिक संसाधन चाहने वाले "दानव" भी हैं। उन्हें किसी फोटो को देखने के हर बार अरबों छोटी गणितीय गणनाएं करनी पड़ती हैं, और वे भारी मात्रा में मेमोरी और बैटरी पावर का उपभोग करते हैं। इस कारण से, उन्हें फोन या ड्रोन जैसे छोटे उपकरणों पर चलाना बहुत कठिन है, वरना वे गर्म होकर बंद हो सकते हैं या उनकी बैटरी खत्म हो सकती है।
इन दानवों को वश में करने के लिए, वैज्ञानिक गणित को सरल बनाने की कोशिश कर रहे हैं। एक लोकप्रिय तरीका "क्वांटाइजेशन" (quantization) है, जो संख्याओं को राउंड ऑफ करने जैसा है। सटीक दशमलव (decimals) का उपयोग करने के बजाय, रोबोट केवल संख्याओं के एक सीमित सेट का उपयोग करता है, जैसे कि 0, 1, 2, से लेकर 255 तक। इससे जगह तो बचती है, लेकिन यह इस बात को नहीं रोकता कि रोबोट को अभी भी अरबों गुणा (multiplications) करने होंगे। हालांकि, इस राउंडिंग का एक छिपा हुआ बोनस भी है: क्योंकि रोबोट को केवल कुछ विशिष्ट संख्याओं का उपयोग करने के लिए मजबूर किया जाता है, इसलिए वह बार-बार उन्हीं संख्याओं का उपयोग करने लगता है। यह बिल्कुल वैसा ही है जैसे यदि एक शेफ के पास केवल पांच ही सामग्रियां हों; वे बार-बार एक ही मसाले के डिब्बे का उपयोग करेंगे। बड़ा सवाल यह है कि क्या हम एक ऐसा रोबोट बना सकते हैं जो यह नोटिस कर सके कि वह फिर से उसी मसाले का उपयोग करने वाला है और ऊर्जा बचाने के लिए उस काम को स्किप (छोड़) दे?
यही वह समस्या है जिसे DeVIT (डेल्टा-कोडेड विज़न ट्रांसफॉर्मर) के पीछे के शोधकर्ताओं ने हल करने का प्रयास किया। उन्होंने महसूस किया कि चूंकि इन "विज़न ट्रांसफॉर्मर्स" को सीमित संख्याओं का उपयोग करने के लिए मजबूर किया जाता है, इसलिए इनके वेट्स (weights - वे संख्याएं जो रोबोट को बताती हैं कि क्या देखना है) अक्सर मान (value) में एक-दूसरे के बहुत करीब होते हैं। उदाहरण के लिए, यदि रोब melalui एक संख्या को 5 से, फिर 6 से, और फिर 7 से गुणा करने की आवश्यकता है, तो उसे तीन अलग-अलग और कठिन गणनाएं करने की आवश्यकता नहीं है। वह बस पहली गणना कर सकता है, फिर अगली के लिए थोड़ा सा जोड़ सकता है, और उसके बाद वाली के लिए थोड़ा और जोड़ सकता है।
DeVIT टीम ने इन संख्याओं को व्यवस्थित करने का एक चतुर तरीका बनाया ताकि रोबोट इस "थोड़ा सा जोड़ने" वाले तरीके का उपयोग कर सके बजाय इसके कि वह भारी गुणा करे। वे संख्याओं को सबसे छोटी से सबसे बड़ी संख्या के क्रम में एक लाइन में व्यवस्थित करते हैं और केवल उनके बीच के अंतर (जिसे "डेल्टा" कहा जाता है) को स्टोर करते हैं। यदि अंतर छोटा है, तो रोबोट केवल संख्या को "शिफ्ट" (shift) कर सकता है (जो कि 2 या 4 से गुणा करने जैसा है) और फिर उसे जोड़ सकता है, बजाय इसके कि वह एक जटिल गुणा करे। यदि अंतर शून्य है (यानी, संख्या पिछली संख्या के समान है), तो रोबोट को कुछ भी करने की आवश्यकता नहीं है—वह बस पिछले उत्तर का पुन: उपयोग कर लेता है।
इस पद्धति का उपयोग करके, शोधकर्ताओं ने दिखाया कि वे रोबोट को आवश्यक गणित को केवल 0.53 तक कम कर सकते हैं, जो कि एक अन-ऑप्टिमाइज्ड वर्जन को चाहिए होता। इसका मतलब है कि रोबोट आधा से भी कम काम करता है! उनके परीक्षणों में, इस नए डिज़ाइन ने एक एकल प्रमुख गणना चरण के लिए 159.57 nJ (नैनोजूल) ऊर्जा का उपयोग किया। यह उनके द्वारा तुलना किए गए सर्वश्रेष्ठ मौजूदा "शिफ्ट-एंड-ऐड" (shift-and-add) तरीकों की तुलना में लगभग 5.5% कम ऊर्जा है।
हालांकि, इसमें एक पेच भी है। इसे काम करने के योग्य बनाने के लिए, शोधकर्ताओं को संख्याओं को सॉर्ट करना पड़ा और यह जानकारी भी स्टोर करनी पड़ी कि वे कहाँ से संबंधित हैं, जिसमें थोड़ी अतिरिक्त मेमोरी स्पेस लगती है। साथ ही, क्योंकि वे अंतरों का अनुमान लगा रहे हैं, इसलिए सटीकता (accuracy) में एक मामूली समझौता भी होता है। विभिन्न मॉडलों के साथ उनके प्रयोगों में, सटीकता में थोड़ी गिरावट आई—इमेज क्लासिफिकेशन के लिए कभी-कभी 3.11 प्रतिशत अंक और ऑब्जेक्ट डिटेक्शन के लिए 2.53 mAP पॉइंट्स तक। हालांकि यह इतने बड़े ऊर्जा बचत के सामने एक छोटी सी कीमत है, लेकिन इसका मतलब है कि यह विधि अभी हर स्थिति के लिए एकदम सही नहीं है।
संक्षेप में, DeVIT एक रोबोट को एक संदर्भ शीट (reference sheet) देने जैसा है। हर बार शून्य से गणित की समस्याओं को फिर से हल करने के बजाय, वह अपनी सॉर्ट की गई संख्याओं की सूची देखता है, देखता है कि अगली संख्या बस एक छोटा सा कदम दूर है, और एक शॉर्टकट ले लेता है। यह रोबोट को तेज़ और बहुत अधिक ऊर्जा-कुशल बनाता है, जिससे हम शक्तिशाली AI को रोजमर्रा के उपकरणों पर चलाने के एक कदम और करीब पहुँच जाते हैं, बिना बैटरी को जल्दी खत्म किए।
अपने क्षेत्र के पेपरों की भीड़ में उलझे हुए हैं?
आपके रिसर्च कीवर्ड से मेल खाने वाले सबसे नए और अलग सोच वाले पेपरों का रोज़ाना Digest पाएँ—तकनीकी सारांश के साथ, आपकी भाषा में।