अनुमान इंजन: Difference between revisions
From Vigyanwiki
No edit summary |
No edit summary |
||
| (20 intermediate revisions by 3 users not shown) | |||
| Line 1: | Line 1: | ||
{{Short description|Component of artificial intelligence systems}} | {{Short description|Component of artificial intelligence systems}} | ||
{{Update|date=October 2019}} | {{Update|date=October 2019}} | ||
कृत्रिम बुद्धिमत्ता के क्षेत्र में | कृत्रिम बुद्धिमत्ता के क्षेत्र में अनुमान इंजन प्रणाली का एक घटक है, जो नई जानकारी प्राप्त करने के लिए ज्ञान के आधार पर तार्किक नियम प्रस्तुत करता है और इस प्रकार पहले अनुमान इंजन विशेषज्ञ प्रणालियों के घटक के रूप में होते है और विशिष्ट [[विशेषज्ञ प्रणाली]] में ज्ञान आधार का अनुमान लगाता है। यह प्रक्रिया ज्ञानकोष में विश्व के बारे में तथ्य संग्रहीत करता है। जिसमे कि अनुमान इंजन ज्ञान के आधार पर तार्किक नियम प्रस्तुत करता है और नया ज्ञान प्राप्त करता है। यह प्रक्रिया पुनरावृति के रूप में होती है, क्योंकि ज्ञान आधार में प्रत्येक नया तथ्य अनुमान इंजन में अतिरिक्त नियमों को ट्रिगर कर सकता है। अनुमान इंजन मुख्य रूप से दो मोड में से एक विशेष नियम या तथ्यों में कार्य करता है,[[ आगे की चेनिंग | फॉरवर्ड चेनिंग]] और [[ पीछे की ओर जंजीर |बैकवर्ड चेनिंग]] ज्ञात तथ्यों के साथ आरंभ होती है और नए तथ्यों का उल्लेख करती है। बैकवर्ड चेनिंग लक्ष्यों से शुरू होती है, और यह निर्धारित करने के लिए बैकवर्ड चेनिंग के रूप में कार्य करती है, कि किन तथ्यों पर जोर दिया जाना चाहिए जिससे की लक्ष्यों को प्राप्त किया जा सके।<ref name="Hayes-Roth 1983">{{cite book|last=Hayes-Roth|first=Frederick|title=विशेषज्ञ प्रणालियों का निर्माण|year=1983|publisher=Addison-Wesley|isbn=0-201-10686-8|author2=Donald Waterman|author3=Douglas Lenat|url=https://archive.org/details/buildingexpertsy00temd}}</ref> | ||
=='''वास्तुकला'''== | =='''वास्तुकला'''== | ||
एक अनुमान इंजन जिस तर्क का उपयोग करता है उसे सामान्यतः | एक अनुमान इंजन जिस तर्क का उपयोग करता है, उसे सामान्यतः इस नियम के रूप में दर्शाया जाता है। तो ऐसे नियमों का सामान्य स्वरुप तार्किक अभिव्यक्ति के रूप में दर्शाया जाता है। जिसमे कि विशेषज्ञ प्रणालियों और अनुमान इंजनों के विकास से पहले, कृत्रिम बुद्धिमत्ता शोधकर्ताओं ने अधिक शक्तिशाली प्रमेय सिद्धकर्ता वातावरण पर ध्यान केंद्रित किया है। जो [[प्रथम-क्रम तर्क]] के अधिक पूर्ण कार्यान्वयन को प्रस्तुत करता है। उदाहरण के लिए सामान्य कथन जिनमें [[सार्वभौमिक परिमाणीकरण|यूनिवर्सल परिमाणीकरण]] के रूप में सम्मलित होता है और इस प्रकार सभी एक्स के लिए कुछ कथन सत्य होते है और [[अस्तित्वगत परिमाणीकरण|एक्सिस्टेंटीएल परिमाणीकरण]] के कुछ एक्स के रूप में उपलब्ध होते है, जैसे कि कुछ कथन सत्य हैं। शोधकर्ताओं ने यह पता लगाया है कि इन प्रमेय को सिद्ध करने वाले वातावरण की शक्ति भी उनकी एक कमी थी। सन् 1965 में, तार्किक अभिव्यक्तियाँ के रूप में बनाना बहुत आसान था जिसे समाप्त होने में अनिश्चित या अनंत समय लग सकता था। उदाहरण के लिए सभी प्राकृतिक संख्याओं के समुच्चय जैसे अनन्त समुच्चयों के संबंध में विवरण देना सामान्य बात है। ऐसे कथन पूर्णतया तर्कसंगत होते हैं और गणितीय साक्ष्यों में तो आवश्यक भी होते हैं, परंतु जब कंप्यूटर पर स्वचालित प्रमेय को प्रचालित करने वाले एक कंप्यूटर के रूप में सम्मिलित किया जाता है, तब वह कंप्यूटर को अनंत लूप के रूप में ले जाता है। अगर तब जिन कथनों को जिसे तर्कशास्त्री [[मूड सेट करना|मोडस पोनेन्स]] कहते हैं, उस कथन पर ध्यान देते हुए विकासकर्ताओं ने तर्क का प्रतिनिधित्व करने के लिए एक बहुत ही शक्तिशाली सामान्य तंत्र प्रदान किया है, लेकिन जिसे कम्प्यूटेशनल संसाधनों के साथ कुशलतापूर्वक उपयोग किया जा सकता है। इसके अलावा कुछ मनोवैज्ञानिक शोध ऐसे हैं, जो यह बताते हैं, कि जब मनुष्य जटिल ज्ञान के संग्रहण में रुचि लेता है तब उस समय का प्रतिनिधित्व करते हैं।<ref>{{cite book|last=Feigenbaum|first=Edward|title=आर्टिफिशियल इंटेलिजेंस की हैंडबुक, खंड I|publisher=Addison-Wesley|isbn=0201118114|page=195|url=https://archive.org/stream/handbookofartific01barr#page/156/mode/2up|author2=Avron Barr|date=September 1, 1986}}</ref> | ||
परिचयात्मक तर्क पुस्तकों में अधिकांशतः उपयोग किए जाने वाले मोडस पोनेन्स का एक सरल उदाहरण है, यदि आप मानव हैं तो आप नश्वर हैं। इसका उपयोग छद्म कूट के रूप में किया जा सकता है। | |||
नियम 1: मानव(एक्स) => नश्वर(एक्स) | |||
इसका एक उदाहरण यह है कि अनुमान इंजन में इस नियम का प्रयोग किस प्रकार किया जाता है। कि फॉरवर्ड चेनिंग में अनुमान इंजन ज्ञान आधार में कोई भी तथ्य ढूंढेगा जो मानव (एक्स) से मेल खाता हो और पाए गए प्रत्येक तथ्य के लिए ज्ञान आधार में नई जानकारी मृत्युकारक (एक्स) के रूप में जोड़ देगा। इसलिए यदि उसे सुकरात नाम की कोई वस्तु मिली जो मानव थी, तो इससे यह निष्कर्ष निकलेगा कि सुकरात नश्वर था। बैकवर्ड चेनिंग में के रूप में सिस्टम को एक लक्ष्य दिया जाएगा, उदाहरण के लिए प्रश्न का उत्तर दें क्या सुकरात नश्वर है? यह ज्ञान के आधार पर खोज करता है, और यह निर्धारित करेगा कि क्या सुकरात मानव थे और यदि हां, तो यह प्रमाणित किया जाएगा कि वह भी नश्वर हैं। चूंकि बैकवर्ड चेनिंग के रूप में एक सामान्य प्रद्योगिकी अनुमान इंजन को यूजर इंटरफेस के साथ एकीकृत करना था। इस प्रकार सिस्टम अब मात्र स्वचालित होने के अतिरिक्त इंटरैक्टिव हो सकता है। इस तुच्छ उदाहरण में यदि सिस्टम को इस प्रश्न का उत्तर देने का लक्ष्य दिया गया था। कि क्या सुकरात नश्वर था और यह अभी तक नहीं पता था, कि वह मानव था, तो यह उपयोगकर्ता से यह प्रश्न पूछने के लिए एक विंडो उत्पन्न करेगा कि क्या सुकरात मानव है? और फिर उस जानकारी का उपयोग उसके अनुसार करते है। | |||
एक अनुमान इंजन में | एक यूजर इंटरफ़ेस के साथ अनुमान इंजन को एकीकृत करने के इस नवीनीकरण ने विशेषज्ञ प्रणालियों की दूसरी प्रारंभिक प्रगति के रूप में जन्म दिया था। स्पष्टीकरण क्षमता कोड के अतिरिक्त नियमों के रूप में ज्ञान के स्पष्ट प्रतिनिधित्व ने एक यूजर के लिए स्पष्टीकरण के रूप में उत्पन्न करना संभव बना दिया था। वास्तविक समय में और तथ्य के बाद दोनों स्पष्टीकरण। तो यदि सिस्टम ने उपयोगकर्ता से पूछा कि क्या सुकरात मानव हैं? एक यूजर को आश्चर्य हो सकता है कि उससे वह प्रश्न क्यों पूछा जा रहा था और सिस्टम यह समझाने के लिए नियमों की श्रृंखला के रूप में उपयोग करता है, कि वह वर्तमान में उस ज्ञान का पता लगाने की कोशिश क्यों कर रहा था,चूकि उसे यह निर्धारित करने की आवश्यकता है कि क्या सुकरात नश्वर है और ऐसा करने के लिए यह निर्धारित करने की आवश्यकता है, कि क्या वह मानव है। सबसे पहले ये स्पष्टीकरण मानक डिबगिंग जानकारी से बहुत भिन्न नहीं थे, जो डेवलपर्स किसी भी सिस्टम को डिबग करते समय निपटाते हैं। चूकि अनुसंधान का एक सक्रिय क्षेत्र कंप्यूटर औपचारिकताओं के अतिरिक्त प्राकृतिक भाषाओं का उपयोग करके प्रश्न पूछने, समझने और उत्पन्न करने और स्पष्टीकरण देने के लिए प्राकृतिक भाषा प्रौद्योगिकी के रूप में उपयोग कर रहा था।<ref>{{cite journal|last=Barzilayt|first=Regina |author2=Daryl McCullough |author3=Owen Rambow |author4=Jonathan DeCristofaro |author5=Tanya Korelsky |author6=Benoit Lavoie |title=विशेषज्ञ प्रणाली स्पष्टीकरण के लिए एक नया दृष्टिकोण|journal=USAF Rome Laboratory Report |url=https://apps.dtic.mil/sti/pdfs/ADA457707.pdf|archive-url=https://web.archive.org/web/20160705225736/http://www.dtic.mil/cgi-bin/GetTRDoc?AD=ADA457707|url-status=live|archive-date=July 5, 2016}}</ref> | ||
एक अनुमान इंजन तीन अनुक्रमिक चरणों के माध्यम से चक्र करता है: नियमों का मिलान करें, नियमों का चयन करें और नियमों को निष्पादित करें। नियमों के कार्यान्वयन के परिणामस्वरूप अधिकांशतः ज्ञान आधार में नए तथ्य या लक्ष्य के रूप में जुड़ जाते है, जो चक्र को दोहराने के लिए प्रेरित करते है। यह चक्र तब तक जारी रहता है जब तक कोई नया नियम नहीं बन जाता है। | |||
एक अनुमान इंजन तीन अनुक्रमिक चरणों के माध्यम से चक्र करता है: नियमों का मिलान करें, नियमों का चयन करें और नियमों को निष्पादित करें। नियमों के कार्यान्वयन के परिणामस्वरूप अधिकांशतः ज्ञान आधार में नए तथ्य या लक्ष्य जुड़ | |||
पहले चरण में, नियमों का मिलान करें, अनुमान इंजन उन सभी नियमों को ढूंढता है जो ज्ञान आधार की वर्तमान सामग्री द्वारा ट्रिगर होते हैं। फॉरवर्ड चेनिंग में | पहले चरण में, नियमों का मिलान करें, अनुमान इंजन उन सभी नियमों को ढूंढता है जो ज्ञान आधार की वर्तमान सामग्री द्वारा ट्रिगर होते हैं। फॉरवर्ड चेनिंग में इंजन उन नियमों की तलाश करता है, जहां पूर्ववृत्त बाएं हाथ की ओर ज्ञान के आधार में कुछ तथ्य के रूप में मेल खाता है। बैकवर्ड चेनिंग में इंजन उन पूर्ववृत्तों की तलाश करता है, जो वर्तमान लक्ष्यों में से एक को पूरा कर सकते हैं। | ||
दूसरे चरण के चयन नियमों में अनुमान इंजन उन विभिन्न नियमों को प्राथमिकता देता है, जिन्हें निष्पादित करने के क्रम को निर्धारित करने के लिए मिलान किया गया था। अंतिम चरण में नियमों को निष्पादित किया जाता है, इंजन प्रत्येक मिलान किए गए नियम को चरण दो में निर्धारित क्रम में निष्पादित करता है और फिर चरण एक पर वापस लौटता है। यह चक्र तब तक जारी रहता है, जब तक कोई नए नियम मेल नहीं हो जाता है।<ref>{{citation|title=A Rule-Based Inference Engine which is Optimal and VLSI Implementable|last=Griffin|first=N.L.|publisher=University of Kentucky.}}</ref> | |||
=='''कार्यान्वयन'''== | |||
प्रारंभिक अनुमान इंजन मुख्य रूप से फॉरवर्ड चेनिंग के रूप में केंद्रित थे। ये सिस्टम सामान्यतः [[लिस्प (प्रोग्रामिंग भाषा)|लिस्प प्रोग्रामिंग भाषा]] के रूप में प्रस्तुत किए गए थे। प्रतीकात्मक परिचालन करने की अपनी मजबूत क्षमता के कारण लिस्प प्रारंभिक एआई अनुसंधान के लिए एक लगातार मंच के रूप में होता है। एक व्याख्यात्मक भाषा का रूप है। यह जटिल प्रोग्राम को डीबग करने के लिए उपयुक्त उत्पादक वातावरण प्रदान करता है। इन लाभों का एक आवश्यक परिणाम यह था, कि लिस्प कार्यक्रम उस समय की संकलित भाषाओं जैसे [[सी (प्रोग्रामिंग भाषा)|सी प्रोग्रामिंग भाषा]] की तुलना में धीमे और कम मजबूत होते थे। चूकि प्रारंभिक दिनों में एक सामान्य दृष्टिकोण एक विशेषज्ञ प्रणाली अनुप्रयोग के रूप में लेना था और उस प्रणाली के लिए उपयोग किए गए, अनुमान इंजन को पुन: प्रयोग उपकरण के रूप में पैकेज करना था, जिसे अन्य शोधकर्ता अन्य विशेषज्ञ प्रणालियों के विकास के लिए उपयोग कर सकते थे। उदाहरण के लिए,[[मायसीन]] चिकित्सा निदान के लिए एक प्रारंभिक विशेषज्ञ प्रणाली का रूप थी और एमाइसिन एक अनुमान इंजन था, जो मायसीन से पृथक किया जाता था, चूकि एक अनुमान इंजन अन्य शोधकर्ताओं के लिए उपलब्ध कराया गया था।<ref name="Hayes-Roth 1983" /> | |||
जैसे-जैसे विशेषज्ञ प्रणालियाँ अनुसंधान प्रोटोटाइप से नियत प्रणालियों की ओर बढ़ीं, गति और मजबूती जैसे मुद्दों पर अधिक ध्यान केंद्रित किया गया है। पहले और सबसे लोकप्रिय फॉरवर्ड चेनिंग इंजनों में से एक [[OPS5|ओ. पी. एस. 5]] के रूप का था, जिसने नियम फायरिंग की दक्षता को अनुकूलित करने के लिए [[पुन: एल्गोरिथ्म]] का उपयोग किया था। चूकि एक और बहुत लोकप्रिय प्रद्योगिकी विकसित की गई थी, वह [[प्रोलॉग]] लॉजिक प्रोग्रामिंग भाषा थी। प्रोलॉग ने मुख्य रूप से बैकवर्ड चेनिंग पर ध्यान केंद्रित किया है और दक्षता और मजबूती के लिए विभिन्न व्यावसायिक संस्करण और अनुकूलन भी प्रदर्शित किया जाता है।<ref>{{cite book|last=Sterling|first=Leon|title=प्रोलॉग की कला|year=1986|publisher=MIT|location=Cambridge, MA|isbn=0-262-19250-0|author2=Ehud Shapiro|url=https://archive.org/details/artofprologadvan00ster}}</ref> | |||
जैसा कि विशेषज्ञ प्रणालियों ने व्यापार जगत की विभिन्न कंपनियों में महत्वपूर्ण रुचि उत्पन्न की थी, उनमें से कई ने प्रमुख एआई शोधकर्ताओं द्वारा शुरू या निर्देशित किया जाता है और अनुमान इंजनों के उत्पादीकृत संस्करण तैयार किए जाते है। उदाहरण के लिए, इंटेलिकॉर्प सॉफ़्टवेयर को शुरुआत में [[एडवर्ड फेगेनबाम]] द्वारा निर्देशित किया गया था। ये अनुमान इंजन उत्पाद भी अधिकांशतः सबसे पहले लिस्प में विकसित किए गए थे। चूंकि अधिक किफायती और व्यावसायिक रूप से व्यवहार्य प्लेटफ़ॉर्म की माँग ने अंततः [[ निजी कंप्यूटर |निजी कंप्यूटर]] प्लेटफ़ॉर्म को बहुत लोकप्रिय बना दिया था। | |||
जैसा कि विशेषज्ञ प्रणालियों ने व्यापार जगत की विभिन्न कंपनियों में महत्वपूर्ण रुचि उत्पन्न की, उनमें से कई ने प्रमुख एआई शोधकर्ताओं द्वारा शुरू या निर्देशित किया और अनुमान इंजनों के उत्पादीकृत संस्करण तैयार | |||
===मुक्त स्रोत कार्यान्वयन=== | ===मुक्त स्रोत कार्यान्वयन=== | ||
[https://clipsrules.net/ clipsRules] और [http://refpersys.org RefPerSys] ([https://github.com/bstarynk/caia-pitrat CAIA से प्रेरित) <ref>{{cite book|last=Pitrat|first=Jacques|title=कृत्रिम प्राणी, एक सचेतन मशीन का विवेक|year=2009|publisher=Wiley|isbn=978-1848211018}}</ref>][./index.php?title=अनुमान_इंजन#cite_note-6 <span class="mw-reflink-text"><nowiki>[6]</nowiki></span>][./index.php?title=अनुमान_इंजन#cite_note-6 <span class="mw-reflink-text"><nowiki>[6]</nowiki></span>][./index.php?title=अनुमान_इंजन#cite_note-6 <span class="mw-reflink-text"><nowiki>[6]</nowiki></span>][./index.php?title=अनुमान_इंजन#cite_note-6 <span class="mw-reflink-text"><nowiki>[6]</nowiki></span>][./index.php?title=अनुमान_इंजन#cite_note-6 <span class="mw-reflink-text"><nowiki>[6]</nowiki></span>][./index.php?title=अनुमान_इंजन#cite_note-6 <span class="mw-reflink-text"><nowiki>[6]</nowiki></span>] और जैक्स पिट्रैट का काम)। [<nowiki>https://frama-c.com/</nowiki> Frama-C स्थिर स्रोत कोड विश्लेषक कुछ अनुमान इंजन | |||