Total Pageviews

Monday, May 1, 2017

नियम आधारित हिंदी व्याकरण जाँचक : स्वरूप और प्रक्रिया

मीडिया पथ                                                  वर्ष-1    अंक-02        अक्टूबर-दिसंबर 2015                                     ISSN-2454-227X
डॉ. धनजी प्रसाद
सहायक प्रोफेसर, भाषा प्रौद्योगिकी
1.0 परिचय
व्याकरण जाँचक ऐसा सॉफ्टवेयर है जो किसी पाठ के वाक्यों में होने वाली व्याकरणिक त्रुटियों की जाँच करता है और कोई त्रुटि पाए जाने पर उसे चिह्नित करता है। लेखन अथवा टंकण के क्रम में वाक्यों के त्रुटिपूर्ण होने की संभावना प्राय: बनी रहती है। यह संभावना तब अधिक प्रबल हो जाती है, जब लेखक या टंकक की मातृभाषा हिंदी हो। ये त्रुटियाँ कभी भूलवश, कभी असावधानीवश, कभी जल्दी-जल्दी में तो कभी उचित वाक्य लेखन का नियम पता होने के कारण हुआ करती हैं। कंप्यूटर पर टंकण (Type) कर लेने के बाद सामान्यत: पाठ सामग्री का एक बार प्रूफ शोधन कराया जाता है, जिसमें वर्तनी और व्याकारणिक प्रयोगों में त्रुटि संबंधी जाँच का कार्य प्रूफ रीडर द्वारा किया जाता है। चूँकि टाइप की हुई सामग्री कंप्यूटर की दृष्टि से भी मशीन पठनीय (Machine Readable) होती है, इसलिए इन त्रुटियों की पहचान स्वयं कंप्यूटर द्वारा भी की जा सकती है। इसके लिए संबंधित सॉफ्टवेयर या टूल की आवश्यकता पड़ती है। जब वर्तनी संबंधी त्रुटियों की जाँच हेतु कोई सॉफ्टवेयर या टूल निर्मित किया जाता है तो उसे वर्तनी जाँचक (Spelling Checker या संक्षेप में Spell Checker) कहते हैं और जब व्याकारणिक त्रुटियों की जाँच हेतु कोई सॉफ्टवेयर या टूल निर्मित किया जाता है, तो उसे व्याकरण जाँचक (Grammar Checker) कहते हैं। दोनों को मिलाकर एक अधिक शक्तिशाली सॉफ्टवेयर या टूल भी बनाया जा सकता है जो अकेले दोनों काम कर दे। ऐसे सॉफ्टवेयर या टूल को वर्तनी और व्याकरण जाँचक (Spelling and Grammar Checker) या पाठ जाँचक (Text Checker) कहा जा सकता है। वर्तनी और व्याकरण संबंधी त्रुटियों के अतिरिक्त विरामचिह्नों के प्रयोग संबंधी त्रुटियों के परीक्षण और सुधार संबंधी टूल भी बनाए जाते हैं, जो केवल विरामचिह्नों का ही परीक्षण करते हैं और त्रुटिपूर्ण प्रयोग प्राप्त होने पर उसे सुधार देते हैं। ऐसे टूल को विराम चिह्न सामान्यक या विराम चिह्न सामान्यीकारक (Punctuation Mark Normalizer) कहा जाता है। इसी प्रकार यदि किसी भाषा में शब्दों के लेखन के एक से अधिक रूप प्रचलित हों और उनमें से एक रूप को मानक कहा जाता हो तो मानक रूप के अतिरिक्त अन्य रूपों के आने पर उनकी जगह मानक रूप बना देने वाला टूल भी बनाया जाता है, जिसे पाठ मानकीकरणकर्ता या पाठ मानक रूप निर्माणक (Text Standerdizer) कहा जाता है। एक व्याकरण जाँचक में इस प्रकार के छोटे-छोटे टूल्स को भी सम्मिलित किया जा सकता है, जिससे वह अधिक उपयोगी हो सके।
2.0 व्याकरण जाँचक निर्माण :
व्याकरण जाँचक का निर्माण एक श्रमसाध्य कार्य है। इसलिए निर्माण कार्य आरंभ करने से पहले उसके आकार, प्रकार और स्वरूप की रूपरेखा बना लेना उचित होता है। एक व्याकरण जाँचक के निर्माण से पूर्व निम्नलिखित बातों पर विचार किया जाना आवश्यक है
2.1 स्वरूप और सीमा : अन्य किसी सॉफ्टवेयर या टूल की तरह व्याकरण जाँचक का भी विकास करने से पूर्व उसके स्वरूप और उसकी सीमाओं को निश्चित कर लेना चाहिए। उदाहरण के लिए स्वरूप निर्धारण में ध्यान देने वाली कुछ बातें इस प्रकार हैं -
·         सॉफ्टवेयर केवल व्याकरणिक त्रुटियों की जाँच करेगा।
·         व्याकरणिक और वर्तनीगत दोनों प्रकार की त्रुटियों की जाँच करेगा।
·         उसमें विराम चिह्न सामान्यक और/या पाठ मानक रूप निर्माणक को भी सम्मिलित किया जाएगा या नहीं, आदि।
2.2 जाँच और सुझाव : किसी पाठ के वाक्यों की जाँच के उपरांत जो त्रुटिपूर्ण प्रयोग प्राप्त होते हैं उन्हें प्रदर्शित करने और उनके लिए सही प्रयोग के सुझाव प्रदान करने की दृष्टि से दो प्रकार के व्याकरण जाँचक बनाए जा सकते हैं
·         केवल त्रुटिपूर्ण प्रयोगों की पहचान करने वाला व्याकरण जाँचक।
·         त्रुटिपूर्ण प्रयोगों को चिह्नित कर शुद्ध प्रयोगों के सुझाव देने वाला व्याकरण जाँचक।
केवल त्रुटिपूर्ण प्रयोगों की पहचान करने वाले सॉफ्टवेयर को प्रथम श्रेणी का व्याकरण जाँचक (Primary level Grammar Checker) और  व्याकरणिक दृष्टि से त्रुटिपूर्ण प्रयोगों का परीक्षण करने के उपरांत सुझाव भी प्रस्तुत करने वाले सॉफ्टवेयर को उच्च श्रेणी का व्याकरण जाँचक (Higher level Grammar Checker) कहा जा सकता है।
2.3 त्रुटिपूर्ण प्रयोग प्रदर्शन विधि : इसका तात्पर्य कोई त्रुटिपूर्ण प्रयोग मिल जाने पर उसे प्रयोक्ता के सामने प्रस्तुत करने से है। यद्यपि यह आउटपुट से संबंधित एक छोटी क्रिया है, किंतु प्रोग्रामर को पहले इसका निर्णय कर लेना चाहिए, जिससे इसी के अनुरूप अंतरापृष्ठ (interface) निर्मित किया जा सके और कोड की विधि भी निर्धारित हो। किसी पाठ के वाक्यों में प्राप्त त्रुटिपूर्ण प्रयोगों को  चिह्नित करने हेतु किसी भी विधि का प्रयोग किया जा सकता है, यथा-
·         त्रुटिपूर्ण प्रयोग को रेखांकित (underline) करना (इसके सामान्यत: टेढ़ी-मेढ़ी (zigzag) रेखा का प्रयोग किया जाता है।
·         त्रुटिपूर्ण प्रयोग का रंग परिवर्तित करना, जैसे - लाल, पीला, नीला आदि करना।
·         त्रुटिपूर्ण प्रयोग को बोल्ड, इटैलिक करना, आदि।
व्याकरण जाँचक का विकासकर्ता किसी भी विधि का प्रयोग करते हुए त्रुटियों को प्रदर्शित करने की सुविधा प्रदान कर सकता है।
2.4 शब्द स्थान और शब्द प्रयोग : किसी वाक्य में आए शब्दों का परीक्षण निम्नलिखित दृष्टियों से किया जा सकता है -
2.4.1 शब्द प्रयोग की दृष्टि से : इस दृष्टि से विकसित किया जाने वाला व्याकरण जाँचक वाक्य में शब्दों के प्रयोग और उनके रूपों का परीक्षण करता है, तत्पश्चात कर्ता, कर्म आदि का निर्धारण करके अन्य शब्दों की उनके साथ अन्विति का परीक्षण करता है, जैसे -
(1)   लड़का गाँव के बाजार से हरी सब्जी लाता है।
(2)   लड़का गाँव के बाजार से हरा सब्जी लाती हैं।
उपर्युक्त वाक्यों में लड़का के रूप के अनुसार क्रिया प्रयोग की जाँच की जा रही है। इसी प्रकार सब्जी के रूप के अनुसार विशेषण के प्रयोग की जाँच की जा रही है।
इसके लिए सामान्यत: यह आवश्यक होता है कि शब्द उचित वाक्य संक्रम (proper syntax) में आए हों। ऐसा शक्तिशाली व्याकरण जाँचक भी विकसित किया जा सकता है जो वाक्य में कहीं भी आए कर्ता (अन्विति के आधार) को खोज ले और उसी के अनुरूप परीक्षण कर ले; किंतु ऐसे व्याकरण जाँचक के लिए बहुत अधिक जटिल नियमों की आवश्यकता होती है। साथ ही ये नियम अधिक से अधिक स्पष्टता के साथ लिखे गए हों, ताकि एक नियम से दूसरा प्रभावित हो सके।
2.4.2 शब्द स्थान की दृष्टि से : इस दृष्टि से विकसित किया जाने वाला व्याकरण जाँचक किसी वाक्य के शब्द उचित स्थान पर प्रयुक्त हुए हैं या नहीं का परीक्षण करता है, जैसे
(1)   लड़का गाँव के बाजार से हरी सब्जी लाता है।
(2)   लड़का बाजार के गाँव से सब्जी हरी है लाता।
उपर्युक्त उदाहरण के दूसरे वाक्य में शब्दों के प्रयोग के स्थान गलत हैं। यह गलती केवल एक शब्द या एक से अधिक शब्दों के लिए हो सकती है। इस प्रकार के त्रुटिपूर्ण प्रयोगों की पहचान करने वाला व्याकरण जाँचक और अधिक शक्तिशाली होगा, जिसमें वाक्य रचना नियमों के अलावा क्रिया साँचों (verb frames), आर्थी प्रकार्य के आधार पर संज्ञा, विशेषण आदि संबंधी सूचनाओं की भी आवश्यकता होगी।
2.4.3 संयुक्त : उपर्युक्त दोनों विधियों को मिलाकर एक शक्तिशाली और बहुउद्देशीय व्याकरण जाँचक भी निर्मित किया जा सकता है।
3.0 हिंदी व्याकरण जाँचक में नियम
व्याकरण जाँचक निर्माण के लिए सबसे पहले संबंधित भाषा में पदबंध और वाक्य रचना नियमों को संचित करना होता है। नियम किस स्तर के और कितने होंगे, यह भाषा की प्रकृति पर निर्भर करता है। वाक्य के घटकों के परस्पर संबंध की स्थितियों के अनुरूप ही नियम बनाए जाते हैं। यहाँ पर ध्यान रखने वाली बात है कि व्याकरण जाँचक के निर्माण हेतु संबंधित भाषा के संपूर्ण व्याकरण को प्रणाली में स्थापित करने की आवश्यकता नहीं होती, बल्कि वाक्यात्मक घटकों के प्रयोग की स्थितियाँ कौन-सी हैं? और उनके प्रयोग में प्रयोक्ता द्वारा प्राय: किस प्रकार की त्रुटियाँ की जाती हैं? इनका ध्यान रखते हुए व्याकरणिक जाँच संबंधी नियम बनाए जाते हैं। व्याकरणिक जाँच दो स्तरों पर होता है
3.1 पदबंध स्तर पर
3.2 वाक्य स्तर पर
दोनों ही स्तरों पर परीक्षण हेतु अलग-अलग प्रकार के नियम काम करते हैं। व्याकरण जाँचक मुख्यत: दो प्रकार की प्रयोगात्मक स्थितियों की जाँच करता है
·         पदबंध या वाक्य में प्रयुक्त किसी शब्द का स्थान उपयुक्त है या नहीं, जैसेबहुत सुंदर लड़का की जगह सुंदर बहुत लड़का का प्रयोग।
·         पदबंध या वाक्य में आए किसी शब्द की यदि अन्य शब्द या पद से अन्विति होती है तो उसके अनुसार इस शब्द का रूप है या नहीं, जैसेअच्छा लड़का की जगह अच्छी लड़का या अच्छे लड़का का प्रयोग।
अर्थात ये व्याकरण जाँचक केवल संरचनात्मक स्तर (structural level) पर ही परीक्षण का कार्य करते हैं। इससे भी गहन एक स्तर आर्थी स्तर’ (semantic level) भी है, जिसमें दो शब्दों का प्रयोग होने पर उनके बीच अर्थ की दृष्टि से भी उपयुक्तता देखी जाती है, जैसेपका आम या पका टमाटर जैसे प्रयोग तो ठीक हैं, किंतु पका बच्चा का प्रयोग अर्थ की दृष्टि से उपयुक्त नहीं है। इस प्रकार के प्रयोगों की जाँच के लिए आर्थी संजाल (semantic net) या ज्ञानआधार (knowledgebase) आदि शब्दवृत्तों (lexicons) की आवश्यकता पड़ती है, क्योंकि इनके लिए वाक्य रचना के नियमों के अतिरिक्त शब्द की आर्थी विशिष्टताओं को भी चिह्नित करना पड़ता है और उसके अनुरूप नियम देने पड़ते हैं। इस कारण नियमों की संख्या बहुत अधिक बढ़ जाती है। यही कारण है कि अभी तक केवल संरचनात्मक स्तर के ही व्याकरण जाँचक विकसित किए गए हैं।
हिंदी एक वियोगात्मक भाषा है। इसमें पदबंध और वाक्य दोनों स्तरों पर वाक्यात्मक इकाइयों के बीच संबंध रहता है। इसलिए इसमें दोनों स्तरों पर नियमों की आवश्यकता पड़ती है। पदबंध स्तर पर केवल उन्हीं शब्दों के प्रयोग हेतु नियम देने की आवश्यकता होती है, जिनकी किसी अन्य शब्द से अन्विति होती है। इस दृष्टि से आकारांत शब्द ही ध्यान देने योग्य होते हैं। उदाहरण के लिए आकारांत विशेषणों की संबंधित संज्ञा शब्द से अन्विति होती है। अत: आकारांत विशेषण आने पर उसके लिंग, वचन और तिर्यकता के संज्ञान (recognition) के साथ-साथ संबंधित संज्ञा शब्द के लिंग, वचन और तिर्यकता को देखना होता है, जैसेअच्छा झोला, अच्छी पुस्तक, अच्छे लोग, अच्छे कमरे को आदि। इसी प्रकार वाक्य स्तर पर कर्ता और कर्म की स्थिति के अनुरूप क्रिया की अन्विति का परीक्षण किया जाता है।
4.0 व्याकरण जाँचक की कार्यप्रणाली
व्याकरण जाँच हेतु पाठ का इनपुट प्राप्त होने के पश्चात प्रणाली में उसे अनेक चरणों से गुजरना पड़ता है। ये सभी चरण पाठ संसाधन के विभिन्न चरण होते हैं। इन चरणों के माध्यम से व्याकरण जाँचक की कार्याप्रणाली को समझा जा सकता है। इसे निम्नलिखित एल्गोरिद्म द्वारा देखा जा सकता है
·         प्रारंभ
·         इनपुट पाठ
·         खंडीकरण
·         विराम चिह्न परीक्षण
·         टैगिंग
Ø  कोश से मैपिंग
Ø  रूपवैज्ञानिक विश्लेषण और मैपिंग
·         व्याकरणिक परीक्षण
Ø  पदबंध स्तरीय परीक्षण
Ø  पुनरुक्त शब्दों का परीक्षण
Ø  वाक्य स्तरीय परीक्षण
·         त्रुटिपूर्ण प्रयोगों का चिह्नन एवं प्रदर्शन
·         समाप्त
5. उपसंहार
अत: संक्षेप में व्याकरण जाँचक एक शक्तिशाली प्राकृतिक भाषा संसाधन सॉफ्टवेयर है। इसके कई प्रकार  होते हैं और विकासकर्ता को इसके स्वरूप और प्रकार का निर्धारण पहले ही कर लेना चाहिए। जब भाषावैज्ञानिक और व्याकरणिक नियमों के आधार पर इनका विकास किया जाता है तो ये नियम आधारित (Rule-based) कहलाते हैं। नियम आधारित व्याकरण जाँचक में पदबंध और वाक्य दोनों स्तरों के नियम लगाए जाते हैं। एक व्याकरण जाँचक को पाठ संसाधन की सभी प्रमुख प्रक्रियाओं से गुजरना पड़ता है जिनका उल्लेख इसकी कार्यप्रणाली के अंतर्गत एल्गोरिद्म में किया गया है। आशा है इससे व्याकरण जाँचक का निर्माण करने के लिए उत्सुक शोधकर्ताओं को एक दिशा मिलेगी।
6. संदर्भ
1.      Bustamante, F.R., & León, F.S, (1996). GramCheck: a grammar and style checker. Proceedings of the 16th conference on Computational linguistics, August 0509, Copenhagen, Denmark. Retrieved 19 March 2012.

No comments:

Post a Comment