नेचुरल-लैंग्वेज प्रोग्रामिंग: Difference between revisions

From Vigyanwiki
 
(9 intermediate revisions by 4 users not shown)
Line 1: Line 1:
'''नेचुरल-लैंग्वेज प्रोग्रामिंग (एनएलपी)''' [[प्राकृतिक भाषा|नेचुरल लैंग्वेज]]  वाक्यों के संदर्भ में [[प्रोग्रामिंग भाषा|प्रोग्रामिंग लैंग्वेज]] का एक ऑन्टोलॉजी ([[ऑन्टोलॉजी (सूचना विज्ञान)|तात्विकी) (सूचना विज्ञान)]]-सहायता प्राप्त तरीका है, उदाहरण के लिए [[अंग्रेजी भाषा|अंग्रेजी लैंग्वेज]]।<ref>{{cite journal|doi=10.1147/sj.202.0184|title=Natural language programming: Styles, strategies, and contrasts|journal=IBM Systems Journal|volume=20|issue=2|pages=184–215|year=1981|last1=Miller|first1=L. A.}}</ref> वाक्यों की व्याख्या के लिए सामग्री, अनुभागों और उपखंडों के साथ एक संरचित प्रलेख, एक एनएलपी प्रलेख बनाता है, जो वास्तव में एक [[कंप्यूटर प्रोग्राम]] है। नेचुरल लैंग्वेज प्रोग्रामिंग को नेचुरल लैंग्वेज अंतरापृष्ठन या आवाज नियंत्रण के साथ मिश्रित नहीं किया जाना चाहिए, जहां एक प्रोग्राम पहले लिखा जाता है और फिर एक अंतरापृष्ठ का उपयोग करके नेचुरल लैंग्वेज के माध्यम से संचार किया जाता है। एनएलपी में किसी प्रोग्राम की कार्यक्षमता को केवल वाक्यों के अर्थ की परिभाषा के लिए व्यवस्थित किया जाता है। उदाहरण के लिए, एनएलपी का उपयोग एक स्वायत्त रोबोट के सभी ज्ञान का प्रतिनिधित्व करने के लिए किया जा सकता है। ऐसा करने के बाद, इसके कार्यों को इसके उपयोगकर्ताओं द्वारा स्क्रिप्ट (लिखित) किया जा सकता है ताकि रोबोट, रोबोट के उपयोगकर्ता द्वारा निर्धारित व्यवहार के निर्धारित नियमों को ध्यान में रखते हुए उन्हें स्वायत्त रूप से निष्पादित कर सके। ऐसे रोबोट को पारदर्शी रोबोट कहा जाता है <ref>Development of reliable and trustworthy robots. "[http://www.transparentrobots.org transparent robots]" }</ref> क्योंकि उनका तर्क उपयोगकर्ताओं के लिए पारदर्शी होता है और इससे रोबोट में विश्वास विकसित होता है। नेचुरल लैंग्वेज का उपयोग और [[प्राकृतिक भाषा उपयोगकर्ता इंटरफ़ेस|नेचुरल लैंग्वेज उपयोगकर्ता अंतरापृष्ठ]] में इन्फॉर्म 7, जो पारस्परिक परिकल्पना बनाने के लिए एक नेचुरल प्रोग्रामिंग लैंग्वेज है, शेक्सपियर (प्रोग्रामिंग लैंग्वेज), जो [[विलियम शेक्सपियर]] के नाटकों की शैली में एक नेचुरल प्रोग्रामिंग लैंग्वेज, और वोल्फरम अल्फा, एक संगणनात्मक ज्ञान इंजन, नेचुरल-लैंग्वेज इनपुट का उपयोग करते हुए सम्मिलित हैं।{{citation needed|date=November 2018}} प्रोग्राम संश्लेषण की कुछ विधियाँ नेचुरल-लैंग्वेज प्रोग्रामिंग पर आधारित हैं।<ref>Desai, Aditya, et al. "[https://arxiv.org/abs/1509.00413 Program synthesis using natural language]." Proceedings of the 38th International Conference on Software Engineering. ACM, 2016.</ref>
==व्याख्या==
एनएलपी में कथन की सबसे छोटी इकाई एक वाक्य है। प्रत्येक वाक्य को अंतर्निहित तात्विकी की अवधारणाओं, उस तात्विकी में विशेषताओं और बड़े अक्षरों में नामित वस्तुओं के संदर्भ में बताया गया है। एनएलपी पाठ में प्रत्येक वाक्य स्पष्ट रूप से अंतर्निहित उच्च-स्तरीय प्रोग्रामिंग लैंग्वेज जैसे मैटलैब, ऑक्टेव, [[साइलैब]], [[पायथन (प्रोग्रामिंग भाषा)|पायथन (प्रोग्रामिंग लैंग्वेज)]], आदि में एक [[प्रक्रिया कॉल]] में संकलित होता है।


{{Programming paradigms}}
[[वोल्फ्राम भाषा|वोल्फ्राम लैंग्वेज]] जैसी प्रतीकात्मक लैंग्वेजएँ वाक्यों द्वारा प्रश्नों की व्याख्या की व्याख्या करने में सक्षम हैं। यह वोल्फ्राम अल्फा में प्रयुक्त किए गए पारस्परिक अनुरोधों की अनुमति दे सकता है।<ref>[https://www.computerweekly.com/Articles/2009/06/04/236293/wolfram-alpha-how-it-works-part-2.htm Wolfram Alpha{{snd}} how it works (part 2)] Computer Weekly, 4 June 2009
</ref><ref>[https://techcrunch.com/2009/03/08/wolfram-alpha-computes-answers-to-factual-questions-this-is-going-to-be-big/ Wolfram Alpha computes answers] Tech Crunch, 8 March 2009</ref> इनके और एनएलपी के बीच अंतर यह है कि उत्तरार्द्ध एक एकल प्रोग्राम या रूटीन की लाइब्रेरी बनाता है जो एक तात्विकी का उपयोग करके नेचुरल लैंग्वेज वाक्यों के माध्यम से प्रोग्राम किया जाता है जो उच्च स्तरीय प्रोग्रामिंग लैंग्वेज में उपलब्ध डेटा संरचनाओं को परिभाषित करता है।


प्राकृतिक-भाषा प्रोग्रामिंग (एनएलपी) [[प्राकृतिक भाषा]]  वाक्यों के संदर्भ में [[प्रोग्रामिंग भाषा]] का एक [[ऑन्टोलॉजी (सूचना विज्ञान)|तात्विकी (सूचना विज्ञान)]]-सहायता प्राप्त तरीका है, उदाहरण के लिए [[अंग्रेजी भाषा]]।<ref>{{cite journal|doi=10.1147/sj.202.0184|title=Natural language programming: Styles, strategies, and contrasts|journal=IBM Systems Journal|volume=20|issue=2|pages=184–215|year=1981|last1=Miller|first1=L. A.}}</ref> वाक्यों की व्याख्या के लिए सामग्री, अनुभागों और उपखंडों के साथ एक संरचित दस्तावेज़, एक एनएलपी दस्तावेज़ बनाता है, जो वास्तव में एक [[कंप्यूटर प्रोग्राम]] है। प्राकृतिक भाषा प्रोग्रामिंग को प्राकृतिक भाषा अंतरापृष्ठन या आवाज नियंत्रण के साथ मिश्रित नहीं किया जाना चाहिए, जहां एक प्रोग्राम पहले लिखा जाता है और फिर एक अंतरापृष्ठ का उपयोग करके प्राकृतिक भाषा के माध्यम से संचार किया जाता है। एनएलपी में किसी प्रोग्राम की कार्यक्षमता को केवल वाक्यों के अर्थ की परिभाषा के लिए व्यवस्थित किया जाता है। उदाहरण के लिए, एनएलपी का उपयोग एक स्वायत्त रोबोट के सभी ज्ञान का प्रतिनिधित्व करने के लिए किया जा सकता है। ऐसा करने के बाद, इसके कार्यों को इसके उपयोगकर्ताओं द्वारा स्क्रिप्ट (लिखित) किया जा सकता है ताकि रोबोट, रोबोट के उपयोगकर्ता द्वारा निर्धारित व्यवहार के निर्धारित नियमों को ध्यान में रखते हुए उन्हें स्वायत्त रूप से निष्पादित कर सके। ऐसे रोबोट को पारदर्शी रोबोट कहा जाता है <ref>Development of reliable and trustworthy robots. "[http://www.transparentrobots.org transparent robots]" }</ref> क्योंकि उनका तर्क उपयोगकर्ताओं के लिए पारदर्शी है और इससे रोबोट में विश्वास विकसित होता है। प्राकृतिक भाषा का उपयोग और [[प्राकृतिक भाषा उपयोगकर्ता इंटरफ़ेस|प्राकृतिक भाषा उपयोगकर्ता अंतरापृष्ठ]] में इन्फॉर्म 7, जो पारस्परिक परिकल्पना बनाने के लिए एक प्राकृतिक प्रोग्रामिंग भाषा है, [[शेक्सपियर (प्रोग्रामिंग भाषा)]], जो [[विलियम शेक्सपियर]] के नाटकों की शैली में एक [[गूढ़ प्रोग्रामिंग भाषा|गूढ़ प्राकृतिक प्रोग्रामिंग भाषा]], और [[ वोल्फरम अल्फा |वोल्फरम अल्फा]], एक संगणनात्मक ज्ञान इंजन, जो प्राकृतिक भाषा इनपुट का उपयोग करता है सम्मिलित हैं।{{citation needed|date=November 2018}} प्रोग्राम संश्लेषण की कुछ विधियाँ प्राकृतिक-भाषा प्रोग्रामिंग पर आधारित हैं।<ref>Desai, Aditya, et al. "[https://arxiv.org/abs/1509.00413 Program synthesis using natural language]." Proceedings of the 38th International Conference on Software Engineering. ACM, 2016.</ref>
अंग्रेजी लैंग्वेज के नेचुरल-लैंग्वेज प्रोग्राम का एक उदाहरण पाठ इस प्रकार है:
==व्याख्या==
एनएलपी में कथन की सबसे छोटी इकाई एक वाक्य है। प्रत्येक वाक्य को अंतर्निहित तात्विकी की अवधारणाओं, उस तात्विकी में विशेषताओं और बड़े अक्षरों में नामित वस्तुओं के संदर्भ में बताया गया है। एनएलपी पाठ में प्रत्येक वाक्य स्पष्ट रूप से अंतर्निहित उच्च-स्तरीय प्रोग्रामिंग भाषा जैसे [[MATLAB]], ऑक्टेव, [[साइलैब]], [[पायथन (प्रोग्रामिंग भाषा)]], आदि में एक [[प्रक्रिया कॉल]] में संकलित होता है।


[[वोल्फ्राम भाषा]] जैसी प्रतीकात्मक भाषाएँ वाक्यों द्वारा प्रश्नों की व्याख्या की व्याख्या करने में सक्षम हैं। यह वोल्फ्राम अल्फा में लागू किए गए पारस्परिक अनुरोधों की अनुमति दे सकता है।<ref>[https://www.computerweekly.com/Articles/2009/06/04/236293/wolfram-alpha-how-it-works-part-2.htm Wolfram Alpha{{snd}} how it works (part 2)] Computer Weekly, 4 June 2009
यदि U_ 'smc01-नियंत्रण' है, तो निम्न कार्य करें। सतह भार अल्फा को [0.5, 0.5] के रूप में परिभाषित करें।
</ref><ref>[https://techcrunch.com/2009/03/08/wolfram-alpha-computes-answers-to-factual-questions-this-is-going-to-be-big/ Wolfram Alpha computes answers] Tech Crunch, 8 March 2009</ref> इनके और एनएलपी के बीच अंतर यह है कि उत्तरार्द्ध एक एकल प्रोग्राम या रूटीन की लाइब्रेरी बनाता है जो एक तात्विकी का उपयोग करके प्राकृतिक भाषा वाक्यों के माध्यम से प्रोग्राम किया जाता है जो उच्च स्तरीय प्रोग्रामिंग भाषा में उपलब्ध डेटा संरचनाओं को परिभाषित करता है।
मैट्रिक्स फाई को 'यूनिट मैट्रिक्स' के रूप में आरंभ करें। J को Spc01 के 'जड़त्व मैट्रिक्स' के रूप में परिभाषित करें। मैट्रिक्स J2 की गणना J के व्युत्क्रम के रूप में। गतिशील स्थिति X, मार्गदर्शन संदर्भ Xnow से स्थिति वेग त्रुटि Ve और कोणीय वेग त्रुटि Oe की गणना करें। सतह भार अल्फा का उपयोग करके स्थिति वेग त्रुटि Ve और कोणीय वेग त्रुटि Oe से संयुक्त सर्पण सतह G2 को परिभाषित करें। चिन्हथ्रेशोल्ड (सीमा) 0.01 के साथ संयुक्त स्लाइडिंग सतह G2 से समतल चिन्ह फलन SG2 की गणना करें। गतिशील अवस्था X और सतह भार अल्फा से विशेष गतिशील बल F की गणना करें। मैट्रिक्स J2, सतह भार अल्फा, विशेष गतिशील बल F, समतल चिन्ह फलन SG2 से नियंत्रण टॉर्क T और नियंत्रण बल U की गणना करें। सशर्त क्रियाएँ समाप्त करें।


अंग्रेजी भाषा के प्राकृतिक-भाषा प्रोग्राम का एक उदाहरण पाठ इस प्रकार है:
यदि U_ 'smc01-नियंत्रण' है, तो निम्न कार्य करें। सतह भार अल्फा को [0.5, 0.5] के रूप में परिभाषित करें।
मैट्रिक्स फाई को 'यूनिट मैट्रिक्स' के रूप में आरंभ करें। J को Spc01 के 'जड़त्व मैट्रिक्स' के रूप में परिभाषित करें। मैट्रिक्स J2 की गणना J के व्युत्क्रम के रूप में। गतिशील स्थिति X, मार्गदर्शन संदर्भ Xnow से स्थिति वेग त्रुटि Ve और कोणीय वेग त्रुटि Oe की गणना करें। सतह भार अल्फा का उपयोग करके स्थिति वेग त्रुटि Ve और कोणीय वेग त्रुटि Oe से संयुक्त सर्पण सतह G2 को परिभाषित करें। चिन्हथ्रेशोल्ड (सीमा) 0.01 के साथ संयुक्त स्लाइडिंग सतह G2 से समतल चिन्ह फलन SG2 की गणना करें। गतिशील अवस्था X और सतह भार अल्फा से विशेष गतिशील बल F की गणना करें। मैट्रिक्स J2, सतह भार अल्फा, विशेष गतिशील बल F, समतल चिन्ह फलन SG2 से नियंत्रण टॉर्क T और नियंत्रण बल U की गणना करें। सशर्त क्रियाएँ समाप्त करें।
जो [[स्लाइडिंग मोड नियंत्रण|स्लाइडिंग (सर्पण) मोड नियंत्रण]] विधि का उपयोग करके प्रतिपुष्टि नियंत्रण योजना को परिभाषित करता है।
जो [[स्लाइडिंग मोड नियंत्रण|स्लाइडिंग (सर्पण) मोड नियंत्रण]] विधि का उपयोग करके प्रतिपुष्टि नियंत्रण योजना को परिभाषित करता है।


==सॉफ़्टवेयर प्रतिमान==
==सॉफ़्टवेयर प्रतिमान==
प्राकृतिक-भाषा प्रोग्रामिंग सॉफ्टवेयर लिखने की एक ऊपर से नीचे की विधि है। इसके चरण इस प्रकार हैं:
नेचुरल-लैंग्वेज प्रोग्रामिंग सॉफ्टवेयर लिखने की एक ऊपर से नीचे की विधि है। इसके चरण इस प्रकार हैं:


* तात्विकी की परिभाषा{{snd}}संबोधित विषय में कार्यों का वर्णन करने के लिए आवश्यक अवधारणाओं का {{snd}} वर्गीकरण। प्रत्येक अवधारणा और उनकी सभी विशेषताओं को प्राकृतिक भाषा के शब्दों में परिभाषित किया गया है। यह तात्विकी उन डेटा संरचनाओं को परिभाषित करेगी जिनका उपयोग एनएलपी वाक्यों में कर सकता है।
* तात्विकी की परिभाषा{{snd}}संबोधित विषय में कार्यों का वर्णन करने के लिए आवश्यक अवधारणाओं का {{snd}} वर्गीकरण। प्रत्येक अवधारणा और उनकी सभी विशेषताओं को नेचुरल लैंग्वेज के शब्दों में परिभाषित किया गया है। यह तात्विकी उन डेटा संरचनाओं को परिभाषित करेगी जिनका उपयोग एनएलपी वाक्यों में कर सकता है।
* तात्विकी से अवधारणाओं के संदर्भ में एक या अधिक शीर्ष-स्तरीय वाक्यों की परिभाषा। इन वाक्यों का उपयोग बाद में विषय में सबसे महत्वपूर्ण गतिविधियों को आरंभ करने के लिए किया जाता है।
* तात्विकी से अवधारणाओं के संदर्भ में एक या अधिक शीर्ष-स्तरीय वाक्यों की परिभाषा। इन वाक्यों का उपयोग बाद में विषय में सबसे महत्वपूर्ण गतिविधियों को आरंभ करने के लिए किया जाता है।
* प्रत्येक शीर्ष-स्तरीय वाक्य को वाक्यों के अनुक्रम के आधार पर परिभाषित करना।
* प्रत्येक शीर्ष-स्तरीय वाक्य को वाक्यों के अनुक्रम के आधार पर परिभाषित करना।
* निचले स्तर के प्रत्येक वाक्य को अन्य वाक्यों के संदर्भ में या '''निष्पादन कोड "..."''' के रूप में एक सरल वाक्य द्वारा परिभाषित करना। जहां ... संबंधित उच्च-स्तरीय प्रोग्रामिंग भाषा के संदर्भ में एक कोड के लिए है।
* निचले स्तर के प्रत्येक वाक्य को अन्य वाक्यों के संदर्भ में या '''निष्पादन कोड "..."''' के रूप में एक सरल वाक्य द्वारा परिभाषित करना। जहां ... संबंधित उच्च-स्तरीय प्रोग्रामिंग लैंग्वेज के संदर्भ में एक कोड के लिए है।
* पिछले चरण को तब तक दोहराते रहें जब तक कि आपके पास कोई वाक्य अपरिभाषित न रह जाए। इस प्रक्रिया के दौरान प्रत्येक वाक्य को अंतिम प्राकृतिक-भाषा प्रोग्राम बनाने के लिए [[HTML]] या [[ कंडोम |लेटेक्स]]  प्रारूप में तैयार किए जाने वाले दस्तावेज़ के एक अनुभाग से संबंधित वर्गीकृत किया जा सकता है।
* पिछले चरण को तब तक दोहराते रहें जब तक कि आपके पास कोई वाक्य अपरिभाषित न रह जाए। इस प्रक्रिया के दौरान प्रत्येक वाक्य को अंतिम नेचुरल-लैंग्वेज प्रोग्राम बनाने के लिए [[HTML]] या [[ कंडोम |लेटेक्स]]  प्रारूप में तैयार किए जाने वाले प्रलेख के एक अनुभाग से संबंधित वर्गीकृत किया जा सकता है।
* परीक्षण वस्तुओं का उपयोग करके उसके कोड को क्रियान्वित करके प्रत्येक वाक्य के अर्थ का परीक्षण करना।
* परीक्षण वस्तुओं का उपयोग करके उसके कोड को क्रियान्वित करके प्रत्येक वाक्य के अर्थ का परीक्षण करना।
* प्रक्रिया कॉल की एक लाइब्रेरी प्रदान करना (अंतर्निहित उच्च-स्तरीय भाषा में) जो कुछ निम्न-स्तरीय-वाक्य अर्थों की कोड परिभाषाओं में आवश्यक हैं।
* प्रक्रिया कॉल की एक लाइब्रेरी प्रदान करना (अंतर्निहित उच्च-स्तरीय लैंग्वेज में) जो कुछ निम्न-स्तरीय-वाक्य अर्थों की कोड परिभाषाओं में आवश्यक हैं।
* शीर्षक, लेखक डेटा प्रदान करना और वाक्यों को HTML या LaTeX फ़ाइल में संकलित करना।
* शीर्षक, लेखक डेटा प्रदान करना और वाक्यों को HTML या LaTeX फ़ाइल में संकलित करना।
* प्राकृतिक भाषा प्रोग्राम को इंटरनेट पर एक वेबपेज के रूप में या LaTeX दस्तावेज़ से संकलित [[पीडीएफ]] फ़ाइल के रूप में प्रकाशित करना।
* नेचुरल लैंग्वेज प्रोग्राम को इंटरनेट पर एक वेबपेज के रूप में या LaTeX प्रलेख से संकलित [[पीडीएफ]] फ़ाइल के रूप में प्रकाशित करना।


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


==मशीन ज्ञान में प्राकृतिक-भाषा प्रोग्रामों का योगदान==
==मशीन ज्ञान में नेचुरल-लैंग्वेज प्रोग्रामों का योगदान==
तात्विकी वर्ग एक प्राकृतिक-भाषा प्रोग्राम है जो उस अर्थ में [[अवधारणा]] नहीं है जिस तरह मनुष्य अवधारणाओं का उपयोग करते हैं। एनएलपी में अवधारणाएँ सामान्य मानवीय अवधारणाओं के उदाहरण (नमूने) हैं। प्राकृतिक-भाषा प्रोग्राम में प्रत्येक वाक्य या तो (1) विश्व प्रतिरूप में एक संबंध बताता है या (2) पर्यावरण में एक क्रिया करता है या (3) एक संगणनात्मक प्रक्रिया करता है या (4) एक प्रश्न के उत्तर में एक उत्तर क्रियाविधि उत्पन्न करता है।
तात्विकी वर्ग एक नेचुरल-लैंग्वेज प्रोग्राम है जो उस अर्थ में [[अवधारणा]] नहीं है जिस तरह मनुष्य अवधारणाओं का उपयोग करते हैं। एनएलपी में अवधारणाएँ सामान्य मानवीय अवधारणाओं के उदाहरण (नमूने) हैं। नेचुरल-लैंग्वेज प्रोग्राम में प्रत्येक वाक्य या तो (1) विश्व प्रतिरूप में एक संबंध बताता है या (2) पर्यावरण में एक क्रिया करता है या (3) एक संगणनात्मक प्रक्रिया करता है या (4) एक प्रश्न के उत्तर में एक उत्तर क्रियाविधि उत्पन्न करता है।


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


==यह भी देखें==
==यह भी देखें==


* [[नियंत्रित प्राकृतिक भाषा]]
* [[नियंत्रित प्राकृतिक भाषा|नियंत्रित नेचुरल लैंग्वेज]]
* [[प्रसंग-मुक्त भाषा]]
* [[प्रसंग-मुक्त भाषा|प्रसंग-मुक्त लैंग्वेज]]
* [[डोमेन-विशिष्ट भाषा]] (या डीएसएल)
* [[डोमेन-विशिष्ट भाषा|डोमेन-विशिष्ट लैंग्वेज]] (या डीएसएल)
* [[अंतिम-उपयोगकर्ता प्रोग्रामिंग]]
* [[अंतिम-उपयोगकर्ता प्रोग्रामिंग]]
* [[ज्ञान निरूपण]]
* [[ज्ञान निरूपण]]
* [[प्राकृतिक भाषा प्रसंस्करण]]
* [[प्राकृतिक भाषा प्रसंस्करण|नेचुरल लैंग्वेज प्रसंस्करण]]
* स्वचालित_प्रोग्रामिंग#स्रोत-कोड_जनरेशन|स्रोत-कोड पीढ़ी
* स्वचालित_प्रोग्रामिंग#स्रोत-कोड_जनरेशन|स्रोत-कोड पीढ़ी
* [[बहुत उच्च स्तरीय प्रोग्रामिंग भाषा]]
* [[बहुत उच्च स्तरीय प्रोग्रामिंग भाषा|बहुत उच्च स्तरीय प्रोग्रामिंग लैंग्वेज]]


;अंग्रेजी जैसे सिंटैक्स वाली प्रोग्रामिंग भाषाएं
;अंग्रेजी जैसे सिंटैक्स वाली प्रोग्रामिंग लैंग्वेजएं


* [[एप्पलस्क्रिप्ट]]
* [[एप्पलस्क्रिप्ट]]
Line 58: Line 57:
* [[सेंसटॉक]]
* [[सेंसटॉक]]
* [[ सॉफ्टवेयर इंक ]]
* [[ सॉफ्टवेयर इंक ]]
* [[प्रतिलेख (प्रोग्रामिंग भाषा)]]
* [[प्रतिलेख (प्रोग्रामिंग भाषा)|प्रतिलेख (प्रोग्रामिंग लैंग्वेज)]]
* संरचित क्वेरी भाषा (या SQL)
* संरचित क्वेरी लैंग्वेज (या SQL)
* [[एक्सटॉक]]
* [[एक्सटॉक]]


Line 98: Line 97:
[[Category: Machine Translated Page]]
[[Category: Machine Translated Page]]
[[Category:Created On 25/07/2023]]
[[Category:Created On 25/07/2023]]
[[Category:Vigyan Ready]]

Latest revision as of 11:03, 11 December 2023

नेचुरल-लैंग्वेज प्रोग्रामिंग (एनएलपी) नेचुरल लैंग्वेज वाक्यों के संदर्भ में प्रोग्रामिंग लैंग्वेज का एक ऑन्टोलॉजी (तात्विकी) (सूचना विज्ञान)-सहायता प्राप्त तरीका है, उदाहरण के लिए अंग्रेजी लैंग्वेज[1] वाक्यों की व्याख्या के लिए सामग्री, अनुभागों और उपखंडों के साथ एक संरचित प्रलेख, एक एनएलपी प्रलेख बनाता है, जो वास्तव में एक कंप्यूटर प्रोग्राम है। नेचुरल लैंग्वेज प्रोग्रामिंग को नेचुरल लैंग्वेज अंतरापृष्ठन या आवाज नियंत्रण के साथ मिश्रित नहीं किया जाना चाहिए, जहां एक प्रोग्राम पहले लिखा जाता है और फिर एक अंतरापृष्ठ का उपयोग करके नेचुरल लैंग्वेज के माध्यम से संचार किया जाता है। एनएलपी में किसी प्रोग्राम की कार्यक्षमता को केवल वाक्यों के अर्थ की परिभाषा के लिए व्यवस्थित किया जाता है। उदाहरण के लिए, एनएलपी का उपयोग एक स्वायत्त रोबोट के सभी ज्ञान का प्रतिनिधित्व करने के लिए किया जा सकता है। ऐसा करने के बाद, इसके कार्यों को इसके उपयोगकर्ताओं द्वारा स्क्रिप्ट (लिखित) किया जा सकता है ताकि रोबोट, रोबोट के उपयोगकर्ता द्वारा निर्धारित व्यवहार के निर्धारित नियमों को ध्यान में रखते हुए उन्हें स्वायत्त रूप से निष्पादित कर सके। ऐसे रोबोट को पारदर्शी रोबोट कहा जाता है [2] क्योंकि उनका तर्क उपयोगकर्ताओं के लिए पारदर्शी होता है और इससे रोबोट में विश्वास विकसित होता है। नेचुरल लैंग्वेज का उपयोग और नेचुरल लैंग्वेज उपयोगकर्ता अंतरापृष्ठ में इन्फॉर्म 7, जो पारस्परिक परिकल्पना बनाने के लिए एक नेचुरल प्रोग्रामिंग लैंग्वेज है, शेक्सपियर (प्रोग्रामिंग लैंग्वेज), जो विलियम शेक्सपियर के नाटकों की शैली में एक नेचुरल प्रोग्रामिंग लैंग्वेज, और वोल्फरम अल्फा, एक संगणनात्मक ज्ञान इंजन, नेचुरल-लैंग्वेज इनपुट का उपयोग करते हुए सम्मिलित हैं।[citation needed] प्रोग्राम संश्लेषण की कुछ विधियाँ नेचुरल-लैंग्वेज प्रोग्रामिंग पर आधारित हैं।[3]

व्याख्या

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

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

अंग्रेजी लैंग्वेज के नेचुरल-लैंग्वेज प्रोग्राम का एक उदाहरण पाठ इस प्रकार है:

यदि U_ 'smc01-नियंत्रण' है, तो निम्न कार्य करें। सतह भार अल्फा को [0.5, 0.5] के रूप में परिभाषित करें। मैट्रिक्स फाई को 'यूनिट मैट्रिक्स' के रूप में आरंभ करें। J को Spc01 के 'जड़त्व मैट्रिक्स' के रूप में परिभाषित करें। मैट्रिक्स J2 की गणना J के व्युत्क्रम के रूप में। गतिशील स्थिति X, मार्गदर्शन संदर्भ Xnow से स्थिति वेग त्रुटि Ve और कोणीय वेग त्रुटि Oe की गणना करें। सतह भार अल्फा का उपयोग करके स्थिति वेग त्रुटि Ve और कोणीय वेग त्रुटि Oe से संयुक्त सर्पण सतह G2 को परिभाषित करें। चिन्हथ्रेशोल्ड (सीमा) 0.01 के साथ संयुक्त स्लाइडिंग सतह G2 से समतल चिन्ह फलन SG2 की गणना करें। गतिशील अवस्था X और सतह भार अल्फा से विशेष गतिशील बल F की गणना करें। मैट्रिक्स J2, सतह भार अल्फा, विशेष गतिशील बल F, समतल चिन्ह फलन SG2 से नियंत्रण टॉर्क T और नियंत्रण बल U की गणना करें। सशर्त क्रियाएँ समाप्त करें।

जो स्लाइडिंग (सर्पण) मोड नियंत्रण विधि का उपयोग करके प्रतिपुष्टि नियंत्रण योजना को परिभाषित करता है।

सॉफ़्टवेयर प्रतिमान

नेचुरल-लैंग्वेज प्रोग्रामिंग सॉफ्टवेयर लिखने की एक ऊपर से नीचे की विधि है। इसके चरण इस प्रकार हैं:

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

नेचुरल लैंग्वेज प्रोग्रामों और दस्तावेजों का प्रकाशन मूल्य

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

मशीन ज्ञान में नेचुरल-लैंग्वेज प्रोग्रामों का योगदान

तात्विकी वर्ग एक नेचुरल-लैंग्वेज प्रोग्राम है जो उस अर्थ में अवधारणा नहीं है जिस तरह मनुष्य अवधारणाओं का उपयोग करते हैं। एनएलपी में अवधारणाएँ सामान्य मानवीय अवधारणाओं के उदाहरण (नमूने) हैं। नेचुरल-लैंग्वेज प्रोग्राम में प्रत्येक वाक्य या तो (1) विश्व प्रतिरूप में एक संबंध बताता है या (2) पर्यावरण में एक क्रिया करता है या (3) एक संगणनात्मक प्रक्रिया करता है या (4) एक प्रश्न के उत्तर में एक उत्तर क्रियाविधि उत्पन्न करता है।

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

यह भी देखें

अंग्रेजी जैसे सिंटैक्स वाली प्रोग्रामिंग लैंग्वेजएं

संदर्भ

  1. Miller, L. A. (1981). "Natural language programming: Styles, strategies, and contrasts". IBM Systems Journal. 20 (2): 184–215. doi:10.1147/sj.202.0184.
  2. Development of reliable and trustworthy robots. "transparent robots" }
  3. Desai, Aditya, et al. "Program synthesis using natural language." Proceedings of the 38th International Conference on Software Engineering. ACM, 2016.
  4. Wolfram Alpha – how it works (part 2) Computer Weekly, 4 June 2009
  5. Wolfram Alpha computes answers Tech Crunch, 8 March 2009


ग्रन्थसूची

Books
Papers at conferences
  • Veres, S.M.; Molnar, L. (2010). "Documents for Intelligent Agents in English". Artificial Intelligence and Applications. doi:10.2316/p.2010.674-122. ISBN 978-0-88986-817-5.
  • Sliding mode control of autonomous spacecraft. (half written in sEnglish) by S M Veres an N K Lincoln, Proc. TAROS’2008, Towards Autonomous Robotic Systems, Edinburgh, 1–3 September 2008.
  • Veres, Sandor M. (2010). "Mission Capable Autonomous Control Systems in the Oceans, in the Air and in Space". Brain-Inspired Information Technology. Studies in Computational Intelligence. Vol. 266. pp. 1–10. doi:10.1007/978-3-642-04025-2_1. ISBN 978-3-642-04024-5.
  • Pulido-Prieto, Oscar; Juárez-Martínez, Ulises (2017). "A Survey of Naturalistic Programming Technologies". ACM Computing Surveys. 50 (5): 1–35. doi:10.1145/3109481. S2CID 2078759.
Program synthesis from natural language specifications


बाहरी संबंध