बैकवर्ड चेनिंग: Difference between revisions

From Vigyanwiki
No edit summary
No edit summary
Line 9: Line 9:
== यह कैसे काम करता है ==
== यह कैसे काम करता है ==


बैकवर्ड चेनिंग [[लक्ष्य]]ों (या एक [[परिकल्पना]]) की एक सूची से शुरू होती है और इम्प्लीकेशन ी से [[पूर्ववर्ती (तर्क)|पूर्ववर्ती (लॉजिक )]] तक पीछे की ओर काम करती है यह देखने के लिए कि क्या कोई [[आंकड़े]] इनमें से किसी भी इम्प्लीकेशन  का समर्थन करता है।<ref name="Norwig Definition"/>बैकवर्ड चेनिंग का उपयोग करने वाला एक इन्फेरेंस इंजन तब तक इन्फेरेंस नियमों की खोज करेगा जब तक कि उसे एक ऐसा इम्प्लीकेशन ी (तब खंड) न मिल जाए जो वांछित लक्ष्य से मेल खाता हो। यदि उस नियम का पूर्ववर्ती (यदि खंड) सत्य नहीं है, तो इसे लक्ष्यों की सूची में जोड़ा जाता है (किसी के लक्ष्य की पुष्टि के लिए व्यक्ति को वह डेटा भी प्रदान करना होगा जो इस नए नियम की पुष्टि करता है)।
बैकवर्ड चेनिंग [[गोल्स]] या एक [[परिकल्पना|हाइपोथिसिस]] की एक सूची से शुरू होती है और कॉनसीक्वेंट से [[एंटीसीडेन्ट]] [[पूर्ववर्ती (तर्क)|(लॉजिक )]] तक पीछे की ओर काम करती है इस प्रकार यह देखने के लिए कि क्या कोई [[आंकड़े|डेटा]] इनमें से किसी भी इम्प्लीकेशन  का समर्थन करता है।<ref name="Norwig Definition"/> बैकवर्ड चेनिंग का उपयोग करने वाला एक इन्फेरेंस इंजन तब तक इन्फेरेंस नियमों की खोज करता है जब तक कि उसे एक ऐसा कॉनसीक्वेंट खंड नहीं मिल जाता जो वांछित गोल से मेल खाता है। यदि उस नियम का एंटीसीडेन्ट  खंड सत्य नहीं है, तो इसे गोल्स  की सूची में जोड़ा जाता है और इस प्रकार किसी के लक्ष्य की पुष्टि के लिए व्यक्ति को वह डेटा भी प्रदान करना होता है जो इस नए नियम की पुष्टि करता है।


उदाहरण के लिए, मान लीजिए कि एक नया पालतू जानवर, फ़्रिट्ज़, फ़्रिट्ज़ के बारे में दो तथ्यों के साथ एक अपारदर्शी बॉक्स में दिया गया है:
उदाहरण के लिए, मान लीजिए कि एक नया पालतू जानवर, फ़्रिट्ज़, फ़्रिट्ज़ के बारे में दो तथ्यों के साथ एक अपारदर्शी बॉक्स में दिया गया है:
* फ़्रिट्ज़ कर्कश
* फ़्रिट्ज़ कर्कश
* फ़्रिट्ज़ मक्खियाँ खाता है
* फ़्रिट्ज़ मक्खियाँ खाता है
लक्ष्य निम्नलिखित चार नियमों वाले नियम आधार के आधार पर यह तय करना है कि फ़्रिट्ज़ हरा है या नहीं:
इस प्रकार लक्ष्य निम्नलिखित चार नियमों वाले नियम आधार के आधार पर यह तय करना है कि फ़्रिट्ज़ हरा है या नहीं,


[[File:Backward Chaining Frog Color Example.png|upright=0.56|thumb|alt=An Example of Backward Chaining.|बैकवर्ड चेनिंग का एक उदाहरण।]]# यदि X टर्र-टर्र करता है और X मक्खियाँ खाता है - तो X एक मेंढक है
[[File:Backward Chaining Frog Color Example.png|upright=0.56|thumb|alt=An Example of Backward Chaining.|बैकवर्ड चेनिंग का एक उदाहरण।]]# यदि X टर्र-टर्र करता है और X मक्खियाँ खाता है - तो X एक मेंढक है
Line 33: Line 33:
   फ़्रिट्ज़ क्रोक करता है और फ़्रिट्ज़ मक्खियाँ खाता है
   फ़्रिट्ज़ क्रोक करता है और फ़्रिट्ज़ मक्खियाँ खाता है


3. चूँकि यह लक्ष्य दो कथनों का संयोजन है, इन्फेरेंस इंजन इसे दो उप-लक्ष्यों में तोड़ता है, जिनमें से दोनों को सिद्ध किया जाना चाहिए:
3. चूँकि यह लक्ष्य दो कथनों का संयोजन है, इन्फेरेंस इंजन इसे दो उप-गोल्स  में तोड़ता है, जिनमें से दोनों को सिद्ध किया जाना चाहिए:
   फ़्रिट्ज़ कर्कश
   फ़्रिट्ज़ कर्कश
   फ़्रिट्ज़ मक्खियाँ खाता है
   फ़्रिट्ज़ मक्खियाँ खाता है


4. इन दोनों उप-लक्ष्यों को सिद्ध करने के लिए, इन्फेरेंस इंजन देखता है कि ये दोनों उप-लक्ष्य प्रारंभिक तथ्यों के रूप में दिए गए थे। इसलिए, संयोजन सत्य है:
4. इन दोनों उप-गोल्स  को सिद्ध करने के लिए, इन्फेरेंस इंजन देखता है कि ये दोनों उप-लक्ष्य प्रारंभिक तथ्यों के रूप में दिए गए थे। इसलिए, संयोजन सत्य है:
   फ़्रिट्ज़ क्रोक करता है और फ़्रिट्ज़ मक्खियाँ खाता है
   फ़्रिट्ज़ क्रोक करता है और फ़्रिट्ज़ मक्खियाँ खाता है
इसलिए नियम #1 का पूर्ववृत्त सत्य है और इम्प्लीकेशन सत्य होना चाहिए:
इसलिए नियम #1 का पूर्ववृत्त सत्य है और इम्प्लीकेशन सत्य होना चाहिए:
   फ़्रिट्ज़ एक मेंढक है
   फ़्रिट्ज़ एक मेंढक है
इसलिए नियम #3 का पूर्ववृत्त सत्य है और इम्प्लीकेशन सत्य होना चाहिए:
इसलिए नियम #3 का पूर्ववृत्त सत्य है और इम्प्लीकेशन सत्य होना चाहिए:
   फ़्रिट्ज़ हरा है
   फ़्रिट्ज़ हरा है


Line 48: Line 48:
ध्यान दें कि लक्ष्य हमेशा निहितार्थ के इम्प्लीकेशन ों के पुष्टि किए गए संस्करणों से मेल खाते हैं (और [[विधि को हटाना]] के रूप में नकारात्मक संस्करणों से नहीं) और फिर भी, उनके पूर्ववृत्त को नए लक्ष्य के रूप में माना जाता है (न कि [[परिणाम की पुष्टि|इम्प्लीकेशन  की पुष्टि]] करने वाले निष्कर्ष), जो अंततः ज्ञात तथ्यों से मेल खाना चाहिए (सामान्यतः  उन इम्प्लीकेशन ों के रूप में परिभाषित किया जाता है जिनके पूर्ववृत्त हमेशा सत्य होते हैं); इस प्रकार, प्रयुक्त इन्फेरेंस नियम मोडस पोनेंस है।
ध्यान दें कि लक्ष्य हमेशा निहितार्थ के इम्प्लीकेशन ों के पुष्टि किए गए संस्करणों से मेल खाते हैं (और [[विधि को हटाना]] के रूप में नकारात्मक संस्करणों से नहीं) और फिर भी, उनके पूर्ववृत्त को नए लक्ष्य के रूप में माना जाता है (न कि [[परिणाम की पुष्टि|इम्प्लीकेशन  की पुष्टि]] करने वाले निष्कर्ष), जो अंततः ज्ञात तथ्यों से मेल खाना चाहिए (सामान्यतः  उन इम्प्लीकेशन ों के रूप में परिभाषित किया जाता है जिनके पूर्ववृत्त हमेशा सत्य होते हैं); इस प्रकार, प्रयुक्त इन्फेरेंस नियम मोडस पोनेंस है।


क्योंकि लक्ष्यों की सूची यह निर्धारित करती है कि कौन से नियम चुने और उपयोग किए जाते हैं, [[डेटा विज्ञान]] | डेटा-संचालित फॉरवर्ड चेनिंग | फॉरवर्ड-चेनिंग इन्फेरेंस के विपरीत, इस विधि को लक्ष्य-उन्मुख | लक्ष्य-संचालित कहा जाता है। बैकवर्ड चेनिंग दृष्टिकोण अक्सर विशेषज्ञ प्रणालियों द्वारा नियोजित किया जाता है।
क्योंकि गोल्स  की सूची यह निर्धारित करती है कि कौन से नियम चुने और उपयोग किए जाते हैं, [[डेटा विज्ञान]] | डेटा-संचालित फॉरवर्ड चेनिंग | फॉरवर्ड-चेनिंग इन्फेरेंस के विपरीत, इस विधि को लक्ष्य-उन्मुख | लक्ष्य-संचालित कहा जाता है। बैकवर्ड चेनिंग दृष्टिकोण अक्सर विशेषज्ञ प्रणालियों द्वारा नियोजित किया जाता है।


प्रोलॉग, [[ज्ञान मशीन]] और ईसीएलआईपीएसई जैसी प्रोग्रामिंग भाषाएं अपने इन्फेरेंस इंजनों के भीतर बैकवर्ड चेनिंग का समर्थन करती हैं।<ref name="Programming Languages"/>
प्रोलॉग, [[ज्ञान मशीन]] और ईसीएलआईपीएसई जैसी प्रोग्रामिंग भाषाएं अपने इन्फेरेंस इंजनों के भीतर बैकवर्ड चेनिंग का समर्थन करती हैं।<ref name="Programming Languages"/>

Revision as of 08:50, 4 August 2023

बैकवर्ड चेनिंग या बैकवर्ड रीजनिंग एक इन्फरन्स पद्धति है, जिसे कोलोक्विअल में लक्ष्य से पीछे की ओर काम करने के रूप में वर्णित किया जाता है। इसका उपयोग स्वचालित प्रमेय प्रोवर्स, इन्फेरेंस इंजन, प्रूफ असिस्टेंट और अन्य आर्टिफिशियल इंटेलिजेंस अनुप्रयोगों में उपयोग किया जाता है।[1]

गेम सिद्धांत में, शोधकर्ता बैकवर्ड इंडक्शन नामक प्रक्रिया में गेम का समाधान खोजने के लिए इसे सरल उपगेम पर प्रयुक्त करते हैं। शतरंज में, इसे रेट्रोग्रेड विश्लेषण कहा जाता है और इसका उपयोग कंप्यूटर शतरंज के एंडगेम के लिए टेबल बेस तैयार करने के लिए किया जाता है।

लॉजिक प्रोग्रामिंग में बैकवर्ड चेनिंग को SLD रेजोल्यूशन द्वारा कार्यान्वित किया जाता है। दोनों नियम मोडस पोनेंस इन्फेरेंस नियम पर आधारित होते है। यह इन्फेरेंस नियमों और लॉजिकल इम्प्लीकेशन के साथ लॉजिक करने के दो सबसे अधिक उपयोग किए जाने वाली विधि में से एक है और इस प्रकार बैकवर्ड चेनिंग प्रणाली सामान्यतः डेप्थ फर्स्ट सर्च स्ट्रेटजी को नियोजित करते हैं, जैसे प्रोलॉग इत्यादि.[2]

यह कैसे काम करता है

बैकवर्ड चेनिंग गोल्स या एक हाइपोथिसिस की एक सूची से शुरू होती है और कॉनसीक्वेंट से एंटीसीडेन्ट (लॉजिक ) तक पीछे की ओर काम करती है इस प्रकार यह देखने के लिए कि क्या कोई डेटा इनमें से किसी भी इम्प्लीकेशन का समर्थन करता है।[3] बैकवर्ड चेनिंग का उपयोग करने वाला एक इन्फेरेंस इंजन तब तक इन्फेरेंस नियमों की खोज करता है जब तक कि उसे एक ऐसा कॉनसीक्वेंट खंड नहीं मिल जाता जो वांछित गोल से मेल खाता है। यदि उस नियम का एंटीसीडेन्ट खंड सत्य नहीं है, तो इसे गोल्स की सूची में जोड़ा जाता है और इस प्रकार किसी के लक्ष्य की पुष्टि के लिए व्यक्ति को वह डेटा भी प्रदान करना होता है जो इस नए नियम की पुष्टि करता है।

उदाहरण के लिए, मान लीजिए कि एक नया पालतू जानवर, फ़्रिट्ज़, फ़्रिट्ज़ के बारे में दो तथ्यों के साथ एक अपारदर्शी बॉक्स में दिया गया है:

  • फ़्रिट्ज़ कर्कश
  • फ़्रिट्ज़ मक्खियाँ खाता है

इस प्रकार लक्ष्य निम्नलिखित चार नियमों वाले नियम आधार के आधार पर यह तय करना है कि फ़्रिट्ज़ हरा है या नहीं,

An Example of Backward Chaining.
बैकवर्ड चेनिंग का एक उदाहरण।

# यदि X टर्र-टर्र करता है और X मक्खियाँ खाता है - तो X एक मेंढक है

  1. यदि एक्स चहचहाता है और एक्स गाता है - तो एक्स एक कैनरी है
  2. यदि X एक मेंढक है - तो X हरा है
  3. यदि X एक कैनरी है - तो X पीला है

पिछड़े लॉजिक के साथ, एक इन्फेरेंस इंजन चार चरणों में यह निर्धारित कर सकता है कि फ़्रिट्ज़ हरा है या नहीं। आरंभ करने के लिए, क्वेरी को एक लक्ष्य दावे के रूप में प्रस्तुत किया गया है जिसे सिद्ध किया जाना है: फ़्रिट्ज़ हरा है।

1. यह देखने के लिए कि क्या इसका इम्प्लीकेशन लक्ष्य से मेल खाता है, फ़्रिट्ज़ को नियम #3 में X के स्थान पर प्रतिस्थापित किया गया है, इसलिए नियम #3 बन जाता है:

 यदि फ़्रिट्ज़ एक मेंढक है - तो फ़्रिट्ज़ हरा है

चूँकि इम्प्लीकेशन लक्ष्य से मेल खाता है (फ़्रिट्ज़ हरा है), नियम इंजन को अब यह देखने की ज़रूरत है कि क्या पूर्ववर्ती (फ़्रिट्ज़ एक मेंढक है) सिद्ध किया जा सकता है। इसलिए, पूर्ववर्ती नया लक्ष्य बन जाता है:

 फ़्रिट्ज़ एक मेंढक है

2. फिर से X के स्थान पर फ्रिट्ज़ को प्रतिस्थापित करने पर नियम #1 बन जाता है:

 यदि फ़्रिट्ज़ टर्र-टर्र करता है और फ़्रिट्ज़ मक्खियाँ खाता है - तो फ़्रिट्ज़ एक मेंढक है

चूँकि इम्प्लीकेशन वर्तमान लक्ष्य से मेल खाता है (फ़्रिट्ज़ एक मेंढक है), इन्फेरेंस इंजन को अब यह देखने की ज़रूरत है कि क्या पूर्ववर्ती (फ़्रिट्ज़ टर्र-टर्र करता है और मक्खियाँ खाता है) को सिद्ध किया जा सकता है। इसलिए, पूर्ववर्ती नया लक्ष्य बन जाता है:

 फ़्रिट्ज़ क्रोक करता है और फ़्रिट्ज़ मक्खियाँ खाता है

3. चूँकि यह लक्ष्य दो कथनों का संयोजन है, इन्फेरेंस इंजन इसे दो उप-गोल्स में तोड़ता है, जिनमें से दोनों को सिद्ध किया जाना चाहिए:

 फ़्रिट्ज़ कर्कश
 फ़्रिट्ज़ मक्खियाँ खाता है

4. इन दोनों उप-गोल्स को सिद्ध करने के लिए, इन्फेरेंस इंजन देखता है कि ये दोनों उप-लक्ष्य प्रारंभिक तथ्यों के रूप में दिए गए थे। इसलिए, संयोजन सत्य है:

 फ़्रिट्ज़ क्रोक करता है और फ़्रिट्ज़ मक्खियाँ खाता है

इसलिए नियम #1 का पूर्ववृत्त सत्य है और इम्प्लीकेशन सत्य होना चाहिए:

 फ़्रिट्ज़ एक मेंढक है

इसलिए नियम #3 का पूर्ववृत्त सत्य है और इम्प्लीकेशन सत्य होना चाहिए:

 फ़्रिट्ज़ हरा है

इसलिए, यह व्युत्पत्ति इन्फेरेंस इंजन को यह साबित करने की अनुमति देती है कि फ़्रिट्ज़ हरा है। नियम #2 और #4 का उपयोग नहीं किया गया।

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

क्योंकि गोल्स की सूची यह निर्धारित करती है कि कौन से नियम चुने और उपयोग किए जाते हैं, डेटा विज्ञान | डेटा-संचालित फॉरवर्ड चेनिंग | फॉरवर्ड-चेनिंग इन्फेरेंस के विपरीत, इस विधि को लक्ष्य-उन्मुख | लक्ष्य-संचालित कहा जाता है। बैकवर्ड चेनिंग दृष्टिकोण अक्सर विशेषज्ञ प्रणालियों द्वारा नियोजित किया जाता है।

प्रोलॉग, ज्ञान मशीन और ईसीएलआईपीएसई जैसी प्रोग्रामिंग भाषाएं अपने इन्फेरेंस इंजनों के भीतर बैकवर्ड चेनिंग का समर्थन करती हैं।[4]


यह भी देखें

संदर्भ

  1. Feigenbaum, Edward (1988). विशेषज्ञ कंपनी का उदय. Times Books. p. 317. ISBN 0-8129-1731-6.
  2. Michel Chein; Marie-Laure Mugnier (2009). Graph-based knowledge representation: computational foundations of conceptual graphs. Springer. p. 297. ISBN 978-1-84800-285-2.
  3. Definition of backward chaining as a depth-first search method:
  4. Languages that support backward chaining:



स्रोत

बाहरी संबंध