हाइब्रिड कलन विधि: Difference between revisions
(→उदाहरण) |
No edit summary |
||
Line 5: | Line 5: | ||
==उदाहरण== | ==उदाहरण== | ||
[[कंप्यूटर विज्ञान]] में, [[पुनरावर्ती कलन]] विधि के इष्टतमी वास्तविक-विश्व [[कार्यान्वयन]] में हाइब्रिड कलन विधि बहुत सामान्य हैं, विशेष रूप से विभाजन और [[विघटन या कमी-और-कॉन्कर कलन]] विधि के कार्यान्वयन, जहां पुनरावर्तन में गहराई से आगे बढ़ने पर डेटा का आकार घट जाता है। इस स्थिति में, समग्र दृष्टिकोण (बड़े डेटा पर) के लिए एक कलन विधि का उपयोग किया जाता है, लेकिन पुनरावृत्ति में गहराई से, यह एक अलग कलन विधि पर स्विच हो जाता है, जो छोटे डेटा पर अधिक कुशल होता है। एक सामान्य उदाहरण [[छँटाई एल्गोरिथ्म|पृथक्करण कलन विधि]] में है, जहां निवेशन छाँट, जो बड़े डेटा पर अक्षम है, लेकिन छोटे डेटा (जैसे, पांच से दस तत्वों) पर बहुत प्रभावशाली है, जो मुख्य रूप से [[विलय शाट]][[न]] या [[क्विकसॉर्ट]] जैसे किसी अन्य कलन विधि को लागू करने के बाद अंतिम चरण के रूप में उपयोग किया जाता है। विलय शाटन और | [[कंप्यूटर विज्ञान]] में, [[पुनरावर्ती कलन]] विधि के इष्टतमी वास्तविक-विश्व [[कार्यान्वयन]] में हाइब्रिड कलन विधि बहुत सामान्य हैं, विशेष रूप से विभाजन और [[विघटन या कमी-और-कॉन्कर कलन]] विधि के कार्यान्वयन, जहां पुनरावर्तन में गहराई से आगे बढ़ने पर डेटा का आकार घट जाता है। इस स्थिति में, समग्र दृष्टिकोण (बड़े डेटा पर) के लिए एक कलन विधि का उपयोग किया जाता है, लेकिन पुनरावृत्ति में गहराई से, यह एक अलग कलन विधि पर स्विच हो जाता है, जो छोटे डेटा पर अधिक कुशल होता है। एक सामान्य उदाहरण [[छँटाई एल्गोरिथ्म|पृथक्करण कलन विधि]] में है, जहां निवेशन छाँट, जो बड़े डेटा पर अक्षम है, लेकिन छोटे डेटा (जैसे, पांच से दस तत्वों) पर बहुत प्रभावशाली है, जो मुख्य रूप से [[विलय शाट]][[न]] या [[क्विकसॉर्ट|क्विकप्रकार]] जैसे किसी अन्य कलन विधि को लागू करने के बाद अंतिम चरण के रूप में उपयोग किया जाता है। विलय शाटन और क्विकप्रकार बड़े डेटा पर असम्बद्ध रूप से इष्टतम हैं, लेकिन उन्हें छोटे डेटा पर लागू करने पर शिरोपरि महत्वपूर्ण हो जाता है, इसलिए पुनरावर्तन के अंत में एक अलग कलन विधि का उपयोग होता है। एक अत्यधिक इष्टतमी हाइब्रिड पृथक्करण कलन विधि [[टिमसॉर्ट|टिमप्रकार]] है, जो विलयन तर्क में अतिरिक्त तर्क ([[ द्विआधारी खोज |द्विआधारी खोज]] सहित) के साथ विलय शाटन, निवेशन छाँट को जोड़ता है। | ||
एक सरल हाइब्रिड [[पुनरावर्ती एल्गोरिथ्म|पुनरावर्ती कलन विधि]] के लिए एक सामान्य प्रक्रिया बेस केस को लघुपथन करना है, जिसे [[आर्म-लेंथ पुनरावर्तन]] के रूप में भी जाना जाता है। इस स्थिति में, अनावश्यक फलन कॉल से बचने के लिए, फलन कॉल से पहले यह जांच की जाती है कि अगला कदम बेस केस में परिणामित होगा या नहीं। उदाहरण के लिए, एक पेड़ में, चाइल्ड नोड की पुनरावृत्ति करने और फिर यह जाँचने के बजाय कि क्या यह शून्य है, पुनरावृत्ति करने से पहले शून्य की जाँच करनी चाहिए। यह दक्षता के लिए उपयोगी है जब कलन विधि सामान्य तौर पर बेस केस का कई बार सामना करता है, जैसा कि कई ट्री कलन विधि में होता है, | एक सरल हाइब्रिड [[पुनरावर्ती एल्गोरिथ्म|पुनरावर्ती कलन विधि]] के लिए एक सामान्य प्रक्रिया बेस केस को लघुपथन करना है, जिसे [[आर्म-लेंथ पुनरावर्तन]] के रूप में भी जाना जाता है। इस स्थिति में, अनावश्यक फलन कॉल से बचने के लिए, फलन कॉल से पहले यह जांच की जाती है कि अगला कदम बेस केस में परिणामित होगा या नहीं। उदाहरण के लिए, एक पेड़ में, चाइल्ड नोड की पुनरावृत्ति करने और फिर यह जाँचने के बजाय कि क्या यह शून्य है, पुनरावृत्ति करने से पहले शून्य की जाँच करनी चाहिए। यह दक्षता के लिए उपयोगी है जब कलन विधि सामान्य तौर पर बेस केस का कई बार सामना करता है, तो जैसा कि कई ट्री कलन विधि में होता है, इसीलिए इसे अतिरिक्त जटिलता के कारण, विशेष रूप से अकादमिक क्षेत्र में खराब शैली माना जाता है। | ||
प्रदर्शन कारणों से हाइब्रिड कलन विधि का एक और उदाहरण [[परिचय]] और [[ आत्मचयन ]] है, जो | प्रदर्शन कारणों से हाइब्रिड कलन विधि का एक और उदाहरण [[परिचय|इंट्रोप्रकार]] और[[ आत्मचयन | इंट्रोसेलेक्ट]] है, जो तेज़ औसत प्रदर्शन के लिए एक कलन विधि को संयोजित करता है, इष्टतम सबसे खराब स्थिति के प्रदर्शन को सुनिश्चित करने के लिए दूसरे कलन विधि पर निर्भर करता है। इंट्रोप्रकार क्विकॉर्ट से शुरू होता है, लेकिन अगर क्विकॉर्ट अच्छी तरह से प्रगति नहीं कर रहा है तो यह ढेर प्रकार में बदल जाता है, समान रूप से इंट्रोसेलेक्ट[[ तुरंत चयन | क्विकसेलेक्ट]] से शुरू होता है, लेकिन अगर क्विकसेलेक्ट अच्छी तरह से प्रगति नहीं कर रहा है तो मध्यस्थों के मध्य में स्विच हो जाता है। | ||
केंद्रीकृत [[वितरित एल्गोरिदम|वितरित कलन विधि]] को अक्सर हाइब्रिड कलन विधि के रूप में माना जा सकता है, जिसमें एक व्यक्तिगत कलन विधि (प्रत्येक वितरित प्रोसेसर पर चलता है), और एक संयोजन कलन विधि (एक केंद्रीकृत वितरक पर चलता है) | केंद्रीकृत [[वितरित एल्गोरिदम|वितरित कलन विधि]] को अक्सर हाइब्रिड कलन विधि के रूप में माना जा सकता है, जिसमें एक व्यक्तिगत कलन विधि (प्रत्येक वितरित प्रोसेसर पर चलता है), और एक संयोजन कलन विधि (एक केंद्रीकृत वितरक पर चलता है) सम्मिलित होता है - क्रमशः एक प्रोसेसर पर संपूर्ण कलन विधि चलाने, या वितरक पर संपूर्ण गणना करने, तुच्छ परिणामों को संयोजित (प्रत्येक प्रोसेसर से एक-तत्व डेटा सेट) करने के अनुरूप होते हैं। इन कलन विधि का एक मूल उदाहरण [[वितरण प्रकार]] हैं, जो विशेष रूप से बाहरी पृथक्करण के लिए उपयोग किया जाता है, जो डेटा को अलग-अलग उपसमूहों में विभाजित करता है, तथा उपसमूहों को क्रमबद्ध करता है, और फिर उपसमूहों को पूरी तरह से क्रमबद्ध डेटा में संयोजित करता है, उदाहरणों में[[ बाल्टी प्रकार | बकेट प्रकार]] और [[फ़्लैश प्रकार]] सम्मिलित हैं। | ||
हालाँकि, सामान्य तौर पर वितरित कलन विधि को हाइब्रिड कलन विधि होने की आवश्यकता नहीं है, क्योंकि व्यक्तिगत कलन विधि या संयोजन या संचार कलन विधि विभिन्न समस्याओं को हल कर सकते हैं। उदाहरण के लिए, [[MapReduce]] जैसे | हालाँकि, सामान्य तौर पर वितरित कलन विधि को हाइब्रिड कलन विधि होने की आवश्यकता नहीं है, क्योंकि व्यक्तिगत कलन विधि या संयोजन या संचार कलन विधि विभिन्न समस्याओं को हल कर सकते हैं। उदाहरण के लिए, [[MapReduce|मानचित्र समानयन]] जैसे प्रारूप में, मानचित्र और समानयन चरण अलग-अलग समस्याओं को हल करते हैं, और एक अलग, तीसरी समस्या को हल करने के लिए संयुक्त होते हैं। | ||
== यह भी देखें == | == यह भी देखें == |
Revision as of 06:05, 17 July 2023
This article does not cite any sources. (मई 2014) (Learn how and when to remove this template message) |
हाइब्रिड कलन विधि एक कलन विधि है जो किसी समस्या को हल करने के लिए दो या अधिक अन्य कलन विधियो को संयोजित करता है, या तो डेटा की कुछ विशेषता के आधार पर एक का चयन करता है, या कलन विधि के प्रवाह के दौरान उनमें स्विच करता है। यह सामान्य तौर पर प्रत्येक की वांछित विशेषताओं को संयोजित करने के लिए किया जाता है, ताकि समग्र कलन विधि व्यक्तिगत घटकों से बेहतर हो सके।
हाइब्रिड कलन विधि का तात्पर्य केवल एक अलग समस्या को हल करने के लिए कई कलन विधि के संयोजन से नहीं है-बल्कि केवल उन कलन विधि के संयोजन से है जो एक ही समस्या को हल करते हैं,तथा अन्य विशेषताए, विशेष रूप से प्रदर्शन में भिन्न होती हैं और कई कलन विधि को सरल टुकड़ों के संयोजन के रूप में भी माना जा सकता है।
उदाहरण
कंप्यूटर विज्ञान में, पुनरावर्ती कलन विधि के इष्टतमी वास्तविक-विश्व कार्यान्वयन में हाइब्रिड कलन विधि बहुत सामान्य हैं, विशेष रूप से विभाजन और विघटन या कमी-और-कॉन्कर कलन विधि के कार्यान्वयन, जहां पुनरावर्तन में गहराई से आगे बढ़ने पर डेटा का आकार घट जाता है। इस स्थिति में, समग्र दृष्टिकोण (बड़े डेटा पर) के लिए एक कलन विधि का उपयोग किया जाता है, लेकिन पुनरावृत्ति में गहराई से, यह एक अलग कलन विधि पर स्विच हो जाता है, जो छोटे डेटा पर अधिक कुशल होता है। एक सामान्य उदाहरण पृथक्करण कलन विधि में है, जहां निवेशन छाँट, जो बड़े डेटा पर अक्षम है, लेकिन छोटे डेटा (जैसे, पांच से दस तत्वों) पर बहुत प्रभावशाली है, जो मुख्य रूप से विलय शाटन या क्विकप्रकार जैसे किसी अन्य कलन विधि को लागू करने के बाद अंतिम चरण के रूप में उपयोग किया जाता है। विलय शाटन और क्विकप्रकार बड़े डेटा पर असम्बद्ध रूप से इष्टतम हैं, लेकिन उन्हें छोटे डेटा पर लागू करने पर शिरोपरि महत्वपूर्ण हो जाता है, इसलिए पुनरावर्तन के अंत में एक अलग कलन विधि का उपयोग होता है। एक अत्यधिक इष्टतमी हाइब्रिड पृथक्करण कलन विधि टिमप्रकार है, जो विलयन तर्क में अतिरिक्त तर्क (द्विआधारी खोज सहित) के साथ विलय शाटन, निवेशन छाँट को जोड़ता है।
एक सरल हाइब्रिड पुनरावर्ती कलन विधि के लिए एक सामान्य प्रक्रिया बेस केस को लघुपथन करना है, जिसे आर्म-लेंथ पुनरावर्तन के रूप में भी जाना जाता है। इस स्थिति में, अनावश्यक फलन कॉल से बचने के लिए, फलन कॉल से पहले यह जांच की जाती है कि अगला कदम बेस केस में परिणामित होगा या नहीं। उदाहरण के लिए, एक पेड़ में, चाइल्ड नोड की पुनरावृत्ति करने और फिर यह जाँचने के बजाय कि क्या यह शून्य है, पुनरावृत्ति करने से पहले शून्य की जाँच करनी चाहिए। यह दक्षता के लिए उपयोगी है जब कलन विधि सामान्य तौर पर बेस केस का कई बार सामना करता है, तो जैसा कि कई ट्री कलन विधि में होता है, इसीलिए इसे अतिरिक्त जटिलता के कारण, विशेष रूप से अकादमिक क्षेत्र में खराब शैली माना जाता है।
प्रदर्शन कारणों से हाइब्रिड कलन विधि का एक और उदाहरण इंट्रोप्रकार और इंट्रोसेलेक्ट है, जो तेज़ औसत प्रदर्शन के लिए एक कलन विधि को संयोजित करता है, इष्टतम सबसे खराब स्थिति के प्रदर्शन को सुनिश्चित करने के लिए दूसरे कलन विधि पर निर्भर करता है। इंट्रोप्रकार क्विकॉर्ट से शुरू होता है, लेकिन अगर क्विकॉर्ट अच्छी तरह से प्रगति नहीं कर रहा है तो यह ढेर प्रकार में बदल जाता है, समान रूप से इंट्रोसेलेक्ट क्विकसेलेक्ट से शुरू होता है, लेकिन अगर क्विकसेलेक्ट अच्छी तरह से प्रगति नहीं कर रहा है तो मध्यस्थों के मध्य में स्विच हो जाता है।
केंद्रीकृत वितरित कलन विधि को अक्सर हाइब्रिड कलन विधि के रूप में माना जा सकता है, जिसमें एक व्यक्तिगत कलन विधि (प्रत्येक वितरित प्रोसेसर पर चलता है), और एक संयोजन कलन विधि (एक केंद्रीकृत वितरक पर चलता है) सम्मिलित होता है - क्रमशः एक प्रोसेसर पर संपूर्ण कलन विधि चलाने, या वितरक पर संपूर्ण गणना करने, तुच्छ परिणामों को संयोजित (प्रत्येक प्रोसेसर से एक-तत्व डेटा सेट) करने के अनुरूप होते हैं। इन कलन विधि का एक मूल उदाहरण वितरण प्रकार हैं, जो विशेष रूप से बाहरी पृथक्करण के लिए उपयोग किया जाता है, जो डेटा को अलग-अलग उपसमूहों में विभाजित करता है, तथा उपसमूहों को क्रमबद्ध करता है, और फिर उपसमूहों को पूरी तरह से क्रमबद्ध डेटा में संयोजित करता है, उदाहरणों में बकेट प्रकार और फ़्लैश प्रकार सम्मिलित हैं।
हालाँकि, सामान्य तौर पर वितरित कलन विधि को हाइब्रिड कलन विधि होने की आवश्यकता नहीं है, क्योंकि व्यक्तिगत कलन विधि या संयोजन या संचार कलन विधि विभिन्न समस्याओं को हल कर सकते हैं। उदाहरण के लिए, मानचित्र समानयन जैसे प्रारूप में, मानचित्र और समानयन चरण अलग-अलग समस्याओं को हल करते हैं, और एक अलग, तीसरी समस्या को हल करने के लिए संयुक्त होते हैं।
यह भी देखें
- हाइब्रिड कलन विधि (प्रतिबंध संतुष्टि)
- हाइब्रिड आनुवंशिक कलन विधि
- चरण पुनर्प्राप्ति के लिए हाइब्रिड निविष्ट निर्गत (एचआईओ) कलन विधि
श्रेणी,कलन विधि