अनुमानित कंप्यूटिंग

अनुमानित कंप्यूटिंग ऊर्जा-कुशल और/या उच्च-प्रदर्शन डिजाइन के लिए एक उभरता हुआ प्रतिमान है। इसमें ढेर सारी गणना तकनीकें शामिल हैं जो गारंटीकृत सटीक परिणाम के बजाय संभावित रूप से गलत परिणाम देती हैं, और इसका उपयोग उन अनुप्रयोगों के लिए किया जा सकता है जहां अनुमानित परिणाम इसके उद्देश्य के लिए पर्याप्त है। ऐसी स्थिति का एक उदाहरण एक खोज इंजन के लिए है जहां एक निश्चित खोज क्वेरी के लिए कोई सटीक उत्तर मौजूद नहीं हो सकता है और इसलिए, कई उत्तर स्वीकार्य हो सकते हैं। इसी प्रकार, किसी वीडियो एप्लिकेशन में कभी-कभी कुछ फ़्रेम (वीडियो) का गिरना मनुष्यों की अवधारणात्मक सीमाओं के कारण पता नहीं चल पाता है। अनुमानित कंप्यूटिंग इस अवलोकन पर आधारित है कि कई परिदृश्यों में, हालांकि सटीक गणना करने के लिए बड़ी मात्रा में संसाधनों की आवश्यकता होती है, अनुमानित सिद्धांत स्वीकार्य परिणाम सटीकता प्राप्त करते हुए प्रदर्शन और ऊर्जा में असंगत लाभ प्रदान कर सकता है। उदाहरण के लिए, k-मीन्स क्लस्टरिंग|k-मीन्स क्लस्टरिंग एल्गोरिदम में, वर्गीकरण सटीकता में केवल 5% हानि की अनुमति देकर पूरी तरह से सटीक वर्गीकरण की तुलना में 50 गुना ऊर्जा बचत प्रदान की जा सकती है।

अनुमानित कंप्यूटिंग में मुख्य आवश्यकता यह है कि सन्निकटन केवल गैर-महत्वपूर्ण डेटा में पेश किया जा सकता है, क्योंकि महत्वपूर्ण डेटा (जैसे, नियंत्रण संचालन) का अनुमान लगाने से प्रोग्राम क्रैश या गलत आउटपुट जैसे विनाशकारी परिणाम हो सकते हैं।

रणनीतियाँ
अनुमानित कंप्यूटिंग निष्पादित करने के लिए कई रणनीतियों का उपयोग किया जा सकता है।


 * अनुमानित सर्किट
 * अनुमानित अंकगणितीय सर्किट: योजक (इलेक्ट्रॉनिक्स), बाइनरी गुणक और अन्य तार्किक सर्किट हार्डवेयर ओवरहेड को कम कर सकते हैं।   उदाहरण के लिए, एक अनुमानित मल्टी-बिट योजक चेन ले जाना को अनदेखा कर सकता है और इस प्रकार, इसके सभी उप-योजक को समानांतर में अतिरिक्त ऑपरेशन करने की अनुमति देता है।


 * अनुमानित भंडारण और मेमोरी
 * कंप्यूटर डेटा भंडारण मूल्यों के बजाय, उन्हें लगभग संग्रहीत किया जा सकता है, उदाहरण के लिए, तैरनेवाला स्थल  डेटा में निचले-बिट्स को डेटा काट-छांट द्वारा। दूसरा तरीका कम विश्वसनीय मेमोरी को स्वीकार करना है। इसके लिए DRAM में और eDRAM, ताज़ा दर असाइनमेंट को कम या नियंत्रित किया जा सकता है।  स्थैतिक रैंडम-एक्सेस मेमोरी  में, आपूर्ति वोल्टेज को कम किया जा सकता है या नियंत्रित. मैग्नेटोरेसिस्टिव रैंडम-एक्सेस मेमोरी की उच्च लेखन ऊर्जा खपत को कम करने के लिए अनुमानित भंडारण लागू किया जा सकता है। सामान्य तौर पर, किसी भी त्रुटि का पता लगाने और सुधार तंत्र को अक्षम कर दिया जाना चाहिए।


 * सॉफ़्टवेयर-स्तरीय सन्निकटन
 * सॉफ्टवेयर स्तर पर अनुमान लगाने के कई तरीके हैं। संस्मरण या फ़ज़ी मेमोइज़ेशन (कैश से अनुमानित पुनर्प्राप्ति के लिए वेक्टर डेटाबेस का उपयोग, यानी फ़ज़ी कैशिंग) लागू किया जा सकता है। तेजी से परिणाम प्राप्त करने के लिए लूप (कंप्यूटिंग) के कुछ पुनरावृत्तियों को छोड़ा जा सकता है (जिसे लूप वेध कहा जाता है)। कुछ कार्यों को छोड़ा भी जा सकता है, उदाहरण के लिए जब रन-टाइम स्थिति बताती है कि वे कार्य उपयोगी नहीं होंगे (कार्य छोड़ना)। मोंटे कार्लो एल्गोरिथ्म और यादृच्छिक एल्गोरिथ्म निष्पादन समय की गारंटी के लिए शुद्धता का व्यापार करते हैं। गणना को उन प्रतिमानों के अनुसार पुन: तैयार किया जा सकता है जो विशेष हार्डवेयर पर आसानी से त्वरण की अनुमति देते हैं, उदाहरण के लिए एक तंत्रिका प्रसंस्करण इकाई.


 * अनुमानित प्रणाली
 * एक अनुमानित प्रणाली में, सिस्टम के विभिन्न उप-प्रणालियों जैसे कि प्रोसेसर, मेमोरी, सेंसर और संचार मॉड्यूल को प्रत्येक उप-प्रणाली के अलग-अलग अनुमानों की तुलना में बेहतर सिस्टम-स्तरीय क्यू-ई ट्रेड-ऑफ वक्र प्राप्त करने के लिए सहक्रियात्मक रूप से अनुमानित किया जाता है।

आवेदन क्षेत्र
अनुमानित कंप्यूटिंग का उपयोग विभिन्न डोमेन में किया गया है जहां अनुप्रयोग त्रुटि-सहिष्णु हैं, जैसे मल्टीमीडिया प्रोसेसिंग, यंत्र अधिगम,  संकेत आगे बढ़ाना , कम्प्यूटेशनल विज्ञान। इसलिए, अनुमानित कंप्यूटिंग ज्यादातर उन अनुप्रयोगों द्वारा संचालित होती है जो मानवीय धारणा/अनुभूति से संबंधित हैं और अंतर्निहित त्रुटि लचीलापन है। इनमें से कई अनुप्रयोग सांख्यिकीय या संभाव्य गणना पर आधारित हैं, जैसे कि वांछित उद्देश्यों को बेहतर ढंग से पूरा करने के लिए अलग-अलग अनुमान लगाए जा सकते हैं। मशीन लर्निंग में एक उल्लेखनीय अनुप्रयोग यह है कि Google इस दृष्टिकोण का उपयोग अपनी टेंसर प्रसंस्करण इकाई (टीपीयू, एक कस्टम एएसआईसी) में कर रहा है।

व्युत्पन्न प्रतिमान
अनुमानित कंप्यूटिंग में मुख्य मुद्दा एप्लिकेशन के उस अनुभाग की पहचान है जिसका अनुमान लगाया जा सकता है। बड़े पैमाने पर अनुप्रयोगों के मामले में, अनुमानित कंप्यूटिंग तकनीकों पर विशेषज्ञता रखने वाले लोगों को एप्लिकेशन डोमेन (और इसके विपरीत) पर पर्याप्त विशेषज्ञता नहीं होना बहुत आम है। इस समस्या को हल करने के लिए, प्रोग्रामिंग प्रतिमान प्रस्तावित किया गया है। उन सभी में एप्लिकेशन प्रोग्रामर और एप्लिकेशन डोमेन विशेषज्ञ के बीच स्पष्ट भूमिका पृथक्करण समान है। ये दृष्टिकोण सबसे सामान्य प्रोग्राम अनुकूलन और अनुमानित कंप्यूटिंग तकनीकों के प्रसार की अनुमति देते हैं।

यह भी देखें

 * कृत्रिम तंत्रिका नेटवर्क
 * मेटाह्यूरिस्टिक
 * पीसीएमओएस